/**
 * @file
 * Subtheme specific CSS.
 */

/*
@import url('https://fonts.googleapis.com/css?family=Nunito:200,200i,300,300i,400,400i,600,600i,700,700i,800,800i,900,900i');
@import url('https://fonts.googleapis.com/css?family=Roboto+Condensed:200,200i,300,300i,400,400i,600,600i,700,700i,800,800i,900,900i'); */

/* roboto-condensed-regular - latin */

@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 400;
  src: local(''),
       url('../fonts/roboto-condensed-v19-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/roboto-condensed-v19-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}


html, body, main {
  height: 100%;
  width: 100%;
  font-size: 16px;
}

body {
  margin-top: 0;
  font-family: 'Lato', sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: 1px;
  font-size: 1.2rem;
  line-height: 2rem;
  background-color: #fff;
  color: #444;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: .5rem;
  font-weight: 300;
  line-height: 1;
  font-family: 'Lato', 'Roboto', 'sans-serif';
  font-style: normal;
}

.h1, h1 {
  font-size: 2.5rem;
  color: #aaa;
  background: #eee;
  text-align: center;
  padding: 0.5rem 0 1rem 0;
  margin-bottom: 0;
}

.h2, h2 {
  font-size: 4rem;
}
.paragraph .field--name-field-titulo {
  text-align: center;
}
.paragraph .field--name-field-titulo h2 {
  position: relative;
  display: inline;
}
.paragraph .field--name-field-titulo h2:after {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2rem;
}  


.h2:after, h2:after, .h3:after, h3:after {
  content: "";
  display: block;
  width: 5rem;
  padding-top: 3px;
  border-bottom: 2px solid;
}
.h3, h3 {
  font-size: 2.5rem;
}

/****************************************************/
/* Correcciones a estilos del tema */
/****************************************************/
.field--type-entity-reference {
  margin: 0;
}
.node .field--type-image {
	float: none;
	margin: 0;
}
.user-logged-in #navbar-main {
  margin-top: 10rem;
}
.user-logged-in #navbar-main.fixed {
  margin-top: 5rem;
}
.user-logged-in p, .user-logged-in ul {
  margin: unset;
  font-size: unset;
  line-height: unset;
  font-weight: unset;
  letter-spacing: unset;
  text-align: unset;
}

/****************************************************/
/* Correcciones a estilos del tema  */
/****************************************************/



/*
  ul.menu li::before {
  content: "";
  display: block;
}
*/

#view-thumbnail-target-id-table-column, .views-field views-field-thumbnail__target-id, #views-form-media-media-page-list img {
  width: 200px;
}

.slide__caption {
  left: 0;
  padding: 0px;
  top: 10%;
}
/****************************************************/
/* Estilos para navbar, incluye logo, idioma y menú */
/****************************************************/

/* Resuelve el problema que genera responsive-menu, no deja ver el menu fixed que se tenia con superfish */
.mm-wrapper--position-left .mm-slideout, .mm-wrapper--position-right .mm-slideout {
  -webkit-transform: none;
  transform: none;
}
.mm-btn--next::after, .mm-btn--prev::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	width: 8px;
	height: 8px;
	margin: auto;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border: 2px solid #fff;
	border-bottom: none;
	border-right: none;
	-webkit-transform: rotate(var(--mm-btn-rotate));
	-ms-transform: rotate(var(--mm-btn-rotate));
	transform: rotate(var(--mm-btn-rotate));
}


#navbar-top .navbar-form {
  width: 100%;
}
section.region-top-header-form {
  /*position: fixed;*/
  top: 0;
  right: 0;
  width: 100%;
  height: 35px;
  text-align: right;
  background: #ea2030;
  font-size: 1rem;
}
section.region-top-header-form {
  flex-wrap: nowrap;
  justify-content: flex-end;
}

#block-addtoanybuttons {
  width: unset;
  margin-right: 3rem;
}

section.region-top-header-form .block-superfishmenu-contacto {
  width: unset;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 1rem;
  font-weight: bold;
  padding: 0;
  background-color: #f8af50;
  margin-right: 3rem;
}

ul.sf-menu a, ul.sf-menu span.nolink {
  display: block;
  padding: 0.6em 1.2em;
  position: relative;
}

#block-menuauxiliar ul.sf-menu a, #block-menuauxiliar ul.sf-menu span.nolink {
  padding: 0.6em 0.6em;
}
#block-menuauxiliar ul.sf-menu li:first-child {
  margin-right: 1rem;
}
#block-menuauxiliar {
  margin-right: 2rem;
}

section.region-top-header-form a, section.region-top-header-form .link {
  color: #fff;
  text-decoration: none;
  font-family: 'Roboto';
  font-style: normal;
  font-weight: normal;
}
section.region-top-header-form .block-superfishmenu-contacto a::after {
  content: " ";
  background: url("/sites/default/files/media/images/paper-plane.svg") no-repeat center center;
  width: 1rem;
  height: 1rem;
  color: #fff;
  background-size: contain;
  display: inline-block;
  margin-left: 0.5rem;
  vertical-align: top;
}


/* icon phone en telefono menu auxiliar
section.region-top-header-form .block-superfishmenu-auxiliar a::before {
  content: " ";
  background: url("/sites/default/files/media/images/phone-fill.svg") no-repeat center center;
  width: 1rem;
  height: 1rem;
  color: #fff;
  background-size: contain;
  display: inline-block;
  margin-right: 0.5rem;
  vertical-align: top;
}
*/


