.tp-section-title-span-padding span {
  padding-left: 175px;
  display: block;
}

.header-main-menu nav ul li.wp-menu-item-last .submenu:not(.tp-mega-menu) {
  left: 0;
}

.tp-shop-details-left-wrap .tp-shop-details-left-thumb img {
  width: 100%;
}

.liko-dark-active div .elementor-heading-title,
.liko-dark-active div .elementor-heading-title a span {
  color: var(--tp-common-white);
}
.liko-dark-active div .tp-el-footer-links ul li a {
  -webkit-text-fill-color: var(--tp-common-white) !important;
  color: var(--tp-common-white) !important;
}

.liko-dark-active .sidebar__widget.widget_tag_cloud .tagcloud a {
  color: var(--tp-common-white);
  border: 1px solid rgba(245, 247, 245, 0.1);
}

.liko-dark-active .sidebar__widget.widget_tag_cloud .tagcloud a:hover {
  color: var(--tp-common-black);
  border-color: var(--tp-common-white);
  background: var(--tp-common-white);
}
.liko-dark-active .project-details-1-navigation span {
  color: var(--tp-common-white);
}

.liko-dark-active .comment-reply-title {
  color: var(--tp-common-white);
}

.liko-dark-active p.logged-in-as a {
  color: var(--tp-common-white);
}

.liko-dark-active .sidebar__search input {
  border-bottom: 1px solid rgba(245, 247, 245, 0.14) !important;
  color: var(--tp-common-white);
  background: transparent;
  border: 0px;
}

.liko-dark-active .sidebar__search input:focus {
  border-bottom: 1px solid var(--tp-common-white) !important;
}

.liko-dark-active .liko-breadcrumb-padding {
  background: #121212;
  background-color: #121212;
}

.liko-dark-active .tp-login-remember label{
    color:  rgba(255, 255, 255, 0.6);
}

.liko-dark-active .tp-login-input-label label{
    color:  var(--tp-common-white);
}
.liko-dark-active .wc-block-cart-items thead tr {
    background: var(--tp-common-white);
    padding: 30px;
}
.liko-dark-active .wc-block-cart-items thead tr th{
    padding: 8px 16px 8px 16px;
}

.liko-dark-active .wc-block-cart-items thead tr .wc-block-cart-items__header-product{
    visibility: visible;
}
.liko-dark-active .wc-block-cart-item__wrap a,
.liko-dark-active .wc-block-cart-item__wrap ins {
    color: var(--tp-common-white);
} 

.liko-dark-active .wc-block-cart-item__wrap del{
    color: #818487 !important;
    margin-right: 10px;
} 
.liko-dark-active .wc-block-components-quantity-selector{
    background: var(--tp-common-white);
}
.liko-dark-active .wc-block-cart-item__wrap button.wc-block-cart-item__remove-link{
    color: #ebebeb !important;
}
.liko-dark-active .wc-block-cart-item__total .wc-block-components-product-price{
    color: var(--tp-common-white);
}

.liko-dark-active .wc-block-components-totals-wrapper{
    border-top: 1px solid rgba(245, 247, 245, 0.1);
}
.liko-dark-active .wp-block-woocommerce-cart-order-summary-totals-block{
    border-top: 1px solid #E0E2E3 ;
}

.liko-dark-active .wc-block-components-totals-item__label{
    color: var(--tp-common-white);
}

/* ==================== FIX: CUSTOM GALLERY MASONRY SINGLE COLUMN MOBILE ==================== */
.liko-masonry-wrapper {
	position: relative;
	width: 100%;
	max-width: 100%;
	overflow: hidden;
	box-sizing: border-box;
}

.liko-masonry-grid.layout-metro.liko-masonry-cols-1,
.liko-masonry-grid.layout-metro[style*="--liko-masonry-cols: 1"] {
	grid-template-columns: 1fr !important;
}

.liko-masonry-grid.layout-metro.liko-masonry-cols-1 .liko-masonry-item,
.liko-masonry-grid.layout-metro.liko-masonry-cols-1 .liko-masonry-item[class*="size-"],
.liko-masonry-grid.layout-metro[style*="--liko-masonry-cols: 1"] .liko-masonry-item,
.liko-masonry-grid.layout-metro[style*="--liko-masonry-cols: 1"] .liko-masonry-item[class*="size-"] {
	grid-column: span 1 !important;
	grid-row: span 1 !important;
	width: 100% !important;
	max-width: 100% !important;
}

