/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */


.special-text {
	font-size: 9.5vw;
}
@media (max-width: 1200px) {
	.special-text {
		font-size: 5rem;
	}
}

h1, h2, h3, h4, h5, h6 {
	margin: 0!important;
}
.card-blue h3{
	font-weight: 800;
	font-size: 1.25rem;
	margin-bottom: 15px !important;
}
ul {
    padding-left: 17px;
}
ul li a {
    text-decoration: underline;
}
.cards h3,
.cards h4 {
	font-weight: 700;
	font-size: 1.35rem;
	margin-bottom: 20px !important;
}	

.h800 {
	font-weight: 800 !important;
}
.h500 {
	font-weight: 500 !important;
}
a, button {
	transition: 0.3s ease-in-out !important;
}
.title-bg h1,
.title-bg h2{
	background-image: url(/wp-content/uploads/2026/02/bg-title-theme.svg);
    background-position: 0 60%;
    background-repeat: repeat-x;
	padding: 5px 30px;
	display: inline;
	-webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}
.title-bg-white h1,
.title-bg-white h2 {
	background-image: url(/wp-content/uploads/2026/02/bg-title-theme-4.svg);
    background-position: 0 60%;
    background-repeat: repeat-x;
	padding: 5px 30px;
	display: inline;
	-webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

@media (max-width: 1024px) {
	.title-bg h1,
	.title-bg h2,
	.title-bg-white h1,
	.title-bg-white h2 {
		padding: 5px 10px !important;
	}
}
.card-effect-lateral {
	border-left: 20px solid transparent;
	border-image: 20 repeating-linear-gradient(-43deg, rgba(190, 233, 237, 0.45) 1.4em, rgba(190, 233, 237, 0.45) 1.85em, #fff 0, #fff 2.2em);
	display: flex;
	flex-direction: column;
}

body{ --speed: 10s; }

.sliding-text .elementor-widget{
  overflow: hidden;
  white-space: nowrap;
}

.sliding-text .elementor-heading-title{
  display: inline-flex;
  gap: 30px;
  will-change: transform;
}

.sliding-text .sliding .elementor-heading-title{
  animation: sliding var(--speed) linear infinite;
}

@keyframes sliding{
  0%{ transform: translateX(0); }
  100%{ transform: translateX(-20%); }
}

.sliding-text.reverse .sliding .elementor-heading-title{
  animation-direction: reverse;
}

.st-group{
  display:flex;
  gap:30px;
  padding-right:30px;
}

.bloque-dest .deco {
	border-image: 20 repeating-linear-gradient(130deg, rgba(170, 207, 220, 0.45098) 1.3em, rgba(170, 207, 220, 0.45098) 1.85em, #fff 0, #fff 2.5em);
}
.deco {
	border-image: 20 repeating-linear-gradient(130deg, #fff 1.3em, #fff 1.85em, transparent 0, transparent 2.5em);
}
.decoo::after {
     content: "";
    z-index: 0;
    display: block;
    border-style: solid;
    border-width: 10px;
    height: 10px;
    border-image: repeating-linear-gradient(130deg, #fff 1.3em, #fff 1.85em, transparent 0, transparent 2.5em) 10;
    position: absolute;
    bottom: -20px;
    left: 0;
    right: 0;
}

@media (max-width: 1024px) {
	.arrow-left:after {
		position: absolute;
		content: '';
		bottom: -1px;
		right: 30px;
		border: 50px solid transparent;
		border-top-color: #fff;
		transform: rotate(180deg);
		height: 0;
		width: 0;
	}
	.hero h1 {
		color: var(--e-global-color-primary) !important;
	}
	.hero div,
	.hero p a {
		color: var(--e-global-color-text) !important;
	}
	.arrow-right:after {
		position: absolute;
		content: '';
		bottom: -60px;
		left: 30px;
		border: 30px solid transparent;
		border-top-color: #8EBFD1;
		transform: rotate(0);
		height: 0;
		width: 0;
		z-index: 1;
	}
	.arrow-right.reverse:after {
		content: none;
	}
}

@media (min-width: 1025px) {
	.arrow-left:after {
		position: absolute;
		content: '';
		top: 150px;
		left: 0;
		border: 50px solid transparent;
		border-top-color: #fff;
		height: 0;
		width: 0;
		transform: rotate(-90deg);
	}
	.arrow-right:after {
		position: absolute;
		content: '';
		top: 30px;
		right: -60px;
		border: 30px solid transparent;
		border-top-color: #8EBFD1;
		transform: rotate(-90deg);
		height: 0;
		width: 0;
		z-index: 1;
	}
	.arrow-right.reverse:after {
		position: absolute;
        content: '';
        top: 30px;
        right: 0;
        border: 30px solid transparent;
        border-top-color: #C7DFE8;
        transform: rotate(90deg);
        height: 0;
        width: 0;
        z-index: 1;
	}
	
}


/*breadcrumb*/
.breadcrumb {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 4px;
	color: var(--e-global-color-text);
	font-size: 12px;
}
.breadcrumb a {
	color: var(--e-global-color-text);
	font-size: 12px;
}

@media (max-width: 1024px) {
	.breadcrumb {
		background-color: #f7fafc;
		padding: 15px;
		font-size: 10px;
	}
	.breadcrumb a {
		font-size: 10px;
	}
}
  
.breadcrumb div:last-child a {
	font-weight: 500;
	pointer-events: none;
}


/*single tratamientos*/
.more{
  display: grid !important;
  grid-template-rows: 0fr !important;
  overflow: hidden;
  opacity: 0 !important;
  transition: grid-template-rows .35s ease, opacity .25s ease !important;
}

.more > *{
  overflow: hidden;
}

.more.open{
  grid-template-rows: 1fr !important;
  opacity: 1 !important;
}

.more.hidden{
  grid-template-rows: 0fr !important;
  opacity: 0 !important;
}
.learn-more__btn {
	display: none;
}
.more + .learn-more__btn {
	display: block;
}
.more.open + .learn-more__btn i {
   transform: rotate(180deg);
}


@media (min-width: 1025px) {
	.page-tratamientos-zig-zag .jet-listing-grid__item:nth-child(even) .reverse {
		--flex-direction: row-reverse !important;
	}
	.page-tratamientos-zig-zag .jet-listing-grid__item:nth-child(even) .reverse .arrow-left:after {
		transform: rotate(90deg);
		right: 0;
		left: inherit;
	}
	.card-zig-zag-true .jet-listing-grid__item:nth-child(odd) .reverse {
		--flex-direction: row !important;
	}
	.card-zig-zag-false .jet-listing-grid__item:nth-child(even) .reverse {
		--flex-direction: row !important;
	}
}
@media (max-width: 768px) {
	.page-tratamientos-zig-zag .jet-listing-grid__item .reverse img {
		height: 25em;
		object-fit: cover;
	}
}
    
.reverse h3 span {
	color: #72AFC5;
	font-family: "Manrope", sans-serif;
	font-size: 2.3rem;
	font-weight: 900;
	letter-spacing: -0.005em;
}
@media (min-width: 1024px) {
	.card-zig-zag-false .jet-listing-grid__item:nth-child(even) .zig-zag-numeros .reverse > div:last-child {
		--margin-left: 80px;
	}
	.card-zig-zag-true .jet-listing-grid__item:nth-child(odd) .reverse > div:last-child,
	.card-zig-zag-false .jet-listing-grid__item:nth-child(even) .reverse > div:last-child {
		--margin-left: -40px;
		--margin-right: 0;
	}
	body .card-zig-zag-false .jet-listing-grid__item:nth-child(even) .reverse .cards {
		    --margin-right: 0;
	}
}

.button-play {
    position: absolute;
    top: 50%;
    left: 50%;
    background: transparent url(/wp-content/uploads/2026/01/play.svg) no-repeat 50% 50%;
	background-size: 80px;
    cursor: pointer;
    height: 100%;
    transform: translate(-50%, -50%);
    width: 100%;
    z-index: 2;
}
.e-n-accordion details {
	border-bottom: 1px solid #ebebeb;
    margin-bottom: 10px;
}
.e-n-accordion .e-n-accordion-item-title {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	border: 0;
	color: var(--n-accordion-title-normal-color);
	padding: 3px 0 25px 0;
}
.e-n-accordion .e-n-accordion-item-title + div.elementor-element {
	padding: 0 0 10px;
	color: #062846;
}
.e-n-accordion .e-n-accordion-item-title + div.elementor-element a {
	color: inherit;
	text-decoration: underline;
}
.e-n-accordion .e-n-accordion-item-title:marker {
	display: none;
}
.e-n-accordion .e-n-accordion-item-title h3.e-n-accordion-item-title-text {
	font-size: 16px;
    font-family: var(--e-global-typography-72a441a-font-family), Sans-serif;
    font-weight: var(--e-global-typography-72a441a-font-weight);
    line-height: var(--e-global-typography-72a441a-line-height);
	color: #062846;
}
.e-n-accordion .e-n-accordion-item-title .e-n-accordion-item-title-icon .e-opened {
	display: none;
	margin-top: -5px;
}
.e-n-accordion .e-n-accordion-item-title[aria-expanded="true"] .e-n-accordion-item-title-icon .e-opened {
	display: block;
}
.e-n-accordion .e-n-accordion-item-title[aria-expanded="true"] .e-n-accordion-item-title-icon .e-closed {
	display: none;
}
.e-n-accordion details summary + div ul {
	padding-left: 20px;
}
.e-n-accordion details summary + div ul li {
	margin-bottom: 15px;
}

@media (max-width: 768px) {
	.faqs details {
		padding-bottom: 10px;
	}
	.faqs .e-n-accordion-item-title {
		padding-bottom: 10px;
	}
}


.btn.btn-primary {
	background-color: var(--e-global-color-primary);
    font-family: var(--e-global-typography-e9542fe-font-family), Sans-serif;
    font-size: var(--e-global-typography-e9542fe-font-size);
    font-weight: var(--e-global-typography-e9542fe-font-weight);
    line-height: var(--e-global-typography-e9542fe-line-height);
    fill: var(--e-global-color-2825d8f);
    color: var(--e-global-color-2825d8f);
    border-radius: 6px 6px 6px 6px;
    padding: 10.5px 35px 10.5px 35px;
	transition: 0.3s ease-in-out !important;
	display: block;
}
.btn.btn-primary:hover {
	background-color: var(--e-global-color-1f8132e);
    color: var(--e-global-color-2825d8f);
}

.btn-back a {
	cursor: pointer;
}
.legal.cookies h2 {
	font-size: 1.75rem;
}
.legal.cookies h3,
.legal h2 {
    font-weight: 800;
    font-size: 1.25rem;
    margin-bottom: 25px !important;
}
.legal h3 {
    font-size: 1.25rem;
    margin-bottom: 25px !important;
    font-weight: 400;
}

.legal p a,
.legal li a {
    text-decoration: underline;
}
.legal ul {
    margin-bottom: 20px;
}
.legal ul li {
    margin-bottom: 5px;
}

.content-blog h2 {
	font-size: 1.75rem;
	font-weight: 700;
	margin-top: 40px !important;
	margin-bottom: 16px !important;
}
.content-blog h3 {
	font-size: 1.25rem;
	font-weight: 700;
	margin-top: 40px !important;
	margin-bottom: 16px !important;
}
.content-blog p {
	margin-bottom: 25px;
}
.content-blog ul {
	margin-bottom: 25px !important;
}
.content-blog ul li {
	margin-bottom: 15px;
}
.content-blog p a,
.content-blog li a {
	color: inherit;
	text-decoration: underline;
}

.sc-banner{
	background-color: var(--e-global-color-f4b2598);
	padding: 50px 25px;
	display: flex;
	flex-direction: column;
	gap: 20px;
	align-items: center;
}
.sc-banner div{
	font-size: 24px;
	font-weight: 600;
	text-align: center;
	line-height: 1.2em;
}
.sc-banner a{
	padding: 8.5px 13px;
	border-radius: 6px;
	color: var( --e-global-color-primary );
	background: white;
	font-weight: 600;
}
.sc-banner a:hover{
	color: var(--e-global-color-2825d8f);
    background-color: var(--e-global-color-1f8132e);
}

.wp-permalink-pager ul {
	display: flex;
    flex-direction: row;
    gap: 32px;
    justify-content: center;
}
.wp-permalink-pager ul li {
	list-style: none;
	
}
.wp-permalink-pager ul li.is-disabled {
	opacity: 0.5;
}
.wp-permalink-pager ul li.is-active span {
	font-weight: 700;
}
.wp-permalink-pager ul li span,
.wp-permalink-pager ul li a {
	color: #062846;
	font-weight: 500;
}
.jet-slick-dots{
  flex-wrap:nowrap;
  overflow:hidden;
}
.slick-arrow.slick-disabled {
	opacity: 0.5;
}

.smart-google-rating {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.smart-google-rating div {
	text-align: center;
}
.smart-google-rating span {
	left: 0;
	right: 0;
}
.smart-google-rating .smart-google-rating-value {
	font-size: var(--e-global-typography-5161d25-font-size);
	font-weight: var(--e-global-typography-5161d25-font-weight);
	line-height: var(--e-global-typography-5161d25-line-height);
	color: var(--e-global-color-text);
}
.smart-google-rating .smart-google-rating-text {
	font-family: var(--e-global-typography-2bf29c0-font-family), Sans-serif;
	font-size: var(--e-global-typography-2bf29c0-font-size);
	font-weight: var(--e-global-typography-2bf29c0-font-weight);
	line-height: var(--e-global-typography-2bf29c0-line-height);
}
.smart-google-rating .smart-google-rating-stars {
    font-size: 23px;
}


.banner-quote {
	background-color: #F7FAFC;
    padding: 40px;
	margin: 0 0 30px 0;
	display: flex;
    flex-direction: row;
}
.banner-quote:before {
	content: "\e907";
	font-family: 'icomoon' !important;
	font-size: 21px;
	color: #8DBED0;
	transform: rotate(180deg);
	height: 25px;
	margin-right: 15px;
}
.banner-quote {
	margin:0 auto;
	font-size: 20px;
	font-weight: 700;
	line-height: 26px;
}

.key-points {
	background-color: #F7FAFC;
    padding: 40px;
}
@media (max-width: 768px) {
	.key-points {
		padding: 30px 20px;
	}
}
.key-points h2{
	margin: 0 !important;
}
.key-points ul li::marker {
	color: #8DBED0 !important;
}

.wp-block-table table tr:first-child td {
	background-color: #72AFC5 !important;
}
.wp-block-table table tr:first-child td {
	border-color: #fff;
	font-weight: 400;
	font-style: italic;
	font-family: var(--font-title);
    font-size: 18px !important;
}
.wp-block-table table tr td {
	border-color: #fff;
	font-size: 14px;
    padding: 10px;
	background-color: #fff;
}
.wp-block-table table tr:nth-child(odd) td {
	background-color: #F5F4EF;
	border-color: #F5F4EF;
	font-size: 14px;
    padding: 10px;
}

/* table responsive */

.wp-block-table {
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  isolation:isolate;
}

.wp-block-table table{
  width:max-content;
  min-width:100%;
  border-collapse:separate;
  border-spacing:0;
}

.wp-block-table table td {
	width:195px;
	border: 0 solid;
	border-left: 1px solid;
}

.wp-block-table table tr > td:first-child {
	position:-webkit-sticky;
	position:sticky;
	left:0;
	z-index:2;
	font-weight: 600;
}


.wp-block-table table tr:first-child > td {
	background: #72AFC5;
	color:#fff;
	font-style: normal;
	font-weight: 600;
}

.wp-block-table table tr:first-child > td:first-child{
  z-index:3;
}
@media (max-width: 990px) {
	.wp-block-table td:first-child::after,
	.wp-block-table th:first-child::after{
		content: "";
		position: absolute;
		top: 0;
		right: -28px;   /* ancho del fade hacia el scroll */
		width: 28px;
		height: 100%;
		pointer-events: none;
		background: linear-gradient(to right, rgba(51, 51, 51, 0.06), rgba(0,0,0,0));
	}
}