/*
Theme Name:     Sara Gutierrez
Theme URI:      https://saragutierrezpsicologia.com
Template: neve
Author:         Grupo Isonor
Author URI:     https://www.grupoisonor.es/
Version:        1.0.0
License:        GNU General Public License v2 or later
License URI:    http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:    cmmyth
*/

/**** VARIABLES *****/
:root {
	--wp--style--block-gap-fallback: 30px;
	--wp--style--block-gap: var( /* theme.json custom value */, var(--wp--style--block-gap-fallback));

	--post_title_color: #000;
	--post_title_color_hover: #404040;
}



/**** GLOBAL ****/
html, body {
	scroll-behavior: smooth!important;
    scroll-padding-top: 100px;
}
html {
    margin: 0!important;
	-webkit-text-size-adjust:100%;
    -webkit-tap-highlight-color:transparent;
}

/** Movemos la barra de administración abajo **/
body.admin-bar { margin-top: -32px; padding-bottom: 28px; }
body.admin-bar #wphead {padding-top: 0;}
body.admin-bar #footer {padding-bottom: 28px;}
#wpadminbar { top: auto !important;bottom: 0;}
#wpadminbar .quicklinks .menupop .ab-sub-wrapper { bottom: 28px;}
#wpadminbar .quicklinks .menupop ul { bottom: 0;}

body .wrapper {
	padding-top: 0;
}
	body .nv-index-posts, .nv-single-post-wrap {
		margin-top: 0
	}
	#content {
		padding: 0 30px;
	}
		.row > .col {
			padding: 0;
		}

/* Párrafos vacíos */
p:empty {
	display: none;
}

/* Eliminamos la sombra de las imágenes ampliadas */
body .glightbox-clean .gslide-media {
	box-shadow: 0 0 0;
}

p {
	margin: 0 0 20px 0;
	line-height: 24px;
}

#content a:not(.gb-button) {
	color: var(--nv-primary-accent);
	text-decoration: none;
}
#content a:not(.gb-button):hover,
#content a:not(.gb-button):focus {
	color: color-mix(in srgb, var(--nv-primary-accent), #fff 10%);
	text-decoration: none!important;
}

/** TOP NAV **/
.header-top .builder-item {
	margin: 0;
}

/** MAIN NAV **/
header.header {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	z-index: 100;
}
	body header.header #header-grid {
		transition: all .2s ease;
		box-shadow: none;
	}
	body.nav-fixed header.header #header-grid {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		transition:  all .2s ease;
		border-bottom: 1px solid #ccc;
		box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3);
		background-color: rgba(255, 255, 255, 0.95);
	}
		body header.header #header-grid .builder-item {
			transition:  all .2s ease;
		}
		body.nav-fixed header.header #header-grid .builder-item {
			transition:  all .2s ease;
		}
		body header.header .header-main .nav-ul > li > .wrap > a {
			padding: 12px 0;
		}
		body:not(.nav-fixed) header.header .header-main .nav-ul > li > .wrap > a,
		body:not(.nav-fixed) header.header .header-main .nav-ul > li > .wrap > .caret {
			color: #fff!important;
		}
		body:not(.nav-fixed) header.header .header-main .nav-ul > li > .wrap > a:hover,
		body:not(.nav-fixed) header.header .header-main .nav-ul > li > .wrap:hover > .caret svg {
			color: color-mix(in srgb, var(--nv-secondary-accent), #fff 50%)!important;
		}
			.nav-ul .sub-menu {
				top: 100%;
				border-radius: 5px;
				background-color: rgba(255, 255, 255, 0.95);
			}
				.nav-ul .sub-menu > li {
					border-bottom: 1px dotted #999;
				}
				.nav-ul .sub-menu > li:last-child {
					border-bottom-width: 0;
				}
					.nav-ul .sub-menu li > .wrap {
						padding: 0;
					}
						.nav-ul .sub-menu li > .wrap > a {
							padding: 10px 20px;
						}
						.nav-ul .sub-menu li > .wrap > a:hover {
							background-color: rgba(0, 0, 0, 0.05);
						}
	
	body:not(.nav-fixed):not(.is-menu-sidebar) #header-grid .site-logo img { 
		filter: invert(100%);
	}