.a2a_svg { border-radius: 100% !important; }
/*  se pasó a la region-top-header-form
#block-addtoanybuttons {
  position: fixed;
  top: 0;
  right: 0;
  padding-right: 5rem;
  width: 100%;
  text-align: right;
  background: #ea2030;
}
*/
#block-addtoanybuttons.fixed {
  background: #ea2030;
  color: transparent !important;
}
.addtoany_list > a, .addtoany_list a img, .addtoany_list a > span {
  vertical-align: text-bottom;
}
#navbar-top {
  background-color: #055a8e;
  z-index: 1;
}

#CollapsingNavbar {
  display: flex;
  flex-basis: auto;
}


#CollapsingNavbar li {
/* La fuente, estilo y weight se define en appearance -> @fontyourface
  font-family: 'Lato';
  font-style: normal;
  font-weight: normal;
*/
  letter-spacing: 0.5px;
  font-size: 1rem;
  text-transform: uppercase;
}

#navbar-main {
  position: fixed;
  background-color: transparent;
  top: 0;
  margin-top: 3rem;
  width: 100%;
  z-index: 1;
  text-decoration: none;
  transition: all 0.4s ease;
}

/* Logo */
.navbar-brand {
  width: 9vw;
  height: auto;
  min-width: 140px;
  padding: 0;
  margin-left: 10vw;
  transition: all 0.4s ease;
}
/* Fin logo */

#block-mainnavigation {
  margin-right: 3rem;
}

/* #block-mainnavigation ul li:last-child { */
#block-mainnavigation .menu > li:last-child {
  /*background: #ea2030;*/
  background: #0c1d3c;
}
/* #navbar-main.fixed #block-mainnavigation ul li:last-child { */
#navbar-main.fixed #block-mainnavigation .menu > li:last-child {
  background: #F8AF50;
}

ul.sf-menu .sf-with-ul.menuparent {
  padding-right: 2em;
}

#navbar-main.fixed li:last-child a, #navbar-main.fixed li:last-child .link {
  color: #fff;
}
#navbar-main.fixed li:last-child a:hover, #navbar-main.fixed li:last-child .link:hover {
  color: #fff;
}

/*menu principal */
ul.sf-menu.menu, ul.sf-menu.menu ul, ul.sf-menu.menu li {
  margin: 0;
  padding: 0;
}
ul.sf-menu.menu {
  float: right;
}
/* fin menu ppal */

#block-mainnavigation a, #block-mainnavigation .link, #navbar-main a, #navbar-main .link {
  color: #fff;
  text-decoration: none;
  position: relative;
  /*overflow: hidden;*/
}

/*#navbar-main a:hover, #navbar-main a:focus, #navbar-main .link:hover, #navbar-main .link:focus {*/
#block-mainnavigation a:hover, #block-mainnavigation a:focus, #block-mainnavigation .link:hover, #block-mainnavigation-main .link:focus {
  color: #fff;
  text-decoration: none;
/*  background: url("/sites/default/files/media/images/triangulo-r.svg") no-repeat center center;
  background-position: center -2px;*/
  transition: all 0.4s ease;
}

#block-mainnavigation a:hover::before, #block-mainnavigation a:focus::before, #block-mainnavigation .link:hover::before, #block-mainnavigation-main .link:focus, #block-mainnavigation .active-trail menuparent a::before {
  position: absolute;
  content: " ";
  width: 1rem;
  height: 1rem;
  top: -5px;
  left: 50%;
  background: url("/sites/default/files/media/images/triangulo-r.svg") no-repeat center center;
  background-position: center -2px;
}
.fixed #block-mainnavigation a:hover::before, .fixed #block-mainnavigation a:focus::before, .fixed #block-mainnavigation .link:hover::before, .fixed #block-mainnavigation-main .link:focus, .fixed #block-mainnavigation .active-trail a::before {
  background: url("/sites/default/files/media/images/triangulo-w.svg") no-repeat center center;
  width: 0.9rem;
  height: 0.7rem;
  top: -7px;
}

.fixed ul.sf-menu.sf-horizontal.sf-shadow ul, .fixed ul.sf-menu.sf-vertical.sf-shadow ul, .fixed ul.sf-menu.sf-navbar.sf-shadow ul ul {
  background: #ea2030;
}

#navbar-main a:active, #navbar-main .link:active {
  color: #ddd;
}

.navbar {
  padding: 0;
  margin: 0;
}

.navbar-toggler, .sf-accordion-toggle {
  display: none;
}

.responsive-menu-toggle-icon {
  right: 15vw;
}
.mm-panel {
  background: #ea2030;
  color: #fff;
}
.mm-menu--theme-light {
  --mm-color-background: #ea2030;
  --mm-color-border: rgb(0 0 0 / 0.15);
  --mm-color-icon: rgb(0 0 0 / 0.4);
  --mm-color-text: #fff;
  --mm-color-text-dimmed: #fff;
  --mm-color-background-highlight: rgb(0 0 0 / 0.05);
  --mm-color-background-emphasis: rgb(255 255 255 / 0.75);
  --mm-color-focusring: #06c;
}

#navbar-main.fixed {
  position: fixed;
  background: #ea2030;
  margin-top: 0;
  animation: slide-in-anim .52s ease 0s 1 normal both;
  transition: all 0.4s ease;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
}
.fixed .navbar-brand {
  width: 5vw;
  min-width: 95px;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  transition: all 0.4s ease;
}

/****************************************************/
/* FIN Estilos para navbar, incluye logo, idioma y menú */
/****************************************************/

/* portada con slide en background NOTA: el slide está puesto de primero en navbar-top */
/* Para que la imagen del slide quede como background se debe editar views-view-field--field-slide.html.twig */
/*#navbar-top > div, #navbar-top > section {*/
#slidehome {
  top: 0;
  width: 100%;
  height: 100vh;
  background-size: cover;
  overflow: hidden;
}

