/*
Theme Name: Bridge Child
Theme URI: http://bridgelanding.qodeinteractive.com/
Description: A child theme of Bridge Theme
Author: Qode Interactive
Author URI: https://qodeinteractive.com
Version: 1.0.1
Text Domain: bridge
Template: bridge
*/

/*
 * El header sticky de Bridge, al cruzar el umbral, se fija y suma
 * padding-top al contenido. El anclaje de scroll del navegador
 * devuelve el scroll por debajo del umbral y el header parpadea.
 */
html {
	overflow-anchor: none;
}

H3 {
	margin-bottom: 1rem;
}
.u-h4{
	  color: #000000;
    font-family: 'Oswald', sans-serif;
    font-size: 30px;
    line-height: 33px;
    font-style: normal;
    font-weight: 700;
    letter-spacing: 0px;
	margin: 2rem 0 1rem;
    text-transform: uppercase;
}

/* Oculta botón side area (icono SVG) y su contenedor en el header */
header.page_header .header_inner_right:not(.left_side) {
	display: none !important;
}

.bridge-language-menu-item {
	align-items: center;
	display: inline-flex !important;
	float: left;
	height: 100%;
	padding-left: 12px;
	position: relative;
}

.bridge-language-menu-item .gtranslate_wrapper,
.bridge-language-menu-item #gt_float_wrapper,
.bridge-language-menu-item .gt_float_switcher {
	bottom: auto !important;
	left: auto !important;
	position: static !important;
	right: auto !important;
	top: auto !important;
}

.bridge-language-menu-item .gtranslate_wrapper {
	display: inline-flex;
	height: 100%;
}

.bridge-language-menu-item #gt_float_wrapper {
	height: 100%;
	z-index: auto !important;
}

.bridge-language-menu-item .gt_float_switcher {
	background: transparent !important;
	box-shadow: none !important;
	font-family: inherit !important;
	font-size: 15px !important;
	height: 100% !important;
	line-height: 1 !important;
	overflow: visible !important;
	position: relative !important;
}

.bridge-language-menu-item .gt_float_switcher img {
	display: inline-block !important;
	height: auto !important;
	margin: 0 6px 0 0 !important;
	vertical-align: middle;
	width: 18px !important;
}

.bridge-language-menu-item .gt_float_switcher .gt-selected,
.bridge-language-menu-item .gt_float_switcher .gt-current-lang {
	align-items: center;
	background: transparent !important;
	border: 0 !important;
	color: #111111 !important;
	display: inline-flex !important;
	height: 100% !important;
	padding: 0 0 0 4px !important;
}

.bridge-language-menu-item .gt_float_switcher .gt-selected {
	cursor: pointer;
	line-height: 120px !important;
}

header.sticky .bridge-language-menu-item .gt_float_switcher .gt-selected {
	line-height: 60px !important;
}

.bridge-language-menu-item .gt_float_switcher .gt-current-lang span.gt-lang-code,
.bridge-language-menu-item .gt_float_switcher .gt-current-lang span.gt_float_switcher-arrow {
	color: #111111 !important;
	font-size: 15px !important;
	font-weight: 700;
	letter-spacing: normal;
	text-transform: uppercase;
}

.bridge-language-menu-item .gt_float_switcher .gt-current-lang span.gt_float_switcher-arrow {
	background-size: 8px !important;
	height: 14px !important;
	margin-left: 4px;
	top: 0 !important;
	width: 10px !important;
}

.bridge-language-menu-item .gt_float_switcher .gt_options {
	background: #ffffff !important;
	border: 1px solid rgba(17, 17, 17, 0.08) !important;
	border-radius: 4px !important;
	box-shadow: 0 10px 30px rgba(17, 17, 17, 0.08) !important;
	font-size: 13px !important;
	left: auto !important;
	line-height: 1.4 !important;
	max-height: none !important;
	min-width: 150px;
	overflow: visible !important;
	padding: 6px 0 !important;
	position: absolute !important;
	right: 0 !important;
	top: calc(100% - 8px) !important;
	transform: none !important;
	z-index: 9999 !important;
}

