/*
*
*  * EENDA
*  * Marketing, Desarrollo & Consulting
*  * www.eenda.com
*  * © 2025
*
*/

:root{

	--header-height:80px;

	/* Colores */
	--color-primary:rgba(18, 131, 77, 1); /* Oscurecido para mejor contraste */
	--color-primary-light:rgba(104, 167, 89, .15);
	--color-secondary:rgba(11, 38, 33, 1);
	--color-secondary-light:rgba(11, 38, 33, .15);
	--color-tertiary:rgba(248, 203, 116, 1);
	--color-light: rgba(255, 255, 255, 1);
	--color-light-opacity: rgba(255, 255, 255, .15);
	--color-gray: rgba(236, 236, 236, 1);
	--color-darkgray: rgba(144, 144, 144, 1);
	--color-black: rgba(0, 0, 0, 1);
	--color-black-light: rgba(85, 85, 85, 1); /* Oscurecido para cumplir contraste 4.5:1 */

	/* Tipografías y tamaños */
	--font-primary: 'Poppins', sans-serif;
	--font-size-base:106.25%;

	/* Radio del borde */
	--border-radius-defalt:50px;
	--border-radius-lg:40px;
	--border-radius-md:20px;
	--border-radius-sm:10px;
	--border-radius-xs:5px;

	--shadow-default:0 0.5rem 1rem rgba(0, 0, 0, 0.15);
	--shadow-lg:0 1rem 3rem rgba(0, 0, 0, 0.175);
	--shadow-sm:0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}

html {
  scroll-padding-top: var(--header-height);
  scroll-behavior: smooth; /* opcional, para scroll suave */
}

html, body{
	font-weight:300;
	font-size:var(--font-size-base);
	font-family:var(--font-primary);
	color:var(--color-secondary);
}

/* Override solo en /particulares */
.is_particulares{
	/* Colores */
	--color-primary: rgba(245, 144, 49, 1);
    --color-primary-light: rgba(215, 135, 48, .15);
    --color-secondary: rgba(35, 45, 80, 1);
    --color-secondary-light: rgba(35, 45, 80, .15);
    --color-tertiary: rgba(245, 222, 179, 1);
}

.grecaptcha-badge{
	visibility: hidden;
}

/*
Lucide fonts icons custom
*/
[class^="icon-"].icon-2x,
[class*=" icon-"].icon-2x{
  font-size:200%;
}

[class^="icon-"].icon-3x,
[class*=" icon-"].icon-3x{
  font-size:300%;
}

[class^="icon-"].icon-4x,
[class*=" icon-"].icon-4x{
  font-size:400%;
}

/*
Custom definitions
*/
.color-primary{
	color:var(--color-primary) !important;
}

.color-secondary{
	color:var(--color-secondary) !important;
}

.color-tertiary{
	color:var(--color-tertiary) !important;
}

.color-light{
	color:var(--color-light) !important;
}

.color-gray{
	color:var(--color-gray) !important;
}

.color-darkgray{
	color:var(--color-darkgray) !important;
}

.color-black{
	color:var(--color-black) !important;
}

.color-black-light{
	color:var(--color-black-light) !important;
}

.bg-primary{
	background-color: var(--color-primary) !important;
}

.bg-secondary{
	background-color: var(--color-secondary) !important;
}

.bg-tertiary{
	background-color: var(--color-tertiary) !important;
}

.btn:not(.btn-sm):not(.btn-lg){
	padding:1rem 2rem;
	border-radius:50px;
}

.btn-sm{
	padding:.25rem .75rem;
	border-radius:var(--border-radius-md);
}

.btn-link{
	padding:0;
	border-radius:0;
	color: var(--color-primary) !important;
}

.btn-primary{
	border-color: var(--color-primary);
	background-color: var(--color-primary);

	&:hover,
	&:focus{
		border-color: var(--color-secondary);
		background-color: var(--color-secondary);
	}
}