.slidehome {
  width: 100%;
  height: 100vh;
  background-size: cover;
}
/* FIN portada con slide background */


/* otras configuraciones para slideshow como imagenes  -- -en prueba */
/* Portada home */
/* slick */
#slick-node-page-portada-custom-1-1 img, #slick-node-page-portada-default-1-1 img {
  height: 100vh;
  max-width: 100%;
  object-fit: cover;
}


/* antes era con slideshow */
#block-views-block-portada-slide--2, #block-views-block-portada-imagen--2 {
  width: 100vw;
  max-height:  100vh;
  height: auto;
}
.views_slideshow_cycle_slide {
  height: 100%;
  position: static !important;
}



.field--type-image img, .field--name-field-user-picture img {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
}

.node .field--type-string {
  float: none;
  margin: 0;
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
}

.field--type-string iframe, .field--name-field-media-oembed-video iframe {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}


.field--type-image img.image-style-thumbnail {
  width: 2rem;
  height: 2rem;
}

/*.region-top-header-form,*/ #block-views-block-slidehome-block-1 {
  width: 100%;
  height: 100vh;
  object-fit: cover;
  overflow: hidden;
}

.row {
  --bs-gutter-x: 0;
  --bs-gutter-y: 0;
  width: 100%;
}

/* frase home */

#block-frasehome, #frase-portada {
  position: absolute;
  top: 60vh;
  left: 7vw;
  color: #fff;
  width: fit-content;
  border-left: 2px solid;
  padding-left: 1.5rem;
}
 .slick--field-portada .slide__caption {
  position: absolute;
  top: 60vh;
  left: 7vw;
  color: #fff;
  width: fit-content;
  border-left: 2px solid;
  padding-left: 1.5rem;
}


.slide--caption--bottom .slide__caption {
  bottom: unset;
}
.slick--field-portada .slide__caption h2 {
  white-space: pre-line;
}
.slick--field-portada .slide__caption h2:after {
  border-bottom: none;
}
.page-node-1 #frase-portada { /* Home */
  top: 89vh;
  left: 7vw;
  border-left: none;
}

.page-node-1 .slick--field-portada .slide__caption { /* Home */
  top: 65vh;
  left: 7vw;
}

.page-node-2 #frase-portada { /* About us */
  top: 66vh;
  left: 10vw;
}
.page-node-3 #frase-portada { /* Areas we serve */
  top: 59vh;
  left: 7vw;
}
.page-node-4 #frase-portada { /* Our clients */
  top: 49vh;
  left: 2vw;
}
.page-node-5 #frase-portada { /* Headquarters */
  top: 65vh;
  left: 7vw;
}
.page-node-20 #frase-portada { /* Our services */
  top: 69vh;
  left: 21vw;
}
.page-node-32 #frase-portada { /* Request quote */
  top: 39vh;
  left: 10vw;
}



#block-frasehome h2, #frase-portada h2 {
  font-size: 4rem;
  text-shadow: 0 3px 6px rgba(0, 0, 0, 0.3);
}

/*.area-served a {
  color: #fff;
  background-color: #aaa;
  padding: 4px 18px;
  border-radius: 9px;
  font-size: 0.8rem;
  text-decoration: none;
  margin-top: 1rem;
  display: inline-block;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
}
.area-served a:hover {
  background-color: #999;
  color: #fff;
}
*/
#enlace-portada a, #block-frasehome a, .area-served a {
  color: #fff;
  padding: 4px 2rem;
  border-radius: 0; 
  font-size: 1.2rem;
  text-decoration: none;
  text-transform: uppercase;
  margin-top: 1rem;
  display: inline-block;
  background-color: #ea2030;
  background-color: #0c1d3c;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
}
#enlace-portada a:hover, #block-frasehome a:hover, .area-served a:hover {
  background-color: #f8af50;
  color: #fff;
}

#enlace-portada a::after, #block-frasehome a::after, .area-served a::after {
  content: " ";
  background: url("/sites/default/files/media/images/flecha-derecha.svg") no-repeat center center;
  width: 1.5rem;
  height: 1rem;
  color: #fff;
  background-size: contain;
  display: inline-block;
  margin-left: 0.5rem;
  vertical-align: baseline;
}

.area-served a {
  margin: 0;
  font-size: 0.8rem;
  position: absolute;
  top: 70%;
  left: 3rem;
  margin-top: 4rem;
}
.area-served a::after {
  width: 1rem;
  height: 0.6rem;
}

/* Para ponerlo transparente */
.area-served a {
  /* background-color: transparent;
  border: 1.5px solid;*/
}


/* FIN: portada con slide en background NOTA: el slide está puesto de primero en navbar-top */
/* Para que la imagen del slide quede como background se debe editar views-view-field--field-slide.html.twig */


/* **************************** */
/* PORTADA */

.field--name-field-portada img {
  height: 80vh;
  max-height: 80vh;
  width: 100%;
  object-fit: cover;
}


/* Carousel logos */

.view-carousel-logos {
  margin: 2rem 0 2rem 0;
}
.view-carousel-logos .field--type-image img {
  width: unset;
  height: unset;
  position: relative;
  /*top: 50%;
 *   left: 50%;
 *     transform: translate(-50%,-50%);*/
  max-width: 200px;
  max-height: 100px;
  margin: 0 auto;
}

.view-carousel-logos .slick-track {
  display: flex;
  align-items: center;
}




/* PARRAFOS */

