* {
	box-sizing: border-box;
}
a {
	color: inherit;
}
.img-resp {
	display: none;
}
a.btn {
    font-size: 18px;
    line-height: 23px;
    font-weight: 100;
    color: #fff;
    display: block;
    background-color: #3e6fbe;
    border: 1px solid #3e6fbe;
    max-width: 240px;
    padding: 10px;
    text-align: center;
    margin-top: 20px;
}
a.btn:hover {
	background-color: transparent;
	color: #3e6fbe;
}
h1, h2 {
	font-size: 25px;
	line-height: 30px;
	font-weight: 500;
	color: #4b4b4b;
}
p {
	font-size: 18px;
	line-height: 23px;
	font-weight: 100;
	color: #4b4b4b;
}
.after:after {
    content: "";
    position: relative;
    height: 5px;
    background: #3e6fbe;
    display: block;
    margin-top: 10px;
    margin-bottom: 25px;
    width: 50px;
}
.flechabajar {
    position: absolute;
    bottom: 40px;
    text-align: center;
    left: 0;
    right: 0;
}
/*---------------------------------------------------------------CUSTOM PARA LA PÁGINA---------------------------------------------------------------*/
section.cabecera-home {
	height: 100vh;
	background-image: url("../img/cabecera-home.jpg");
	background-position: center;
	background-size: cover;
	padding-top: 180px;
	position: relative;
}
section.cabecera-home .texto-izq {
	float: left;
	width: 50%;
	padding-top: 150px;
	padding-right: 30px;
}
section.cabecera-home .texto-izq h1 {
	font-size: 40px;
	line-height: 45px;
	font-weight: 600;
	color: #fff;
	margin-bottom: 20px;
}
section.cabecera-home .texto-izq h3 {
	font-size: 25px;
	line-height: 30px;
	font-weight: 500;
	color: #fff;
}
section.cabecera-home .form-der {
	float: right;
	width: 50%;
}
section.cabecera-home .form-der form {
    max-width: 460px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    padding: 30px 70px;
    background: #3e6fbe;
    position: relative;
}
section.cabecera-home .form-der h3 {
    font-size: 22px;
    line-height: 27px;
    font-weight: 100;
    color: #fff;
    margin-bottom: 18px;
}
section.cabecera-home .form-der h4 {
    font-size: 16px;
    line-height: 21px;
    font-weight: 100;
    color: #fff;
    margin-top: 10px;
    margin-bottom: 4px;
}
section.cabecera-home .form-der h4:first-child {
	margin-top: 0;
}
section.cabecera-home .form-der input[type="text"] {
    width: 100%;
    background: #fff;
    font-size: 16px;
    line-height: 21px;
    font-weight: 100;
    color: #4b4b4b;
    padding: 2px 6px !important;
    border: 1px solid #fff;
    border-radius: 0;
}
section.cabecera-home .form-der select {
    width: 100%;
    background: #fff;
    font-size: 16px;
    line-height: 21px;
    font-weight: 100;
    color: #4b4b4b;
    padding: 3px 6px !important;
    border: 1px solid #fff;
    border-radius: 0;
}
section.cabecera-home .form-der textarea {
    resize: none;
    width: 100%;
    background: #fff;
    font-size: 16px;
    line-height: 21px;
    font-weight: 100;
    color: #4b4b4b;
    padding: 2px 6px !important;
    border: 1px solid #fff;
    height: 130px;
    border-radius: 0;
}
section.cabecera-home .form-der p.polp {
    margin-top: 15px;
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 19px;
    font-weight: 100;
    color: #fff;
   	text-align: right;
}
section.cabecera-home .form-der p.polp label {
    padding-left: 8px;
    padding-right: 0;
}
section.cabecera-home .form-der p.polp label, section.cabecera-home .form-der p.polp input {
	display: inline;
}
section.cabecera-home .form-der p.polp label, section.cabecera-home .form-der p.polp a {
    font-size: 14px;
    line-height: 19px;
    font-weight: 100;
    color: #fff;
}
section.cabecera-home .form-der p.polp a {
	cursor: pointer;
}
section.cabecera-home .form-der input[type="button"] {
	font-size: 16px;
	line-height: 21px;
	font-weight: 100;
	color: #fff;
	background: transparent;
	border: 1px solid #fff;
	border-radius: 0;
	width: 100%;
	padding: 5px;
	cursor: pointer;
}
section.cabecera-home .form-der input[type="button"]:hover {
  background: #fff;
  color: #3e6fbe !important;
}
section.cabecera-home .logoflotante {
  position: absolute;
  left: -30px;
  bottom: -45px;
  max-width: 300px;
}
section.legales {
	background-color: #1f385f;
	padding: 25px 0;
	text-align: center;
}
section.legales ul li {
    display: inline-block;
    text-align: center;
    font-size: 16px;
    line-height: 21px;
    font-weight: 100;
    color: #fff;
}
section.legales ul li a {
	cursor: pointer;
}
header {
	position: absolute;
	top: 0;
	z-index: 10;
	width: 100%;
	padding-top: 25px;
}
header .logo-izq {
	float: left;
	margin-top: 8px;
}
header .texto-der {
	float: right;
	text-align: right;
}
header .texto-der.resp {
	display: none;
}
header .texto-der p {
	color: #fff;
	margin: 8px 0;
}
header .texto-der p a {
	font-weight: 600;
}
header .texto-der p img {
	margin-right: 10px;
	margin-left: 15px;
	vertical-align: middle;
	position: relative;
	top: -2px;
}
section.intro-home {
	padding: 130px 0;
}
section.intro-home .texto-izq {
	display: table-cell;
	vertical-align: middle;
	padding-right: 15px;
}
section.intro-home .img-der {
	display: table-cell;
	vertical-align: middle;
	width: 50%;
	text-align: center;
}
section.medio-home {
	text-align: center;
}
section.medio-home h2:after {
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 80px;
}
section.medio-home ul li {
	display: inline-table;
	width: 22%;
	margin: 1%;
}
section.medio-home ul li h3 {
	font-size: 22px;
	line-height: 27px;
	font-weight: 500;
	color: #4b4b4b;
	margin-top: 8px;
	margin-bottom: 5px;
}
section.medio-home h4 {
	font-size: 20px;
	line-height: 25px;
	font-weight: 100;
	color: #4b4b4b;
	margin-top: 40px;
	max-width: 640px;
	margin-right: auto;
	margin-left: auto;
}
section.medio-home a.btn {
	margin-right: auto;
	margin-left: auto;
}
section.cajas-home {
	padding: 80px 0;
	text-align: center;
}
section.cajas-home .caja {
	display: inline-table;
	width: 340px;
	height: 430px;
	margin: 0 15px;
	position: relative;
	text-align: left;
	background-position: center;
	background-size: cover;
}
section.cajas-home .caja.uno {
	background-image: url(../img/cajas-home-caja-uno.jpg);
}
section.cajas-home .caja.dos {
	background-image: url(../img/cajas-home-caja-dos.jpg);
}
section.cajas-home .caja.tres {
	background-image: url(../img/cajas-home-caja-tres.jpg);
}
section.cajas-home .caja .contenedor {
	position: absolute;
    top: 315px;
    left: 20px;
    padding-right: 20px;
}
section.cajas-home .caja .contenedor h4 {
	font-size: 20px;
	line-height: 25px;
	font-weight: 700;
	color: #fff;
}
section.cajas-home .caja .contenedor a.btn {
	width: 145px;
    padding: 6px;
}
section.cajas-home .caja .contenedor a.btn:hover {
	border-color: #fff;
	color: #fff;
}
section.final-home {
	padding: 90px 0;
}
section.final-home h2:after {
	margin-bottom: 40px;
}
section.final-home .col-uno {
	float: left;
	width: 32%;
	margin-right: 4%;
}
section.final-home .col-dos {
	float: left;
	width: 64%;
}
section.final-home h4 {
	font-size: 20px;
	line-height: 25px;
	font-weight: 500;
	color: #4b4b4b;
	border-bottom: 1px solid #b2b2b2;
	padding-bottom: 5px;
}
section.final-home .col-uno p,
section.final-home .col-dos p {
	margin-top: 10px;
}
section.final-home .col-dos p {
	display: inline-table;
	width: 48%;
}
section.final-home .col-dos p.margen {
	margin-right: 3%;
}
section.final-home .col-uno p span,
section.final-home .col-dos p span {
	float: right;
}
section.final-home p.iva {
	margin-bottom: 0;
	margin-top: 60px;
}
section.anexo-home {
	padding: 70px 0 120px;
}
section.anexo-home .img-izq {
	display: table-cell;
	vertical-align: middle;
	width: 50%;
	text-align: center;
}
section.anexo-home .texto-der {
	display: table-cell;
	vertical-align: middle;
	padding-left: 20px;
}
section.pie {
	background-color: #000;
	padding: 70px 0;
}
section.pie .logo-izq {
	float: left;
	margin-top: 8px;
}
section.pie .texto-der {
	float: right;
	text-align: right;
}
section.pie .texto-der p {
	color: #fff;
	margin: 8px 0;
}
section.pie .texto-der p.resp {
	display: none;
}
section.pie .texto-der p a {
	font-weight: 600;
}
section.pie .texto-der p img {
	margin-right: 10px;
	margin-left: 15px;
	vertical-align: middle;
	position: relative;
	top: -2px;
}
/*------------------------------------RESPONSIVE------------------------------------*/
@media (max-height: 860px) {
	section.cabecera-home {
		height: inherit;
		padding-bottom: 120px;
	}
}
@media (max-width: 1200px) {
	section.formulario-interiores .img-izq {
		display: none;
	}
	section.formulario-interiores .form-der {
		float: none;
		width: inherit;
	}
	section.cajas-home .caja {
		width: 31%;
		margin: 0 5px;
	}
	section.cajas-home .caja .contenedor h4 {
		font-size: 18px;
		line-height: 23px;
	}
	section.medio-home ul li {
		width: 30%;
	}
	section.cabecera-home {
		height: inherit;
		padding-bottom: 120px;
	}
}
@media (max-width: 1000px) {
	section.anexo-home .img-izq {
		display: block;
		width: inherit;
		margin-bottom: 40px;
	}
	section.anexo-home .texto-der {
		display: block;
		padding: 0;
		max-width: 760px;
		margin-right: auto;
		margin-left: auto;
		text-align: center;
	}
	section.anexo-home .texto-der h2:after,
	section.anexo-home .texto-der a.btn {
		margin-right: auto;
		margin-left: auto;
	}
	section.cabecera-home .texto-izq {
	    float: none;
	    width: inherit;
	    padding-top: 0;
	    padding-right: 0;
	    text-align: center;
	    max-width: 760px;
	    margin-right: auto;
	    margin-left: auto;
	    margin-bottom: 50px;
	}
	section.cabecera-home .form-der {
		float: none;
		width: inherit;
	}
	section.cabecera-home .form-der form {
		max-width: 760px;
	}
	section.final-home .col-uno,
	section.final-home .col-dos {
		float: none;
		width: inherit;
		margin-right: 0;
		margin-bottom: 30px;
	}
	section.intro-home .img-der {
		display: none;
	}
	section.intro-home .texto-izq {
		display: block;
		padding: 0;
		max-width: 760px;
		margin-right: auto;
		margin-left: auto;
		text-align: center;
	}
	section.intro-home .img-resp {
		display: block;
		text-align: center;
		margin-bottom: 40px;
	}
	section.intro-home .texto-izq h1:after,
	section.intro-home .texto-izq a.btn {
		margin-right: auto;
		margin-left: auto;
	}
}
@media (max-width: 800px) {
	section.medio-home ul li {
		width: 47%;
		margin: 20px auto;
	}
}
@media (max-width: 760px) {
	section.formulario-interiores .form-der .col, section.formulario-interiores .form-der .col.ultima {
	    float: none;
	    width: inherit;
	    margin-right: 0;
	}
	section.pie .logo-izq {
		float: none;
		text-align: center;
		margin-bottom: 30px;
	}
	section.pie .texto-der {
		float: none;
		text-align: center;
	}
	section.cajas-home .caja .contenedor {
		bottom: 30px;
		top: inherit;
	}
	section.cajas-home .caja {
		display: block;
		width: 100%;
		max-width: 460px;
		margin: 30px auto;
	}
	section.final-home .col-dos p.margen,
	section.final-home .col-dos p {
		display: block;
		margin-right: 0;
		width: inherit;
	}
	header .logo-izq {
		float: none;
		text-align: center;
		margin-bottom: 10px;
	}
	header .texto-der {
		float: none;
		text-align: center;
	}
}
@media (max-width: 500px) {
	section.cabecera-home {
		padding-top: 220px;
	}
	header .texto-der {
		display: none;
	}
	header .texto-der.resp {
		display: block;
	}
	section.pie .texto-der p {
		display: none;
	}
	section.pie .texto-der p.resp {
		display: block;
	}
	section.legales ul li.separador {
		display: none;
	}
	section.legales ul li {
		display: block;
	}
	section.medio-home ul li {
		display: block;
		width: inherit;
		margin: 40px 0;
	}
	section.cabecera-home .form-der form {
		padding: 30px;
	}
	section.cabecera-home .texto-izq h1 {
		font-size: 30px;
		line-height: 35px;
	}
	section.cabecera-home .texto-izq h3 {
		font-size: 18px;
		line-height: 23px;
	}
}
/*  Generic Cookiebot custom styles:*/
div#CookieDeclarationUserStatusLabelOff {
    font-size: 25px;
    line-height: 30px;
    font-weight: 500;
    color: #4b4b4b;
    margin-top: 40px;
    margin-bottom: 26px;
}
p#CookieDeclarationConsentIdAndDate span {
	margin-bottom: 16px;
}
div#CookieDeclarationChangeConsent {
    font-size: 18px;
    line-height: 23px;
    font-weight: 500;
    color: #e4b669;
    margin-top: 40px;
    margin-bottom: 26px;
    text-decoration: underline;
}
.CookieDeclarationTableCell {
    font-size: 16px;
    line-height: 21px;
    font-weight: 100;
    color: #4b4b4b;
}
/*----------------*/
#CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelectionWrapper #CybotCookiebotDialogBodyLevelButtonLevelOptinDeclineAll {
  background-color: #4b4b4b !important;
  border-color: #4b4b4b !important;
}
a#CybotCookiebotDialogBodyLevelButtonAccept, a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll,
a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelection {
  background-color: #0070c0 !important;
  border-color: #0070c0 !important;
}
#CybotCookiebotDialogPoweredbyImage {
  display: none !important;
}
#CybotCookiebotDialog br, #CybotCookiebotDialog div, #CybotCookiebotDialog td {
  margin-left: 0 !important;
  padding-left: 0 !important;
}
#CybotCookiebotDialog {
  -webkit-box-shadow: 0px -1px 7px 0px rgba(176,173,176,1) !important;
  -moz-box-shadow: 0px -1px 7px 0px rgba(176,173,176,1) !important;
  box-shadow: 0px -1px 7px 0px rgba(176,173,176,1) !important;
  padding: 10px 5% !important;
  max-width: 100% !important;
  box-shadow: 0 0 15px 2px rgb(0 0 0 / 36%) !important;
  overflow-y: scroll !important;
}

