/*!
Theme Name: mintlane
Theme URI: http://underscores.me/
Author: Remedio
Author URI: http://underscores.me/
Description: Diseñado por Remedio para Mintlane
Version: 1.0.2
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: mintlane
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

mintlane is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> ESTILOS GENERALES:
---------------------------------------------------------------*/

*{
	padding: 0px;
	margin: 0px;
	box-sizing: border-box;
}

::selection{
    background-color: var(--verde);
    color: #fff;
}

img{
	width: 100%;
	height: auto;
}

a{
	color: inherit;
	text-decoration: none;
	display: inline-block;
}

body{
    font-family: "Karla", sans-serif;
    font-optical-sizing: auto;
    font-weight: 300;
    font-style: normal;
    color: var(--negro);
}

h1,
h2,
h3,
h4{
    font-family: "miller-banner", serif;
    font-weight: 400;
    font-style: normal;
}

h3{
    font-family: "miller-banner", serif;
    font-weight: 700;
    font-style: normal;
}

p{
	line-height: 1.2;
    font-size: 1.1rem;
    font-weight: 200;
    letter-spacing: -0.5px;
}

.titulo-mini{
    font-family: "miller-banner", serif;
    font-weight: 500;
    font-size: 1.2rem!important;
    letter-spacing: 1px;
    margin-bottom: 1rem;
}


.mb5{
	margin-bottom: 3rem;
}

.mb8{
	margin-bottom: 4rem;
}

ul{
	padding: 0px;
	margin: 0px;
}

li{
	list-style-type: none;
}

:root {
    --verde: #26615E;
    --dorado: #D6C6A8;
    --blanco: #F5F3EF;
    --negro: #3A3A3A;
}

.boton{
    display: inline-block;
    width: fit-content;
    padding: 2px 15px;
    text-transform: uppercase;
    font-size: 1rem;
    letter-spacing: 2px;
    font-weight: 200;
}

/*--------------------------------------------------------------
>>> HEADER:
---------------------------------------------------------------*/

.page-template-page-portada header{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9;
    padding: 2rem 0;
}

.logo-cabecera img{
    max-width: 120px;
}

.menu-desk .main-navigation{
    display: flex;
    justify-content: flex-end;
    gap: 20px;
}

.menu-desk .main-navigation ul{
    display: flex;
    justify-content: flex-end;
    gap: 20px;
}

.main-navigation li{
    text-transform: uppercase;
    letter-spacing: 1px;
}

.menu-mob{
    display: flex;
    justify-content: flex-end;
}

.menu-mob button{
    background: transparent;
    border: none;
}

.menu-mob button i{
    font-size: 1.8rem;
    color: var(--negro);
}

.menu-mob .offcanvas{
    width: 100%;
    border: none;
}

.menu-mob .offcanvas-body{
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    text-transform: uppercase;
}

.menu-mob .offcanvas-body ul{
    margin-bottom: 1rem;
}

.menu-mob .offcanvas-body li{
    margin-bottom: 4px;
}

.menu-mob .btn-close{
    padding-top: 2rem;
    padding-right: 1rem;
}

.menu-mob .btn-close i{
    font-size: 1.5rem;
    color: var(--negro);
}

/*--------------------------------------------------------------
>>> FOOTER:
---------------------------------------------------------------*/

footer{
    padding: 4rem 0 0rem 0;
    background-color: var(--verde);
    color: var(--blanco);
}


.logo-footer img{
    max-width: 150px;
    margin-bottom: 1rem;
}

.redes i{
    font-size: 1.8rem;
}