/*** RESPONSIVE NAV ***/
body #header-grid .header--row.hide-on-desktop {
	position: relative;
	z-index: 10;
}
body #header-grid .hfg-pe {
	top: 0;
	border-top: 1px solid #ccc;
	z-index: 1;
}
body #header-grid #header-menu-sidebar.hfg-pe {
	z-index: 2;
}
	.menu-mobile-toggle .navbar-toggle,
	.menu-mobile-toggle .navbar-toggle:active, 
	.menu-mobile-toggle .navbar-toggle:focus, 
	.menu-mobile-toggle .navbar-toggle:focus-within, 
	.menu-mobile-toggle .navbar-toggle:visited {
		border-width: 0;
		outline: 0;
		box-shadow: 0 0 0;
	}
	.header-menu-sidebar .navbar-toggle-wrapper {
		display: none;
	}
	body #header-grid .header-menu-sidebar-inner {
		margin-top: 60px;
	}
		body #header-grid .header-menu-sidebar-inner > .builder-item {
			margin: 0;
		}
			body #header-grid .header-menu-sidebar-inner > .builder-item ul li a {
				margin: 5px 0!important;
				padding: 0!important;
			}
	
	body .header-menu-sidebar .nav-ul li .wrap button,
	body .header-menu-sidebar .nav-ul li .wrap button:active, 
	body .header-menu-sidebar .nav-ul li .wrap button:focus, 
	body .header-menu-sidebar .nav-ul li .wrap button:focus-within {
		border-width: 0;
		outline-width: 0;
	}

	