.btn-secondary{
	border-color: var(--color-secondary);
	background-color: var(--color-secondary);
}

.btn-tertiary{
	border-color: var(--color-tertiary);
	background-color: var(--color-tertiary);
}

.fs-7{
	font-size:.85rem !important;
}

.required:before{
    content: "*";
    position: relative;
    top: 4px;
    padding: 0 3px 0 0;
    font-weight: 300;
    font-size:1rem;
    color: red;
}

.form-control.is-invalid,
.was-validated .form-control:invalid{
	border:1px solid red !important;
	box-shadow: none;
}

.hm{
	font-weight:600;
	color:var(--color-primary);

	& > span{
		font-weight:400;
		color: var(--color-secondary);
	}
}

.icon{
    position:relative;
    top:2px;
}

.cta-float-container{
	padding:5px;
	display:flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	position: fixed;
	bottom: 55px;
	right:20px;
	background:rgb(234, 234, 234);
	border-radius:var(--border-radius-defalt);

    &.cta-2-cols{
	    width:360px;
    }

    &.cta-3-cols{
	    width:540px;
    }

	.cta-button{
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		width:100%; height:80px;
		background:rgba(255, 255, 255, 1);
		border:0;
		border-radius:0 !important;
		transition: all .3 ease-in;
		padding: .25rem 1rem !important;
		font-size:.85rem;
		color:var(--color-secondary);

		&:first-child{
			border-top-left-radius: var(--border-radius-defalt) !important;
			border-bottom-left-radius: var(--border-radius-defalt) !important;
		}

		&:last-child{
			border-top-right-radius: var(--border-radius-defalt) !important;
			border-bottom-right-radius: var(--border-radius-defalt) !important;
		}

		& > i{
			font-size: 20px;
			transition: transform 0.3s ease;
			transition: all .3 ease-in;
		}

		.cta-text{
			flex:0 0 100%;
			margin-left: 0;
			transition: opacity 0.3s ease, width 0.3s ease, margin-left 0.3s ease;
			transition: all .3 ease-in;
		}

		&:hover{
			background-color: var(--color-primary);
			color:rgba(255, 255, 255, 1);
		}
	}
}

.cta-go-top{
	position:fixed;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	bottom:165px;
	right:60px;
	width:36px; height:36px;
	background:var(--color-primary);
	border-radius:50%;
	/* Oculto por defecto */
	opacity: 0;
	pointer-events: none;
	transform: translateY(8px);
	transition: opacity .2s ease, transform .2s ease;

	&.is_visible{
		opacity: 1;
		pointer-events: auto;
		transform: translateY(0);
	}

	a{
		display:block;
		color:var(--color-light)
	}
}

.modal-backdrop.show{
	opacity:.85;
}

.custom-modal .modal-content{
	background:none;
	border:0;
	border-radius:0;
	color:var(--color-secondary);

	& .modal-header{
		position:relative;
		padding:0;
		background:none;
		border:0;

		& .btn-close{
			position:absolute;
			z-index:998;
			top:.25rem;
			right:.25rem;
			margin:0;
			padding:.15rem;
			background-size: .5em .75em;
		}
	}

	& .modal-body{
        display: flex;
        align-items: center;
		padding:3rem;
		width:100%;
		height: 100%;
	}

	& .form-label{
		font-weight:500;
		text-transform: uppercase;
		font-size: .75rem;
		letter-spacing: 1px;
	}

	& .form-control{
		padding:.375rem 0;
		background:none;
		border:1px solid transparent;
		border-bottom:1px solid var(--color-secondary);
		border-radius:0;
		box-shadow: none;
	}

	.was_validated & .form-control.is-invalid,
	.was_validated & .form-control:invalid{
		border:1px solid white !important;
		box-shadow: none;
	}

	.was_validated .form-check-input.is_invalid ~ .form-check-label,
	.was-validated .form-check-input:invalid ~ .form-check-label{
		background:red !important;
		color:var(--color-light) !important;
	}

	& .form-check-label{
		font-size:.85rem;
		color:var(--color-secondary);
	}

	.form-check-input.is-valid ~ .form-check-label,
	.was-validated .form-check-input:valid ~ .form-check-label{
		color:var(--color-secondary);
	}

    .accordion-item{
        background:none;
        border-radius:0;

        .btn{
            font-size:.85rem;
            color:var(--color-black) !important;
        }

        .accordion-body{
            font-size:.85rem;
        }
    }
}

