html, body, table, td, p {
    padding: 0;
    border: 0;
    margin: 0;
}

.upper {
    text-transform: uppercase;
}

.no-decoration {
	text-decoration: none;
}

.laranja {
    color: #f28a00;
}

.cinzento {
    color: #3f3e3e;
}

.cinzento-claro {
    color: #6f6f6e;
}

.white {
    color: white;
}

.black {
    color: black;
}

.center-align {
    text-align: center;
}

.left-align {
    text-align: left;
}

.right-align {
    text-align: right;
}

.justify-align {
    text-align: justify;
}

.mo-wrap {
    white-space: nowrap;
}

.descr {
    font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
    font-size: 16px;
}

.small-descr {
    font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
    font-size: 12px;
}

.big-descr {
    font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
    font-size: 20px;
}

.title {
    font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
    font-size: 34px;
    font-weight: bold;
}

.small-title {
    font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
    font-size: 30px;
    font-weight: bold;
}

.bold {
    font-weight: bold;
}

.wide-div {
    width: 900px;
}

.widest {
    width: 100%;
}

.orange-div {
    background-color: #f28a00;
}

.grey-div {
    background-color: #3f3e3e;
}

.link {
	transition: 0.2s;
}

.link:hover {
	color: #f28a00;
}

header {
    position: relative;
}
#top-bar {
    position: fixed;
    z-index: 10;
    top: 0px;
    left: 0px;
    width: 100%;
    background-color: rgba(255,255,255,0.8);
}

#top-bar table {
    width: 100%;
    text-align: center;
    vertical-align: middle;
    padding: 0px;
}

#top-bar tr:first-child td:last-child {
    vertical-align: bottom;
}

#top-bar tr:first-child td:last-child, #top-bar tr:first-child td:first-child {
    width: 300px;
}

#top-bar tr:last-child td:last-child {
    vertical-align: top;
}

#logo-small {
    display: inline;
    height: 80px;
    transition: 0.6s;
}

#logo-small.min {
    height: 65px;
    transition: 0.6s;
}

#logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
}

#banner-txt {
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    max-width: 30%;
}

ul.menu {
    display: inline;
    padding: 0px;
}

ul.menu li {
    display: inline;
}

ul.menu li + li {
    margin-left: 20px;
}

ul.menu li a {
    text-decoration: none;
    text-transform: uppercase;
    font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
    font-size: 15px;
    color: black;
    transition: color 0.2s, font-size 0.6s;
}

ul.menu li:hover a {
    color: #f28a00;
    transition: color 0.2s, font-size 0.6s;
}

ul.menu li a.min {
    font-size: 13px;
    transition: color 0.2s, font-size 0.6s;
}

ul.menu li.active a {
    color: #f28a00;
}

#login {
    display: inline-block;
    text-align: center;
}

#login-p {
	border: none;
	text-align: center;
    border-bottom: 1px solid black;
    max-width: 75px;
    margin: auto;
	background: transparent;
    transition: color 0.2s, font-size 0.6s;
}

#login-p.min {
    font-size: 14px;
    transition: color 0.2s, font-size 0.6s;
}

#top-bar tr:last-child td:last-child p {
    transition: color 0.2s, font-size 0.6s;
}

#top-bar tr:last-child td:last-child p.min {
    transition: color 0.2s, font-size 0.6s;
    font-size: 10px;
}

div#new-idea {
	background-color: #3f3e3e;
	margin: 50px auto;
	text-align: left;
	padding: 20px;
}

div#new-idea input, div#new-idea select, div#new-idea textarea {
	width: 100%;
	border: 2px solid #3f3e3e;
	padding: 5px;
	margin-bottom: 20px;
	box-sizing: border-box;
}

div#new-idea input[type="file"]:not([id="CV_path"]) {
	margin: auto;
	width: calc(100% - 30px);
}

div#new-idea input[type="file"] {
	padding: 0px;
}

p#add-support-doc, p.remove-support-doc {
	display: inline-block;
    margin-bottom: 20px;
    color: #3f3e3e;
    background-color: #e8e8e8;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    cursor: pointer;
	transition: 0.3s;
}

p#add-support-doc:hover, p.remove-support-doc:hover {
	color: white;
	background-color: #f28a00;
}

div#new-idea textarea {
	min-height: 100px;
}

div#new-idea input[type="submit"] {
	width: auto;
	color: #3f3e3e;
	background-color: #E8E8E8;
	font-family: "Century Gothic",CenturyGothic,AppleGothic,sans-serif;
	font-size: 18px;
	font-weight: bold;
	text-transform: uppercase;
	padding: 10px;
	transition: 0.3s;
}

div#new-idea input[type="submit"]:not([disabled]) {
	cursor: pointer;
}

div#new-idea input[type="submit"]:not([disabled]):hover {
	color: white;
	background-color: #f28a00;
}

.with-error {
	border-color: #f28a00!important;
}