/*** BUSCADOR SIDEBAR ***/
.widget_search form label {
	display: none;
}
.widget_search form .wp-block-search__inside-wrapper .wp-block-search__input {
	margin: 0;
	padding: 0 10px;
	height: 36px;
	line-height: 36px;
	border-radius: 3px 0 0 3px;
}
.widget_search form .wp-block-search__inside-wrapper .wp-block-search__button {
	margin: 0;
	padding: 0 20px;
	height: 36px;
	line-height: 36px;

	border-radius: 0 3px 3px 0;
	background-color: var(--nv-primary-accent);
}
.widget_search form .wp-block-search__inside-wrapper .wp-block-search__button:hover {
	background-color: color-mix(in srgb, var(--nv-primary-accent), #000 30%);
}


/*** SIDEBAR ***/
.widget .wp-block-heading {
	margin: 0 0 10px 0;
}

.widget ul.wp-block-latest-posts {

}
	.widget ul.wp-block-latest-posts li {
		position: relative;
		margin: 0 0 15px 0;
		padding: 0 0 15px 60px;
		border-bottom: 1px dotted #999;
	}
	.widget ul.wp-block-latest-posts li:last-child {
		margin: 0 0 0 0;
		padding: 0 0 0 60px;
		border-bottom-width: 0;
	}
		.widget ul.wp-block-latest-posts li .wp-block-latest-posts__featured-image {
			position: absolute;
			top: 0;
			left: 0;
			width: 50px;
			height: 50px;
			object-fit: cover;
			object-position: center center;
		}
		.widget ul.wp-block-latest-posts li .wp-block-latest-posts__post-title {
			display: block;
			color: var(--nv-primary-accent);
			font-weight: 600;
			text-overflow: ellipsis;
			white-space: nowrap;
			overflow: hidden;
		}
		.widget .wp-block-latest-posts .wp-block-latest-posts__post-title:hover {
			color: color-mix(in srgb, var(--nv-primary-accent), #000 30%);
		}
		.widget .wp-block-latest-posts li .wp-block-latest-posts__post-excerpt {
			display: -webkit-box;
			margin: 0;
			line-height: 24px;
			font-size: 16px;
			text-overflow: ellipsis;
			-webkit-line-clamp: 3;
			-webkit-box-orient: vertical;
			overflow: hidden;
		}



/*** POST GRID ***/
.post-grid .gb-grid-wrapper {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	margin: 0 -15px;
}
	.post-grid .gb-grid-wrapper > .gb-grid-column {
		width: 33.33%;
		margin: 0 0 30px 0;
		padding: 0 15px;
	}
		.post-grid .gb-grid-wrapper > .gb-grid-column .gb-container {
			display: flex;
			flex-direction: column;
			height: 100%;
		}
		
			/* IMAGE */
			.post-grid .gb-grid-wrapper > .gb-grid-column > .gb-container > figure {
				margin: 0 0 15px 0;
				overflow: hidden;
			}
				.post-grid .gb-grid-wrapper > .gb-grid-column > .gb-container > figure img {
					display: block;
					width: 100%;
					aspect-ratio: 4/3;
					object-fit: cover;
					object-position: center center;
					transition: all 0.2s;
				}
				.post-grid .gb-grid-wrapper > .gb-grid-column > .gb-container > figure a:hover > img {
					transform: scale(1.2);
				}

			/* TITLE */
			.post-grid .gb-grid-wrapper > .gb-grid-column > .gb-container > .post_title {
				margin: 0;
				line-height: 24px;
				color: var(--post_title_color);
				font-size: 18px;
				font-weight: 700;
				text-transform: uppercase;
			}
				.post-grid .gb-grid-wrapper > .gb-grid-column > .gb-container > .post_title a {
					color: var(--post_title_color);
					text-decoration: none;
				}
				.post-grid .gb-grid-wrapper > .gb-grid-column > .gb-container > .post_title a:hover {
					color: var(--post_title_color_hover);
				}
				
			/* DATE */
			.post-grid .gb-grid-wrapper > .gb-grid-column > .gb-container > .post_date {
				margin: auto 0 5px 0;
			}

			/* DESCRIPTION */
			.post-grid .gb-grid-wrapper > .gb-grid-column > .gb-container > .post_content {
				display: -webkit-box;
				margin: 0 0 10px 0;
				line-height: 24px;
				text-overflow: ellipsis;
				-webkit-line-clamp: 4;
				-webkit-box-orient: vertical;
				overflow: hidden;
			}

			/* MORE */
			.post-grid .gb-grid-wrapper > .gb-grid-column > .gb-container > .post_more {
				margin: 0 0 0 0;
				color: var(--activecolor);
				text-decoration: none;
			}
				.post-grid .gb-grid-wrapper > .gb-grid-column > .gb-container > .post_more a {
					color: var(--activecolor);
					font-weight: 600;
					text-decoration: none;
				}
				.post-grid .gb-grid-wrapper > .gb-grid-column > .gb-container > .post_more a:hover {
					color: color-mix(in srgb, var(--nv-primary-accent), #fff)
				}

			/* PAGINATION */
			.post-grid .page-nav {
				margin: 0 0 30px 0;
			}
				.post-grid .page-nav .page-link,
				.post-grid .page-nav .page-prev,
				.post-grid .page-nav .page-next {
					margin: 0 3px;
					padding: 0 15px;
					width: auto;
					height: 40px;
					line-height: 40px;
					text-align: center;
					border-radius: 5px;

				}
				.post-grid .page-nav .page-link {
					background-color: var(--nv-primary-accent);
				}
					.post-grid .page-nav .page-link:hover {
						background-color: color-mix(in srgb, var(--nv-primary-accent), #fff 20%);
					}
				.post-grid .page-nav span.page-link {
					background-color: color-mix(in srgb, var(--nv-primary-accent), #000 50%);
					cursor: default;
				}
					.post-grid .page-nav span.page-link:hover {
						background-color: color-mix(in srgb, var(--nv-primary-accent), #000 50%);;
					}
				.post-grid .page-nav .page-prev, 
				.post-grid .page-nav .page-next {
					padding: 0 15px;
					background-color: color-mix(in srgb, var(--nv-primary-accent), #fff 30%);
				}
					.post-grid .page-nav .page-prev:hover, 
					.post-grid .page-nav .page-next:hover {
						background-color: color-mix(in srgb, var(--nv-primary-accent), #fff 40%);
					}
				.post-grid .page-nav .page-prev {
					margin-left: -3px;
					width: auto;
				}
				.post-grid .page-nav .page-next {
					margin-right: -3px;
					width: auto;
				}



/*** SINGLE POST ***/
.nv-single-post-wrap > div:first-child {
	margin-top: 0;
}
.nv-sidebar-wrap.nv-right {
	margin: 0 0 30px 0;
	padding: 0 0 0 30px;
}




/*** RRSS ****/
.nv-single-post-wrap .nv-post-share ul {
	--icongapsocial: 5px
}
	.nv-single-post-wrap .nv-post-share.round-style a {
		--iconpaddingsocial: 10px;
		--iconsizesocial: 15px;
		border-radius: 3px;
	}
	


/*** MAP ***/
#donde-estamos {
	position: relative;
	aspect-ratio: 6/2;
	z-index: 10;
}
	#donde-estamos .leaflet-container,
	#donde-estamos > div,
	#donde-estamos iframe,
	.g-maps iframe {
		display: block;
		width: 100%;
		height: 100%!important;
	}

/*** SABER MÁS ***/
#cta-call {
	cursor: pointer;
}

#cta-call-response .bookly-form {
	position: absolute;
	margin: 0 auto;
	padding: 30px;
	max-width: 810px;
	background-color: #fff;
	border-radius: 10px;
}
	.bookly-form button.bookly-next-step .ladda-label {
		font-size: 16px!important;
		font-weight: 400!important;
	}

#cta-call-response {
	display: none;
	position: fixed;
	margin: 0;
	padding: 0;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	align-items: center;
	justify-content: center;
	background-color: rgba(0, 0, 0, 0.7);
	z-index: 65000;
}
	#cta-call-response em {
		position: absolute;
		top: 20px;
		right: 20px;
		width: 20px;
		height: 20px;
		line-height: 20px;
		color: #fff;
		font-size: 40px;
		font-style: normal;
		cursor: pointer;
	}
	#cta-call-response .wp-block-group__inner-container {
		width: 100%;
	}
	#cta-call-response #amelia-app-booking0 {
		_max-width: 640px;
	}
		#cta-call-response #amelia-app-booking0 .am-form-full-wrapper {
			background-color: #fff;
		}
		#cta-call-response .amelia-app-booking #amelia-booking-wrap #am-step-booking, 
		#cta-call-response .amelia-app-booking #amelia-booking-wrap .am-step-booking-catalog {
			_max-width: 640px;
		}

	#cta-call-response #amelia-app-booking0 .am-confirmation-booking-header {
		display: none;
		opacity: 0;
		visibility: hidden;
		height: 0;
	}
	