.custom-modal .modal-content > .row > *[class^="col"]{
	display:flex;
	align-items:center;
	justify-content: center;
		flex-direction: column;

	&:first-child{
		position:relative;
	}

	h5{
		color:var(--color-secondary);
		text-align: center;
	}

	p{
		font-weight:200;
		color:var(--color-secondary);
		text-align: center;
	}

	.logo{
		position: absolute;
		top: 10px;
		left: 10px;

		& img{
			max-width:120px;
		}
	}
}

/*
Header
*/

.header-top{
	margin-bottom:.5rem;
	background:var(--color-primary);
	transition: margin-bottom 0.3s ease, box-shadow 0.3s ease;

	*{
		font-size:.95rem;
		transition: font-size 0.6s ease;
	}
}

header{
	position: sticky;
	top: 0;
	z-index: 1000;
	padding-bottom:.5rem;
	background:rgba(255, 255, 255, 1);

	&.compact{
		box-shadow: 0 2px 5px rgba(0, 0, 0, .1);
	}

	&.compact .header-top{

		*{
			font-size:.85rem;
		}
	}
}

.header-top h1{
	margin:0;
	padding:0;
	font-weight:300;
	color:rgba(255, 255, 255, 1);
}

.header-top .list-group{
	margin:0;
	padding:0;
	background:none;
	border:0;
	border-radius:0;

	.list-group-item{
		padding:0;
        height:100%;
		background:none;
		border:0;
		border-radius:0 !important;
		font-weight:300;
		font-size:1rem;

        &.dropdown a.dropdown-toggle{
            padding-top:.90rem;
        }

		> a{
			padding:.75rem 1rem;
            height:100%;
            align-items: center;
			display:block;
			color:rgba(255, 255, 255, 1);
			text-decoration: none;
		}

		.btn-group{
			padding:.75rem 1rem;
			background:transparent;
			border-radius:0;
			transition:all .3s;

			&:hover{
				background:var(--color-tertiary);
				& > .btn{
					color:var(--color-black);
				}
			}

			> .btn{
				padding:0 .25rem;
				border:1px solid var(--color-primary);

				&:hover{
					color:var(--color-light);
					background:var(--color-primary);
				}
			}
		}

		.btn{
			
			display:block;
			color:rgba(255, 255, 255, 1);
			text-decoration: none;
			border-radius: 0;
		}

		> a.dropdown-toggle.show{
			background:var(--color-secondary);
		}
	}
}

.header-top .dropdown-menu{
	margin-top:-2px !important; /* Adjust dropdown position */
	padding:.25rem;
	background:var(--color-secondary);
	border:0;
	border-radius:0;

	> *{
		line-height: normal;
	}

	.dropdown-item{
		padding:.25rem 0;

		&:hover a{
			color:var(--color-secondary)
		}
	}

	.dropdown-item a{
		display: block;;
		padding:.25rem 1rem;
		color:rgba(255, 255, 255, 1);
		text-decoration: none;

		&:hover{
			color:var(--color-secondary)
		}
	}
}

header .logo{
	max-width:200px;
}