/*
 .paragraph.izquierda .layout--twocol-section .layout__region--first {
  padding-left: 3rem;
}

.paragraph.derecha   .layout--twocol-section .layout__region--first {
  padding-right: 3rem;
}
*/

/*
.paragraph.container .layout--twocol-section .layout__region--second, .paragraph.container.izquierda .layout--twocol-section .layout__region--second {
  padding: 0 0 0 3rem;
}
.paragraph.container.derecha .layout--twocol-section .layout__region--second {
  padding: 0 3rem 0 0;
}
*/

/*
.paragraph--type--parrafo-img.container, .paragraph--type--parrafo-servicios.container {
  padding: 5%;
}
.paragraph--type--parrafo-img, .paragraph--type--parrafo-servicios {
  padding: 5% 0;
}
*/
/* Mejor dejar todos los p en párrafos iguales, no hacer diferente el tamaño de fuente para parrafo-img
.paragraph.paragraph--type--parrafo-img p {
  font-size: 1.2rem;
  line-height: 2.5rem;
  text-align: justify;
}
*/

/*
.paragraph--type--parrafo-completo p:first-child, .paragraph--type--parrafo-contenedor p:first-child {
  padding-top: 3rem;
}
*/




/* rediseno */

.block-paragraph-blocks::before {
  display: block;
  content: " ";
  margin-top: -3rem;
  height: 3rem;
  visibility: hidden;
}
.paragraph p, .paragraph li {
  margin: 1em 0 1em 0;
  line-height: 1.8rem;
  font-weight: normal;
  letter-spacing: 2px;
  text-align: justify;
}
.paragraph li {
  margin: 0;
}

.paragraph ul {
  list-style: none;
}
.paragraph ul li::before {
  content: "\2022";
  color: #ea2030;
  font-weight: bold;
  display: inline-block; 
  width: 1.5em;
  margin-left: -1em;
}

