@import url('https://fonts.googleapis.com/css?family=Roboto+Slab:300,400|Teko:700');

* {
  box-sizing: border-box;
}

body{
  font-family: 'Roboto Slab', serif;
  font-size: 16pt;
  line-height: 22pt;
  color: #666666;
}

input:not([type=submit]):not([type=file]):not([type=checkbox]):not([type=radio]):not([type=reset]):not([type=image]), select {
 height: 58px;
 border: 3px #FF6633 solid;
 padding: 10px 15px;
 width: 100%; 
}

input[type="radio"], input[type="checkbox"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #fff;
  border: 3px #FF6633 solid;
}

input[type="radio"]:checked:after , input[type="checkbox"]:checked:after {
   content: '\2714';
   font-size: 20px;
   line-height: 5pt;
}

input[type=file] {
  width: 100%;
}

select {
  width: 100%;
  border: 3px #FF6633 solid;
  padding: 10px 15px;
  background-color: #fff;
  text-transform: uppercase;
  height: 58px;

  -webkit-appearance: none;
  -moz-appearance: none;
}

select::-ms-expand {
  display: none;
}

select[disabled],
select:disabled,
select[disabled] ~ .select-arrow,
select:disabled  ~ .select-arrow {
  filter: brightness(0.7);
}

.radio input[type="radio"], .checkbox input[type="checkbox"] {
  height: 20px;
  width: 20px;
  line-height: 5pt;
  margin-left: -35px;
}

.radio-inline input[type="radio"] {
  height: 20px;
  width: 20px;
  line-height: 5pt;
  margin-left: -25px;
}

/* Style for arrow */
.select-arrow {
  position: absolute;
  top: 0;
  height: 100%;
  pointer-events: none;
  background-color: #FF6633;
  right: 15px;
  width: 58px;
  background-position: 8px center;
  background-image: url(../images/seta.png);
  background-repeat: no-repeat;
}

textarea {
  width: 100%;
  border: 3px #FF6633 solid;
  padding: 8px 3px;
}

.step {
  min-height: calc(100vh - 240px);
}

.step-intro{
  background-color: #FFFFFF;
}

.step-regime,
.step-grade,
.step-cets,
.step-ctsp,
.step-maiores-23,
.step-options,
.step-payment,
.step-phd,
.step-other-regimes,
.step-odonto-1,
.step-odonto-3,
.step-odonto-5,
.step-odonto-7,
.step-master,
.step-postgrad {
  background-color: #F0F0F0;
  display: none;
}

.step-odonto-2,
.step-odonto-4,
.step-odonto-6,
.step-odonto-8,
.step-personal-data {
  background-color: #FFFFFF;
  display: none;
}

.step-grade input:not([type=checkbox]):not([type=radio]) {
  text-align: center;
}

.step-options{
  font-size: 13pt;
  line-height: 15pt;
}

.step-options .stp4-sty1 input.FMinputs{
  font-size: 13pt;
  line-height: 15pt;
  padding: 8px 3px;
  height: 42px;
}

.step-options select{
  height: 48px;
  font-size: 14px;
}

.step-options .select-arrow{
  height: 48px;
  width: 38px;
  background-position: center;
}

.step-options .stp4-sty2 {
  font-size: 9pt;
  line-height: 10pt;
  font-weight: 300;
}

.score-placeholder {
  height: 48px;
  border: 3px #FF6633 solid;
  border-top: 0px;
}

.step-personal-data select {
  /*color: #FF6633;*/
  font-weight: 300;
}

.step-personal-data input {
  font-weight: 300;
  text-transform: uppercase;
}

.step-personal-data .radio-inline label{
  line-height: 20pt;
}

.step-phd textarea{
  height: 150px;
}

/**************************** HEADER  START ****************************/
.header {
  height: 120px;
  background-color: #D7D7D7;
  padding: 20px 0;
}

.header__title, .header__subtitle, .header__langselect__lang {
  font-size: 24px;
  color: #666;
  margin: 0;
}

/*
.header__title {
  font-weight: 300;
}
*/

.header__subtitle{
  font-weight: 300;
}

.header__langselect {
  text-align: right;
  color: #fff;
}

.header__langselect__lang:hover,
.header__langselect__lang:active,
.header__langselect__lang:focus,
.header__langselect__lang--en:lang(en),
.header__langselect__lang--fr:lang(fr),
.header__langselect__lang--pt:not(:lang(en)):not(:lang(fr)) {
  border-bottom: solid 1px #A8A8A8;
	border-top: solid 1px #A8A8A8;
  color: #A8A8A8;
  text-decoration: none;
}

@media only screen and (max-width: 767px) {
  .header__title,
  .header__subtitle,
  .header__langselect__lang {
    font-size: 18px;
  }

  .header__langselect {
    text-align: center;
    margin-top: 15px;
  }
}

/**************************** FOOTER  START ****************************/
.footer {
  height: 120px;
  text-align: center;
  background-color: #D7D7D7;
  /*color: #000;*/
  font-size: 16px;
  line-height: 20px;
}
.footer a, footer a:hover, footer a:active, footer a:focus {
  /*color: #000;*/
}

@media only screen and (max-width: 767px) {
  .footer {
    font-size: 12px;
  }
}