#navbar-main{

	.has-megamenu{
		position:static!important;
	}

	.nav-item{
		margin:0 .5rem;
		padding:0;

		.nav-link{
			padding:.25rem 1.25rem;
			color:var(--color-secondary);
			border-bottom: 2px solid transparent;
			
			&.active{
				font-weight:700;
				color:var(--color-secondary);

				&.animate.animate-fill-buble:hover::before,
				&.animate.animate-fill-buble::before{
					background:transparent;
				}
			}

			&.active::after{
				display: block;
				content: " ";
				width: 100%;
				border-bottom: 2px solid var(--color-primary);
			}

			&.nav-link-featured{
				background:var(--color-primary);
				color:rgba(255, 255, 255, 1);
				border-bottom: 2px solid transparent;
				border-radius: var(--border-radius-defalt);
				transition:all .3s;

				&:hover,
				&:focus{
					background:var(--color-tertiary);
					color:var(--color-secondary);
				}

			}
		}
	}
}
.megamenu-container{
	margin-bottom:0;
	background:var(--color-secondary-light);

	.megamenu-pinned{
		padding:.5rem 1rem;
		left:0;
		right:0;
		width:100%;
		margin-top:0;

		.megamenu-title{
			padding-left:1rem;
			font-weight:400;
			font-size:.8rem;
			color:var(--color-primary);

			& ~ .megamenu-list{
				margin-top:1rem;
			}
		}

		.megamenu-list{
			margin-bottom:0;
			padding-left:0;
			list-style: none;

			& > li > a{
				padding:1rem;
				grid-column-gap: 1rem;
				grid-row-gap: 1.5rem;
				border-radius: var(--border-radius-sm);
				flex-flow: row;
				justify-content: flex-start;
				align-items: flex-start;
				max-width: 29rem;
				display: flex;
				text-decoration: none;
				transition:all .45s cubic-bezier(.215, .61, .355, 1);

				&:hover{
					background-color: var(--color-light);
				}
			}

			& .mega-menu-item-icon{
				color:var(--color-secondary);
			}
		}

		.megamenu-item-icon > i,
		.megamenu-item-title{
			color:var(--color-secondary)
		}

		.megamenu-item-title{
			margin-bottom:.25rem;
			font-weight:700;
			font-size:1rem;
		}

		.megamenu-item-text{
			margin-bottom:0;
			font-weight:400;
			font-size:.85rem;
			color:var(--color-black-light);
		}

		.btn{
			display:inline-block;
			margin-top:0;
			padding:.25rem 1rem !important;
			background:var(--color-gray);
			font-size:.85rem;
			transition:all .3s;

			&:hover{
				background:var(--color-secondary);
				color:var(--color-light);
			}
		}
	}
}


/*
Hero
*/
#hero{

	padding:2rem 0;

	.hero-title{
		font-weight: 400;
		font-size:2.75rem;
		font-family: var(--font-primary);
		color:var(--color-primary);
		line-height: 120%;

		& > span{
			display: inline-block;
			position: relative;
			height: 60px; /* Debe coincidir con el height del & > div */
			overflow: hidden;
			vertical-align: top;
			font-weight:600;
			color:var(--color-black);

			& > span{
				display: block;
				transition: transform 0.5s ease-in-out;
				will-change: transform;

				& > div{
					height: 60px; /* Debe coincidir con el height del & > span */
					font-size: inherit;
					white-space: nowrap;
				}
			}
		}
	}

	.hero-text{
		font-weight: 300;
		font-size:1rem;
		font-family: var(--font-primary);
		color:var(--color-primary);

		& .featured{
			font-size:110%;
		}

        img{
            max-width:35%;
        }
	}

	.btn-primary{
		padding:.75rem 2.25rem;
		background:var(--color-secondary);
		border-color:var(--color-secondary);
		color:rgba(255, 255, 255, 1);
		font-weight: 600;
		border-radius: var(--border-radius-defalt);
	}
}

.is_section #hero{
	padding:2rem 0;

	.hero-title{
		color:var(--color-secondary);
	}

	.hero-text{
		color:var(--color-secondary);
	}

	ul{
		margin:0 0 1rem 0;
		padding:0;
		list-style: none;

		li::before{
			content: "\f00c";
			padding-right:.5rem;
			font-weight:300;
			font-family: 'Font Awesome 5 Pro';
		}
	}
}

