/*
Theme Name: Porto Child
Theme URI: https://www.portotheme.com/wordpress/porto
Author: P-THEMES
Author URI: https://www.portotheme.com/
Description: Porto Responsive WordPress + eCommerce Theme.
Version: 1.1
Template: porto
License: Commercial
License URI: http://themeforest.net/licenses/regular_extended
Tags: woocommerce, corporate, ecommerce, responsive, blue, black, green, white, light, dark, red, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, fixed-layout, responsive-layout, custom-menu, editor-style, featured-images, flexible-header, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready, accessibility-ready
*/

/*************** ADD YOUR CUSTOM CSS HERE  ***************/

/*Home-2*/
.background-color-gray{
	background-color: #f7f7f7 !important;
}
.pc-section-shape-background:before, .pc-section-shape-background:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 47.7%;
    width: 50vw;
    height: 100%;
    background: #FFF;
    transform: skewX(21deg);
    z-index: 0;
}
.pc-section-shape-background .custom-shape-divider:before {
    content: '';
    position: absolute;
    top: -150px;
    left: 0;
    width: 100%;
    height: 150%;
    background: #f7f7f7;
    transform: skewY(-4deg);
    z-index: 0;
}
.pc-section-shape-background:after {
    left: 49.3%;
    transform: skewX(-21deg);
}
.porto-process.process-horizontal .process-step:hover .process-step-circle {
    background-color: var(--porto-primary-color);
    color: #fff;
}
@media(max-width: 767px){
	.img-center-mobile.wpb_single_image.vc_align_right {
		text-align: center !important;
	}
}

/*Home-3*/
.custom-marquee-1 .porto-ultimate-content-box {
    flex-direction: row;
}
.max-w-90 img {
    max-width: 90px;
}
.max-w-140 img {
    max-width: 140px;
}
.max-w-100 img {
    max-width: 100px;
}
.custom-marquee-1 {
    animation: 30s linear 0s infinite normal none running marqueeAnimation;
}
@keyframes marqueeAnimation{
	100% {
		transform: translateX(-920px);
	}
}
/*Home Frankenstein*/
.custom-separator hr {
    width: 60px;
}
.custom-service-gallery .porto-sicon-img {
    width: calc(100% - 10px) !important;
    overflow: hidden;
    border-radius: 21px;
    border: 5px solid transparent;
    transition: ease border .3s, transform .3s;
}
@media (min-width: 992px) {
    .custom-text-background {
        background-repeat: no-repeat;
        background-size: 100%;
        background-position: 20% 30%;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }
}
.vc_custom_1653111801830 {
    background-image: url(//sw-themes.com/porto_dummy/wp-content/uploads/2021/02/text-background.jpg?id=55) !important;
}
.custom-svg-2 {
    position: absolute;
    top: 43%;
    left: -260px;
    width: 190px;
    transform: translate3d(0, -50%, 0);
}
.custom-img-pos-1 {
    position: absolute;
    top: -4.6153846154rem;
    right: 0;
}
.z-index-n-1 {
    z-index: -1;
}
.intro-svg .shape-divider-bottom {
    width: 400%;
    transform: none !important;
}
.intro-svg .shape-divider-bottom svg {
    left: 0 !important;
    animation: 45s linear 0s infinite shapeDividerToLeft;
}
@keyframes shapeDividerToLeft{
	0% {
		transform: translateX(0%);
	}
	100% {
		transform: translateX(-50%);
	}
}
.bg-gradient {
    background-color: var(--porto-primary-color) !important;
    background-image: linear-gradient(to right, var(--porto-primary-color) 0, #0b6afb 100%) !important;
}
.process-wrapper {
    background-position: center;
    background-repeat: no-repeat;
}
.process-wrapper.vc_column_container > .wpb_wrapper.vc_column-inner {
    width: 100%;
    min-height: 1px;
    padding-left: 32px;
    padding-right: 32px;
    position: relative;
    max-width: 555px;
    padding-top: 7rem;
    padding-bottom: 3rem;
    margin-left: auto;
    margin-right: 30px;
}
.blog-home .owl-carousel.owl-drag .owl-item {
    max-height: 550px;
}
.blog-home .posts-wrap .post h3.porto-heading{
    height: auto;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    height: 5em;
    line-height: 1.6em;
}
.blog-home .posts-wrap .post h3.porto-heading {
    height: 160px;
}
.blog-home .posts-wrap .post h3.porto-heading {
    font-size: 1.5em;
    line-height: 1.3;
    font-weight: 600;
    margin-bottom: 1rem;
    word-break: break-word;
}
.blog-home .posts-wrap .post h3.porto-heading {
    font-size: 1.875rem;
    font-weight: 700;
    letter-spacing: -0.025em;
    margin-bottom: 0.25rem;
}
.blog-home .entry-content {
    height: 105px;
}
/*Home 5 GPT*/
.w-max-content {
    width: max-content;
}
.no-over-border button{
	border: unset !important;
  	padding: 16px 24px !important;
  	color: #041018 !important;
}
.custom-card-row-2 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}
.custom-card-row-3 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}
.custom-card-row-4 {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}
.custom-card-row-4 > .vc_column_container, .custom-card-row-3 > .vc_column_container, .custom-card-row-2 > .vc_column_container {
    width: auto !important;
    float: none !important;
}