.bridge-language-menu-item .gt_float_switcher .gt_options.gt-open {
	opacity: 1 !important;
	transform: none !important;
}

nav.main_menu ul li.bridge-language-menu-item .gt_float_switcher .gt_options a {
	align-items: center !important;
	color: #111111 !important;
	display: flex !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: normal;
	line-height: 1.4 !important;
	padding: 10px 14px !important;
	text-transform: uppercase;
	white-space: nowrap;
}

nav.main_menu ul li.bridge-language-menu-item .gt_float_switcher .gt_options a:hover {
	background: rgba(17, 17, 17, 0.04) !important;
	color: #111111 !important;
}

@media only screen and (max-width: 1000px) {
	.header_bottom {
		padding: 0 45px!important;
	}
	.mobile_menu_button span {
		width: 24px;
		height: 24px;
		font-size: 24px;
	}
	.page_header .header_bottom {
		display: flex;
        justify-content: center;
        align-items: center;
	}
	header.page_header:not(.sticky) .q_logo img.normal, 
	header.page_header.sticky .q_logo img.sticky {
		top: 25% !important;
	}	
	.bridge-language-menu-item {
		display: none;
	}

	.bridge-mobile-language-item {
		padding: 18px 0 0;
	}

	.bridge-mobile-language-links {
		display: flex;
		flex-direction: column;
	}

	.bridge-mobile-language-link {
		align-items: center;
		border-top: 1px solid rgba(17, 17, 17, 0.08);
		color: #111111 !important;
		display: flex !important;
		font-size: 16px !important;
		font-weight: 700;
		letter-spacing: 0.04em;
		padding: 14px 0;
		text-transform: uppercase;
	}

	.bridge-mobile-language-link.is-active {
		opacity: 0.55;
	}

	.bridge-mobile-language-link img {
		border-radius: 999px;
		margin-right: 10px;
		width: 24px;
	}
}

/* Banda destacada portada  */
.content .bc-hero-split__inner {
	padding-top: 0;
}
.content .bc-hero-split__title {
    font-size: var(--bc-title-size, clamp(2.4rem, 5.5vw, 5.5rem));
}
.content .bc-team-intro__title {
    font-size: var(--bc-title-size, clamp(2.4rem, 5.5vw, 5.5rem));
	line-height: normal;
	margin-bottom: 3rem;
}
.content .bc-hero-split__media .bc-hero-split__band {
	display: none;
}
.content .bc-hero-split__media .bc-hero-split__band img {
		height: 100%;
}
.content .bc-hero-split__media .bc-hero-split__player {
	  width: 100%;
    left: 0;
}

.content .bc-team-intro__inner {
    padding: clamp(3rem, 8vw, 3rem) 0 clamp(3rem, 8vw, 4rem);
}


.testimonials_c_holder .testimonial_text_inner > p:not(.testimonial_author) {
	line-height: 32px;
	text-transform: uppercase;
}

/* Ficha proyecto: h1 principal al inicio de la página */
.single-portfolio_page h1.portfolio-auto-title {
	color: #303030;
	font-family: "Oswald", Sans-serif;
    font-size: 88px;
    font-weight: 700;
	letter-spacing: 1px;
	line-height: 1.15;
	margin: 0 0 24px;
	text-transform: uppercase;
}

/* Sin padding extra de Bridge (style_dynamic: 55px) para alinear el título con el resto del portal */
.single-portfolio_page .content .container .container_inner.default_template_holder {
	padding-top: 0 !important;
}

.single-portfolio_page .portfolio_categories {
	display: none !important;
}

.portfolio_single .portfolio-auto-title {
	display: none;
}

