/*!
Theme Name: DGM
Author: Javier Pueyo
Author URI: https://www.doriagm.com
Description: DGM un tema simple, rápido y moderno.
Version: 21.11.03
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: globalcc
Domain Path: /languages
*/

/* OVERRIDE BOOSTRAP & KADENCE */
/*Container */
@media(min-width: 1200px) and (max-width: 1400px){
.kt-row-column-wrap.kb-theme-content-width {
    max-width: 1140px !important;
}
.kt-row-has-bg>.kt-row-column-wrap:not(.kb-theme-content-width), .container-fluid {
    padding-left: 40px;
    padding-right: 40px;
}
.full-image .kt-row-has-bg>.kt-row-column-wrap:not(.kb-theme-content-width) {
    padding-left: 40px;
    padding-right: 0px;
}
}
@media(min-width: 768px) and (max-width: 992px)  {
.kt-row-column-wrap.kb-theme-content-width {
    max-width: 960px !important;
}
}
@media(min-width: 576px) and (max-width: 768px)  {
.kt-row-column-wrap.kb-theme-content-width {
    max-width: 540px !important;
}
}
/* general */
@media (min-width: 1200px) {
.text-md-right {
	text-align: right;
}
.justify-content-md-end {
	-webkit-box-pack: end!important;
    -ms-flex-pack: end!important;
    justify-content: flex-end!important;
}
}
.kt-svg-icon-list-single-fas_phone {
    transform: scaleX(-1);
}
.navbar-light .navbar-toggler {
	border: 0;
}
/*.kadence-info-box-image-inner-intrisic-container {
	margin: -5% !important;
    margin-bottom: 15px !important;
    max-width: 111% !important;
}*/
img {
	height: auto;
}
@media (max-width: 767px) {
.container-fluid > div > .kt-row-column-wrap.kt-mobile-layout-row, .wp-block-kadence-rowlayout .wp-block-kadence-rowlayout.container-fluid {
	padding-left: 0px; 
	padding-right: 0px;
}
.portada {
	margin-top: -2rem;
    min-height: 80vh !important;
    background-image: url(/wp-content/themes/DGM-child/library/img/portada-mobile.webp) !important;

}
.portada img {
	display: none;
}
}
.kt-blocks-carousel .slick-list {
	padding: 20px 0px !important;
}
.card {
	transition: all .3s ease-in-out;
	border: 0 !important;
	box-shadow: rgb(50 50 93 / 17%) 0px 13px 12px -5px, rgb(0 0 0 / 15%) 0px 8px 16px -8px;
}
.card:hover {
	transform: translate(0px,-10px);
	box-shadow: rgb(50 50 93 / 30%) 0px 10px 9px -5px, rgb(0 0 0 / 30%) 0px 6px 13px -8px;
}
.card:hover img {
    transform: scale(1.05) !important;
}
.card a {
	opacity: 1 !important;
	overflow: hidden;
}
.card img {
    transition: all .3s ease-in-out;
}

/* TIPOGRAFIA */




/* GENERAL */
button[aria-expanded="true"] .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7l21.9 16 M4 23L25.9 7'/%3E%3C/svg%3E");
}
.position-content-sticky > div {
	position: sticky;
	top: 120px;
}
.no-desktop {
		display: none;
}
#primary {
	margin-top: 2rem;
}
#primary .page-title, .header-text .entry-title {
	text-transform: uppercase;
}
.page-header {
	margin-bottom: 2rem;
}
.sticky-head {
	position: fixed !important;
	top: -150px;
	width: 100%;
	z-index: 999;
}
.post-thumbnail img {
	width: 100%;
	height: auto;
}
.navbar-dgm-toggler-icon svg {
	width:36px;
}
.inline-grid > ul{
	display: inline-grid !important;
}
.site-navigation .container {
	min-height: calc(100vh - 215px);
}
/*#menusticky.sticky-head {
  animation-duration: 0.2s;
  animation-name: header-slidein;
}*/