.paragraph.logoparrafo img {
  width: 30% !important;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.paragraph .layout {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

.paragraph.derecha .layout {
  flex-direction: row-reverse;
}

.paragraph {
  margin: 4rem auto 4rem auto;
  padding: 0;
}
.page-node-5 .paragraph {
  margin: 2rem auto 2rem auto;
}

.paragraph.cajon {
  margin: 0 auto;
  padding: 4rem 10%;
}

.paragraph.percent60 .layout__region--first {
  flex: 0 1 53%;
}
.paragraph.percent60 .layout__region--second {
  flex: 0 1 47%;
  padding: 0 3rem 0 3rem;
}
.paragraph.percent52 .layout__region--first {
  flex: 0 1 52%;
}
.paragraph.percent52 .layout__region--second {
  flex: 0 1 48%;
  padding: 0 3rem 0 3rem;
}

.paragraph--type--parrafo-enlace a {
	color: cadetblue;
}

.paragraph--type--parrafo-enlace a {
  color: #fff;
  padding: 4px 2rem;
  border-radius: 0;
  font-size: 1.2rem;
  text-decoration: none;
  text-transform: uppercase;
  margin-top: 1rem;
  background-color: #ea2030;
  background-color: #0c1d3c;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
  display: block;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
.paragraph--type--parrafo-enlace a:hover {
  background-color: #f8af50;
  color: #fff;
}

/*
.paragraph li {
  margin: 0;
}
.paragraph h2 {
  margin-bottom: 3rem;
}


.paragraph .layout {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

.paragraph.derecha .layout {
  flex-direction: row-reverse;
}




.paragraph.container {
  margin: 4rem auto 4rem auto;
}
paragraph .layout--twocol-section .layout__region--first {
  padding: 0;
}


.paragraph.derecha .layout--twocol-section .layout__region--second {
  padding-left: 4%;
}
.paragraph.izquierda .layout--twocol-section .layout__region--second {
  padding-right: 4%;
}

.path-frontpage .paragraph.container {
  padding: 4rem 10%;
  margin: 0 auto;
}
.page-node-2 .paragraph.container {
  padding: 4rem 20%;
}
.paragraph--type--parrafo-img.percent60 .layout__region--first, .paragraph--type--parrafo-servicios.percent60 .layout__region--first {
  flex: 0 1 53%;
}
.paragraph--type--parrafo-img.percent60 .layout__region--second, .paragraph--type--parrafo-servicios.percent60 .layout__region--second {
  flex: 0 1 43%;
}

.page-node-3 .paragraph.derecha .field--name-field-titulo {
  text-align: right;
}
.page-node-3 .paragraph.derecha .field--name-field-titulo h2:after {
  margin-left: auto;
}

.paragraph--type--parrafo-completo h2 {
  text-align: center;
  color: #aaa;
}

.paragraph.no-margen-sup {
  margin-top: -8%;
}





.paragraph--type--parrafo-img .field--type-image, .paragraph--type--parrafo-servicios .field--type-image {
  width: 100%;
  text-align: center;
}


.paragraph--type--parrafo-img .row, .paragraph--type--parrafo-servicios .row {
  align-items: center;
}

.paragraph--type--parrafo-img img, .paragraph--type--parrafo-servicios img {
  max-height: 80vh;
}

.paragraph--type--parrafo-img img, .paragraph--type--parrafo-servicios img {
  width: 100%;
  height: 100%;
}
.paragraph--type--parrafo-img.logoparrafo img, .paragraph--type--parrafo-servicios.logoparrafo img {
  width: 55%;
}

.paragraph--type--parrafo-completo.logoparrafo img {
  width: 30%;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.paragraph--type--parrafo-img.maxancho img, .paragraph--type--parrafo-servicios.maxancho img {
  width: unset;
  min-width: unset;
  margin: 0 auto;
  display: block;
}

.paragraph--type--parrafo-solo-imagen img, .paragraph--type--parrafo-solo-imagen iframe {
  max-height: 50vh;
  height: 100%;
}
*/

/*fin rediseno */

/* FIN parrafo */


/* nuevo diseno */
/*
.paragraph--type--parrafo-img {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
}

.paragraph--type--parrafo-img .parrafo-img {
    flex-basis: 50%;
}

.paragraph--type--parrafo-img .parrafo-img .field--type-image {
    margin-right: 0;
}

.paragraph--type--parrafo-img .parrafo-texto {
    flex-basis: 50%;
}

.paragraph--type--parrafo-img.imagen_40 .parrafo-texto {
    flex-basis:60%;
}

.paragraph--type--parrafo-img.imagen_40 .parrafo-img {
    flex-basis:40%;
}

.paragraph--type--parrafo-img.imagen_30 {
    justify-content: center;
}


.paragraph--type--parrafo-img.imagen_30 .parrafo-img {
    flex-basis:30%;
}

.paragraph--type--parrafo-img .parrafo-texto p {
    color: #333333;
    font-size: 1rem;
    font-weight: 300;
}

.paragraph--type--parrafo-img .parrafo-img img {
    width: 100%;
    height: auto;
}

.paragraph--type--parrafo-img.izquierda {
    flex-direction: row;
}

.paragraph--type--parrafo-img.derecha {
    flex-direction: row-reverse;
}
.paragraph--type--parrafo-img.izquierda .parrafo-texto {
    padding-left: 4rem;
}

.paragraph--type--parrafo-img.derecha .parrafo-texto {
    padding-right: 4rem;
}

.paragraph--type--parrafo-titulo {
    text-align: center;
}

.paragraph--type--parrafo-seccion-text {
    padding: 0 4rem;
}

.paragraph--type--parrafo-seccion-text.horizontal {
    display: flex;
    flex-wrap: wrap;
}

.paragraph--type--parrafo-seccion-text .parrafo-dest {
    text-align: center;
}

.paragraph--type--parrafo-seccion-text .parrafo-texto {
    text-align: center;
}

.paragraph--type--parrafo-seccion-text .parrafo-dest a {
    font-size: 0.9rem;
    font-weight: 600;
    letter-spacing: 1px;
    text-decoration: none;
}

.paragraph--type--parrafo-seccion-text.horizontal .parrafo-texto {
    flex-basis: 50%;
    text-align: left;
    padding: 0 1rem;
}

.paragraph--type--parrafo-seccion-text.horizontal .parrafo-dest {
    flex-basis: 50%;
    text-align: left;
    padding: 0 1rem;
}


.paragraph--type--parrafo-seccion-text.con_separacion .parrafo-texto {
    padding: 0 2rem;
}

.paragraph--type--parrafo-seccion-text.con_separacion .parrafo-dest {
    padding: 0 2rem;
    text-align: right;
    border-right: 1px solid var(--primary-color);
}
.paragraph--type--parrafo-seccion-text.destacado .parrafo-dest p {
    font-family: 'Quicksand', sans-serif;
    color: var(--primary-color);
    font-size: 1.6rem;
    font-weight: 300;
    line-height: 1.5;
}
*/
/*
@media (max-width: 768px) {

    .paragraph--type--parrafo-img .parrafo-img {
        flex-basis: 100%;
    }

    .paragraph--type--parrafo-img .parrafo-texto {
        flex-basis: 100%;
    }


    .paragraph--type--parrafo-img .parrafo-img img {
        width: 100%;
        height: auto;
    }

    .paragraph--type--parrafo-img.izquierda {
        flex-direction: column;
    }

    .paragraph--type--parrafo-img.derecha {
        flex-direction: column;
    }
  }
*/




/* fin nuevo diseno */

/* GALLERY */

.masonry-layout-gallery {
  margin: 4rem auto;
}

.masonry img {
  margin: 5px;
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: unset;
  background-clip: border-box;
  /*border: 1px solid rgba(0,0,0,.125);
  border-radius: .25rem;*/
  border: unset;
}
/* Titulos */


/* ************************** */
/* fondos */
.fondo-blanco {
  background-color: #fff;
}

.fondo-gris-claro {
  background: #f7f7f7;
}

.fondo-gris, .fondo-gris .layout {
   background: #f4f4f4;
}

.fondo-gris-25 .layout {
  background: #ebebeb;
}

.fondo-gris-50 .layout {
  background: #939598;
  color: #fff;
}
.fondo-gris-75 .layout {
  background: #636466;
  color: #fff;
}


/*varios*/
.node__content {
  margin-top: 0;
}


/* *********************** */
/* areas we serve */

.block-views-blockareas-we-serve-block-1, #block-views-block-carousel-logos-block-1 {
  padding: 2rem 5rem 5rem 5rem;
  color: #ccc;
}
.view-areas-we-serve {
  margin-top: 1.5rem;
}

.block-views-blockareas-we-serve-block-1 h2, #block-views-block-carousel-logos-block-1 h2, .block-views-blockareas-we-serve-block-1 h3 {
  text-align: center;
}
.block-views-blockareas-we-serve-block-1 h2, #block-views-block-carousel-logos-block-1 h2 {
  color: #666;
}
.block-views-blockareas-we-serve-block-1 h2:after, #block-views-block-carousel-logos-block-1 h2:after {
  margin-left: auto;
  margin-right: auto;
}