/* Galería de ficha: solo imágenes estáticas (sin clic, lightbox, hover ni títulos) */
.single-portfolio_page .portfolio_gallery a,
.single-portfolio_page .portfolio_gallery a.lightbox_single_portfolio,
.single-portfolio_page .portfolio_gallery a[data-rel^="prettyPhoto"] {
	cursor: default !important;
	pointer-events: none !important;
	text-decoration: none !important;
}

.single-portfolio_page .portfolio_gallery a .gallery_text_holder,
.single-portfolio_page .portfolio_gallery a .gallery_text_inner,
.single-portfolio_page .portfolio_gallery a .gallery_text_inner h6,
.single-portfolio_page .portfolio_gallery a > i {
	background: transparent !important;
	display: none !important;
	opacity: 0 !important;
	pointer-events: none !important;
	visibility: hidden !important;
}

.single-portfolio_page .portfolio_gallery a:hover .gallery_text_holder,
.single-portfolio_page .portfolio_gallery a:focus .gallery_text_holder,
.single-portfolio_page .portfolio_gallery a:hover,
.single-portfolio_page .portfolio_gallery a:focus {
	background: transparent !important;
	box-shadow: none !important;
	opacity: 1 !important;
}

.single-portfolio_page .portfolio_gallery a img {
	box-shadow: none !important;
	filter: none !important;
	opacity: 1 !important;
	transform: none !important;
	transition: none !important;
	-webkit-transform: none !important;
}

/* Navegación entre proyectos: anterior | grid | siguiente */
.single-portfolio_page .bc-portfolio-navigation {
	align-items: center;
	display: flex;
	justify-content: space-between;
	padding: 36px 0 56px;
}

.single-portfolio_page .bc-portfolio-navigation .portfolio_prev,
.single-portfolio_page .bc-portfolio-navigation .portfolio_next,
.single-portfolio_page .bc-portfolio-navigation .portfolio_button {
	display: block;
	flex: 1 1 0;
	height: auto;
	line-height: 1;
	position: static;
}

.single-portfolio_page .bc-portfolio-navigation .portfolio_prev {
	text-align: left;
}

.single-portfolio_page .bc-portfolio-navigation .portfolio_next {
	text-align: right;
}

.single-portfolio_page .bc-portfolio-navigation .portfolio_button {
	flex: 0 0 auto;
	text-align: center;
}

.single-portfolio_page .bc-portfolio-navigation .portfolio_prev a,
.single-portfolio_page .bc-portfolio-navigation .portfolio_next a {
	background: transparent !important;
	border: 0;
	border-radius: 0;
	color: #303030;
	display: inline-flex;
	font-size: 32px;
	height: auto;
	line-height: 1;
	margin: 0;
	padding: 8px 12px;
	width: auto;
}

.single-portfolio_page .bc-portfolio-navigation .portfolio_prev a:hover,
.single-portfolio_page .bc-portfolio-navigation .portfolio_next a:hover,
.single-portfolio_page .bc-portfolio-navigation .portfolio_button a:hover {
	background: transparent !important;
	color: #111111;
	opacity: 0.75;
}

.single-portfolio_page .bc-portfolio-navigation .portfolio_button a {
	background-image: none !important;
	display: inline-flex;
	height: auto;
	margin: 0;
	padding: 8px 12px;
	width: auto;
}

.single-portfolio_page .bc-portfolio-navigation .bc-portfolio-navigation__grid-icon {
	display: grid;
	gap: 5px;
	grid-template-columns: repeat(3, 7px);
}

.single-portfolio_page .bc-portfolio-navigation .bc-portfolio-navigation__grid-dot {
	background: #b4b4b4;
	display: block;
	height: 7px;
	transition: background-color 0.2s ease;
	width: 7px;
}

.single-portfolio_page .bc-portfolio-navigation .portfolio_button a:hover .bc-portfolio-navigation__grid-dot {
	background: #303030;
}