/**************************** Button  START ****************************/
.ca-btn {
  font-size: 14pt;
  padding-top: 15px;
  padding-bottom: 15px;
  display:inline-block;
  text-align: center;
  text-transform: uppercase;
  font-weight: 300;
  height: 58px;
  color: #FFFFFF;
  width: 100%;
  border: 0;
}

.ca-btn--recap {
  height: 76px;
}

.ca-btn:active, .ca-btn:hover, .ca-btn:focus{
  text-decoration: none;
  color: #FFFFFF;
}

/*************************HELPER CLASSES***********************************/

.font-light {
  font-weight: 300 !important;
}

.font-xsmall {
  font-size: 12pt;
  line-height: 18pt
}

.font-small {
  font-size: 14pt;
  line-height: 20pt
}

.bg-f0 {
  background-color: #F0F0F0;
}

.bg-33 {
  background-color: #333333;
}

.color-orange {
  color: #FF6633;
}

.orange-back {
  background-color: #FF6633;
}

.padding-top-15 {
	padding-top: 15px;
}

.padding-bottom-10 {
	padding-bottom: 10px;
}

.padding-bottom-80 {
	padding-bottom: 80px;
}

.margin-top-8 {
  margin-top: 8px;
}

.margin-top-15 {
  margin-top: 15px;
}

.margin-top-30 {
  margin-top: 30px;
}

.margin-top-20 {
  margin-top: 20px;
}

.margin-top-40 {
  margin-top: 40px;
}

.margin-bottom-30 {
  margin-bottom: 30px;
}

.margin-bottom-40 {
  margin-bottom: 40px;
}

.margin-top-60 {
  margin-top: 60px;
}

.padding-top-80 {
  padding-top: 80px;
}

.margin-left-60 {
  margin-left: 60px;
}

.margin-left-40 {
  margin-left: 40px !important;
}

.margin-right-30 {
  margin-right: 30px;
}

.valign {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
}

/**************Responsive (intervals) CLASSES****************/

/* Extra small devices (Phones, max 767px) */
@media only screen and (max-width: 767px) {
  body {
    font-size: 12pt;
    line-height: 16pt;
  }
  .col-centered-xs{
    float: none;
    margin: 0 auto;
  }

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

  .margin-top-0-xs {
    margin-top: 0px;
  }

  .margin-top-10-xs {
    margin-top:10px;
  }

	.margin-top-15-xs{
		margin-top:15px;
	}

  .margin-top-20-xs{
		margin-top:15px;
	}

	.margin-top-30-xs{
		margin-top:30px;
	}

  .margin-top-40-xs{
		margin-top:40px;
	}

	.margin-top-60-xs{
		margin-top:60px;
	}

  .radio input[type="radio"], .checkbox input[type="checkbox"] {
    margin-left: -25px;
  }

  .step-grade{
    font-size: 20pt;
    line-height: 28pt;
  }
}

@media only screen and  (max-width: 767px){
  .table td, .table th{
    padding: 0.25rem;
  }

  /*input:not([type="submit"]):not([type="file"]):not([type="checkbox"]):not([type="radio"]):not([type="reset"]):not([type="image"]), select {
    width: 80%;
  }*/

  .select-arrow{
    display: none;
  }

  input[type="radio"], input[type="checkbox"]{
    height: 30px;
    width: 30px;
    display: block;
  }
  
  select{
    font-size: 0.95rem;
  }

  .myNewDivW{
    width: 375px;
    overflow-x: auto;
  }

 
}
/* Small devices (tablets,min 768px) */
@media only screen and (min-width: 768px) and (max-width: 991px){

 

  .margin-top-0-sm {
    margin-top: 0px;
  }

	.margin-top-30-sm{
		margin-top:30px;
	}

}

/* Medium devices (desktops,min 992px) */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
	.margin-top-30-md{
		margin-top:30px;
	}
}

/* Large devices (large desktops, 1200px) */
@media only screen and (min-width: 1200px) {
	.margin-top-30-lg{
		margin-top:30px;
	}

	/*Bootstrap container override*/
	.container {
	    width: 970px;
	}
}

/**************Responsive (progressive) CLASSES****************/


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

	.text-right-psm {
			text-align: right !important;
	}

	.text-left-psm {
			text-align: left !important;
	}

  .text-center-psm {
      text-align: center !important;
  }

	.margin-left-20-psm {
		margin-left: 20px;
	}

	.margin-right-20-psm {
		margin-right: 20px;
	}

  .margin-right-30-psm {
    margin-right: 30px;
  }

  .margin-top-40-psm {
    margin-top: 40px;
  }

  .padding-0-psm {
    padding: 0;
  }
}

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

}

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

}


input[type="file"] {
  line-height: 18px;
  font-size: 18px;
  margin-top: 24px;
}


.font-size-form {
  font-size: 13pt;
    line-height: 15pt;
}

.font-size-form select{
  height: 48px;
  font-size: 14px;
}

.font-size-form .stp4-sty2 {
  font-size: 9pt;
  line-height: 10pt;
  font-weight: 300;
}

.padding-top-50{
  padding-top: 50px !important;
} 

.padding-bottom-50{
  padding-bottom: 50px !important;
}

@media(max-width: 992px){
.mt-15xs{ 
  margin-top: 15px;
}
}