.block-views-blockareas-we-serve-block-1 h3, .h3 {
  position: absolute;
  top: 70%;
  left: 3rem;
  color: #fff;
  font-weight: bold;
  letter-spacing: 2.4px;
  text-shadow: 0 3px 6px rgba(0,0,0,0.2);
}

.view-areas-we-serve > .row:first-child {
  flex-direction: row;
  justify-content: space-around;
}

.view-areas-we-serve > .row:first-child > div {
  width: 33%;
  min-width: 300px;
  background-color: #fff;
  margin: 2rem 0 1rem 0;
  /*text-align: center;*/
  position: relative;
}

.view-areas-we-serve .field--type-image {
  float: none;
  margin: 0;
  text-align: center;
}
/*
.view-areas-we-serve .field--name-field-media-image img {
  width: 100%;
  max-height: 12rem;
  height: auto;
}
*/
.view-areas-we-serve img {
  width: 100%;
  height: auto;
}


/* *********************** */
/* Pie de página */
.site-footer {
  width: 100%;
  height: auto;
  background: #0c1d3c;
  color: #fff;
  padding: 0;
}

.site-footer .block {
  margin: 10px 0;
  padding: unset;
  border: none;
}

.site-footer .content {
  color: #fff;
  font-size: 0.857em;
}

.site-footer, .site-footer p, .site-footer li {
  font-family: 'Lato', sans-serif;
  font-size: 0.9rem;
  line-height: 1.5rem;
  font-weight: 300;
  letter-spacing: 0.8px;
  text-align: left;
  margin: 0;
}

/* flex de footer-fourth */
.site-footer .region-footer-fourth {
  flex-flow: row wrap;
  justify-content: center; /* horizontal align items */
  align-content: space-between; /* vertical align of lines */
  align-items: center; /* vertical align of items */
  width: 100%;
  padding: 1.25rem 0;
  background-size: cover;
}

#block-datosempresa {
  width: fit-content;
  margin-right: 10rem;
}
#block-issa {
  max-width: 78px;
}
#block-impa {
  max-width: 170px;
}
#block-fcca {
  max-width: 170px;
}
#block-shipserv {
  max-width: 78px;
}
#block-greenissa {
  max-width: 78px;
}
#block-isn {
  max-width: 146px;
}

#block-vigiladosupertransporte {
  max-width: 170px;
}

.site-footer .region-footer-fourth .block {
  margin-left: 2rem;
  margin-right: 2rem;
}

.site-footer__top .content li a {
  color: #fff;
  display: inline;
  border-bottom: none;
  line-height: unset;
  padding: 0;
  text-indent: 0;
  text-decoration: none;
}
.site-footer__top .content li a:hover, .site-footer__top .content li a:focus {
  background-color: unset;
  text-decoration: underline;
}

.site-footer .region-footer-fourth .block {
  margin-left: 2rem;
  margin-right: 2rem;
}

/*
  .site-footer__top .content li a {
  color: #fff;
  display: block;
  border-bottom: none;
  line-height: unset;
  padding: 0;
  text-indent: 0;
  text-decoration: none;
}
*/
.site-footer__top .content li a:hover, .site-footer__top .content li a:focus {
  background-color: unset;
  text-decoration: underline;
}

.site-footer ul {
  margin-bottom: 0;
}
.navbar-nav li {
  line-height: 1.5rem;
}

.fa-ul {
  margin: 0;
  padding: 0;
}
.fa-ul li {
  position: relative;
  padding-left: 0.5rem;
}

/* Fin footer-fourth */

#block-datosempresa img {
  width: 6rem;
  height: auto;
  margin-bottom: 1rem;
}








/*
.site-footer .content {
  color: #fff !important;
}

.site-footer .content a, .site-footer .content link {
  text-decoration: none;
  color: #fff;
}


.site-footer__top, .site-footer__bottom {
  border-top: none;
  margin-top: 0;
}

section.region-footer-fourth, section.region-footer-fifth {
  align-items: center;
}
section.region-footer-fourth > div, section.region-footer-fifth > div {
  width: 50%;
}

.site-footer .block .menu {
  text-align: center;
}
.site-footer .block .menu a {
  text-decoration: none;
}
.site-footer .block .menu a:hover {
  text-decoration: underline;
}

footer .fa-ul {
  list-style-type: none;
  margin-left: 1.5em;
  padding-left: 0;
}
.site-footer .content ol:not(.menu), .site-footer .content ul:not(.menu) {
  padding-left: 0;
}
footer ul.sf-menu li {
  float: none;
}
footer ul.sf-menu.menu, footer ul.sf-menu.menu ul, footer ul.sf-menu.menu li {
  display: inline-block;
}
ul.sf-menu a, ul.sf-menu span.nolink {
  display: block;
  padding: 0.5em 1.5em;
  position: relative;
}
.site-footer content {
  color: #fff;
}

#block-datosempresa img {
  width: 6rem;
  height: auto;
  margin-bottom: 1rem;
}
#block-membersof img {
  width: auto;
  height: auto;
  float: right;
}

#block-membersof {
  border-left: 1px solid #fff;
}

hr {
  margin: 1.5rem 0 2rem;
  color: inherit;
  background-color: currentColor;
  border: 0;
  opacity: 1;
  width: 5rem;
}
.svg-inline--fa {
  width: 1rem;
}
*/

/* fin pie de pagina */

/* SERVICIOS */
.view-servicios .view-content {
  justify-content: space-around;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stretch;
}

.view-servicios .views-row {
  width: 380px;
  margin: 1rem;
  background: #ebebeb;
  position: relative;
  padding-bottom: 2rem;
}

.view-servicios .views-field-body, .view-servicios .views-field-title {
  padding: 1rem;
}