/*
Breadcrumbs
*/

#breadcrumb{
	background:var(--color-secondary);

	.breadcrumb{
		margin:0;
		padding:.5rem 0;

		.breadcrumb-item:not(.active){
			color:rgba(255, 255, 255, .5);
			
			a{
				color:rgba(255, 255, 255, 1);
				text-decoration: none;
			}
		}

		.breadcrumb-item.active,
		.breadcrumb:not(.active){
			color:rgba(255, 255, 255, .5);
			text-decoration: none;
		}

		.breadcrumb-item+.breadcrumb-item::before{
			position:relative;
			top:1.5px;
			content: "\f105";
			font-weight:300;
			font-family:'Font Awesome 5 Pro';
			color:rgba(255, 255, 255, .5);
		}
	}
}


/*
Secciones generales
*/
.section{
	padding:3rem 0 6rem 0;

	& .featured{
		font-size:110%;
	}

	&.is_content{
		h1,
		h2,
		h3,
		h4,
		h5,
		h6{
			margin:2rem 0 1rem 0;
		}

		.accordion-header{
			margin:0;

			.accordion-button{
				font-weight:500;
				font-size:1.15rem;
			}
		}
	}

	&.section-alt{
		padding-top:0;

		h3{
			margin-top:5rem;
		}
	}


	h3{
		color:var(--color-primary);

		span{
			font-weight:700;
			color:var(--color-secondary);
		}
	}

	.divider{
		position:relative;
		margin:2rem auto 0 auto;
		height:1px;
		max-width:250px;
		background:var(--color-primary);

		span{
			display:block;
			position:relative;
			bottom:3px;
			height:6px;
			width:48px;
			background:var(--color-primary);
			border-radius: var(--border-radius-defalt);
		}

		.divider__center{
			margin:.75rem auto;
		}

		.divider__start{
			margin:.75rem 0 0 .5rem;
		}

		.divider__end{
			margin:.75rem .5rem 0 auto;
		}
	}

	&:nth-of-type(1n){
		background:var(--color-gray);
	}

	&:nth-of-type(2n+1){
		background:rgba(255, 255, 255, 1);
	}

    .detalles-contacto a{
        color:inherit;
        text-decoration: inherit;
    }

    .donuts-charts{

        .donut{
            --size: 170px;
            --thickness: 14px;
            --value: 0; /* se setea por JS */
            --fill: var(--color-primary);
            --track: var(--color-secondary-light);
            --bg: var(--color-light);

            width: var(--size);
            aspect-ratio: 1 / 1;
            border-radius: 50%;
            background: conic-gradient(var(--fill) calc(var(--value) * 1%), var(--track) 0);
            position: relative;
            display: grid;
            place-items: center;

            &::before{
                content: "";
                position: absolute;
                inset: var(--thickness);
                background: var(--bg);
                border-radius: 50%;
            }

            > .donut-label{
                position: relative;
                font-weight: 600;
                font-size: clamp(2.2rem, 3.2vw, 3rem);
                color: var(--color-secondary);
                line-height: 1;
            }
        }
    }
}


