/*
Theme Name: Salient Child Theme
Description: This is a custom child theme for Salient
Theme URI:   https://themeforest.net/item/salient-responsive-multipurpose-theme/4363266
Author: ThemeNectar
Author URI:  https://themeforest.net/user/themenectar
Template: salient
Version: 1.0
*/

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@600&family=Roboto:wght@400;700&display=swap');

:root {
	--black: #000000;
	--primary: #1fb9df;
	--site1: #0e204d;
	--site2: #20389b;
	--site3: #88a4ef;
	--white: #ffffff;
}

h1, h2, h3 { font-family: 'Montserrat', sans-serif; font-weight: 600; } 
h4, h5, h6, ul, li, body, a, p  { font-family: 'Roboto', sans-serif; } 
strong { font-weight: 700; }
a, button { transition: .5s all ease; -webkit-transition: .5s all ease; -moz-transition: .5s all ease; }
small { font-size: 85%; line-height: 85%; }

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 { color: var(--black); }
h1, .h1 { font-size: 60px; line-height: 65px; }
h2, .h2 { font-size: 45px; font-weight: 400; line-height: 50px; }
h3, .h3 { font-size: 34px; line-height: 38px; }
h4, .h4 { font-size: 22px; line-height: 26px; }
h5, .h5 { font-size: 20px; line-height: 25px; }
p  { font-size: 16px; line-height: 23px; }

/*.title { border: 2px solid var(--primary); border-radius: 35px; display: inline-block; font-size: 20px; line-height: 25px; padding: 10px 30px; }*/

@media (max-width: 1499px) {
	h1, .h1 { font-size: 55px; line-height: 60px; }
	h2, .h2 { font-size: 40px; line-height: 45px; }
	h3, .h3 { font-size: 30px; line-height: 34px; }
	h4, .h4 { font-size: 21px; line-height: 25px; }
	h5, .h5 { font-size: 16px; line-height: 21px; }
	p { font-size: 16px; line-height: 22px; }

	.title { font-size: 19px; line-height: 24px; }
}

@media (max-width: 1199px) {
	h1, .h1 { font-size: 50px; line-height: 55px; }
	h2, .h2 { font-size: 36px; line-height: 40px; }
	h3, .h3 { font-size: 26px; line-height: 30px; }
	h4, .h4 { font-size: 20px; line-height: 24px; }
	h5, .h5 { font-size: 14px; line-height: 17px; }

	.title { font-size: 18px; line-height: 23px; }
}

@media (max-width: 999px) {
	h1, .h1 { font-size: 45px; line-height: 50px; }
	h2, .h2 { font-size: 33px; line-height: 37px; }
	h4, .h4 { font-size: 19px; line-height: 23px; }
	h5, .h5 { font-size: 18px; line-height: 23px; }
	p { font-size: 15px; line-height: 21px; }

	.title { font-size: 17px; line-height: 22px; }
}

@media (max-width: 690px) {
	h1 { font-size: 40px; line-height: 45px; }
	h2 { font-size: 30px; line-height: 34px; }
	h4 { font-size: 18px; line-height: 22px; }
	h5 { font-size: 16px; line-height: 22px; }

	.title { font-size: 16px; line-height: 21px; }
}

@media (max-width: 480px) {
	h1, .h1 { font-size: 35px; line-height: 40px; }
	h2, .h2 { font-size: 27px; line-height: 31px; }
	h3, .h3 { font-size: 22px; line-height: 32px; }
	h4, .h4 { font-size: 17px; line-height: 21px; }

	.title { font-size: 15px; line-height: 20px; }
}

.text-black { color: var(--black)!important; }
.text-white { color: var(--white)!important; }
.text-right { text-align: right; }

.float-right { float: right; }

.mb-0 { margin-bottom: 0; }
.mt-2 { margin-top: 0.5rem; }
.mt-4 { margin-top: 1.5rem; }

.pb-0 { padding-bottom: 0; }
.pt-2 { padding-top: 0.5rem; }
.pt-4 { padding-top: 1.5rem; }

input[type="checkbox"], input[type="radio"] {
    accent-color: var(--nectar-accent-color);
}