@keyframes header-slidein {
  from {
    top: -150px;
  }

  to {
    top: 0;
  }
}
@keyframes header-slideout {
  from {
    top: 0;
  }

  to {
    top: -150px;
  }
}
@media(max-width: 600px){
	.inline-grid > ul.kt-svg-icon-list{
		display: block !important;
	}
	.header-img, .header-img div, .header-img img {
	width: auto;
	height: 100%;	
	}
	.no-mobile {
		display: none;
	}
	.no-desktop {
		display: block;
	}

}
/* COMPONENTS */
/* cabecera inicio */
.wp-block-cover h1, h1 {
	font-size: 4rem;
    margin-bottom: 1rem;
}
.wp-block-cover h2 {
	font-size: 2rem;
	margin-bottom: 0.5rem;
}
.wp-block-cover h3 {
	font-size: 1.75rem;
	margin-bottom: 0.5rem;
}
@media (max-width: 600px){
	.wp-block-cover h1, h1  {
		font-size: 2rem !important;
		margin-bottom: 0.5rem !important;
	}
	.wp-block-cover h2, h2  {
		font-size: 1.75rem !important;
		margin-bottom: 0.5rem !important;
	}
	.wp-block-cover h3 {
    	font-size: 1.25rem !important;
    	margin-bottom: 0.25rem !important;
	}
}
/* carrousel inicio */
.carousel-2col .carousel-item-inner {
    display: flex;
    align-items: center;
    flex-direction: row-reverse;
    max-width: 1200px;
    margin: 0 auto;
    height: 100%;
    z-index: 2;
    position: relative;
}
.carousel-2col .carousel-item-img {
    width: 55%;
    -webkit-border-radius: 40% 2%;
    -moz-border-radius: 40% 2%;
    -ms-border-radius: 40% 2%;
    -o-border-radius: 40% 2%;
    border-radius: 40% 2%;
    /* border: 21px solid red; */
    /* box-sizing: content-box; */
}
.carousel-2col .carousel-item-text {
    width: 35%
}
.carousel-2col .carousel-inner {
	background-image: url("../DGM/library/img/carrousel-background.png") !important;
	background-position-y: bottom;
    background-repeat: no-repeat;
    background-size: contain;
}
.carousel-2col .carrousel-background {
	display: none;
}
.carousel-2col .carousel-control-next:hover .carousel-control-next-icon, .carousel-2col .carousel-control-prev:hover .carousel-control-prev-icon {
    background: #000000;
    padding: 0.7rem;
    width: calc(20px + 0.7rem);
    height: calc(20px + 0.7rem);
    border-radius: 0.5rem;
    border: 0.7rem solid #000000;
    background-repeat: no-repeat;
    background-size: contain;
}
.carrousel-fullimage .carousel-item-inner {
    display: flex;
    height: 100%;
    align-items: center;
}
.carrousel-fullimage .carousel-item-img {
    display: block !important;
    width: 100%;
}
.carrousel-fullimage .carousel-item-img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    text-align: center;
    z-index: 2;
}
.carrousel-fullimage .carousel-item-text {
    text-align: center;
    z-index: 3;
    width: 100%;
    padding: 0 40px;
}
#carouselExampleIndicators .carousel-item {
    height: 40vw;
}
#carouselExampleIndicators {
    margin-top: -2rem;
    margin-bottom: 3rem;
}
.carousel-control-next, .carousel-control-prev {
    opacity: 1 !important;
    z-index: 5;
}

#carouselExampleIndicators .carrousel-background {
	/*background: #ffffff38;*/
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
@media (max-width: 600px){
	.carrousel-fullimage .carousel-item-img {
    height: 100%;
    width: initial !important;
	}
	#carouselExampleIndicators img.d-block {
		width: auto !important;
		height: 60vh;
	}
	#carouselExampleIndicators .carousel-item {
		height: 80vh !important;
	}
	.carousel-2col .carousel-item-inner {
    align-items: center;
    flex-direction: column-reverse;
	}
	.carousel-2col .carousel-item-img {
        width: 100%;
    	padding: 40px;
	}
	.carousel-2col .carousel-item-text {
	    width: 100%;
    	padding: 0 40px;
    	text-align: center;
	}
}