.amelia-app-booking #amelia-booking-wrap .am-lite-footer {
	display: none!important;
	visibility: hidden;
	opacity: 0;
}


/*** CAROUSEL ***/
body .sgp-carousel .wp-block-cb-carousel {
	position: relative;
	margin-left: -30px;
	margin-right: -30px;
}
	body .wp-block-cb-carousel .slick-slide {
		padding-left: 20px;
		padding-right: 20px;
	}
		body .wp-block-cb-carousel .slick-next {
			right: 35px;
		}
		body .wp-block-cb-carousel .slick-prev {
			left: 35px;
		}
		body .wp-block-cb-carousel .slick-next, 
		body .wp-block-cb-carousel .slick-prev {
			margin-top: 0;
			width:40px;
			height: 40px;
			border-radius: 50%;
			border: 1px solid #404040;
			background-color: #fff!important;
			z-index: 20;
		}
			body .wp-block-cb-carousel .slick-next:before,
			body .wp-block-cb-carousel .slick-prev:before {
				position: relative;
				display: block;
				margin: 0 auto;
				width: 10px;
				height: 10px;
				transform: rotate(45deg);
				border-color: #000;
				border-style: solid;
			}
			body .wp-block-cb-carousel .slick-next:before {
				left: -2px;
				content: '';
				border-width: 2px 2px 0 0;
			}
			body .wp-block-cb-carousel .slick-prev:before {
				right: -2px;
				content: '';
				border-width: 0 0 2px 2px;
			}


	body .wp-block-cb-carousel .slick-dots {
		margin: 0;
		bottom: -40px;
	}
		body .wp-block-cb-carousel .slick-dots li button::before {
			font-size: 10px;	
		}


/***** CONTACT FORM *****/
div .home-block-contact {
	align-items: inherit;
}