.view-servicios .field--name-field-media-document {
  padding: 0.5rem 0 0.5rem 0;
  background: #0c1d3c;
  color: #fff;
  text-align: center;
  position: absolute;
  width: 100%;
  bottom: 0;
}
.view-servicios .field--name-field-media-document a, .field--name-field-media-document a {
  color: #fff;
  text-decoration: none;
}
.field--name-field-media-document {
  padding: 0.5rem 0 0.5rem 0;
  background: #0c1d3c;
  color: #fff;
  text-align: center;
  width: 100%;
}


/* CERTIFICATIONS */
.view-certifications .view-content {
  justify-content: space-around;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stretch;
}

.view-certifications .views-row {
  width: 380px;
  margin: 1rem auto 6rem auto;
  /*background: #ebebeb;*/
}

.view-certifications .views-field-body, .view-certifications .views-field-title, .view-certifications .views-field-field-documento {
  padding: 1rem;
}

.view-certifications .views-row img {
  max-height: 200px;
  object-fit: contain;
}


/* CLIENTES */
/*.view-clientes .row .views-row {*/
.view-clientes .view-content {
  justify-content: space-around;
}

.flip-cliente {
  width: 200px;
  height: 200px;
  margin: 3rem;
  background-color: transparent;
  /*
  border: 1px solid #f1f1f1;
  perspective: 1000px;
  */
}

.flip-cliente .layout__region--content {
  position: relative;
  width: 200px;
  height: 200px;
  text-align: center;
  transition: transform 0.6s;
  transform-style: preserve-3d;
  /*border: 1px solid #f1f1f1;*/
  box-shadow: 1px 2px 3px 0 rgba(0,0,0,0.2);
}

.flip-cliente:hover .layout__region--content {
  transform: rotateY(180deg);
}

.flip-cliente-front, .flip-cliente-back {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden; /* Safari */
  backface-visibility: hidden;
}

.flip-cliente-back {
  background-color: #aaa;
  color: white;
  transform: rotateY(180deg);
  z-index: 1;
}  

/* centrar texto del back */
.flip-cliente-back > div {
  display: flex;
  justify-content: center;
  align-content: center;
  flex-direction: column;
  height: 100%;
  font-weight: bold;
}

.flip-cliente .field--type-image img {
  width: unset;
  height: unset;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}




/* webform */

label.form-required::after, .form-item-terminos label::after {
  content: " *";
  color: #f00;
}

form {
  width: 100%;
  padding: 0 3rem 0 3rem;
}

label, legend {
  font-size: 1rem;
  line-height: 1.2rem;
}

#edit-flexbox.webform-flexbox, #edit-flexbox.webform-flexbox-1, #edit-flexbox-2.webform-flexbox  {
  display: flex;
  margin: 0 0em;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
}

#edit-flexbox .webform-flex--1, #edit-flexbox-1 .webform-flex--1 {
  width: 100%;
  flex: unset;
}



/* webform */

label.form-required::after, .form-item-terminos label::after {
  content: " *";
  color: #f00;
}

form {
  width: 100%;
  padding: 0 3rem 0 3rem;
}

label, legend {
  font-size: 1rem;
  line-height: 1.2rem;
}

#edit-flexbox.webform-flexbox, #edit-flexbox.webform-flexbox-1, #edit-flexbox-2.webform-flexbox  {
  display: flex;
  margin: 0 0em;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
}

#edit-flexbox .webform-flex--1, #edit-flexbox-1 .webform-flex--1 {
  width: 100%;
  flex: unset;
}


.btn {
  display: inline-block;
  font-weight: 400;
  line-height: 1.5;
  color: #fff;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  background-color: #264085;
  border: 1px solid #264085;
  padding: 0.5rem 2rem;
  font-size: 1rem;
  letter-spacing: 5px;
  text-transform: uppercase;
  border-radius: .4rem;
  transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.btn a, .btn .link {
  color: #fff;
  text-decoration: none;
}
.btn a:hover, .btn a:focus, .btn .link:hover, .btn .link:focus {
  color: #ddd;
}
.block-field-blockparagraphparrafo-serviciosfield-enlace {
  text-align: center;
}

.webform-submission-form {
  color: #264085;
}

/* quitar margin-bottom para wrap de fechas y para wrap de select-other */
fieldset.form-type-date.mb-3, fieldset.webform-select-other.mb-3i, fieldset.form-type-datetime .form-type-webform-time.mb-3 {
  margin-bottom: 0 !important;
}

#edit-adecuaciones-necesarias-del-vehiculo-checkboxes {
  display: flex;
  flex-wrap: wrap;
}
#edit-adecuaciones-necesarias-del-vehiculo-checkboxes > div {
  width: 25%;
  min-width: 190px;
}

.form-control {
  display: block;
  width: 100%;
  padding: .375rem .75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #264085;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: .25rem;
  transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.form-select {
  display: block;
  width: 100%;
  padding: .375rem 2.25rem .375rem .75rem;
  -moz-padding-start: calc(0.75rem - 3px);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right .75rem center;
  background-size: 16px 12px;
  border: 1px solid #264085;
  border-radius: .25rem;
  transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

#edit-actions {
  margin-top: 2rem;
}

.form-check-input {
  width: 1em;
  height: 1em;
  margin-top: .25em;
  vertical-align: top;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border: 1px solid #264085;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-print-color-adjust: exact;
  color-adjust: exact;
}

/* Contáctenos */
#bloque-contactenos, #bloque-quote {
  margin-top: 3rem;
  margin-bottom: 3rem;
  justify-content: space-between;
  align-items: center;
}
#bloque-contactenos > div, #bloque-quote > div {
  flex: 0 1 48%;
}