/*
Cards defaults
*/
.card-default{

	padding:1rem 1rem .5rem 1rem; /* El padding-bottom debe coincidir con el padding-top de #ayuda .card-footer */
	border-radius:var(--border-radius-md);
	border:0;
	transition:all .3s;

	*{
		transition:all .3s;
	}

	p{
		margin-bottom:0;
		padding:0;
		font-weight: 300;
		font-size:.95rem;
		font-family: var(--font-primary);
		color:var(--color-primary);
	}

	ul,
	ol{
		padding:1.25rem;
	}

	ol li,
	ul li{
		padding:0;
		font-weight: 300;
		font-size:.95rem;
		font-family: var(--font-primary);
		color:var(--color-primary);
	}

	.card-icon{
		margin:1rem 0 1.5rem 1rem;
		
		& img{
			/*margin:1rem 0 1.5rem 1rem;*/
			max-width:60px;
		}

		& i{
			color:var(--color-primary);
		}
	}

	.card-body{
		padding:0 1rem .75rem 1rem;
	}

	.card-title{
		margin-bottom:0;
		padding:0 1rem .75rem 1rem;
		color:var(--color-primary);
	}

	.card-footer{
		margin-top:1rem;
		padding-top:.5rem;
		background:none;

		a{
			color:var(--color-primary);
			text-decoration: none;
			font-weight: 400;

			i{
				transition:all .3s;
			}
		}
	}

	&.card-featured{
		background:var(--color-primary);
		
		p{
			color:rgba(255, 255, 255, 1);
		}

		.card-icon i{
			color:var(--color-light);
		}

		.card-title,
		.list-group-item,
		.card-footer a{
			color:rgba(255, 255, 255, 1);
		}
	}

	&:hover{
		background:var(--color-primary);


		.card-icon,
		.card-icon i,
		.card-title,
		.card-body p,
		.card-body ul li,
		.card-body ol li,
        .card-footer p,
        .card-footer ul li,
        .card-footer ol li{
			color:rgba(255, 255, 255, 1);
		}

		.card-footer{
			border-top-color: var(--color-light-opacity);

			a{
				color:rgba(255, 255, 255, 1);
				
				i{
					padding-left:1rem;
				}
			}
		}

		.btn-primary{
			background:rgba(255, 255, 255, 1);
			color:var(--color-secondary);
		}
	}
}

.is_section .card-default{

	.card-icon{
		margin:1rem 0 1.5rem 1rem;
	}
}


/*
Tabs generales
*/
.tab-container{

	.nav-item{
		flex: 1 1 auto;

		.nav-link{
			padding:.5rem 0;
			display:flex;
			align-items: center;
			justify-content: center;
			/* max-width: 180px; */
			width: 100%;
			height:65px;
			font-weight:600;
			font-size:1.25rem;
			text-align: center;
			color:var(--color-secondary);
			white-space: normal;
			border-radius:var(--border-radius-md);

			&:not(.active){
				background:var(--color-primary-light);
			}

			&.active{
				color:var(--color-light);
				background:var(--color-primary);
			}
		}
	}

	.tab-pane{
		margin-top:0;
		padding:1rem;
		background:var(--color-gray);

		h4{
			margin-top:1rem;
			color:var(--color-primary);

			span{
				display: inline-block;
                width: auto;
                border-bottom: 2px solid var(--color-primary);
			}
		}

		p{
			font-size:.95rem;
		}
		
		.img-fluid{
			border-radius: var(--border-radius-md);
		}
	}

	p.text-center a{
		color:var(--color-primary);
		text-decoration: none;
	}
}

.card-container{

	.card-default{
		padding:.5rem;

		.card-icon{
			margin:0 0 .5rem .5rem
		}
		.card-title{
			h5{
				font-weight:600;
			}

			h5::after{
				content: "";
				margin-top:1.25rem;
				display:block;
				max-width:35%;
				height:3px;
				background:var(--color-primary);
				border-radius: var(--border-radius-xs);
				transition:all .3s;
			}
		}

		&:hover{
			.card-title h5::after{
				background:var(--color-light);
			}
		}
	}
}

.is_particulares{

    #hero{
        .hero-title{
            color:var(--color-light);
        }
    }

	.card-container{

		.card-default{
			box-shadow:var(--shadow-sm);
		}
	}
}


/*
Sección Testimonios
*/
#testimonios .col{
	border-right:1px solid rgba(0, 0, 0, .1);
}

#testimonios .col:last-child{
	border-right:0;
}

#testimonios .card:not(.card-masonry),
#testimonios .card:not(.card-masonry) .card-body,
#testimonios .card:not(.card-masonry) .card-footer{
	padding:0;
	background:none;
	border:0;
	border-radius:0;
}