#CybotCookiebotDialog * {
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1.45 !important;
  color: #666666;
  font-family: Acciona, Helvetica, Arial, sans-serif !important;
}

#CybotCookiebotDialogBodyContent #CybotCookiebotDialogBodyContentTitle {
  color: #666666;
}

#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelectionWrapper {
  float: none;
  display: flex;
  padding-top: 2px;
  padding-bottom: 8px;
}

#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelectionWrapper * {
  float: none !important;
}

#CybotCookiebotDialogBody * {
  float: none !important;
}

#CybotCookiebotDialogBody {
  max-width: 100% !important;
  padding: 0px;
}

#CybotCookiebotDialogBodyLevelDetailsButton:focus {
  outline: none;
}

#CybotCookiebotDialogBodyLevelDetailsWrapper, #CybotCookiebotDialogDetailBodyContentTabsAbout,
.CybotCookiebotDialogDetailBodyContentCookieContainerTypes, .CybotCookiebotDialogDetailBodyContentCookieTypeTable thead th {
  background-color: #E8E8E8 !important;
}

/*CONTENEDOR BOTONES*/
#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelectionWrapper {
  display: flex !important;
}

#CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelectionWrapper #CybotCookiebotDialogBodyLevelButtonLevelOptinDeclineAll {
  color: white;
}