.height-fit{
	height: fit-content;
}

.elemento-bottom > .wpb_wrapper {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
}

.inline-row .wpb_wrapper {
  display: flex;
  gap: 15px;
  align-items: center;
  flex-wrap: wrap; /* opcional para responsive */
}

.inline-row .vc_custom_heading {
  margin: 0;
}

.inline-row {
  position: absolute;
  bottom: 24px;
  width: 100%;
}
.esq-der-arriba{
	position: absolute;
    right: 24px;
    top: 30px;
}
.top-auto{
	margin-top: auto;
}

.border-color-trans{
  border: 1px solid #fff;
	    border-color: rgba(255, 255, 255, 0.35) !important;
    
}

.rounded-border iframe, .rounded-border img{
	border-radius: 15px;
}

.grupo-spk-video {
  position: relative;
  overflow: hidden;
}

.grupo-spk-video .video-bg-spk {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  transform: translate(-50%, -50%);
  object-fit: cover;
  z-index: 0;
}

/* Asegura que el contenido quede encima */
.grupo-spk-video .vc_row {
  position: relative;
  z-index: 2;
}

/*Poniendo vídeo e imagenes de la misma altura BEGIN*/
/* SOLO esta sección */
.custom-video-grid {
  display: flex;
  align-items: stretch;
}

/* Las dos columnas deben estirarse */
.custom-video-grid > .vc_column_container {
  display: flex;
}

/* Inner de ambas columnas */
.custom-video-grid > .vc_column_container > .vc_column-inner {
  width: 100%;
  display: flex;
  flex-direction: column;
}

/* La columna izquierda toma la altura del vídeo */
.custom-video-grid > .col-md-3-5 > .vc_column-inner {
  height: auto;
}

/* COLUMNA DERECHA */
.custom-video-grid > .col-md-2-5 > .vc_column-inner {
  height: 100%;
  display: flex;
  flex-direction: column;
  margin: -6px 0; /* 👈 clave */
}

/* Cada bloque de imagen */
.custom-video-grid > .col-md-2-5 .wpb_single_image {
  flex: 1 1 0; /* 👈 volvemos a flex correcto */
  display: flex;
  padding: 6px 0; /* 👈 crea el espacio */
  margin-bottom: 0 !important; /* limpia WPBakery */
}

/* Wrapper interno */
.custom-video-grid > .col-md-2-5 .wpb_single_image > .wpb_wrapper {
  flex: 1;
  display: flex;
}

/* Contenedor de imagen */
.custom-video-grid > .col-md-2-5 .vc_single_image-wrapper {
  width: 100% !important;
  height: 100%;
  display: block;
  overflow: hidden;
}

/* Imagen */
.custom-video-grid > .col-md-2-5 .vc_single_image-wrapper img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.custom-video-grid .wpb_single_image .wpb_wrapper {
  margin-bottom: 0 !important;
}

.custom-video-grid img {
  display: block;
}

/* Quitar margin fantasma de WPBakery */
.custom-video-grid .wpb_single_image,
.custom-video-grid .wpb_single_image .wpb_wrapper {
  margin-bottom: 0 !important;
}

/* Evitar espacio inline de imágenes */
.custom-video-grid img {
  display: block;
}