div#kunena .breadcrumb,
div#kunena form#jumpto,
/*div#kunena div.kfrontend h1,*/
div#kunena div.navbar,
div#kunena form.form-search,
div#kunena div.pagination,
div#kunena .profile-expand,
div#kunena table:not(.top-level) td:first-child,
div#kunena table:not(.top-level) tfoot,
div#kunena .profilebox li:not(:nth-last-child(2)) {
    display: none;
}

div#kunena {
    width: 700px;
    margin: auto;
	font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
	color: white;
}

div#kunena table {
	width: 100%;
	border-spacing: 1px;
	margin-bottom: 50px!important;
}

div#kunena td, div#kunena a {
	text-decoration: none;
	color: white!important;
}

div#kunena td {
	background-color: #f28a00;
}

div#kunena td {
	padding: 5px!important;
}

div#kunena table.top-level tr:first-child td {
	background-color: transparent;
	padding:0px!important;
}

div#kunena table.top-level td:first-child {
    text-transform: uppercase;
}

div#kunena td:last-child {
	/*white-space: nowrap;*/
    max-width: 80px;
}

div#kunena tr:first-child td:first-child div {
	max-width: 120px;
	color: #3f3e3e;
    font-size: 20px;
	font-weight: bold;
	padding:10px;
	background: url('images/topicos.png') no-repeat 90%;
	background-color: #D4D4D4;
}

div#kunena thead {
	font-weight: bold;
}

div#kunena .span2, div#kunena .profilebox {
	margin: 0px!important;
	padding: 0px;
}

div#kunena div.message-published {
	background-color: #3f3e3e;
	border:0px!important;
	border-top: 1px solid white!important;
	border-bottom: 1px solid white!important;
	border-radius:0px!important;
	box-shadow: none!important;
    font-size: 14px;
}

div#kunena h1 {
	background-color: #f28a00;
    padding: 10px;
}

div#kunena .profilebox {
	background-color: #3f3e3e;
}

div#kunena div#topic-actions {
	background-color: #3f3e3e;
}

div#kunena button[data-toggle="dropdown"] {
	display: none;
}

div#kunena div.btn-toolbar, div#kunena div.span2 ul, div#kunena div.message-published small, div#kunena div.kmessage-thankyou {
	padding: 10px!important;
}

div#kunena.layout .badger-left:after {
	border-radius: 0px!important;
}

div#kunena #ktopicsform ul a{
	background-color: #3f3e3e;
	padding: 10px;
}

div.userdata ul.unstyled {
	text-align: left;
    margin: auto;
    max-width: 230px;
    margin-top: 30px;
}

div.userdata ul.unstyled li {
	display: block;
}

div.userdata ul.unstyled a {
	text-decoration: none;
    color: #3f3e3e;
    font-size: 12px;
    transition: 0.2s;
}

div.userdata ul.unstyled a:hover {
    color: #f28a00;
}

div.userdata, div.login {
	margin: 50px auto;
}

div.login  fieldset {
	text-align: center;
	border:none;
}

ul.nav-stacked {
	display: none;
}

div.userdata,
div.login,
div.userdata input,
div.login input,
div.userdata button,
div.login button, 
div.registration div.controls button,
form#user-registration  p,
div.reset-confirm p,
div.reset-complete p,
form#user-registration label,
div.reset-confirm label,
div.reset-complete label,
form#user-registration button,
div.reset-confirm button,
div.reset-complete button {
	font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
    font-size: 20px;
	font-weight: bold;
	color: #3f3e3e;
}

form#user-registration p:first-child,
div.reset-confirm p,
div.reset-complete p {
    margin-bottom: 50px;
    text-align: justify;
}

div.logout-button input {
	font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
    font-size: 10px;
	font-weight: normal;
	color: #3f3e3e;
}

div.userdata input, div.login input {
	background-color: #f28a00;
	border: none;
	margin:10px 0px;
	padding:10px;
	font-weight: normal;
}

div.userdata button,
div.login button,
div.logout-button input,
div.registration div.controls button,
form#user-registration button,
div.reset-confirm button,
div.reset-complete button {
	border:none;
	color: white;
	padding: 10px;
	background-color: #3f3e3e;
}

div.registration div.controls button[type="submit"],
div.logout-button input[type="submit"],
div.userdata button,
form#user-registration button,
div.reset-confirm button,
div.reset-complete button {
	transition: 0.3s;
	cursor: pointer;
}

div.registration div.controls button[type="submit"]:hover,
div.logout-button input[type="submit"]:hover,
div.userdata button:hover,
form#user-registration button:hover,
div.reset-confirm button:hover,
div.reset-complete button:hover {
	background-color: #f28a00;
}

div.userdata > div, div.login > div {
	width: 200px;
	text-align: center;
	margin: auto;
}

div.registration legend, div.profile legend {
	padding-top: 50px;
	font-size: 24px;
}