#testimonios .rating > i{
	font-size:.95rem;
	color:orange;
}

#testimonios .card-text{
	margin:1.25rem 0;
}

#testimonios .card-autor *{
	font-size:.95rem;
	line-height: .75rem;
}

#testimonios .btn-cta-demo{
	position:relative;
	margin-top:3rem;
	padding:0 2rem 0 0;
	display:flex;
	flex-direction: row;
	flex:0 0 auto;
	align-items: center;
	background:var(--color-tertiary);
	border:5px solid var(--color-tertiary);
	border-radius:var(--border-radius-defalt);
	font-weight:600;
	font-size:.9rem;
}

#testimonios .btn-cta-demo .counter{
	margin-right:2rem;
	padding:.75rem 2rem;
	background:rgba(255, 255, 255, .5);
	border-top-left-radius: var(--border-radius-defalt);
	border-bottom-left-radius: var(--border-radius-defalt);
	text-align: right;
}

#testimonios .btn-cta-demo .counter span{
	display:block;
	line-height: .75rem;
	color:var(--color-secondary);
}

#testimonios .btn-cta-demo .stretched-link{
	color:var(--color-secondary);
	text-decoration: none;
}


/*
Footer
*/
footer{
	padding:3rem 0 0 0;
	background:var(--color-secondary);

	h6{
		margin-bottom:3rem;
		font-weight:600;
		font-size:2rem;
		font-family: var(--font-primary);
		color:rgba(255, 255, 255, 1);
	}

	#leads{
		.btn{
            padding:1rem 2rem;
            background:var(--color-primary);
            border:0;
            font-weight:400;
            color:rgba(255, 255, 255, 1);
            border-radius: var(--border-radius-lg);
            transition:all .3s;

            &:hover,
            &:focus{
                background:var(--color-light);
                color:var(--color-primary);
            }
        }
	}

	#sitemap{
		padding-bottom:8rem;

		h6{
			margin:2rem 0 1.25rem;
			font-weight:700;
			font-size:1.15rem;
			font-family: var(--font-primary);
			color:rgba(255, 255, 255, 1);
		}

		ul{
			background:none;
			border:0;
			
			li{
				margin-bottom:.75rem;
				padding:0;
				background:none;
				border:0;

				&:last-child{
					margin-bottom:0;
				}

				& > a{
					color:rgba(255, 255, 255, 1);
					text-decoration: none;
				}
			}
		}
	}

	#copyright{
		padding:.75rem 0;
		background:rgba(0, 0, 0, 1);
		font-size:.85rem;
		color:rgba(255, 255, 255, .5);

		a{
			color:rgba(255, 255, 255, .5);
			text-decoration: none;
			transition: all .3s;

			&:hover{
				color:rgba(255, 255, 255, 1);
			}
		}
	}
}