@media screen and (min-width: 768px) {
  .paragraph {
    flex-direction: column;
  }

  #edit-flexbox.webform-flexbox, #edit-flexbox-1.webform-flexbox {
    display: flex;
    margin: 0 -0.5em;
    flex-wrap: wrap;
  }
  #edit-flexbox .webform-flex--1, #edit-flexbox-1 .webform-flex--1 {
    width: 50%;
    flex: unset;
  }

  #edit-flexbox-2 .webform-flex--1 {
    width: 30%;
    flex: unset;
  }


  [id^="edit-flexbox"].webform-flexbox, [id^="edit-flexbox-1"].webform-flexbox {
    display: flex;
    margin: 0 -0.5em;
    flex-wrap: wrap;
  }
  #edit-flexbox .webform-flex--1, #edit-flexbox-1 .webform-flex--1 {
    width: 50%;
    flex: unset;
  }

}

/* pantallas de menos de 1700px */
@media screen and (max-width: 1720px) {
  #block-datosempresa {
    flex-basis: 90%;
    margin-right: 0;
  }

/* pantallas de menos de 1500px */
@media screen and (max-width: 1500px) {
  #block-datosempresa {
    flex-basis: 90%;
    margin-right: 0;
  }

  .page-node-1 #frase-portada {
    top: 85vh;
  }

  .block-views-blockareas-we-serve-block-1 h3, .h3 {
    left: 2.5rem;
    letter-spacing: 1.8px;
  }
  .area-served a {
    left: 2.5rem;
    top: 65%;
  }

}


/* pantallas de menos de 1330px */
@media screen and (max-width: 1330px) {
  .h2, h2, #frase-portada h2 {
    font-size: 2.5rem;
  }
  .h3, h3 {
    font-size: 1.5rem;
  }

  .page-node-1 #frase-portada {
    top: 79vh;
  }

  .block-views-blockareas-we-serve-block-1 h3, .h3 {
    left: .5rem;
    letter-spacing: 1.5px;
  }
  .area-served a {
    left: .5rem;
    top: 77%;
  }

  #enlace-portada a, #block-frasehome a, .area-served a {
    padding: 2px 1rem;
    font-size: 0.8rem;
    margin-top: 1rem;
    display: inline-block;
    background-color: #ea2030;
    background-color: #0c1d3c;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
  }
}

/* pantallas de menos de 1200px */
@media screen and (max-width: 1200px) {

  .paragraph .layout, .paragraph.derecha .layout {
    flex-direction: column;
  }

  /* Contactos */
  .layout--twocol-section {
    flex-direction: column;
  }

  .paragraph .layout__region--second {
    padding: 2rem 1rem 0 1rem !important;
  }
  .paragraph--type--parrafo-completo .block-field-blockparagraphparrafo-completofield-titulo, .paragraph--type--parrafo-completo .block-field-blockparagraphparrafo-completofield-texto-parrafo {
    padding: 0 1rem 0 1rem !important;
  }

  .paragraph .field--type-image img {
    width: 100%;
    height: unset;
    object-fit: cover;
    margin-left: auto;
    margin-right: auto;
    display: block
  }
}

/* pantallas de menos de 768px */
@media screen and (max-width: 480px) {
  .h2, h2, #frase-portada h2 {
    font-size: 1.8rem;
  }
  .h3, h3 {
    font-size: 1.2rem;
  }
  .paragraph .field--name-field-texto-parrafo p {
    font-size: 0.9rem;
    line-height: 1.5rem;
    letter-spacing: 0.5px;
/*    padding: 0 1rem;*/
  }
  .paragraph li {
    font-size: 0.9rem;
    line-height: 1.5rem;
    letter-spacing: 0.5px;
    padding: 0 1rem;
  }
  

  #block-menucontactus {
    display: none;
  }

  #block-addtoanybuttons {
    margin-right: 1rem;
  }

  #block-views-block-carousel-logos-block-1 {
    padding: 2rem 0 5rem 0;
  }

}

/* pantallas de menos de 480px */
@media screen and (max-width: 480px) {
  .page-node-1 #frase-portada {
    top: 84vh;
  }

  #block-issa { max-width: 60px; }
  #block-impa { max-width: 131px; }
  #block-fcca { max-width: 131px; }
  #block-shipserv { max-width: 60px; }
  #block-greenissa { max-width: 60px; }

}

/* Landscape */
@media screen and (orientation: landscape) and (max-height: 700px) {
  .page-node-1 #frase-portada {
    right: 7vw;
    left: unset;
  }
}



/*
@media (min-width: 1550px){
.navbar-expand-lg {
    -ms-flex-flow: row nowrap !important;
    flex-flow: row nowrap !important;
    -ms-flex-pack: start !important;
    justify-content: flex-start !important;
  }
  .navbar-expand-lg .navbar-nav {
    -ms-flex-direction: row !important;
    flex-direction: row !important;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute !important;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
  }
  .navbar-expand-lg .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-preferred-size: auto !important;
    flex-basis: auto !important;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none !important;
  }
}

@media (min-width: 992px){
.navbar-expand-lg {
    -ms-flex-flow: row nowrap !important;
    flex-flow: row nowrap !important;
    -ms-flex-pack: start !important;
    justify-content: flex-start !important;
  }
  .navbar-expand-lg .navbar-nav {
    -ms-flex-direction: row !important;
    flex-direction: row !important;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute !important;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
  }
  .navbar-expand-lg .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-preferred-size: auto !important;
    flex-basis: auto !important;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none !important;
  }
}
*/