form .wp-block-columns {
	margin: 0 -15px;
}
form .wp-block-columns .wp-block-column {
	padding: 0 15px;
}
form .form-group {
	margin-bottom: 10px;
}
	form .form-group label {
		display: block;
		margin-bottom: 5px;
		color: #222;
		font-weight: 700;
	}
		form .form-group label em {
			margin-left: 15px;
			color: #a44848;
			font-size: 14px;
			font-style: normal;
			font-weight: 300;
		}
		form .form-group label em:before {
			content: '(';
		}
		form .form-group label em:after {
			content: ')';
		}
	form .form-group .form-control {
		width: 100%;
		max-width: 100%;
		color: #222;
		font-family: inherit;
		border-color: #999;
	}
	form .form-group textarea.form-control {
		resize: vertical;
	}
		form .form-group .wpcf7-not-valid-tip {
			position: relative;
			display: inline-block;
			margin-top: 5px;
			padding: 2px 7px;
			color: #fff;
			font-size: 13px;
			border-radius: 3px;
			background-color: #c87878;
		}
		form .form-group .wpcf7-not-valid-tip:before {
	    position: absolute;
	    left: 10px;
	    top: -20px;
	    content: '';
	    border-color: transparent transparent #c87878 transparent;
	    border-width: 10px;
	    border-style: solid;
	}
	form span.wpcf7-list-item {
		margin: 0 1em 0 0;
	}
	form .form-group-legal {
		margin-top: 10px;
		padding: 20px;
		line-height: 22px;
		color: #555;
		border-radius: 3px;
		background-color: #eee;
	}
		form .form-group-legal .texto-legal {
			margin-top: 10px;
			padding-top: 10px;
			border-top: 1px dotted #999;
		}
		form .form-group-legal .wpcf7-list-item > label {
			position: relative;
			padding-left: 20px;
		}
			form .form-group-legal .wpcf7-list-item > label input[type="checkbox"] {
				position: absolute;
				left: 0;
				top: 4px;
			}
			form .form-group-legal .wpcf7-list-item > label .wpcf7-list-item-label {
				position: relative;
			}
	
	.wpcf7 > .screen-reader-response ul {
		display: none!important;
		position: absolute;
		left: -9999em;
		top: -9999em;
		opacity: 0!important;
		visibility: hidden!important;
	}
	

form .form-group-submit {
	margin: 0;
}
	form .form-group-submit input[type="submit"] {
		margin: 0;
		padding: 10px 30px;
		color: #fff;
		font-size: var(--nv-site-bg);
		font-weight: 700;
		text-transform: uppercase;
		border-radius: 5px;
		border-width: 0;
		background-color: var(--nv-primary-accent);
	}
	form .form-group-submit input[type="submit"]:hover {
		background-color: var(--nv-c-2);
	}
	form .form-group-submit input[disabled="disabled"] {
		opacity: 0.6;
	}

	.wpcf7 form.sent .wpcf7-response-output {
		margin: 15px 0 0 0;
		padding: 20px;
		color: #fff;
		border-radius: 3px;
		border-width: 0;
		background-color: #4c9953;
	}
	.wpcf7 form.invalid .wpcf7-response-output, 
	.wpcf7 form.unaccepted .wpcf7-response-output, 
	.wpcf7 form.payment-required .wpcf7-response-output {
		margin: 15px 0 0 0;
		padding: 20px;
		color: #fff;
		border-radius: 3px;
		border-width: 0;
		background-color: #994c4c;
	}



/** COMPILANZ **/
.entry-content #cmplz-document {
	max-width: none;
	font-size: var(--bodyfontsize);
}
.entry-content #cmplz-document, 
.entry-content #cmplz-document p, 
.entry-content #cmplz-document div, 
.entry-content #cmplz-document a, 
.entry-content #cmplz-document span,  
.entry-content #cmplz-document ul li, 
.entry-content #cmplz-document ol li {
	font-size: var(--bodyfontsize);
	font-weight: var(--bodyfontweight);
}
.cc-animate.cc-revoke.cc-bottom {
  padding-left: 15px;
  padding-right: 15px;
  font-weight: var(--bodyfontweight);
  font-size: var(--bodyfontsize);
}
#cc-window.cc-window .cc-compliance .cc-btn.cc-accept-all {
  font-weight: var(--bodyfontweight);
  font-size: var(--bodyfontsize);
  text-transform: uppercase;
}
#cc-window.cc-type-categories.cc-floating:not(.cc-theme-edgeless) .cc-compliance .cc-dismiss, 
#cc-window.cc-type-categories.cc-floating:not(.cc-theme-edgeless) .cc-compliance .cc-save {
    font-weight: var(--bodyfontweight);
    text-transform: uppercase;
}


/** RECAPTCHA **/
.grecaptcha-badge {
	margin-top: 99999em;
	margin-right: 99999em;
}


/***** RESPONSIVE *****/
@media screen and (max-width: 1024px)
{
	.post-grid .gb-grid-wrapper > .gb-grid-column {
		width: 50%;
	}
}

@media screen and (max-width: 959px)
{

}


@media screen and (max-width: 768px)
{
	.apilable .gb-grid-column:last-child {
		order: -1;
	}
	.post-grid .gb-grid-wrapper > .gb-grid-column {
		width: 100%;
	}
}	 