@media (max-width: 767px) {
	.liko-masonry-wrapper {
		overflow: hidden;
		max-width: 100%;
	}

	.liko-masonry-grid.layout-metro {
		grid-template-columns: 1fr !important;
		width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.liko-masonry-grid.layout-metro .liko-masonry-item,
	.liko-masonry-grid.layout-metro .liko-masonry-item.size-normal,
	.liko-masonry-grid.layout-metro .liko-masonry-item.size-wide,
	.liko-masonry-grid.layout-metro .liko-masonry-item.size-tall,
	.liko-masonry-grid.layout-metro .liko-masonry-item.size-big,
	.liko-masonry-grid.layout-metro .liko-masonry-item.size-tall-3,
	.liko-masonry-grid.layout-metro .liko-masonry-item.size-big-3 {
		grid-column: span 1 !important;
		grid-row: span 1 !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.liko-masonry-grid.layout-masonry {
		width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.liko-masonry-grid.layout-masonry .liko-masonry-sizer,
	.liko-masonry-grid.layout-masonry .liko-masonry-item,
	.liko-masonry-grid.layout-masonry .liko-masonry-item.size-normal,
	.liko-masonry-grid.layout-masonry .liko-masonry-item.size-wide,
	.liko-masonry-grid.layout-masonry .liko-masonry-item.size-tall,
	.liko-masonry-grid.layout-masonry .liko-masonry-item.size-big,
	.liko-masonry-grid.layout-masonry .liko-masonry-item.size-tall-3,
	.liko-masonry-grid.layout-masonry .liko-masonry-item.size-big-3 {
		width: 100% !important;
		max-width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		float: none !important;
	}
}

.liko-masonry-media-wrap {
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	background-color: #111111;
}

.liko-masonry-media-wrap.has-poster-bg {
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}

.liko-masonry-media-wrap video {
	position: relative;
	z-index: 1;
}

/* Fix para Comparación de Imágenes Before / After */
.project-details-img-comparison {
	position: relative;
	width: 100%;
	overflow: hidden;
	border-radius: 12px;
}

.project-details-img-comparison .beforeAfter {
	position: relative;
	width: 100%;
	overflow: hidden;
}

.project-details-img-comparison .beforeAfter img {
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	display: block;
}

/* Fix para Fullscreen Showcase Slider: limitar imágenes al alto exacto de la pantalla (100vh) */
#port-showcase-slider-main {
	position: relative !important;
	width: 100% !important;
	height: 100vh !important;
	max-height: 100vh !important;
	overflow: hidden !important;
}

.port-showcase-slider-spaces,
.port-showcase-slider-wrap,
#showcase-slider-holder {
	width: 100% !important;
	height: 100vh !important;
	max-height: 100vh !important;
	overflow: hidden !important;
}

#canvas-slider {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100vh !important;
	max-height: 100vh !important;
	overflow: hidden !important;
	pointer-events: none;
}

#canvas-slider canvas {
	width: 100% !important;
	height: 100vh !important;
	max-height: 100vh !important;
	object-fit: cover !important;
	object-position: center !important;
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
}

#canvas-slider .slider-img {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100vh !important;
	max-height: 100vh !important;
	overflow: hidden !important;
}

#canvas-slider .slide-img {
	width: 100% !important;
	height: 100vh !important;
	max-height: 100vh !important;
	object-fit: cover !important;
	object-position: center !important;
	display: block !important;
}

.swiper-container#showcase-slider {
	height: 100vh !important;
	max-height: 100vh !important;
}

/* ==================== FIX: RESPONSIVE TABLET / IPAD INTRO & ANIMATED IMAGE ==================== */
/* Prevención de desbordamiento horizontal y flickers en pantallas Tablet (iPad) */
@media (max-width: 1200px) {
	body:not(.rtl) .elementor-element.elementor-element-bda1d49,
	body.rtl .elementor-element.elementor-element-bda1d49 {
		left: auto !important;
		right: 40px !important;
		top: auto !important;
		bottom: 30px !important;
		position: absolute !important;
		max-width: 350px !important;
		z-index: 10 !important;
	}

	.elementor-element.elementor-element-bda1d49 img,
	.elementor-element.elementor-element-bda1d49 .liko-animated-img {
		max-height: 380px !important;
		width: auto !important;
		object-fit: contain !important;
	}
}

@media (max-width: 767px) {
	body:not(.rtl) .elementor-element.elementor-element-bda1d49,
	body.rtl .elementor-element.elementor-element-bda1d49 {
		left: 50% !important;
		right: auto !important;
		top: auto !important;
		bottom: 20px !important;
		transform: translateX(-50%) !important;
		max-width: 80% !important;
	}

	.elementor-element.elementor-element-bda1d49 img,
	.elementor-element.elementor-element-bda1d49 .liko-animated-img {
		max-height: 300px !important;
		width: auto !important;
	}
}

/* Control de desbordamiento horizontal en el Hero / Intro */
.elementor-15286,
.elementor-15286 .elementor-element-272243d6,
.elementor-15286 .elementor-element-97bf761,
.elementor-15286 .elementor-element-e24ba4b {
	max-width: 100vw !important;
	overflow-x: hidden !important;
}