/* Logo EL CURSOR en cabecera Bridge (gestión: Qode Options → Logo) */
header.page_header .logo_wrapper {
	align-items: center !important;
	display: flex !important;
	/* Por encima de capas del header para que el clic no se pierda */
	position: relative !important;
	z-index: 100 !important;
	pointer-events: auto !important;
}

.portfolio-auto-title {
	margin-bottom: .5em;
}

header.page_header .q_logo {
	align-items: center !important;
	display: flex !important;
	height: 100% !important;
	top: auto !important;
	position: relative !important;
	z-index: 1 !important;
	pointer-events: auto !important;
}

/* Visible y clicable siempre (Bridge lo oculta con visibility:hidden hasta el JS) */
header.page_header .q_logo a {
	align-items: center !important;
	cursor: pointer !important;
	display: flex !important;
	height: auto !important;
	pointer-events: auto !important;
	position: relative !important;
	visibility: visible !important;
	z-index: 2 !important;
}

header.page_header .q_logo img,
header.page_header:not(.centered_logo) .q_logo img {
	height: 75px !important;
	max-height: 75px !important;
	position: relative !important;
	top: 0 !important;
	/* Sin fade: evita ver normal + sticky a la vez al salir del sticky */
	transition: none !important;
	width: auto !important;
}

/* Solo una variante visible en cada estado (sin solapes) */
header.page_header .q_logo img.light,
header.page_header .q_logo img.dark,
header.page_header .q_logo img.mobile,
header.page_header .q_logo img.popup,
header.page_header:not(.sticky) .q_logo img.sticky,
header.page_header.sticky .q_logo img.normal {
	display: none !important;
	opacity: 0 !important;
	pointer-events: none !important;
	visibility: hidden !important;
}

header.page_header:not(.sticky) .q_logo img.normal,
header.page_header.sticky .q_logo img.sticky {
	display: block !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	visibility: visible !important;
}

/* Contenido siempre debajo del header (nunca debajo/encima del menú) */
body:has(header.page_header.transparent) .content,
.content.content_top_margin {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

@media only screen and (max-width: 1000px) {
	body:has(header.page_header.transparent) .content,
	.content.content_top_margin {
		margin-top: 100px !important;
	}

	header.page_header .logo_wrapper {
		height: auto !important;
		left: auto !important;
	}
}

@media only screen and (max-width: 480px) {	
	header.page_header:not(.sticky) .q_logo img.normal {
		top: 25% !important;
	}
	body:has(header.page_header.transparent) .content,
	.content.content_top_margin {
		margin-top: 0 !important;
	}
	.boxed div.section .section_inner, 
	.carousel-inner .slider_content_outer, 
	.container_inner, 
	.container_inner nav.content_menu, 
	.elementor-container .elementor-widget-wrap>.qode_elementor_container_inner, 
	.elementor-row .elementor-widget-wrap>.qode_elementor_container_inner, 
	.full_width .parallax_content, .qode_elementor_container_inner, 
	.steps_holder_inner, div.grid_section .section_inner, 
	div[data-element_type=container].qode_elementor_container_inner, 
	nav.content_menu ul {
        width: 95%;
    }
}

/* Portada: contenedor del hero (sin padding extra; deja ver el círculo) */
.content .elementor-element.elementor-element-8a2e903 {
	--padding-top: 0;
	--padding-bottom: 0;
	overflow: visible;
}

@media (max-width: 767px) {
	.content .elementor-2924 .elementor-element.elementor-element-20c5516 .qodef-m-text-item {
		line-height: 10rem;
	}
	.content .elementor-element-fecf3d9 {
		padding-left: 2rem;
		padding-right: 2rem;
	}
	.content .elementor-3687 .elementor-element.elementor-element-e1e7a0a .elementor-heading-title,
	.content .elementor-3687 .elementor-element.elementor-element-c7d498a .elementor-heading-title, 
	.content .elementor-3256 .elementor-element.elementor-element-e4a80bc .elementor-heading-title, 
	.content .bc-contact-section__title {
		font-size: 3rem !important;
	}
	.content .bc-think-different__inner,
	.content .elementor-3256 .elementor-element.elementor-element-dd68584 {
		padding-top: 0!important;
	}	
	.content .elementor-3467 .elementor-element.elementor-element-845c3f6 {
		--padding-top: 0!important;
	}
	.content .elementor-2924 .elementor-element.elementor-element-aceedaf {
		--padding-bottom: 95px;
	}
	.content .elementor-2924 .elementor-element.elementor-element-ffd1a6c {
		--padding-top: 1rem;
	}
	.content .bc-about-project__inner {
		padding: clamp(1rem, 3vw, 1rem) var(--bc-about-project-padding-x);
	}
	.content .bc-about-project__intro {
		margin: 0 0 clamp(1rem, 2vw, 2rem);
	}
	.content .bc-about-project .bc-about-project__content {
		max-width: 100%;
		padding: 0;
	}
	.content .bc-about-project__item {
		gap: clamp(0rem, 2vw, 1rem);
		margin-bottom: 1rem;
	}
	.content .bc-project-features__inner {
		padding: clamp(1rem, 2vw, 2rem) var(--bc-project-features-padding-x);
	}
	.content .elementor-3687 .elementor-element.elementor-element-c3af766 {
        --margin-top: 0;
	}
	#content-info-portfolio {
		flex-direction: column-reverse;
	}
	.portfolio_page-template-default .elementor #content-info-portfolio .e-con.e-atomic-element.e-flexbox-base {
	 padding: 0;
	}
	.portfolio_page-template-default .elementor #content-info-portfolio .e-con.e-atomic-element.e-flexbox-base:first-child {
	 margin-top: 3rem;
	}
}