/**
 * 
 *  HEADER
 *  Cada header tiene su propios css en el archivo correspondiente. Es decir si se selecciona header-3.php dentro de este se encuentran sus propios estilos.
 * 
 * */
.home .header-clear {
	position: absolute !important;
	top: 0;
	width: 100%;
}

.home .header-clear #menusticky.navbar:not(.sticky-head), .home .header-clear #top-header {
	background: transparent !important;
}

.site-header {
	z-index: 99;
	position: relative;
	min-height: 122px;
}
.custom-logo {
	max-height: 60px;
	width: auto;
	max-width: 245px;
}
#top-header .social_dgm {
	border:0 !important;
	background: transparent !important;
	z-index: initial !important;
	display: block !important;
	position: relative !important;
	width: 100%;
}
#top-header {
	padding-top: 0.25rem;
	padding-bottom: 0.25rem;
}
#top-header a {
	padding-left: 0.5rem;
	padding-right: 0.5rem;
}
#top-header a.email, #top-header a.telefono  {
	padding-top: 0.25rem;
	padding-top: 0.25rem;
	display: inline-block;
}
#top-header a:last-child {
	margin-right: 0;
	border-right: 0px;
}
#top-header a.instagram {
	padding-left: 0;
}
a#reservar {
    max-height: 50px;
    align-self: center;
}
@media(min-width: 600px) {
.site-header {
    min-height: 130px;
}
}
@media (min-width: 1024.98px) {
    .navbar-expand-lg .navbar-collapse {
        align-items: stretch;
        margin-top: -0.5rem;
        margin-bottom: -0.5rem;
    }
    .navbar .container-fluid {
        align-items: stretch;
    }
    #primary-menu li{
        display: flex;
        align-items: stretch;
    }
    #primary-menu li > a  {
    	position: relative;
        display: flex;
        align-items: center;
        width: 100%;
        padding: 0.75rem 15px;
    }
    .navbar-expand-lg .navbar-nav .dropdown-menu {
    	top: 95%;
	}
    .menu-item-has-children:hover > .dropdown-menu {
    	display: block !important;
	}
    .navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
    background: rgba(0,0,0,.05);
    background: linear-gradient(0deg, rgba(0,0,0,0.04) 0%, rgba(0,0,0,0.005) 100%);
	}
}

@media(max-width: 600px) {
	#top-header a.instagram, #top-header a.facebook  {
		float: left;
		padding-top: 0.25rem;
	}
	#reservar {
		padding: 0.5rem !important;
		font-size: 14px !important;
	}
}

body:not(.single-proyectos) main {
  min-height: 80vh;
}

@media (min-width:  767px) {
    #menusticky.sticky-head.down {
        animation-name: header-slidein !important;
    }
}
#menusticky.sticky-head.up {
    animation-duration: 0.2s;
    animation-name: header-slidein;
    animation-fill-mode: forwards;
}
#menusticky.sticky-head.down {
    animation-name: header-slideout;
    animation-duration: 0.2s;
    animation-fill-mode: forwards;
}

@media (max-width: 600px) {
    .telefono {
        border-right: 1px solid white !important;
    }
    #iFrame1 {
        width: auto !important;
    }
    #top-header .bar-sm a:not(.close-iframe ) {
        width: 32.5vw;
        padding: 1rem !important;
        display: inline-block;
        margin-bottom: 0;
        text-align: center;
        border-radius: 0 !important;
        background: transparent !important;
    }
    #top-header .bar-sm i {
        margin: 0 !important;
        padding: 0 !important;
        font-size: 20px;
    }
    #top-header .bar-sm i.fa-whatsapp {
        font-size: 27px !important;
        position: absolute;
        top: 50%;
        left: 50%;
        font-size: 20px;
        transform: translate(-50%, -50%);
    }
    .header-1 #top-header, .header-2 #top-header, .header-4 #top-header {
        float: none !important;
        position: relative !important;
        z-index: 999999;
        bottom: 0 !important;
        width: 100vw;
        left: 0;
        background: #e2e2e2;
    }
    #top-header .bar-sm a span, #link-webphone, .email {
        display: none !important;
    }
}