/* Asegurar que ningún contenedor meta espacio */
.custom-video-grid .vc_single_image-wrapper {
  line-height: 0;
}
/*Poniendo vídeo e imagenes de la misma altura END*/
.icon-column{
	width: max-content;
}
.circle-background {
    border-radius: 50%;
    color: white;
    padding: 8px 10px;
}
.custom-row-moved {
    border: 1px #adadad solid;
    position: relative;
    box-shadow: rgba(0, 0, 0, 0.1) -4px 9px 25px -6px;
    z-index: 1;
}
.custom-row-moved .vc_custom_heading {
    background: oklch(98.4% 0.003 247.858);
    border-radius: 15px;
    padding: 1rem;
}

.custom-btn button{
	padding-top: 13px !important;
    padding-bottom: 13px !important;
  	border-radius: 1rem !important;
  background-image: unset !important;
	width: max-content;
}

.custom-outline-btn button{
	border-width: 1px !important;
  border-radius: 1rem !important;
}

.btn-gray button{
	background: #f0f2f3 !important;
	border: unset !important;
}

.contact-container input, .contact-container textarea{
	border-radius: 15px;
}
.contact-container .custom-btn-arrow{
	width: 100%;
}
.contact-container button{
	width: 100%;
    text-align: center !important;
}
/*Ocultando pestañas vacías de producto*/
.woocommerce-tabs .panel:empty {
    display: none;
}