/* Style fixed*/
nav.main_menu > ul > li > a {
	font-size: 20px;
	/* No tocar line-height: Bridge lo usa para la altura del header (120px / 60px sticky) */
}

/* Menú visible sobre hero claro (header transparente / estilo light) */
header.page_header.transparent:not(.sticky) nav.main_menu > ul > li > a,
header.page_header.light:not(.sticky):not(.scrolled) nav.main_menu > ul > li > a,
header.page_header.light:not(.sticky):not(.scrolled) nav.main_menu > ul > li > a:hover,
header.page_header.light:not(.sticky):not(.scrolled) nav.main_menu > ul > li.active > a {
	color: #000000 !important;
}

/* Contacto: header siempre legible (no depende del JS sticky tras el envío) */
.page-id-3467 .content.content_top_margin_none {
	padding-top: 120px !important;
}

@media only screen and (max-width: 1000px) {
	.page-id-3467 .content.content_top_margin_none {
		padding-top: 100px !important;
	}
}

.page-id-3467 header.page_header,
.page-id-3467 header.page_header.transparent {
	background-color: #ffffff !important;
}

.page-id-3467 header.page_header.transparent:not(.sticky) .q_logo img.normal {
	display: block !important;
	opacity: 1 !important;
	visibility: visible !important;
}

.page-id-3467 header.page_header.transparent:not(.sticky) nav.main_menu > ul > li > a {
	color: #000000 !important;
}

header.page_header.transparent:not(.sticky) nav.main_menu ul li a span.underline_dash,
header.page_header.light:not(.sticky):not(.scrolled) nav.main_menu ul li a span.underline_dash {
	background-color: #000000 !important;
}

.bc-hero-split__inner {
	padding-bottom: 0;
	padding-top: 0;
}
.bc-hero-split__band {
	  width: 54%;
    right: -10%;
}
.bc-hero-split__band img {
		height: 100%;
}
.bc-hero-split__player {
	  width: 100%;
    left: -6%;
}

