/* ------------------ Fonts ---------------- */

@font-face {
  font-family: 'Conv_SourceSansPro-ExtraLight';
  src: url('../fonts/SourceSansPro-ExtraLight.eot');
  src: local('☺'), url('../fonts/SourceSansPro-ExtraLight.woff') format('woff'), url('../fonts/SourceSansPro-ExtraLight.ttf') format('truetype'), url('../fonts/SourceSansPro-ExtraLight.svg') format('svg');
  font-weight: normal;
  font-style: normal;
}

@font-face {
	font-family: 'Conv_SourceSansPro-Light';
	src: url('../fonts/SourceSansPro-Light.eot');
	src: local('☺'), url('../fonts/SourceSansPro-Light.woff') format('woff'), url('../fonts/SourceSansPro-Light.ttf') format('truetype'), url('../fonts/SourceSansPro-Light.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
  font-family: 'Conv_SourceSansPro-Regular';
  src: url('../fonts/SourceSansPro-Regular.eot');
  src: local('☺'), url('../fonts/SourceSansPro-Regular.woff') format('woff'), url('../fonts/SourceSansPro-Regular.ttf') format('truetype'), url('../fonts/SourceSansPro-Regular.svg') format('svg');
  font-weight: normal;
  font-style: normal;
}



/* ------------------ Tags ---------------- */

body {
  font-family: "Conv_SourceSansPro-Light";
  font-size: 16px;
}



/* ------------------ Menú ---------------- */

.menu-fluid {
	position: absolute;
	top: 0;
	left: 20px;
	/*width: 92px;*/
	text-align: center;
	z-index: 100;
}

.menu-fluid-container {
	padding: 15px;
	/*width: calc(100% + 30px);*/
}

.menu-fluid-btn {
/* 	margin-right: 20px; */
	margin-right: 10px;
/* 	margin-left: 10px; */
}


.menu-fluid-btn img{
	max-width: 21px;	
}


.container-home-img, .container-home-img-contact {
	max-width: 40px;
}

/* The Overlay (background) */
.overlay {
    /* Height & width depends on how you want to reveal the overlay (see JS below) */   
    font-family: "Conv_SourceSansPro-ExtraLight"; 
    height: 0;
    width: 100%;
    position: fixed; /* Stay in place */
    z-index: 10000000; /* Sit on top */
    left: 0;
    top: 0;
    background-color: rgb(0,0,0); /* Black fallback color */
    background-color: rgba(0,0,0, 0.9); /* Black w/opacity */
    overflow-x: hidden; /* Disable horizontal scroll */
    transition: 0.5s; /* 0.5 second transition effect to slide in or slide down the overlay (height or width, depending on reveal) */
}

/* Position the content inside the overlay */
.overlay-content {
    position: relative;
    top: 15%; /* 25% from the top */
    width: 100%; /* 100% width */
    text-align: center; /* Centered text/links */
    margin-top: 30px; /* 30px top margin to avoid conflict with the close button on smaller screens */
}

/* The navigation links inside the overlay */
.overlay a {
    padding: 8px;
    text-decoration: none;
    font-size: 26px;
    color: #f1f1f1;
    display: block; /* Display block instead of inline */
    transition: 0.3s; /* Transition effects on hover (color) */
}

/* When you mouse over the navigation links, change their color */
.overlay a:hover, .overlay a:focus {
    color: #d03238;
}

/* Position the close button (top right corner) */
.overlay .closebtn {
    position: absolute;
    /*top: 20px;
    right: 45px;*/
    top: 0;
    right: 15px;
    font-size: 60px;
    z-index: 100;
}

@media (max-height: 340px) {
    .overlay-content {
        margin-top: 0px;
    }
}

/* When the height of the screen is less than 450 pixels, change the font-size of the links and position the close button again, so they don't overlap */
@media screen and (max-height: 510px) {
    .overlay a {font-size: 20px}
    .overlay .closebtn {
        font-size: 40px;
        top: 15px;
        right: 35px;
    }
    .overlay-content {
        top: 0;
    }
}

.nav-hr {
  border-top-color: #d03238;
  width: 350px;
}



/* ------------------ Home ---------------- */

.container-home {
	width: 100%;
	height: 100vh;
}

.container-home-div {
	position: absolute;
	top: 30%; /* 25% from the top */
  width: 100%; /* 100% width */
  text-align: center;
}

.container-home-img {
	margin-right: 156px
}

.home-h1 {
	font-size: 32px;
	line-height: 40px;
}

.home-boxs-a:hover .home-boxs {
	/*border: 1px solid #d03238;*/
}

.home-boxs {
	/*border: 1px solid #d5d3d3;*/
	text-align: center;
	color: #000000;
	/*padding: 70px 30px;*/
  padding: 15px;
	transition: border-color 0.8s ease;
	position: relative;
}

.home-boxs hr {
	margin-top: 10px;
	margin-bottom: 10px;
	border-top-color: #e73438;
	position: relative;
}

.home-boxs span {
	font-size: 20px;
	position: relative;
}



/* ------------------ La Firma ---------------- */

.container-titular {
	/*position: absolute;
  text-align: center;
  left: 50%;
  top: 0;
  margin: 0;*/
}

.container-titular-div {
    position: relative;
    /* left: -50%; */
    /* background-color: red; */
    /*padding: 30px 15px 50px 15px;*/
    width: 100%;
    color: #FFFFFF;
    text-align: center;
    height: 100vh;
    padding: 40vh 0 0 0;
}

.container-titular h1, .container-titular span {
	position: relative;
	margin: 0!important;
/*     padding: 0 15px; */
}

.container-la-firma {
	background: url('../img/la-firma/background.jpg') no-repeat center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.la-firma-equipo {
	background: url('../img/la-firma/background-footer.jpg') no-repeat center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  height: 500px;
}

.la-firma-hr-v {
	border-right: 1px solid #eee;
}

@media (max-width: 767px) {
    .la-firma-hr-v {
        border-right: 0px none;
    }
}

.la-firma-hr {
	margin: 50px 30px;
}



/* ------------------ Equipo ---------------- */

.container-equipo {
  background: url('../img/equipo/background.jpg') no-repeat center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.equipo-persona {
  border: 1px solid #aaaaaa;
}

.equipo-persona .datos {
  text-align: center;
  border-top: 1px solid #aaaaaa;
  background-color: #eceae9;
  color: #373935;
  padding: 25px 0;
  font-family: 'Conv_SourceSansPro-Regular';
}

.equipo-persona .datos h2 {
  font-family: 'Conv_SourceSansPro-Regular';
  font-size: 18px;
  margin: 0 0 20px 0;
}

.equipo-persona .datos hr {
  margin: 10px;
  border-color: #aaaaaa;
}

.equipo-persona .datos a, .equipo-persona .datos a:visited {
  color: #373935;
}

.equipo-persona .datos a:hover, .equipo-persona .datos a:active, .equipo-persona .datos a:hover, .equipo-persona .datos a:focus {
  color: #000000;
  text-decoration: none;
}

.equipo-persona .ficha {
  text-align: center;
  background-color: #373935;
  color: #FFFFFF;
  padding: 10px;
  height: 46px;
}

.vcard {
  margin-right: 15px;
}

.detalle-cv {
  display: none;
  font-size: 13px;
  padding: 15px;
}

@media (min-width: 992px) {
  .detalle-cv {
    display: none;
  }
}



/* ------------------ Áreas de práctica ---------------- */

.container-areas-de-practica {
	background: url('../img/areas-de-practica/background.jpg') no-repeat center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.box-fluid {
	width: calc(100% / 4);
	height: calc(100vw / 4);
/*	background-color: green;
	border: 1px solid #d0d0cf;*/
	float:left;
}

.carta-container {
/*	height: 250px;
	margin: 10px;*/
	position: relative;
/*	width: 250px;*/
	height: 100%;
	width: 100%;
	z-index: 1;
	border: 1px solid #d0d0cf;
}

.carta-container {
  	-webkit-perspective: 800;
}

.carta {
	box-shadow: 0px 0px 5px #DDD;
	height: 100%;
	width: 100%;
	-webkit-transform-style: preserve-3d;
	-webkit-transition: all 0.5s;
}

.carta-container:hover .carta{
	-webkit-transform: rotateY(180deg);
}

.carta .lado{
	position: absolute;
	height: 100%;
	width: 100%;
	-webkit-backface-visibility: hidden;
}

.carta .frente{
	background: #F0F0F0;
	color: #000;
	height: 100%;
	width: 100%;
  display: table;
}

.carta .atras{
	background-color: #000;
	color: #FFF;
	height: 100%;
	width: 100%;
	-webkit-transform: rotateY(180deg);
  display: table;
}

.carta .frente div, .carta .atras div{
  vertical-align:middle;
  display: table-cell;
  padding: 25px;
}

.carta .frente div h2{
  font-size: 30px;
}

.carta .atras div ul {
	padding: 0;
  list-style-type: none;
}

.carta .atras div ul li {
	margin-bottom: 15px;
	text-align: center;
}


/* ------------------ Dónde estamos ---------------- */

.map_container{
  position: relative;
  width: 100%;
  padding-bottom: 600px;/*30.25vh;*/ /* Ratio 16:9 ( 100%/16*9 = 56.25% ) */
  color: #000000;
}

@media (orientation: landscape) {
    .map_container {
      padding-bottom: 30.25%;
    }
}

.map_container .map_canvas{
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: 0;
  padding: 0;
}

.contact-location {
  background-color: #ececec;
  padding: 100px 0;
}

.contact-location-div {
  background-color: #fcfcfc;
  width: 300px;
  height: 300px;
  padding: 50px 20px;
  margin: auto;
  text-align: center;
}

.contact-location a, .contact-location a:visited {
  color: #000000;
}

.contact-location a:hover, .contact-location a:active, .contact-location a:hover, .contact-location a:focus {
  color: #d03238;
  text-decoration: none;
}

.contact-input {
  margin-left: 20px;
  height: 42px;
  width: calc(100% - 69px);
  padding: 10px;
  font-size: 13px;
}

.contact-textarea {
  height: 106px;
  font-size: 13px;
}

.contact-input-btn {
  margin: 17px 0 0 62px;
  height: 42px;
  width: calc(100% - 69px);
  padding: 10px;
  font-size: 13px;
  border-radius: 0;
  background-color: #d03238;
}



/* ------------------ Footer ---------------- */

footer {
	background-color: #2d2d2c;
	color: #FFFFFF;
	/*padding: 50px;*/
	font-size: 12px;
	letter-spacing: 3px;
}

footer a, footer a:visited {
	color: #FFFFFF;
}

footer a:hover, footer a:active, footer a:hover, footer a:focus {
  color: #DDD;
}

.hr-footer {
	border-top-color: #D3D3D3;
	margin-bottom: 10px;
	max-width: 600px;
}

.copyright {
  font-size: 9px;
}



/* ------------------ Cambios de predef. ---------------- */

/*.container {
	width: 1070px;
}
@media (min-width: 768px) {
  .container {
    width: 1070px;
  }
}
@media (min-width: 992px) {
  .container {
    width: 1070px;
  }
}
@media (min-width: 1100px) {
  .container {
    width: 1070px;
  }
}
@media (min-width: 1200px) {
  .container {
    width: 1070px;
  }
}*/

.modal {
 text-align: center;
}

@media screen and (min-width: 768px) {
 .modal:before {
   display: inline-block;
   vertical-align: middle;
   content: " ";
   height: 100%;
 }
}

.modal-dialog {
 display: inline-block;
 text-align: left;
 vertical-align: middle;
}



/* ------------------ Genéricos ---------------- */

.row-sh {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
  flex-wrap: wrap;
}
.row-sh > [class*='col-'] {
  display: flex;
  flex-direction: column;
}

.container-pre-footer {
	background: url('../img/DELAU&LINTONS-bg-05.svg') left bottom no-repeat;
}

.red-dlau {
	color: #e73438;
}

.block-center {
	margin-left: auto;
	margin-right: auto;
}

.no-pd-lr {
	padding-left: 0px!important;
	padding-right: 0px!important;
}

.pd-lr-200 {
	padding-left: 200px;
	padding-right: 200px;
}

.pd-lr-20 {
	padding-left: 20px;
	padding-right: 20px;
}

.no-mg-lr {
	margin-left: 0px;
	margin-right: 0px;
}

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

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

@media (max-width: 767px) {
    .mg-top-22-xs {
        margin-top: 22px;
    }
}

.mg-top-80 {
  margin-top: 80px;
}

@media (max-width: 767px) {
    .mg-top-80-xs {
      margin-top: 80px;
    }
}

@media (max-width: 991px) {
    .mg-top-80-xs-sm {
      margin-top: 80px;
    }
}

.mg-tb-10 { 
  margin-top: 10px;
  margin-bottom: 10px;
}

.mg-tb-30 {
  margin-top: 30px;
  margin-bottom: 30px
}

.mg-tb-50 {
  margin-top: 50px;
  margin-bottom: 50px
}

.mg-tb-120 {	
	margin-top: 120px;
	margin-bottom: 120px;
}

.mg-tb-250 {
	margin-top: 250px;
	margin-bottom: 250px
}

.pos-relative {
  position: relative;
}

.pos-absolute {
  position: absolute;
}

.dis-inline-block {
 display: inline-block;
}

.list-none {
  list-style-type: none;
  padding: 0;
}


.transparent-box {
  background-color:#ffffff;
  opacity: 0.9;
  position: absolute;
  width: 100%;
  height:100%;
  top:0;
  left:0;
  /*-webkit-box-shadow: 0px 0px 37px 0px rgba(255,255,255,1);
  -moz-box-shadow: 0px 0px 37px 0px rgba(255,255,255,1);
  box-shadow: 0px 0px 37px 0px rgba(255,255,255,1);*/
}

.transparent-box-dark {
  background-color:#000000;
  opacity: 0.7;
  position: absolute;
  width: 100%;
  height:100%;
  top:0;
  left:0;
  /*-webkit-box-shadow: 0px 0px 37px 0px rgba(0,0,0,1);
  -moz-box-shadow: 0px 0px 37px 0px rgba(0,0,0,1);
  box-shadow: 0px 0px 37px 0px rgba(0,0,0,1);*/
}

.flecha {
/*
  width:0px;
  height:0px;
  border-left:25px solid transparent;
  border-right:25px solid transparent;
  border-top:25px solid #FFF;
  font-size:0px;
  line-height:0px;
  margin: 0 auto;
*/
  width: 25px;
  height:25px;
  border: 1px solid #000;
  margin: 0 auto;

  border-top-color: transparent;
  border-left-color: transparent;

  transform:rotate(45deg);
  animation: MOVER 0.5s linear 2s infinite alternate;

  position:absolute;
  bottom:2%;
  right: calc(50% - 12px);
  z-index:200;
}

@keyframes MOVER{
/* 
  from{margin-top:0;}
  to{margin-top:15px;}
*/
  from{bottom:2%;}
  to{bottom:3%;}
}

.flecha:hover{
    cursor:pointer;
}

.bwhite {
  border: 1px solid #FFF!important;
  border-top-color: transparent!important;
  border-left-color: transparent!important;
}

/* ----------- NUEVO --------------- */

.menu-btn{
	max-width: 50px;
}

.menu-logo {
	max-width: 70px;
}

.overlay-logo {
	max-width: 140px;
}

.marbella-madrid{
	font-size: 1em;
/* 	font-style: italic; */
	font-weight: 600;
	color: #e73438;
	letter-spacing: 8px;
}

.modal-img {
	max-width: 906px;
}


.ubi-contact-icon {
	max-width: 47px;
	padding-bottom: 20px;
}


.form-icon{
	max-width: 42px;
	float: left!important;
}


.ficha-icon{max-width: 24px;}