/* Fix de aceleración por hardware en Chrome para evitar titileo / pestañeo (flicker) de video y fondos */
.tp-video-3-wrap,
.tp-video-3-wrap video,
.liko-animated-video,
.elementor-background-video-container,
.elementor-background-video-embed,
.elementor-motion-effects-container {
	-webkit-backface-visibility: hidden !important;
	backface-visibility: hidden !important;
	-webkit-transform: translate3d(0, 0, 0) !important;
	transform: translate3d(0, 0, 0) !important;
}

/* Estilos personalizados para formulario de contacto */
.wpcf7-form-control:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="url"],
.wpcf7 input[type="number"],
.wpcf7 input[type="password"],
.wpcf7 input[type="date"],
.wpcf7 textarea,
.wpcf7 select,
.cn-contactform-input input,
.cn-contactform-input textarea,
.cn-contactform-input select,
.tp-contact-6-input input,
.tp-contact-6-input textarea,
.tp-el-c-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.tp-el-c-form textarea,
.tp-el-c-form select,
.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form textarea,
.contact-form select {
	background-color: #1D1D1D !important;
	border: 1px solid #3AE1E6 !important;
	color: #3AE1E6 !important;
	-webkit-text-fill-color: #3AE1E6 !important;
	padding: 12px 18px !important;
	border-radius: 6px !important;
	outline: none !important;
	box-shadow: none !important;
	font-size: 16px !important;
}

/* Tipografía de etiquetas (labels) y textos del formulario */
.wpcf7 label,
.wpcf7 form label,
.wpcf7 p,
.wpcf7 span,
.cn-contactform-input label,
.cn-contactform-2-bg .cn-contactform-input label,
.tp-contact-6-input label,
.tp-el-c-form label,
.contact-form label {
	color: #3AE1E6 !important;
	-webkit-text-fill-color: #3AE1E6 !important;
}

/* Opciones del menú desplegable select */
.wpcf7 select option,
.cn-contactform-input select option,
.tp-el-c-form select option,
.contact-form select option {
	background-color: #1D1D1D !important;
	color: #3AE1E6 !important;
}

/* Estilos de Autocompletado / Autofill de navegadores */
.wpcf7 input:-webkit-autofill,
.wpcf7 textarea:-webkit-autofill,
.cn-contactform-input input:-webkit-autofill,
.cn-contactform-input textarea:-webkit-autofill,
.tp-el-c-form input:-webkit-autofill,
.tp-el-c-form textarea:-webkit-autofill {
	-webkit-text-fill-color: #3AE1E6 !important;
	-webkit-box-shadow: 0 0 0px 1000px #1D1D1D inset !important;
	transition: background-color 5000s ease-in-out 0s;
}

/* Textos de muestra / Placeholders */
.wpcf7-form-control::-webkit-input-placeholder,
.wpcf7-form-control::-moz-placeholder,
.wpcf7-form-control:-ms-input-placeholder,
.wpcf7-form-control::placeholder,
.wpcf7 input::-webkit-input-placeholder,
.wpcf7 input::-moz-placeholder,
.wpcf7 input:-ms-input-placeholder,
.wpcf7 input::placeholder,
.wpcf7 textarea::-webkit-input-placeholder,
.wpcf7 textarea::-moz-placeholder,
.wpcf7 textarea:-ms-input-placeholder,
.wpcf7 textarea::placeholder,
.cn-contactform-input input::-webkit-input-placeholder,
.cn-contactform-input input::placeholder,
.cn-contactform-input textarea::-webkit-input-placeholder,
.cn-contactform-input textarea::placeholder,
.tp-contact-6-input input::placeholder,
.tp-contact-6-input textarea::placeholder,
.tp-el-c-form input::placeholder,
.tp-el-c-form textarea::placeholder {
	color: #3AE1E6 !important;
	-webkit-text-fill-color: #3AE1E6 !important;
	opacity: 0.75 !important;
}

/* Foco en los campos */
.wpcf7-form-control:focus,
.wpcf7 input:focus,
.wpcf7 textarea:focus,
.cn-contactform-input input:focus,
.cn-contactform-input textarea:focus,
.tp-contact-6-input input:focus,
.tp-contact-6-input textarea:focus,
.tp-el-c-form input:focus,
.tp-el-c-form textarea:focus {
	border-color: #3AE1E6 !important;
	background-color: #1D1D1D !important;
	color: #3AE1E6 !important;
	-webkit-text-fill-color: #3AE1E6 !important;
	box-shadow: 0 0 8px rgba(58, 225, 230, 0.35) !important;
}