#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelectionWrapper .CybotCookiebotDialogBodyButton {
  text-transform: uppercase !important;
  font-weight: 500 !important;
  display: flex;
  justify-content: center;
  align-items: center;
  float: none !important;
  padding: 2px 4px !important;
}

/*DESPLEGABLE*/
#CybotCookiebotDialogBodyLevelButtons {
  float: none !important;
}

#CybotCookiebotDialogBodyLevelButtonsTable {
  padding-bottom: 4px;
  margin: 11px 0px 9px !important;
}

/*MEDIA QUERIES*/
@media all and (min-width: 1280px) {
  #CybotCookiebotDialog {
    padding: 15px 10% !important;
  }
}

@media all and (max-width: 679px) {
  #CybotCookiebotDialog {
    padding: 10px 30px !important;
  }

  #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelectionWrapper {
    flex-direction: column;
    align-items: center;
    width: 100%;
  }

  #CybotCookiebotDialogBodyContent {
    padding-top: 1px !important;
  }

  #CybotCookiebotDialogDetailBodyContentTextOverview {
    width: 99% !important;
  }
}
@media all and (min-width: 750px) {
  #CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelectionWrapper #CybotCookiebotDialogBodyLevelButtonLevelOptinDeclineAll {
    margin-left: 8px !important;
  }
}
@media all and (min-width: 680px) {
  #CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelectionWrapper
  #CybotCookiebotDialogBodyLevelButtonLevelOptinDeclineAll {
    width: 270px !important;
  }
  a#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll {
    width: 251px !important;
  }

  #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowallSelectionWrapper {
    width: 656px !important;
    justify-content: space-between !important;
    flex-direction: row;
  }

  #CybotCookiebotDialogBodyLevelButtons {
    display: flex;
    justify-content: flex-start;
  }

  #CybotCookiebotDialogBodyLevelButtonsTable {
    width: 656px !important;
    display: flex !important;
  }

  #CybotCookiebotDialogBodyLevelDetailsWrapper {
    width: 203px;
  }

  #CybotCookiebotDialogBodyLevelButtonsSelectPane {
    width: 426px !important;
  }

  #CybotCookiebotDialogBodyLevelDetailsButton {
    width: 80%;
  }

  #CybotCookiebotDialogDetailBody {
    width: calc(100% - 8px) !important;
    max-width: calc(100% - 8px) !important;
    margin-left: 8px !important;
  }

  #CybotCookiebotDialogDetailBodyContentTextOverview {
    width: 100% !important;
  }
}

/*MOBILE GIROSCOPE ORIENTATION*/
@media (orientation: landscape) and (max-height: 414px) {
  #CybotCookiebotDialog {
    top: 32% !important;
    transform: scale(0.92) !important;
    transform-origin: 0px bottom;
    max-height: 92% !important;
    bottom: 0px !important;
    position: fixed !important;
  }
}

@media (orientation: landscape) and (max-height: 380px) {
  #CybotCookiebotDialog {
    top: 10% !important;
    transform: scale(0.92) !important;
    transform-origin: 0px bottom;
    max-height: 92% !important;
    bottom: 0px !important;
    position: fixed !important;
  }
}

@media (orientation: landscape) and (max-height: 320px) {
  #CybotCookiebotDialog {
    display: block;
    top: 3% !important;
    transform: scale(0.92) !important;
    transform-origin: 0px bottom;
    max-height: 92% !important;
    bottom: 0px !important;
    position: fixed !important;
  }
}

@media (orientation: portrait) and (max-width: 320px) and (max-height: 580px) {
  #CybotCookiebotDialog {
    display: block;
    top: 15% !important;
    transform: scale(0.84) !important;
    transform-origin: 0px bottom;
    max-height: 95% !important;
    bottom: 0px !important;

  }
}