.bc-team-intro__title,
.bc-contact-section__subheading, .bc-project-features__heading {
	color: #000000;
  font-family: 'Oswald', sans-serif;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 0px;
	text-transform: uppercase;
}
.bc-team-intro__title {
  font-size: 85px;
  line-height: 85px;
	margin: 0 0 3.5rem;
}
.bc-contact-section__subheading {
	font-size: 30px;
	line-height: 33px;
}
.bc-project-features__heading {
    font-size: 22px;
    line-height: 24px;
}
.content .bc-team-intro__button, .bc-hero-split__button, 
.content .bc-hero-split__button,
.content .testimonials_c_holder .testimonial_text_inner > p:not(.testimonial_author), 
.content .bc-project-features__number,
.content .bc-contact-section__submit {
	    font-family: 'Oswald', sans-serif;
}
.content .bc-hero-split__button:hover {
	color: #ffffff;
	background-color: #000000;
}
.content .bc-project-logos__inner {
    padding: clamp(3rem, 7vw, 4rem) var(--bc-project-logos-padding-x);
	padding-bottom: 2.5rem;
}

.content .bc-think-different__inner {
	padding-top: clamp(3rem, 7vw, 3rem);
	padding-bottom: 2.5rem;
	padding-left: var(--bc-think-different-padding-x, clamp(1.25rem, 4vw, 3.5rem));
	padding-right: var(--bc-think-different-padding-x, clamp(1.25rem, 4vw, 3.5rem));
}

.content .bc-project-logos__list {
	gap: 0;
}
.content .bc-project-logos__item {
    min-width: 14rem;
    padding: 0 0 2rem 0;
}

.content .testimonials_c_holder .testimonial_content_inner .testimonial_text_inner p:first-child {
	text-transform: none;
}

.content .e-con.elementor-element-11be245>.e-con-inner {
	margin: 0;
}

.content .bc-portfolio-list__inner {
	padding: clamp(1rem, 3vw, 3rem) 0 clamp(2.5rem, 6vw, 5rem);
}

/* Home: experiencias alineada al mismo contenedor centrado que el portfolio */
.home .bc-team-intro__inner {
	max-width: none;
	padding-left: 0;
	padding-right: 0;
	width: 100%;
}

/* Home portfolio: bandas sin padding para mosaico continuo */
.home .elementor-element-ffd1a6c,
.home .elementor-element-0ed6279,
.home .elementor-element-ffd1a6c .e-con,
.home .elementor-element-0ed6279 .e-con,
.home .elementor-element-aceedaf .e-con {
	--padding-top: 0;
	--padding-right: 0;
	--padding-bottom: 0;
	--padding-left: 0;
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
}

.home .elementor-element-aceedaf {
	--padding-top: 0;
	--padding-right: 0;
	--padding-left: 0;
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
}

.home .elementor-element-ffd1a6c .elementor-widget,
.home .elementor-element-0ed6279 .elementor-widget,
.home .elementor-element-aceedaf .elementor-widget,
.home .elementor-element-ffd1a6c .elementor-widget-container,
.home .elementor-element-0ed6279 .elementor-widget-container,
.home .elementor-element-aceedaf .elementor-widget-container {
	margin: 0;
	padding: 0;
}

.home .elementor-widget-bridge_portfolio_list .projects_holder.hover_text.no_space article .image_holder {
	margin: 0;
}

.home .elementor-widget-bridge_portfolio_list .projects_holder.hover_text.no_space article .image img {
	margin: 0;
}

/* Home portfolio: imágenes en formato cuadrado */
.home .elementor-widget-bridge_portfolio_list .projects_holder article .image_holder {
	aspect-ratio: 1 / 1;
	overflow: hidden;
	position: relative;
}

.home .elementor-widget-bridge_portfolio_list .projects_holder article .image_holder > a.portfolio_link_for_touch,
.home .elementor-widget-bridge_portfolio_list .projects_holder article .image_holder .image {
	display: block;
	height: 100%;
	width: 100%;
}

.home .elementor-widget-bridge_portfolio_list .projects_holder article .image_holder .image img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