.button { background-color: var(--nectar-accent-color); border-radius: 6px; color: var(--white); font-family: 'Playfair Display SC'; padding: 10px 24px; text-transform: uppercase; }
.button.button-site2 { background-color: #252525; }
.button .fa { margin-left: 5px; }
.button:hover { background-color: var(--nectar-extra-color-1); color: var(--white); }
.button.button-site2:hover { background-color: var(--black); }

@media (max-width: 999px) {
	.button { padding: 8px 20px; }
}

body.material .nectar-button.has-icon.large { font-size: 16px; line-height: 20px; }

.light .wpcf7-form p span { color: var(--white); }

.bkg-cover { background-position: center; background-repeat: no-repeat; background-size: cover; }
 
.sixteen-nine-img, .four-three-img { position: relative; }
.sixteen-nine-img:before, .four-three-img:before { content: ''; display: inline-block; }
.sixteen-nine-img > a, .four-three-img > a { height: 100%; left: 0; position: absolute; top: 0; width: 100%; }

.sixteen-nine-img:before { padding-top: 56.25%; }
.four-three-img:before { padding-top: 75%; }


/********************
 HEADER
 ********************/
body.mc-event-open #header-outer { z-index: 9; }
body.mc-event-open #ajax-content-wrap { z-index: 99; }

/* PRUEBA PARA VER SI SE PONE EL HEADER EN LIGHT, HE OCULTADO ESTO:  background-color: #252525;*/
body #header-outer, body[data-header-color="dark"] #header-outer { background-color: #ffffff; }*/
#header-outer.transparent #top nav > ul > li > a { opacity: 1!important; }
#top nav>ul>li>a { font-size: 18px!important; color: white!important; }
#top nav>ul>li[class*=button_solid_color]>a, body #header-outer.transparent #top nav>ul>li[class*=button_solid_color]>a,
body #header-outer.small-nav #top nav>ul>li[class*=button_solid_color]>a { color: var(--primary)!important; }
#header-outer.transparent #top nav>ul>li[class*=button_solid_color]>a:before, #top .slide-out-widget-area-toggle[data-custom-color=true] a:before, 
#top nav>ul>li[class*=button_solid_color]>a:before { height: 28px; }
body:not([data-header-format="left-header"]) #header-outer .sf-menu li.wpml-ls-item ul { background-color: transparent!important; box-shadow: none!important; padding: 0!important; }

body.material #header-outer #social-in-menu i { top: 14px; height: 50px; width: 40px; }
#header-outer #social-in-menu a i:before { background: var(--primary); border-radius: 50%; display: inline-block; height: 30px; line-height: 30px; text-align: center; width: 30px; }
#header-outer[data-format=default] #social-in-menu { margin: 0 0 0 15px; }

body[data-slide-out-widget-area-style="slide-out-from-right"]:not([data-header-color="custom"]).material .slide_out_area_close:before { background-color: black!important; }

@media (max-width: 1299px) {
	#top nav>ul>li>a { font-size: 17px!important; }
}


/********************
 FOOTER
 ********************/
#footer-outer .widget:first-child { margin-bottom: 0; }
#footer-outer img { display: inline-block; max-height: 40px; }
#footer-outer img[src*="inaem"] { max-height: 30px; }
#footer-outer img[src*="endirecto"], #footer-outer img[src*="ayuntamiento"] { max-height: 60px; }
#footer-outer img[src*="MINISTERIO"], #footer-outer img[src*="EUROPA"] { max-height: 64px; }
#footer-outer img + img { margin-left: 20px; }
#footer-outer #footer-widgets .col ul li a { font-size: 15px; line-height: 19px; text-transform: uppercase; }

#copyright p { font-size: 14px; line-height: 18px; }

@media (min-width: 1000px) {
	#copyright .col.span_5 { display: inline-block; float: left!important; text-align: left; width: 65%!important; }
	#copyright .col.span_7 { display: inline-block; float: right!important; text-align: right; width: 35%!important; }
	#copyright .col.span_7 ul li { margin-bottom: 0!important; }
}

@media (max-width: 999px) {
	#footer-outer .container { max-width: 100%; }
}


/********************
 HOMEPAGE
 ********************/
.swiper-slide .slide-bg-wrap .slide-bg-overlay { opacity: 0.45; }
.swiper-slide .content h3 { border: 1px solid red; border-radius: 35px; display: inline-block; margin-bottom: 15px; padding: 10px 30px; width: auto; }
div[data-button-sizing="large"] .swiper-slide .button a.primary-color { position: relative; }
div[data-button-sizing="large"] .swiper-slide .button a.primary-color:before { content: '\f105'; display: inline-block; float: right; font-family: FontAwesome; left: 10px; position: relative; transform: translateX(0); -webkit-transform: translateX(0); -moz-transform: translateX(0); transition: .5s all ease; -webkit-transition: .5s all ease; -moz-transition: .5s all ease; }
div[data-button-sizing="large"] .swiper-slide .button a.primary-color:hover::before { transform: translateX(10px); -webkit-transform: translateX(10px); -moz-transform: translateX(10px); }

.mc-main select#my-calendar-year { border-radius: 3px; margin-left: 15px; margin-right: 15px; }
.mc-main .my-calendar-footer ul > li, .mc-main .my-calendar-header ul > li { list-style: none; }
.mc-main .mc-content + nav { display: none; }

.boton-h3 { color: black; border-color: red; border-radius: 25px; }
.pad-text { padding: 0 150px; }
.pad-text-contact { padding: 0 250px; }

.parrafo-padding { padding-right: 140px!important; }

.nectar-flickity.nectar-carousel .flickity-slider .inner-wrap-outer { position: relative; }
.nectar-flickity.nectar-carousel .flickity-slider .inner-wrap-outer .wpb_text_column { background-color: rgba(0,0,0,0.75); bottom: -5px; display: inline-block; left: 0; padding: 25px 15px; position: absolute; width: 100%; }
.nectar-flickity.nectar-carousel .flickity-slider .inner-wrap-outer .wpb_text_column p { color: var(--white); font-size: 22px; line-height: 26px; }

@media (max-width: 1199px) {
	.nectar-flickity.nectar-carousel .flickity-slider .inner-wrap-outer .wpb_text_column p { font-size: 19px; line-height: 23px; }

    .pad-text { padding: 0 100px; }
    .parrafo-padding { padding-right: 90px!important; }
    .pad-text-contact { padding: 0 180px; }
}

@media (max-width: 999px) {
	.nectar-slider-wrap .swiper-container .swiper-slide .button a { font-size: 14px; line-height: 18px; padding: 12px 28px 10px; }

   	.pad-text { padding: 0; }
   	.parrafo-padding { padding-right: 0!important; }
   	.pad-text-contact { padding: 0!important; }
}


/********************
 PAGES
 ********************/
body.page-template-template-portfolio-php .container-wrap, body.single-portfolio .container-wrap, body.tax-project-type .container-wrap, 
body[data-bg-header=true] .container-wrap { padding-bottom: 0; }
.page-header-overlay-color:after { opacity: 0.45; }

.left-border { border-left: 5px solid var(--primary); padding-left: 25px; }

.icono-contacto .fa { font-size: 32px!important; padding-right: 10px; }

.job-position { color: #77779a; font-size: 16px; font-weight: 300; line-height: 20px; margin-bottom: 20px; text-transform: uppercase; }

.wpcf7-form-control-wrap input { background: transparent!important; border-bottom: 1px solid white!important; }
.wpcf7-textarea { background: transparent!important; border-bottom: 1px solid white!important; height: 90px!important; }
body[data-form-submit=regular] .container-wrap button[type=submit], body[data-form-submit=regular] .container-wrap input[type=submit] { border-radius: 25px!important; padding:  10px 25px 10px 15px!important; }
button[type=submit], input[type=button], input[type=submit]:after { content: "\f105"; display: inline-block; font-family: 'FontAwesome'; right: 10px; position: absolute; top: 10px; }

.iwt-icon .icon-default-style { line-height: 26px!important; }
.iwt-text { font-size: 16px!important; line-height: 24px!important; }

.portfolio-items .work-item.style-3 img, .portfolio-items .work-item.style-4 img, .portfolio-items .work-item.style-3-alt img { width: 100%!important; }


/********************
 EVENTS
 ********************/
.events-slider .item { padding-left: 7px; padding-right: 7px; }

.single-event:not(body) { background-color: #f2f2f2; border-radius: 10px; padding: 10px 10px 20px; position: relative; }

.single-event:not(body) .bkg-cover { margin-bottom: 15px; }
.single-event:not(body) .bkg-cover:before { padding-top: 75%; }
.single-event:not(body) .bkg-cover, .single-event:not(body) .bkg-cover a { border-radius: 5px 5px 0 0; }
.single-event .bkg-cover h5 { background-color: rgba(31, 185, 223, 0.75); border-radius: 5px 0 0 0; color: var(--white); display: inline-block; font-size: 14px; left: 0; line-height: 24px; padding: 10px 5px 0; position: absolute; text-align: center; top: 0; }
.single-event:not(body) h5 span { display: block; font-size: 40px; }
.single-event:not(body) h4 { font-size: 19px; line-height: 23px; margin-bottom: 8px!important; }
.single-event:not(body) h4 a { color: var(--black); }
.single-event:not(body) h4 + p { font-size: 14px; line-height: 19px; }
.single-event:not(body) p .fa { color: var(--nectar-accent-color); }
.single-event:not(body) p:last-child { font-size: 14px; line-height: 19px; }

.events-listing { display: grid; grid-gap: 20px; grid-template-columns: repeat(4, 1fr); margin-left: 0; padding-left: 0; }
.events-listing > li { list-style: none; }

#location-map { height: 450px; margin-top: 20px; }

@media (max-width: 1199px) {
	.events-listing { grid-template-columns: repeat(3, 1fr); }

	#location-map { height: 400px; }
}

@media (max-width: 999px) {
	.events-listing { grid-template-columns: repeat(2, 1fr); }

	#location-map { height: 350px; }
}

@media (max-width: 690px) {
	.events-listing { grid-template-columns: repeat(1, 1fr); }

	#location-map { height: 300px; }
}


/********************
 SINGLE EVENT
 ********************/
body.single-event .post-area .col.span_6 > img { border-radius: 10px; }
body.single-event .price { margin-bottom: 20px; }
body.single-event h6 .fa { color: var(--nectar-accent-color); }
body.single-event .location-info { background-color: var(--nectar-accent-color); border-radius: 6px; margin-bottom: 25px; padding: 15px; }
body.single-event .location-info * { color: var(--white); }
body.single-event .location-info p { font-size: 16px; line-height: 22px; padding-bottom: 15px; }

body.single-event .button { display: inline-block; margin-bottom: 40px; animation-name: heart; animation-duration: 1s; animation-iteration-count: infinite; }
body.single-event .button .fa { margin-right: 5px; }
body.single-event .button:hover { background-color: var(--black); }

@media (max-width: 999px) {
	body.single-event .span_6 img { margin-bottom: 0; }
}


/********************
 BOOKINGS
 ********************/
.woocommerce-result-count { display: none!important; }

#formulario-reserva { display: flex; flex-direction: column; margin-block: 30px 90px; padding-top: 0!important; width: 100%; }
.collapse { background-color: #f6f6f6; border-radius: 6px; cursor: pointer; margin-bottom: 0!important; padding: 31px 10px 14px; }
.collapse:first-child { margin-top: 0; }
.collapse + .collapse { margin-top: 5px; }

.collapse legend { background-color: #f6f6f6; border-radius: 6px 6px 0 0; color: var(--nectar-accent-color); font-family: 'Playfair Display SC'; font-size: 1.4em; left: 10px; padding: 0; position: relative; top: 27px; }

.collapse-container { padding-inline: 10px; padding-top: 5px; }
.collapse-container:not([style="display: none;"]) { padding-top: 12px; }
.collapse-container > .row { margin-bottom: 15px; padding-bottom: 0; }
.collapse-container .column { flex: 0 0 48%; } 
.collapse-container .column-full { flex: 0 0 100%; }
.collapse-container input[type="checkbox"], .collapse-container input[type="radio"] { margin-right: 5px; }

#formulario-reserva ul { margin-top: 10px; }
#formulario-reserva ul, #formulario-reserva ul li { list-style: none; margin-left: 0; padding-left: 0; }
#formulario-reserva ul > li:not(:last-child) { border-bottom: 1px solid #eaeaea; margin-bottom: 6px; }
#formulario-reserva ul li strong { color: var(--black); }
#formulario-reserva input[type="submit"] { border-radius: 6px!important; font-family: 'Playfair Display SC'; font-weight: normal; padding: 10px 24px!important; text-transform: uppercase; }

.tooltip { color: var(--nectar-accent-color); display: inline-block; margin-left: 5px; position: relative; }
.tooltip .tooltip-content { background-color: var(--nectar-extra-color-1); border-radius: 6px; color: var(--white); display: none; font-size: 13px; left: calc(100% + 15px); line-height: 16px; padding: 10px; position: absolute; top: 0; width: 160px; z-index: 1; }
.tooltip:hover .tooltip-content { display: block; }

.event-details { background-color: #f2f2f2; border-radius: 10px; padding: 10px 10px 15px; position: relative; }
.event-details img { aspect-ratio: 4/3; border-radius: 4px; margin-bottom: 5px!important; object-fit: cover; width: 100%; }
.event-details h4 { font-size: 19px; line-height: 23px; }

.optional-treatments .white-box, .bookings .white-box { background-color: var(--white); border-radius: 6px; display: inline-block; margin-top: 10px; padding: 10px; width: 100%; }
.optional-treatments h6, .bookings h6 { font-size: 15px; line-height: 19px; }
.optional-treatments p, .bookings p { font-size: 14px; line-height: 18px; margin-bottom: 6px; padding-bottom: 6px; }
.optional-treatments p:not(:last-child), .bookings p:not(:last-child) { border-bottom: 1px solid #eaeaea; }
.optional-treatments p strong, .bookings p strong { color: black; }

.precio-total { font-size: 1.2em; font-weight: bold; margin-bottom: 0!important; margin-top: 10px; }
.precio-total span { font-size: 1.5em; }
.booking-price strong { color: var(--black); }

.button.next { float: right; }
.button.prev { float: left; }

@media (min-width: 1000px) {
	.left-column { flex: 0 0 66.666667%; padding-right: 15px; }
	.right-column { flex: 0 0 33.333333%; padding-left: 15px; }
}

@media (max-width: 1199px) {
	.collapse legend { font-size: 1.3em; }
}

@media (max-width: 999px) {
	#formulario-reserva { margin-bottom: 75px; }
	.collapse { padding-inline: 5px; }
	.collapse legend { font-size: 1.2em; }

	.tooltip .tooltip-content { bottom: 100%; font-size: 12px; line-height: 15px; left: 50%; transform: translateX(-50%); top: auto; }
}

@media (max-width: 690px) {
	#formulario-reserva { margin-bottom: 60px; }
	#formulario-reserva .collapse-container > .row { margin-bottom: 0; }
	#formulario-reserva .collapse-container .col { margin-bottom: 10px; }
	.collapse legend { font-size: 1.1em; }
}


/********************
 PRICES
 ********************/
.table-responsive { overflow-x: auto; }
.tabla-precios .wpb_wrapper { border-left: 4px solid red; padding-left: 10px!important; }
.nectar-hor-list-item { padding: 6px 0; }
.nectar-hor-list-item[data-columns="2"][data-column-layout=large_first]>div:nth-child(2) { font-weight: bold; }
.nectar-hor-list-item .nectar-list-item { color: var(--black); font-size: 17px; line-height: 22px; }
.nectar-hor-list-item .nectar-list-item[data-text-align=right] { padding-left: 0; }

@media (max-width: 1299px) {
	.nectar-hor-list-item .nectar-list-item { font-size: 16px; line-height: 21px; }
}

@media (max-width: 480px) {
	.nectar-hor-list-item .nectar-list-item { width: 100%; }
}


/********************
 CALENDAR
 ********************/
.gc-calendar { margin: 0; padding: 0; }
.gc-calendar .gc-calendar-header { margin-bottom: 15px; }
.gc-calendar .gc-calendar-header .gc-calendar-month-year { color: var(--black); font-size: 22px; line-height: 26px; }

.gc-calendar table.calendar { border-top: none!important; }
body:not(.woocommerce-cart) .main-content table tr:nth-child(2n+1) { background-color: var(--white); }
.gc-calendar table.calendar th, .gc-calendar table.calendar td { border: 0!important; padding: 8px 6px; }
.gc-calendar table.calendar th::before, .gc-calendar table.calendar tr:not(:last-child) td::before { content: none; }
.gc-calendar table.calendar th { color: var(--nectar-accent-color); }
.gc-calendar table.calendar td { height: auto; }
.gc-calendar table.calendar td .day-number { color: #4d5156; font-size: 15px; font-weight: normal; line-height: 19px; overflow: hidden; }
.gc-calendar table.calendar td.next-month .day-number, .gc-calendar table.calendar td.prev-month .day-number { color: #a8b1bb; }
.gc-calendar table.calendar td .today .day-number { color: var(--nectar-accent-color); font-weight: bold; }

.gc-calendar table.calendar td:hover { background: transparent; padding-left: 6px; padding-right: 6px; }
.gc-calendar table.calendar a:hover { background-color: transparent; border-radius: 0; padding-left: 0; width: 100%; }
.gc-calendar table.calendar a:hover .day-number { color: var(--black); font-weight: bold; }

.gc-calendar .gc-event { background-color: var(--nectar-accent-color); border-radius: 4px; color: var(--white); display: inline-block; font-size: 11px; line-height: 13px; max-width: 60px; padding: 5px; width: 100%; }


/********************
 CONTACTO
 ********************/
input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea {
	padding-left: 0;
	padding-right: 0;
}
.wpcf7-list-item { margin-left: 0; }


@keyframes heart {
	0% {
	  scale: 1;
	}
	50% {
	  scale: 1.05;
	}
	100% {
	  scale: 1;
	}
  }