div.profile dd {
	color: #f28a00;
}

div.registration fieldset div.control-group:nth-child(2) {
	font-size: 12px;
	margin-bottom: 20px;
}

div.alert {
	width: 500px;
	margin:auto;
	font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
    font-size: 16px;
	font-weight: normal;
	color: #3f3e3e;
}

div.registration, div.profile {
	font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
    font-size: 20px;
	font-weight: bold;
	color: #3f3e3e;
}

div.registration fieldset,
form#user-registration fieldset,
div.reset-confirm fieldset,
div.reset-complete fieldset,
div.profile fieldset {
	border: none;
	width: 350px;
	margin:auto;
}

div.registration fieldset {
    
}

div.registration input,
form#user-registration input,
div.reset-confirm input,
div.reset-complete input {
	width: 100%;
	border: none;
	background-color: #f28a00;
	color: #3f3e3e;
	padding: 10px;
	font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
    font-size: 16px;
	font-weight: normal;
	margin-top:10px;
	margin-bottom: 20px;
}

div.registration div.controls a {
	display: none;
}

div.registration > form > div.control-group, form#user-registration, div.reset-confirm, div.reset-complete {
	text-align: center;
	margin: 50px auto;
}

table#ideas {
	margin: 100px auto;
	max-width: 1200px;
	color: #3f3e3e;
	font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
	text-align: left;
	border-collapse: collapse;
}

table#ideas tr:first-child {
	color: #f28a00;
	text-transform: uppercase;
	font-weight: bold;
	font-size: 12px;
	text-align: center;
	white-space: nowrap;
}

table#ideas td {
	border-bottom: 1px solid #3f3e3e;
	padding-bottom: 10px;
	padding-top: 10px;
}

table#ideas td+td {
	padding-left: 20px;
}

table#ideas tr:first-child td, table#ideas tr:last-child td {
	border: none;
}

table#ideas td:last-child, table#ideas td:nth-last-child(2) {
	/*width: 30%;*/
}

table.mod_sef_table, table.mod_sef_table input[type="text"], table.mod_sef_table input[type="email"], table.mod_sef_table textarea {
    width: 100%;
}

td.mod_sef_td {
    padding: 0px!important;
}

.mod_sef_input, .mod_sef_input_textarea {
    background-color: #6f6f6e;
    border: 0px;
    font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
    font-size: 16px;
    padding: 10px;
    border-radius: 1px;
    margin-top: 5px;
    color: white;
}

.mod_sef_input[type="submit"] {
    background-color: #585857;
    padding: 10px 40px;
    text-transform: uppercase;
    color: white;
    cursor: pointer;
}

.mod_sef_input[type="submit"]:last-child {
    display: none;
}

th.mod_sef_th, td.mod_sef_space {
    display: none;
}

::-webkit-input-placeholder {
   color: #3f3e3e;
}

:-moz-placeholder { /* Firefox 18- */
   color: #3f3e3e;
}

::-moz-placeholder {  /* Firefox 19+ */
   color: #3f3e3e;
}

:-ms-input-placeholder {  
   color: #3f3e3e;
}

footer {
    background-color: #3f3e3e;
}

footer div.widest > p.title {
    padding-top: 50px;
}

table#footer-tbl {
    margin-left: auto;
    margin-right: auto;
    margin-top: 10px;
}

table#footer-tbl td {
    width: 50%;
}

table#footer-tbl tr:first-child td {
    padding-top: 40px;
}

table#footer-tbl tr:first-child td:first-child {
    border-right: 2px solid white;
}

table#footer-tbl tr:first-child td:last-child, table#footer-tbl td[rowspan="4"]{
    padding-left: 50px;
}

table#footer-tbl tr:nth-child(2) td:nth-child(1) {
    background: url('images/telefone.png') no-repeat;
    background-position: 0px 15px;
    padding-top: 20px;
    padding-left: 32px;
}

table#footer-tbl tr:nth-child(3) td:nth-child(1) {
    background: url('images/mail.png') no-repeat;
    background-position: 0px 15px;
    padding-top: 20px;
    padding-left: 32px;
}

table#footer-tbl tr:nth-child(4) td:nth-child(1) {
    background: url('images/morada.png') no-repeat;
    background-position: 0px 15px;
    padding-top: 20px;
    padding-left: 32px;
}

div.social {
    display: inline-block;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    background-color: white;
    margin-top: 10px;
    background-repeat: no-repeat;
    background-position: center;
    transition: 0.2s;
}

div.social:hover {
    background-color: #f28a00;
}

a.social + a.social {
    margin-left: 10px;
}

div.social#linkedin {
    background-image: url('images/linkedin.png');
}

div.social#twitter {
    background-image: url('images/twitter.png');
    background-color: #f28a00;
}

div.social#facebook {
    background-image: url('images/facebook.png');
}

#logos-fin {
    display: block;
    margin: 0px auto;
    padding: 20px 0px;
}