/* Personalización del Botón de Enviar (Submit Button) */
.wpcf7 input[type="submit"],
.wpcf7 button[type="submit"],
.wpcf7-submit,
.cn-contactform-input input[type="submit"],
.cn-contactform-input button[type="submit"],
.tp-contact-6-input input[type="submit"],
.tp-contact-6-input button[type="submit"],
.tp-el-c-form input[type="submit"],
.tp-el-c-form button[type="submit"],
.contact-form input[type="submit"],
.contact-form button[type="submit"] {
	background-color: #3AE1E6 !important;
	color: #1D1D1D !important;
	-webkit-text-fill-color: #1D1D1D !important;
	border: 1px solid #3AE1E6 !important;
	padding: 14px 36px !important;
	border-radius: 6px !important;
	font-weight: 700 !important;
	font-size: 16px !important;
	letter-spacing: 0.5px !important;
	text-transform: uppercase !important;
	cursor: pointer !important;
	transition: all 0.3s ease-in-out !important;
	display: inline-block !important;
	box-shadow: 0 4px 15px rgba(58, 225, 230, 0.25) !important;
}

/* Estado Hover del Botón */
.wpcf7 input[type="submit"]:hover,
.wpcf7 button[type="submit"]:hover,
.wpcf7-submit:hover,
.cn-contactform-input input[type="submit"]:hover,
.cn-contactform-input button[type="submit"]:hover,
.tp-contact-6-input input[type="submit"]:hover,
.tp-contact-6-input button[type="submit"]:hover,
.tp-el-c-form input[type="submit"]:hover,
.tp-el-c-form button[type="submit"]:hover,
.contact-form input[type="submit"]:hover,
.contact-form button[type="submit"]:hover {
	background-color: #1D1D1D !important;
	color: #3AE1E6 !important;
	-webkit-text-fill-color: #3AE1E6 !important;
	border-color: #3AE1E6 !important;
	box-shadow: 0 0 20px rgba(58, 225, 230, 0.5) !important;
	transform: translateY(-2px) !important;
}

/* ==================== PADDING DE CONTENEDORES ELEMENTOR EN PORTFOLIOS ==================== */

/* En Escritorio y Tablet (> 767px): 90px de padding izquierdo en los contenedores principales */
@media (min-width: 768px) {
	body.single-tp-portfolios .elementor > .e-con,
	body.single-tp-portfolios .elementor > .elementor-section,
	body.single-tp-portfolios .elementor-element.e-parent,
	body.single-portfolio .elementor > .e-con,
	body.single-portfolio .elementor > .elementor-section,
	body.single-portfolio .elementor-element.e-parent,
	body[class*="portfolio"] .elementor > .e-con,
	body[class*="portfolio"] .elementor > .elementor-section,
	body[class*="portfolio"] .elementor-element.e-parent {
		padding-left: 90px !important;
	}
}

/* En Móviles (<= 767px): 15px de padding izquierdo y 15px de padding derecho */
@media (max-width: 767px) {
	body.single-tp-portfolios .elementor > .e-con,
	body.single-tp-portfolios .elementor > .elementor-section,
	body.single-tp-portfolios .elementor-element.e-parent,
	body.single-portfolio .elementor > .e-con,
	body.single-portfolio .elementor > .elementor-section,
	body.single-portfolio .elementor-element.e-parent,
	body[class*="portfolio"] .elementor > .e-con,
	body[class*="portfolio"] .elementor > .elementor-section,
	body[class*="portfolio"] .elementor-element.e-parent {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
}

/* ==================== POSICIÓN VERTICAL DEL BOTÓN HAMBURGUESA / MENÚ DE CABECERA ==================== */

/* Centrado vertical en el Sidebar (Al medio / Centro) */
.liko-header-bar.liko-layout-vertical.liko-trigger-vpos-center .liko-header-trigger,
.liko-header-bar.liko-layout-vertical:not(.liko-trigger-vpos-bottom):not(.liko-trigger-vpos-top) .liko-header-trigger {
	position: absolute !important;
	top: 50% !important;
	left: 0 !important;
	right: 0 !important;
	transform: translateY(-50%) !important;
	display: flex !important;
	justify-content: center !important;
}

/* En el fondo del Sidebar (Abajo) */
.liko-header-bar.liko-layout-vertical.liko-trigger-vpos-bottom .liko-header-trigger {
	position: relative !important;
	top: auto !important;
	transform: none !important;
	margin-top: auto !important;
	margin-bottom: 0 !important;
}

/* En la parte superior del Sidebar (Arriba) */
.liko-header-bar.liko-layout-vertical.liko-trigger-vpos-top .liko-header-trigger {
	position: relative !important;
	top: auto !important;
	transform: none !important;
	margin-top: 40px !important;
	margin-bottom: auto !important;
}