/*
 * Portfolio list (portada y /proyectos/): el overlay .text_holder (z-index 200)
 * tapa el enlace aunque esté transparente u vacío. Dejamos pasar el clic al <a>
 * de la imagen; el título del hover sigue pintándose vía opacity de Bridge.
 */
.elementor-widget-bridge_portfolio_list .projects_holder article .image_holder {
	position: relative;
}

.elementor-widget-bridge_portfolio_list .projects_holder article .image_holder > a.portfolio_link_for_touch {
	cursor: pointer !important;
	display: block;
	height: 100%;
	pointer-events: auto !important;
	position: relative;
	width: 100%;
	z-index: 1;
}

.elementor-widget-bridge_portfolio_list .projects_holder article .image_holder .text_holder {
	pointer-events: none !important;
}

/* /proyectos/: sin fondo negro / overlay al hover de las imágenes */
body:not(.home) .elementor-widget-bridge_portfolio_list .projects_holder article .image_holder .text_holder,
body:not(.home) .elementor-widget-bridge_portfolio_list .projects_holder article .image_holder:hover .text_holder,
body:not(.home) .elementor-widget-bridge_portfolio_list .projects_holder article:hover .image_holder .text_holder {
	background: transparent !important;
	opacity: 0 !important;
	visibility: hidden !important;
}

/* Home portfolio: botón «Ver todo» perfectamente circular */
.home .elementor-element-5d30f08 .qodef-qi-button {
	align-items: center;
	aspect-ratio: 1 / 1;
	border-radius: 50% !important;
	box-sizing: border-box;
	display: inline-flex;
	height: 13.75rem;
	justify-content: center;
	padding: 0 !important;
	width: 13.75rem;
}

.home .elementor-element-5d30f08 .qodef-qi-button .qodef-m-text {
	line-height: 1;
	padding: 0;
}

/* Contacto */
.content .bc-contact-section__title {
	font-family: "Oswald", Sans-serif;
    font-size: 88px;
    font-weight: 700;
    color: #000000;
}
.bc-contact-section__media-box {
	background: none;
	min-height: 0;
	min-width: 0;
}
.content .bc-contact-section__inner {
	padding: clamp(1rem, 4vw, 1rem) 0;
}

/* Experiencias */
@media only screen and (min-width: 1025px) {
	.content .bc-think-different__inner,
	.content .bc-about-project__inner,
	.content .bc-project-features__inner,
	.content .bc-project-showcase__inner {
		max-width: 1300px;
		padding-left: 0;
		padding-right: 0;
	}
}

.bc-about-project .bc-about-project__items {
    gap: 0;
}
.bc-about-project .bc-about-project__media {
	background: none;
	padding: 0;
}
.bc-about-project .bc-about-project__content {
    max-width: 60%;
}

@media only screen and (max-width: 1024px) {
	.content .bc-think-different__inner,
	.content .bc-about-project__inner,
	.content .bc-project-features__inner,
	.content .bc-project-showcase__inner,
	.content .bc-team-intro__inner,
	.content .elementor-element-50f7450 {
		padding-left: 2rem!important;
		padding-right: 2rem!important;
	}

	/* Heading Elementor de Experiencias / Proyectos (si existe) */
	.content .elementor-3687 .elementor-element.elementor-element-c7d498a,
	.content .elementor-3256 .elementor-element.elementor-element-e4a80bc {
		padding-left: 2rem;
		padding-right: 2rem;
	}

	.content .elementor-3687 .elementor-element.elementor-element-c7d498a, 
	.content .elementor-3256 .elementor-element.elementor-element-e4a80bc {
        padding-left: 0;
        padding-right: 0;
    }
	.content .elementor-3687 .elementor-element.elementor-element-c7d498a .elementor-heading-title,
	.content .elementor-3256 .elementor-element.elementor-element-e4a80bc .elementor-heading-title,
	.content .bc-contact-section__title,
	.content .bc-think-different__title,
	.single-portfolio_page h1.portfolio-auto-title {
		font-size: 3rem;
	}

	.content .elementor-element-11be245 .e-con-inner {
		padding: 0;
	}

	.content .bc-project-logos__img {
        max-height: initial;
	}
}