.interior-footer{
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.direcciones{
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.direcciones p{
    font-size: 1rem;
    margin-bottom: 0px;
    letter-spacing: 0px;
}

.formulario h2{
    margin-bottom: 1rem;
}

.footer-final{
    width: 100%;
    border-top: solid 0.8px var(--blanco);
    padding: 2rem 0;
    margin-top: 2rem;
}

.menu-legal li{
    line-height: 1.2;
    font-size: 0.9rem;
    font-weight: 200;
    letter-spacing: -0.5px;
    margin-bottom: 4px;
}

.remedio img{
    max-width: 100px;
    margin-top: 2rem;
}


/*--------------------------------------------------------------
>>> PORTADA:
---------------------------------------------------------------*/

.hero-portada{
    position: relative;
    overflow: hidden;
    
}

.fondo-hero{
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
}

.fondo-hero img{
    height: 100%;
    object-fit: cover;
}

.contenido-hero{
    height: 100%;
}

.interior-contenido-hero{
    padding: 5rem 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    min-height: 80vh;
    transform: translateY(-40px);
}

.interior-contenido-hero h2{
    font-family: "miller-banner", serif;
    font-weight: 300;
    font-style: normal;
    line-height: 1;
    font-size: 2rem;
    margin-bottom: 1rem;
}

.interior-contenido-hero p{
    width: 70%;
}

.interior-contenido-hero .boton{
    background-color: var(--negro);
    color: var(--blanco);
}

.item-informacion {
    border-bottom: solid 0.8px var(--negro);
    padding: 1.5rem 0px;
}

.items-informacion .titulo-mini{
    color: var(--dorado);
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.texto-mini {
    font-size: 1.1rem;
    line-height: 1.2;
    letter-spacing: 0px;
}

.items-informacion .texto-mini{
    margin-bottom: 0px;
}

.texto-micro p{
    font-size: 0.9rem;
    line-height: 1;
    letter-spacing: 0px;
    margin-bottom: 10px;
}

.texto-micro p:last-child{
    margin-bottom: 0px;
}

.capabilities{
    background-color: var(--verde);
    color: var(--blanco);
    width: 100%;
    padding: 3rem 0;
}

.capabilities h2{
    margin-bottom: 2px;
}

.items-capabilities{
    margin-top: 2rem;
}

.items-capabilities .item-capabilities{
    border-bottom: solid 0.8px var(--blanco);
    padding: 1.5rem 10px 2rem 10px;
}

.items-capabilities .item-capabilities:first-child{
    border-top: solid 0.8px var(--blanco);
}

.numero-capabilities{
    font-family: "miller-banner", serif;
    font-weight: 500;
    font-style: normal;
    font-size: 2rem;
}

.portfolio h2{
    text-align: center;
    margin-bottom: 1rem;
}

.elementos-portfolio .elemento-portfolio:first-child img{
    filter: blur(2px);
}

.elemento-portfolio{
    border: solid 1px var(--dorado);
    padding: 0.6rem;
    margin-bottom: 1rem;
}

.imagen-portfolio{
    position: relative;
    overflow: hidden;
    margin-bottom: 1rem;
}

.info-imagen-portfolio{
    position: absolute;
    top: 25px;
    left: 0;
    z-index: 9;
}

.info-imagen-portfolio p{
    margin-bottom: 0px;
    color: var(--blanco);
    background-color: var(--dorado);
    padding: 2px 30px;
    text-transform: uppercase;
    font-size: 1rem;
    letter-spacing: 2px;
    font-weight: 200;
}

.imagen-portfolio img{
    height: 100%;
    aspect-ratio: 15/16;
    object-fit: cover;
}

.elemento-portfolio .titulo-mini{
    margin-bottom: 2px;
    line-height: 1;
}

.elemento-portfolio .texto-micro{
    margin-bottom: 1rem;
}

.enlace{
    text-transform: uppercase;
    font-size: 1rem;
    letter-spacing: 2px;
    font-weight: 200;
    color: var(--verde);
    border-bottom: solid 0.9px var(--verde);
    margin-bottom: 1rem;
}

.marquee {
    overflow: hidden;
    position: relative;
    padding: 2rem 0 2.5rem 0;
}

.marquee__track {
	display: flex;
	width: max-content;
	animation: scroll 20s linear infinite;
	align-items: center;
}

@keyframes scroll {
	from { transform: translateX(0); }
	to   { transform: translateX(-50%); } 
}

.marquee__track {
	display: flex;
	align-items: center;
	width: max-content;
	animation: scroll 30s linear infinite;
}

.marquee__track p {
	display: flex;
	align-items: center;
	margin: 0;
    text-transform: uppercase;
    font-size: 1.3rem;
    letter-spacing: 2px;
    font-weight: 200;
}

.marquee__track p + p::before {
	content: "/";
	margin: 0 20px;
    color: var(--dorado);
    font-weight: 300;
}

/*--------------------------------------------------------------
>>> FORMULARIO:
---------------------------------------------------------------*/

.formulario label,
.formulario input{
    width: 100%;
}

.formulario label br{
    display: none;
}

.formulario input{
    padding: 10px;
    font-size: 1rem;
}

.formulario input::placeholder,
.formulario textarea::placeholder{
    font-size: 1rem;
    color: var(--blanco);
    font-weight: 200;
    opacity: 0.8;
}

.formulario input:focus-visible,
.formulario textarea:focus-visible{
    outline: none !important;
}

.formulario textarea{
    width: 100%;
    padding: 10px;
    border: solid 1px var(--blanco);
    font-size: 1rem;
    font-weight: 200;    
}

.wpcf7-not-valid-tip{
    font-size: 0.8rem;
    font-weight: 200;
    padding-top: 5px;
}

.aceptacion-enviar{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.formulario .wpcf7-list-item{
    margin: 0px;
}

.aceptacion-enviar p{
    margin: 0px;
    font-size: 1rem;
    font-weight: 200;
}

.formulario .elemento-formulario .wpcf7-submit{
    text-transform: uppercase;
    padding: 8px 40px;
    font-weight: 200;
    display: inline-block;
    font-size: 0.8rem;
    background-color: transparent
}

.elemento-formulario input,
.elemento-formulario textarea{
    background-color: transparent;
    border: none;
    color: var(--blanco);
    border-bottom: solid 1px var(--blanco);
    padding: 5px 0;
    border-radius: 0px;
}

.elemento-formulario textarea{
    max-height: 90px;
    border-radius: 0px;
    margin-bottom: 1rem;
}

.elemento-formulario p{
    margin-bottom: 8px;
}

.aceptacion p{
    font-size: 0.9rem;
    line-height: 1;
    letter-spacing: 0px;
}

.aceptacion a{
    text-decoration: underline;
}

.aceptacion .wpcf7-list-item input{
    width: auto;
}

.aceptacion .wpcf7-list-item label{
    display: flex;
    align-items: center;
    gap: 5px;
}

.boton-enviar input{
    display: inline-block;
    width: fit-content;
    padding: 4px 35px;
    text-transform: uppercase;
    font-size: 1rem;
    letter-spacing: 2px;
    font-weight: 300;
    background-color: var(--blanco);
    color: var(--verde);
    border: none;
    border-radius: 0px;
}

.wpcf7 form.sent .wpcf7-response-output{
    border-color: var(--blanco) !important;
}

/*--------------------------------------------------------------
>>> MEDIA QUERYS:
---------------------------------------------------------------*/

@media (min-width: 576px) { 

    .interior-contenido-hero p{
        width: 60%;
    }

}

@media (min-width: 768px) { 
    
    p{
        font-size: 1.2rem;
        line-height: 1.3;
        letter-spacing: -1px;
    }

    .mb5{
		margin-bottom: 5rem;
	}
	
	.mb8{
		margin-bottom: 8rem;
	}
    
    .interior-contenido-hero{
        transform: translateY(-70px);
    }
    
    .interior-contenido-hero h2{
        font-size: 3rem;
        line-height: 0.9;
    }
    
    .interior-contenido-hero p{
        width: 380px;
    }
    
    .items-informacion {
        margin-top: 1rem;
    }
    
    .item-informacion {
        padding: 1.5rem 0px;
    }
    
    .item-informacion p{
        max-width: 90%;
    }
    
    .titulo-mini{
        font-size: 1.5rem!important;
    }
    
    .items-informacion .titulo-mini{
        margin-bottom: 0.5rem;
    }
    
    .portfolio h2{
        margin-bottom: 3rem;
    }
    
    .elementos-portfolio{
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }
    
    .marquee__track {
        animation: scroll 30s linear infinite;
    }
    
    .marquee__track p + p::before {
        margin: 0 50px;
    }
    
    .menu-legal ul{
        display: flex;
        gap: 30px;
    }
    
    .remedio img {
        margin-top: 0rem;
    }
    
    footer{
        padding-top: 6rem;
        margin-top: 5rem;
    }
    
    .footer-final{
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
    }
    
    .interior-footer{
        padding: 2rem 0;
    }
    
    .logo-cabecera img{
        max-width: 150px;
    }

}

@media (min-width: 992px) { 
    
    p{
        font-size: 1.5rem;
        line-height: 1.3;
        letter-spacing: -1px;
    }
    
    h2{
        font-size: 2.2rem;
    }
    
    .capabilities{
        padding: 5rem 0;
    }

    .item-capabilities{
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        align-items: baseline;
    }

    .capabilities-1 {
        grid-column: span 1;
    }

    .capabilities-2 {
        grid-column: span 5;
    }

    .capabilities-3 {
        grid-column: span 6;
    }
    
    .items-capabilities .item-capabilities {
        padding: 2.5rem 20px 3.5rem 20px;
    }
    
    .elementos-portfolio{
        grid-template-columns: repeat(4, 1fr);
    }

    .menu-desk .main-navigation ul{
        gap: 40px;
    }

}

@media (min-width: 1200px) { 


    .interior-contenido-hero h2{
        font-size: 4rem;
        letter-spacing: -2px;
        margin-bottom: 1.5rem;
    }

}

@media (min-width: 1400px) {

    .interior-contenido-hero h2{
        font-size: 5rem;
    }
    
    .interior-contenido-hero p{
        font-size: 1.6rem;
        width: 450px;
    }


}