/** ************************* **/
/** Froont widget base styles **/
/** ************************* **/
.fr-widget h1, .fr-widget h2, .fr-widget h3, .fr-widget h4, .fr-widget h5, .fr-widget h6, .fr-widget p {
	margin: 0;
}
html, body, button, input, select, textarea {
  font-family:"futura-pt", "PT Sans", Tahoma, Verdana, sans-serif;
}
body {
  font-size: 62.5%;
}
* {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}
input:focus, textarea:focus {
  outline: none;
}
.b-content {
	font-size: medium;
	padding-top: 0.02px;
}
.b-content.loading {
  opacity: 0;
}
.b-content:after {
  content:".";
  display: none;
  clear: both;
  line-height: 0;
  height: 0;
}
a {
  color: #000;
  text-decoration: underline;
}
.fr-wf {
  -webkit-transition: opacity .1s linear;
  -moz-transition: opacity .1s linear;
  -o-transition: opacity .1s linear;
  transition: opacity .1s linear;
  word-break: break-word;
}
.wf-loading .fr-wf {
  opacity: 0 !important;
}
.wf-inactive .fr-wf, .wf-active .fr-wf {
  opacity: 1;
}
.fr-container:after {
  content:".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}
.fr-widget {
  display: block;
}
.fr-text * {
  font-family: inherit;
  font-weight: inherit;
  font-size: inherit;
  color: inherit;
  text-decoration: inherit;
}
.fr-text i {
  font-style: italic;
}
.fr-text u {
  text-decoration: underline;
}
.fr-text del, .fr-text s, .fr-text strike {
  text-decoration: line-through;
}
.fr-text b, .fr-text strong, .fr-text h1, .fr-text h2, .fr-text h3, .fr-text h4, .fr-text h5, .fr-text h6 {
  font-weight: bold;
}
.fr-img {
  line-height: 0;
}
.fr-img img {
  width: 100%;
  max-width: 100%;
}
.fr-svg svg {
  width: 100%;
  max-width: 100%;
  height: 100%;
}
.fr-svg-inner svg {
  position: absolute;
}
/** clear content around grid widget container, because it contains a lot of floated elements **/
 .fr-grid:before, .fr-grid:after {
  content:".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}
.fr-grid > .fr-widget {
  float: left;
}
.fr-video-inner {
  position: relative;
}
.fr-video-inner iframe {
  position: absolute;
  width: 100%;
  height: 100%;
}
.fr_hover-animation {
  -webkit-transition-duration: 0.2s;
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  transition-duration: 0.2s;
  -webkit-transition-property: background, color, border-radius;
  -moz-transition-property: background, color, border-radius;
  -o-transition-property: background, color, border-radius;
  transition-property: background, color, border-radius;
  -webkit-transition-timing-function: ease-in-out;
  -moz-transition-timing-function: ease-in-out;
  -o-transition-timing-function: ease-in-out;
  transition-timing-function: ease-in-out;
}
.fr-video-inner p {
  display: none;
}

/** ******************************** **/
/** End of Froont widget base styles **/
/** ******************************** **/

/** ************************* **/
/** Widget styles             **/
/** ************************* **/
.fr_francisco-lopes {
  float:none;
  display:block;
  width:80%;
  font-family:Arial;
  font-weight:500;
  font-size:1.5em;
  margin:.0754830917874396em auto 0;
  min-height:1em;
  min-width:280px;
  max-width:768px
}
.fr_francisco-lopes .fr-text {
  min-width:100%
}
.fr_linha-topo {
  float:none;
  display:block;
  top:30px;
  width:80%;
  margin:auto auto 0 auto;
  min-height:1em;
  max-height:1em;
  max-width:768px
}
.fr_dirora {
  float:none;
  display:block;
  width:80%;
  margin:0 auto 0 auto;
  min-height:auto;
  min-width:280px;
  max-width:768px;
  border-top:1px solid #e7e7e7;
  padding-top:10px

}
.fr_celodi {
	float:left;
	display:block;
	width:80%;
	font-family:Arial;
	font-size:.75em;
	text-align:left;
	margin:10px 0 10px 0;
	min-height:1em;
	min-width:280px;
	max-width:50%
}
.fr_celodi .fr-text {
  min-width:100%
}
.fr_risohi {
	float:left;
	display:block;
	width:80%;
	font-family:Arial;
	font-size:.75em;
	text-align:right;
	margin:10px 0 10px 0;
	min-height:1em;
	min-width:280px;
	max-width:50%
}
.fr_risohi .fr-text {
  min-width:100%
}
.fr_menu {
  float:none;
  display:block;
  width:80%;
  margin:0 auto 20px auto;
  padding:0;
  min-height:1em;
  min-width:280px;
  max-width:768px
}
.fr_arquitecto {
  float:left;
  width:100%;
  font-family:Arial;
  font-weight:300;
  font-size:1.0em;
  margin:0;
  min-height:1em;
  min-width:256px;
  max-width:30%
}
.fr_arquitecto .fr-text {
  min-width:100%
}
.fr_projectos {
  float:left;
  display:block;
  top:11px;
  width:100%;
  font-family:Arial;
  text-align:right;
  margin:-11px auto 0px auto;
  position:relative;
  min-height:1em;
  min-width:256px;
  max-width:30%
}
.fr_projectos .fr-text {
  min-width:100%
}
.fr_contacto {
  float:left;
  display:block;
  top:0px;
  width:100%;
  font-family:Arial;
  text-align:right;
  margin:0;
  position:relative;
  min-height:1em;
  min-width:256px;
  max-width:30%
}
.fr_contacto .fr-text {
  min-width:100%
}
.fr_biografia {
  float:none;
  display:block;
  width:80%;
  font-family:Arial;
  font-weight:700;
  font-size:1.6em;
  margin:0 auto 20px auto;
  padding-top:30px;
  min-width:280px;
  max-width:768px;
  border-top:1px solid #e7e7e7;
}
.fr_biografia .fr-text {
  min-width:100%
}
.fr_tab-bio {
  float:none;
  text-align:justify;
  font-size:inherit;
  line-height:2em;
  display:block;
  width:80%;
  margin:1em auto 0;
  padding:0;
  min-height:auto;
  min-width:280px;
  max-height:auto;
  max-width:768px;
  padding-bottom:10px;
}
.fr_texto {
	float:left;
	width:100%;
	font-family:Arial;
	font-weight:400;
	font-size:small;
	margin:0 2% 0 0;
	min-width:280px;
	max-width:30%
}
.fr_texto .fr-text {
  min-width:100%
}
.fr_foto {
  float:right;
  width:100%;
  margin:0 0 0 2%;
  min-height:auto;
  min-width:280px;
  max-width:48%
}
.fr_localizao {
  float:right;
  width:100%;
  font-family:Arial;
  font-weight:400;
  font-size:0.5em;
  line-height:normal;
  margin:1.105263157894737em 0 1.0526315789473684em 1.8229166666666667%;
  min-width:280px;
  max-width:48%
}
.fr_localizao .fr-text {
  min-width:100%
}
.fr_separador-2 {
  float:right;
  width:100%;
  margin:0 0 20px 2%;
  min-width:280px;
  max-width:48%
}
.fr_google-maps {
  float:right;
  width:100%;
  margin:0 0 0 2%;
  min-height:250px;
  min-width:280px;
  max-width:48%;
  margin-bottom:10px;
}
.fr_vasaka {
  width:auto;
  margin:0 auto 0 auto;
  min-height:auto;
  max-width:768px
}
@media screen and (max-width:1024px) {
  .fr_tab-bio {
    float:none;
    display:block;
    margin:.0625em auto 0;
	  padding-bottom:10px;

  }
}
@media screen and (max-width:768px) {
  .fr_celodi {
    float:none;
    display:block;
    width:100%;
    margin:10px auto;
    max-width:768px;
	text-align:center;
  }
  .fr_celodi .fr-text {
    min-width:100%
  }
}
@media screen and (max-width:768px) {
  .fr_risohi {
    float:left;
    display:block;
    width:100%;
    margin:10px auto;
	text-align:center;
    max-width:768px
  }
  .fr_risohi .fr-text {
    min-width:100%
  }
}
@media screen and (max-width:768px) {
  .fr_projectos {
    float:right;
    top:0;
    margin:0 0 0 0
  }
}
@media screen and (max-width:768px) {
  .fr_contacto {
    float:right;
    top:0;
    margin:0 0 0 0
  }
    .fr_dirora {
	padding-top: 0px;

}
@media screen and (max-width:480px) {
  .fr_celodi {
    margin:10px 0 10px 0;
    max-width:100%
  }
  .fr_dirora {
	padding-top: 0px;
}
@media screen and (max-width:480px) {
  .fr_risohi {
    float:right;
    display:block;
    margin:10px auto
  }
}
@media screen and (max-width:480px) {
  .fr_arquitecto {
    min-width:100px
  }
}
@media screen and (max-width:480px) {
  .fr_projectos {
    top:11px
  }
}
@media screen and (max-width:480px) {
  .fr_contacto {
    top:11px
  }
}
@media screen and (max-width:480px) {
  .fr_texto {
    margin:0 2% 30px 0;
    max-width:100%
  }
}
@media screen and (max-width:480px) {
  .fr_foto {
    margin:0;
    max-width:100%
  }
}
@media screen and (max-width:480px) {
  .fr_localizao {
    margin:20px 0 20px 0;
    max-width:100%
  }
}
@media screen and (max-width:480px) {
  .fr_separador-2 {
    margin:0;
    max-width:100%
  }
}
@media screen and (max-width:480px) {
  .fr_google-maps {
    margin:0;
    max-width:100%;
	margin-bottom:10px;
  }
}
@media screen and (max-width:320px) {
  .fr_francisco-lopes {
    font-size:2.0em
  }
}
@media screen and (max-width:480px) {
  .fr_foto {
    margin:20px;
    max-width:100%
  }
}
@media screen and (max-width:320px) {
  .fr_linha-topo {
    float:none;
    display:block;
    margin:0 auto;
    min-height:1em
  }
}
@media screen and (max-width:320px) {
  .fr_celodi {
    float:none;
    display:block;
    margin:10px auto;
	text-align:center;
  }
}
@media screen and (max-width:320px) {
  .fr_risohi {
    float:none;
    display:block;
    width:100;
    margin:10px auto;
    min-width:280px;
    max-width:768px;
	text-align:center
  }
  .fr_risohi .fr-text {
    min-width:100%
  }
}
@media screen and (max-width:320px) {
  .fr_projectos {
    top:11px;
    min-width:180px
  }
}
@media screen and (max-width:320px) {
  .fr_contacto {
    top:11px;
    min-width:180px
  }
}

/** ******************************** **/
/** End of widget styles             **/
/** ******************************** **/