/*
 * Títulos del mosaico en hover.
 * Bridge (style_dynamic_responsive) fuerza h3/h3 a a 60→52→40px y en
 * celdas pequeñas el texto se corta (overflow:hidden del .text_holder).
 */
.elementor-widget-bridge_portfolio_list .projects_holder article h3.portfolio_title,
.elementor-widget-bridge_portfolio_list .projects_holder article h3.portfolio_title a {
	font-family: Oswald, sans-serif !important;
	font-size: 50px !important;
	font-weight: 700 !important;
	letter-spacing: normal;
	line-height: 1.15 !important;
	margin: 0;
	text-transform: uppercase;
	white-space: normal !important;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.elementor-widget-bridge_portfolio_list .projects_holder article .hover_feature_holder_title_inner {
	box-sizing: border-box;
	max-width: 100%;
	padding: 0.75rem 1rem;
	width: 100%;
}

@media only screen and (max-width: 1024px) {
	.elementor-widget-bridge_portfolio_list .projects_holder article h3.portfolio_title,
	.elementor-widget-bridge_portfolio_list .projects_holder article h3.portfolio_title a {
		font-size: 30px !important;
		line-height: 1.15 !important;
	}
}

@media only screen and (max-width: 767px) {
	.elementor-widget-bridge_portfolio_list .projects_holder article h3.portfolio_title,
	.elementor-widget-bridge_portfolio_list .projects_holder article h3.portfolio_title a {
		font-size: 20px !important;
		line-height: 1.2 !important;
	}

	.elementor-widget-bridge_portfolio_list .projects_holder article .hover_feature_holder_title_inner {
		padding: 0.5rem 0.65rem;
	}
}

/* Mosaico proyectos: ocultar categoría del portfolio en el hover */
.elementor-widget-bridge_portfolio_list .projects_holder article .project_category {
	display: none !important;
}

.footer-menu-links {
	font-family: Oswald, sans-serif;
	font-size: 17px;
	font-weight: 700;
	letter-spacing: normal;
	line-height: 19px;
	margin: 0;
	text-transform: uppercase;
}

/*
 * Banda "Han confiado…": mismo aire superior/inferior y misma
 * distancia al footer en todas las páginas. En soluciones Elementor
 * dejó contenedores vacíos (divider/spacer) tras la banda.
 */
.elementor > .elementor-element-47225313,
.elementor > .elementor-element-23b744d {
	margin-bottom: 70px !important;
	padding-top: 70px !important;
	padding-bottom: 70px !important;
}

.elementor > .elementor-element-23b744d ~ .elementor-element:not(:has(img)):not(:has(iframe)):not(:has(video)):not(:has(.elementor-widget-text-editor)):not(:has(.elementor-widget-heading)):not(:has(.elementor-widget-button)):not(:has(.elementor-widget-icon-box)):not(:has(a[href])) {
	display: none !important;
}

/* Texto blanco de la barra de cookies: el verde de marca (#00cb96) no llega a 4,5:1. */
.moove-gdpr-info-bar-content .mgbutton,
.moove-gdpr-info-bar-container .mgbutton {
	background-color: #055c3e !important;
	border-color: #055c3e !important;
	color: #ffffff !important;
}

.moove-gdpr-info-bar-content .mgbutton:hover,
.moove-gdpr-info-bar-content .mgbutton:focus,
.moove-gdpr-info-bar-container .mgbutton:hover,
.moove-gdpr-info-bar-container .mgbutton:focus {
	background-color: #044a32 !important;
	border-color: #044a32 !important;
	color: #ffffff !important;
}