/* PAGE */
.page .header-top{
    position: relative;
    margin-bottom: 2.5rem;
    overflow: hidden;
    height: 300px;
    margin-top: -2rem;
}
.header-text {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    text-align: center;
    z-index: 2;
}
.header-top img {
    opacity: 70%;
}
.header-img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 100%;
}
.no-thumbnail {
    background-color: grey;
    width: 100%;
    display: block;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    min-height: 600px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    opacity: 100%;
    mix-blend-mode: hard-light;
    background-color: #e8e8e8;
}
.no-thumbnail + img  {
    opacity: 1;
    position: absolute;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    height: 100vw !important;
    z-index: -1;
}
@media(max-width: 600px) {
.page .header-top {
    height: 200px;
}   
}

/* SIDEBAR */
#secondary aside{
	position: sticky;
	top: 80px;
}
#secondary.widget-area{
	padding-top: 2rem;
	padding-bottom: 1rem;
}
#secondary .widget-title {
	display: none;
}
#secondary section {
	margin-bottom: 1rem;
}

/* CONTACT FORM REBOOT */
span.wpcf7-list-item {
	margin: 0;
	position: relative;
}
.wpcf7-list-item input {
	position: absolute;
	margin-top: .3rem;
	margin-left: -1.25rem;
}
.form-check {
	margin-bottom: 1rem;
}

/* PROYECTOS / BLOG */
body:not(.single) article.has-post-thumbnail .post-thumbnail {
    position: relative;
    overflow: hidden;
    padding-top: 65%;
    display: block;
}
body:not(.single) article.has-post-thumbnail .post-thumbnail img {
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
article:not(.has-post-thumbnail) .content-post {
    padding-top: 4rem;
}
.archive article.type-proyectos, .blog article.type-post, .search article.type-proyectos, .search article.type-post, .archive article.type-post {
	margin-bottom: 1.5rem;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-in-out;
    -webkit-box-shadow: 0px 10px 50px 0px rgb(84 110 122 / 15%);
    -moz-box-shadow: 0px 10px 50px 0px rgba(84,110,122,.15);
    box-shadow: 0px 10px 50px 0px rgb(84 110 122 / 15%);
    position: relative;
}
.archive article.type-proyectos:hover, .blog article.type-post:hover, .search article.proyectos:hover, .search article.post:hover, .archive article.post:hover {
	-webkit-box-shadow: 0px 10px 50px 0px rgb(84 110 122 / 35%);
    -moz-box-shadow: 0px 10px 50px 0px rgba(84,110,122,.35);
    box-shadow: 0px 10px 50px 0px rgb(84 110 122 / 35%);
    transform: translate(0px,-10px);
}

.content-post {
	padding: 0.75rem;
}
div.categories-warp {
	position: absolute;
	top: 1rem;
	left: 1rem;
	z-index: 2;
}
span.categoria {
	background-color: #feed01;
	padding: 0.2rem 0.5rem;
	float:left;
	margin-right: 0.5rem;
}
div.categories-warp::after {
	clear: both;
}
span.categoria > a:hover {
	filter: brightness(80%);
	opacity: 1 !important;
}
/* BLOG */
.comment-form textarea {
}
article.post .entry-content {
	padding-top: 1rem;
}

/* WPML TRADUCCIÓN MENU DESPLEGABLE*/
@media (min-width: 600px) {
	.wpml-ls-legacy-dropdown {
    width: 120px !important;
    margin-left: 1rem;
	}
	.wpml-ls-legacy-dropdown {
	display: inline-block;
	text-align: left;
	}
	.wpml-ls-legacy-dropdown a {
	padding-left: 0.5rem !important;
	}
}
@media(max-width:600px) {
	.wpml-ls-native {
		display: none;
	}
	.wpml-ls-legacy-dropdown {
	width: 60px !important;
	display: inline-block;
	}
	.wpml-ls-item-toggle {
		padding: 0.3rem !important;
	}
}

div#mailto-toptip {
    display: none;
}
@media (max-width: 600px){
.bar-bottom  #email_content_dgm {
  display: none;
}
#consultanos{
    margin-top: 15px;
}
}