#blog{
	article{
		margin-bottom:3rem;

		h5{
			margin-top:1rem;
			font-weight:400;
			font-size:1.35rem;
			color:var(--color-primary);

			a{
				color:inherit;
				text-decoration: none;
			}
		}

		.list-group{
			margin:1rem 0;
			background:none;
			border-radius:0;
			font-size:.85rem;

			.list-group-item{
				padding:0;
				margin-right:1.5rem;
				background:none;
				border:0;
				border-radius:0;

				a{
					color:inherit;
					text-decoration: none;
				}
			}
		}

		p{
			font-weight:200;
			font-size:1rem;
			line-height: 160%;
			color:var(--color-secondary);
		}

		.btn-link{
            font-weight: 500;
			text-decoration: none;
		}

		iframe{
			width:100%; height:450px;
			aspect-ratio: 100%;
		}

        .widget-tags{
            margin-top:2rem;
            padding-top:2rem;
            border-top:1px solid var(--color-secondary-light);

            a{
                color:var(--color-primary);
            }
        }

        .widget-social{
            margin:2rem 0 0 0;
            padding:1rem;
            background:var(--color-primary-light);

            h5{
                margin-top:0;
                color:var(--color-primary);
            }
        }
	}

	aside{
		.card{
			background:var(--color-primary-light);
			border:0;

			.card-body{
				padding:0 1rem;

				.widget{
					margin:2rem 0 .75rem 0;

					.input-group{
						input{
							border-color:var(--color-primary-light);
							border-bottom-left-radius: var(--border-radius-md);
    						border-top-left-radius: var(--border-radius-md);

							&:focus{
								box-shadow:none;
								border-color:var(--color-primary);
							}

							&::placeholder{
								font-weight:300;
								color:var(--color-darkgray);
							}
						}

						button{
							width:50px;
							color:rgba(255, 255, 255, 1);
							background: var(--color-primary);
							border:0;
							border-top-right-radius:var(--border-radius-md);
							border-bottom-right-radius:var(--border-radius-md);
						}
					}

					&:first-child{
						margin-top:1rem;
					}

					h4{
						margin-bottom:.75rem;
						font-size:1.15rem;
						color:var(--color-primary);						
					}

					.list-group-tags{
						margin:0;
						padding:0;

						.list-group-item{
							display: inline-block;

							a{
								display: block;
								margin: .1rem 0;
								padding: .25rem .75rem;
								background: rgba(255, 255, 255, 1);
								color: var(--color-black);
								font-size: .85rem;
								border-radius: var(--border-radius-md);
								text-decoration: inherit;
								transition: all .3s ease-in;

								&:hover{
									background: var(--color-primary);
									color: rgba(255, 255, 255, 1);
								}
							}
						}
					}

					img{
						border-radius:var(--border-radius-xs)
					}

					.btn-link{
						font-weight:300;
						text-decoration: none;

						+ small{
							display:block;
							font-size:.85rem;
							color:var(--color-darkgray);
						}
					}
				}
			}
		}
	}
}

.form-container{
    padding:2rem 1rem 1rem 1rem;
    background:rgba(255, 255, 255, 1);
    border-radius: var(--border-radius-lg);

    .form-label{
        font-size:.95rem;
    }

    .btn-primary{
        padding-top:1rem;
        padding-bottom:1rem;
        width:100%;
        border-radius:var(--border-radius-sm);
    }

    .small{
        font-size:80%;
    }
}


/*
Cards masonry
*/
.card-masonry{

	padding:1rem 1rem .5rem 1rem; /* El padding-bottom debe coincidir con el padding-top de #ayuda .card-footer */
	background:var(--color-light);
    border-radius:var(--border-radius-md);
	border:1px solid var(--color-gray);

	p{
		margin-bottom:0;
		padding:0;
		font-weight: 300;
		font-size:.95rem;
		font-family: var(--font-primary);
	}

	.card-body{
		padding:0 1rem .75rem 1rem;

        .card-text:last-child{
            margin-bottom:0 !important;
        }

        a{
            font-weight:400;
            color:var(--color-primary);
            text-decoration: none;
        }
	}

	.card-title{
		margin-bottom:.25rem;
		padding:0 1rem 0 0;
		color:var(--color-primary);
	}

	.card-footer{
		margin-top:1rem;
		padding-top:1rem;
		background:none;
        border-top-color:var(--color-gray);

		a{
			color:var(--color-primary);
			text-decoration: none;
			font-weight: 400;

			i{
				transition:all .3s;
			}
		}
	}

	&.card-featured{
		background:var(--color-primary-light);
		
		p{
			color:var(--color-dark);
		}

		.card-icon i{
			color:var(--color-dark);
		}

        .card-footer{
            border-top-color:var(--color-primary-light);
        }

		.card-title,
		.card-footer a{
			color:var(--color-dark);
		}

        a.stretched-link{
            font-weight:500;
            color:var(--color-secondary);
            text-decoration: none;
        }
	}
}