/*Estilos de productos personalizables BEGIN*/
.result-left-box{border: 1px solid rgba(0,0,0,.1);border-right: unset;padding: 9px;padding-right:0px;margin:0px;color: #1c8068;}
.result-right-box{border: 1px solid rgba(0,0,0,.1);border-left: unset;padding: 9px;padding-left:0px;margin:0px;}
#configurator-container iframe{height:100% !important;}
.color-box.selected, .peso-box.selected, .bovinado-box.selected, .material-box.selected, .flute-box.selected, .tamano-box.selected, .personalizacion-box.selected, .metraje-box.selected, .tinta-box.selected{border: 2px solid #83a060;}
.w3-bar{display:block;text-align: center;}
.w3-bar-item{border: 3px solid;display:inline-block;margin-right: 20px;}
.w3-bar-item.active{border: 5px solid #83a060;}
.tab_custom{display:block;padding: 30px;border: 1px solid !important;margin-bottom: 30px;text-align: center;}
.color-box, .peso-box, .bovinado-box, .flute-box, .material-box, .tamano-box, .personalizacion-box, .metraje-box, .tinta-box{cursor:pointer;display:inline-block;width:32%;padding-top: 5px;}
.centered-buttons{text-align:center;}
.custom_quantity input[type="number"]{-moz-appearance: textfield;font-size: 0.9rem;padding: .5rem .5rem !important;margin-right: .5rem !important;}
.custom_quantity{position:relative;}
.custom_quantity span{position:relative;right:35px;}
.custom_quantity strong{display:inline-block;width:40px;}
.color-box span, .peso-box span, .bovinado-box span, .flute-box span, .material-box span, .tamano-box span, .personalizacion-box span, .metraje-box span{display:block;text-align: center;font-size: 1rem;}
.right-bordered {position: relative;}
.right-bordered::after {content: '';position: absolute;top: 5%;right: 0;height: 90%;border-right: 3px solid black;}
#grand-container{background-color:#F7F7F7;margin-bottom: 60px;position:relative;}
#grand-container .v-line{position: fixed;right: 50%;top: 1.5rem;height: calc(100vh - 1.5rem * 2);border-right: 2px solid #2c1b03;z-index: 2;}
#grand-container button{padding: 1rem 1.5rem;background-color: #000;color: #fff;display: flex;display: inline-block;justify-content: center;align-items: center;gap: 0.5rem;cursor: pointer;transition: 0.25s;font-weight: 500;border: unset;}
#color-button.success{background: url("https://www.controlpack.com/wp-content/uploads/2024/04/Color-white.png")no-repeat center center / contain, #83a060 !important;border-color: #83a060;}
#onda-button.success{background: url("https://www.controlpack.com/wp-content/uploads/2024/04/Onda-white.png")no-repeat center center / contain, #83a060 !important;border-color: #83a060;}
#medidas-button.success{background: url("https://www.controlpack.com/wp-content/uploads/2024/04/Medidas-white.png")no-repeat center center / contain, #83a060 !important;border-color: #83a060;}
#peso-button.success{background: url("https://www.controlpack.com/wp-content/uploads/2024/04/Peso-white.png")no-repeat center center / contain, #83a060 !important;border-color: #83a060;}
#bovinado-button.success{background: url("https://www.controlpack.com/wp-content/uploads/2024/04/Bovinado-white.png")no-repeat center center / contain, #83a060 !important;border-color: #83a060;}
#material-button.success{background: url("https://www.controlpack.com/wp-content/uploads/2024/04/Material-white.png")no-repeat center center / contain, #83a060 !important;border-color: #83a060;}
#tamano-button.success{background: url("https://www.controlpack.com/wp-content/uploads/2024/04/Tamano-white.png")no-repeat center center / contain, #83a060 !important;border-color: #83a060;}
#metraje-button.success{background: url("https://www.controlpack.com/wp-content/uploads/2024/04/Metraje-white.png")no-repeat center center / contain, #83a060 !important;border-color: #83a060;}
#personalizacion-button.success{background: url("https://www.controlpack.com/wp-content/uploads/2024/04/Personalizacion-white.png")no-repeat center center / contain, #83a060 !important;border-color: #83a060;}
#tinta-button.success{background: url("https://www.controlpack.com/wp-content/uploads/2026/02/Tintas-white.png")no-repeat center center / contain, #83a060 !important;border-color: #83a060;}
.frame-container iframe {width: 100%;height: 100%;}
.result-container {padding-top: 15px;padding-left: 15px;padding-bottom: 15px;}
#close-artwork{display:none !important;position: absolute;bottom: 15px;left: 15px;}
.inline-middle{width: max-content;display: inline-block;vertical-align: middle;}
.one-half {width: 45%;}
.one-third {
    width: 30% !important;
    margin-right: 2% !important;
}
.one-half, .one-third, .two-third, .one-fourth, .three-fourth, .one-fifth, .two-fifth, .three-fifth, .four-fifth, .one-sixth, .five-sixth {float: left;margin: 0 4% 0 0;margin-right: 4%;}
.full_width, .one_half, .one_third, .two_third, .one_fourth, .three_fourth, .one_fifth, .two_fifth, .three_fifth, .four_fifth, .one_sixth, .five_sixth {
    float: left;
}
.qib-container div.quantity:not(#qib_id):not(#qib_id) {
	float: left;
	line-height: 1;
	display: inline-block;
	margin: 0;
	padding: 0;
	border: none;
	border-radius: 0;
	width: auto;
	min-height: initial;
	min-width: initial;
	max-height: initial;
	max-width: initial;
}

.qib-button:not(#qib_id):not(#qib_id) {
	line-height: 1;
	display: inline-block;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	height: 35px;
	width: 30px;
	color: black;
	background: #e2e2e2;
	border-color: #cac9c9;
	float: left;
	min-height: initial;
	min-width: initial;
	max-height: initial;
	max-width: initial;
	vertical-align: middle;
	font-size: 16px;
	letter-spacing: 0;
	border-style: solid;
	border-width: 1px;
	transition: none;
	border-radius: 0;
}

.qib-button:focus:not(#qib_id):not(#qib_id) {
	border: 2px #b3b3aa solid;
	outline: none;
}

.qib-button:hover:not(#qib_id):not(#qib_id) {
	background: #d6d5d5;
}

.qib-container .quantity input.qty:not(#qib_id):not(#qib_id) {
	line-height: 1;
	background: none;
	text-align: center;
	vertical-align: middle;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	height: 35px;
	width: 45px;
	min-height: initial;
	min-width: initial;
	max-height: initial;
	max-width: initial;
	box-shadow: none;
	font-size: 15px;
	border-style: solid;
	border-color: #cac9c9;
	border-width: 1px 0;
	border-radius: 0;
}

.qib-container .quantity input.qty:focus:not(#qib_id):not(#qib_id) {
	border-color: #cac9c9;
	outline: none;
	border-width: 2px 1px;
	border-style: solid;
}
.img-width-70.wpb_single_image img {
    width: 70% !important;
}

/*Nuevo modal para cintas kraft personalizadas BEGIN*/
.kraft-modal{
  display:none;
  position:fixed;
  z-index:999999;
  left:0;
  top:0;
  width:100%;
  height:100%;
  background:rgba(0,0,0,0.7);
}

.kraft-modal-content{
  background:#fff;
  margin:1% auto;
  padding: 20px 30px;
  width:90%;
  /*max-width:700px;*/
  border-radius:6px;
  position:relative;
}

.kraft-close{
  position:absolute;
  right:15px;
  top:10px;
  font-size:28px;
  cursor:pointer;
}
/*Nuevo modal para cintas kraft personalizadas END*/
.single-product .kraft-modal .wpcf7-form-control:not(.wpcf7-acceptance) {
    background-color: #f7f7f7 !important;
    min-height: 3.375rem;
    border: none;
}
.single-product .kraft-modal .wpcf7-form-control.wpcf7-text {
    font-size: 0.85rem;
    color: #777;
    font-weight: 400;
    margin-bottom: 1rem;
	width: 95%;
}
.single-product .kraft-modal .wpcf7 textarea {
    width: 97.8%;
}
.single-product .kraft-modal .wpcf7-form-control-wrap:not([data-name="Mensaje"]):not([data-name="Personalizacion"]) {
    width: 33%;
    display: inline-block;
}
.single-product .kraft-modal .wpcf7-form-control.wpcf7-submit {
    background-color: var(--porto-primary-color, #CCC) !important;
    border-color: var(--porto-primary-color, #CCC) var(--porto-primary-color, #CCC) var(--porto-primary-dark-10, #b3b3b3) !important;
    color: var(--porto-primary-color-inverse, #FFF) !important;
}
/*Estilos de productos personalizables END*/

/*Estilos para las páginas de categorías BEGIN*/
.service-type .service-type-image{
    border-color: #000 !important;
}
.service-type:hover .service-type-image
 {
    border-color: var(--porto-primary-color) !important;
}
@media(max-width: 642px){
	.less-text-mobile{
		font-size: 32px !important;
	}
	.margin-auto-mobile{
		margin: 0 auto;
		display: block;
		width: max-content;
	}
	.text-center-mobile{
		text-align: center !important;
	}
	.no-background-mobile:before, .no-background-mobile:after{
		display: none;
	}
}
/*Estilos para las páginas de categorías END*/
@media(max-width: 767px){
	.custom-card-row-3, .custom-card-row-4{
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}
	.inline-row {
		position: static;
	}
	.inline-row .wpb_wrapper > *:first-child {
	  margin-left: -15px;
	}
}
@media(max-width: 401px){
	.block-mobile{
		display: block;
	}
}
@media(max-width: 385px){
	.no-parallax-mobile .vc_parallax-inner{
		background-image: unset !important;
	}
}

.service-type:hover .service-type-title, .custom-service-1 .vc_column-inner:hover h3 {
    color: var(--porto-tertiary-color) !important;
}

.vc_btn3.vc_btn3-shape-rounded{
    border-radius: 25px;
}
.vc_general.vc_btn3{
	padding: 16px 24px;
}
.asistencia-opciones .porto-sicon-box{
	cursor: pointer;
}

.no-parallax-mobile{
	
}

/*Estilos para resultados de búsqueda*/
.margin-auto{
	margin: 0 auto !important;
}

.no-before-after .vc_column-inner::before,
.no-before-after .vc_column-inner::after {
    display: none !important;
}

.mfp-close, .mfp-close-btn-in .mfp-close{
	color: #000;
}

.pagination .next:before {
    left: auto;
    right: -12px;
    top: -2px;
}
.pagination .prev:before{
	top: -2px;
    left: -12px;
    right: auto;
}

.page-links span.current, .pagination span.current{
	padding: 4px 10px;
    border-radius: 15px;
}

.page-links a:focus, .page-links a:hover, .pagination a:focus, .pagination a:hover{
	background-color: unset;
}

@media(max-width: 767px){
	.center-all-mobile .vc_custom_heading, .center-all-mobile .inputs-container, .inputs-container input, .text-centered-mobile{text-align: center;}
	.center-all-mobile button{
		margin: 0 auto;
		display: block;
	}
	
	.custom-card-row-2{
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}
	
	.block-mobile{
		display: block;
	}
	.block-mobile .col-1{
		width: 100%;
	}
	.w-auto-mobile{
		width: auto;
	}
}

ul.products .woocommerce-loop-product__title {
    height: 60px;
    white-space: break-spaces;
}

.tax-product_cat .product-image {
    border: unset;
}

.width-limit{
	max-width: 70%;
	margin: 0 auto;
    display: block;
}

.custom-product-tab .vc_tta-title-text{
	color: var(--porto-tertiary-color);
	font-weight: bold;
}
.custom-product-tab.vc_tta-color-white.vc_tta-style-flat .vc_tta-tab>a{
	background-color: #fff;
}
.custom-product-tab.vc_tta-color-white.vc_tta-style-flat .vc_tta-tab.vc_active>a {
	background-color: #d1d1d1;
}