/* 
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
*/

/** Fonts **/
strong, b {
  font-weight: 300;
  color: inherit;
  text-shadow: 0 0 0.8px currentColor;
}
@font-face {
    font-family: 'Swizzy Light';
    src: url('/wp-content/uploads/2026/03/Swizzy-Light.woff2') format('woff2'),
         url('/wp-content/uploads/2026/03/Swizzy-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'Swizzy Light Italic';
    src: url('/wp-content/uploads/2026/03/Swizzy-Light-Italic.woff2') format('woff2'),
         url('/wp-content/uploads/2026/03/Swizzy-Light-Italic.woff') format('woff');
    font-weight: 300;
    font-style: italic;
}
@font-face {
    font-family: 'Swizzy Regular';
    src: url('/wp-content/uploads/2026/03/Swizzy-Regular.woff2') format('woff2'),
         url('/wp-content/uploads/2026/03/Swizzy-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'Swizzy Regular Italic';
    src: url('/wp-content/uploads/2026/03/Swizzy-Regular-Italic.woff2') format('woff2'),
         url('/wp-content/uploads/2026/03/Swizzy-Regular-Italic.woff') format('woff');
    font-weight: 400;
    font-style: italic;
}
@font-face {
    font-family: 'Swizzy Mono Regular';
    src: url('/wp-content/uploads/2026/03/Swizzy-Mono-Regular.woff2') format('woff2'),
         url('/wp-content/uploads/2026/03/Swizzy-Mono-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

/** General **/
html {
  overflow-x: hidden;
}
body a {
  color: #333;
}
body ol {
  margin-bottom: 10px;
}

/* Botones */
.cg-button {
  border-radius: 50px;
  padding: 14px 32px;
  color: #002C23;
  background-color: rgba(0,0,0,0);
  border: 1px solid #002C23;
}
.cg-button .elementor-button-text {
  font-family: "Swizzy Mono Regular", Sans-serif;
  font-size: 16px;
  font-weight: 400;
  text-transform: uppercase;
}
.cg-button span, .cg-button, .cg-button .elementor-button-text {
  text-decoration: none!important;
}
.cg-button:hover {
  background-color: #002C23;
}
.cg-button:hover .elementor-button-text {
  color: #fFF;
}
.cg-button-white {
  color: #F4F1E8!important;
  background-color: rgba(0,0,0,0);
  border: 1px solid #F4F1E8!important;
}
.cg-button-white:hover {
  border: 1px solid #002C23!important;
}
.cg-button-white:hover .elementor-button-text {
  color: #F4F1E8!important;
}
.circular-icon-btn {
	width: 50px;
	height: 50px;
}
.circular-icon-btn .elementor-icon {
	border: 1px solid #F4F1E8!important;
	border-radius: 50%;
	width: 50px;
	height: 50px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.circular-icon-btn .elementor-icon-wrapper {
	width: 17px;
	height: 17px;
}
.circular-icon-btn .elementor-icon:hover {
	background-color: #92C5B4;
	border-color: #92C5B4!important; 
}

/** Forms **/
/* Zoho form */
.zoho-form iframe {
	width: 100%!important;
}

/** Main menu **/
/** Top bar **/
.topbar-icons .elementor-icon-list-item {
	margin: 5px 0;
}
/* Menú desktop */
.uc-mega_menu_list {
	min-height: 75px;
  align-items: center;
}
.uc-mega_menu_list .uc-mega_menu_list_item, .uc-mega_menu_list .uc-active_item .uc-mega_menu_title {
	text-align: right;
	height: 100%;
}
@media (max-width: 1500px) {
	.uc-mega_menu_list .uc-mega_menu_list_item a {
		font-size: 12px;
}
}
.uc-mega_menu_list {
    display: flex ;
    flex-direction: row ;
    justify-content: flex-start ;
    flex-wrap: nowrap ;
    width: 100% ;
    max-width: 100vw ;
}
.uc-mega_menu_list > .uc-mega_menu_list_item {
    flex: 0 1 auto ;
    width: auto ;
    min-width: 0 ;
}
.uc-mega_menu_list > .uc-mega_menu_list_item > .uc-mega_menu_title {
    display: inline-flex ;
    white-space: nowrap ; 
}
.elementor-widget-uc_mega_menu {
    overflow: visible ;
}
header .uc-mega_menu_title > span:before, #uc_ue_accordion_menu_elementor_b4701a4 .uc-side-menu-items ul a:before {
	content: "+";
}

/** Mega menu CPT **/

        #menu-cpt .uc-mega_menu_list { display: flex; flex-wrap: wrap; list-style: none; padding: 0; margin: 0; }
        #menu-cpt .uc-mega_menu_list_item { position: relative; list-style: none; padding: 15px; }
        
        #menu-cpt .uc-mega_menu_section { 
            display: none; 
            position: absolute; 
            top: 100%; 
            left: 0; 
            z-index: 999; 
            box-shadow: 0px 10px 30px rgba(0,0,0,0.1);
        }

        #menu-cpt .inner-mega-container {
            background-color: #fff; 
            padding: 20px; 
            width: max-content; 
            display: flex; 
            gap: 20px; 
            flex-wrap: wrap;
        }

        #menu-cpt .mega-column { flex: 1; min-width: 200px; }
        #menu-cpt .mega-column-title { font-size: 16px; margin-bottom: 10px; border-bottom: 1px solid #eee; padding-bottom: 5px; }

        #menu-cpt .uc-mega_menu_list_item:hover .uc-mega_menu_section { display: block; }
        
        #menu-cpt .elementor-icon-list-items { list-style: none; padding: 0; margin: 0; }
        #menu-cpt .elementor-icon-list-item { margin-bottom: 12px !important; }
        #menu-cpt .elementor-icon-list-text { font-family: "Swizzy Light", Sans-serif; font-size: 16px; color: var(--e-global-color-6c22f09); transition: 0.3s; }
        #menu-cpt .elementor-icon-list-item a:hover .elementor-icon-list-text, #menu-cpt .uc-mega_menu_list_item:hover .uc-mega_menu_title{ color: var(--e-global-color-primary);}
        
        #menu-cpt .uc-mega_menu_title {
            font-family: "Swizzy Mono Regular", Sans-serif;
            font-size: 14px;
            text-transform: uppercase;
            letter-spacing: 1px;
            color: var(--e-global-color-6c22f09);
            text-decoration: none;
        }

         #menu-cpt .uc-mega_menu_title span {
            display: flex;
            gap: 7px;
        }

        @media  (max-width: 1365px) {

            #menu-cpt .uc-mega_menu_list {
                flex-direction: column;
                gap: 10px;
            }

            #menu-cpt .uc-mega_menu_list_item {
                width: 100%;
                display: block;
                padding: 0 !important; 
                background: #f4f1e8;
                border-radius: 4px;
                margin-bottom: 5px;
            }

            #menu-cpt .uc-mega_menu_title {
                display: block;
                padding: 15px 20px;
                font-weight: light !important;
                text-align: left;
                font-size: 16px !important;
                width: 15%;
            }

            #menu-cpt .uc-mega_menu_title:hover {
                color: var(--e-global-color-accent) !important;
            }
            #menu-cpt .uc-mega_menu_section {
                position: static; 
                display: none;
                box-shadow: none;
                width: 100% !important;
            }

            #menu-cpt .uc-mega_menu_list_item.has-dropdown:hover  .uc-mega_menu_section {
                display: block;
            }

            #menu-cpt .inner-mega-container {
                width: 100% !important;
                flex-direction: column;
                background-color: transparent; 
                padding: 10px 20px 20px 20px;
                gap: 20px;
            }

            #menu-cpt .mega-column {
                width: 100%;
                min-width: 100%;
            }

            #menu-cpt .elementor-icon-list-text {
                font-size: 15px; 
            }

            header .uc-mega_menu_list_item.has-dropdown span::before{
              display: none !important;
            }

            header .uc-mega_menu_list_item.has-dropdown::after{
              content:"+";
              margin-top: 14px;
              margin-right: 20px;
              font-size: 26px;
            }

            header .uc-mega_menu_list_item.has-dropdown:hover::after{
                display: none !important;
            }

            .uc-mega_menu_list_item.has-dropdown {
              display: flex !important;
              justify-content: space-between;
            }
            
            .uc-mega_menu_list_item.has-dropdown:hover {
              display: block !important;
              justify-content: space-between;
            }
        }
    

/* Lists */
.list-container ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.list-container ul li {
	margin-bottom: 15px;
	margin-left: 0;
}
.list-container li::before {
	display: inline-block;
  content:"";
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  border: 2px solid #92C5B4;
  border-radius: 50%;
  margin-right: 10px;
  margin-top: 2px;
}
.list-container ul li::before {
	position: relative;
  top: 4px;
}
.list-container a {
  text-decoration: none;
  color: #333333;
}
.list-container a:hover {
  color: #F59E50;
}
.acf-page-list, .acf-list-columns, .acf-page-list-container ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.acf-page-list, .acf-list-columns {
	columns: 2;
  	column-gap: 40px;
}
.acf-list-columns ul {
	padding-left: 0;
}
.acf-page-list li, .acf-list-columns li {
    display: flex;
    align-items: flex-start;
    break-inside: avoid;
  	margin-bottom: 12px;
}
.acf-page-list-container ul li {
	  margin-bottom: 15px;
    position: relative;
    padding-left: 35px;
}
.acf-page-list li::before, .acf-page-list-container ul li::before, .acf-list-columns li::before {
	  display: inline-block;
    content: url("/wp-content/uploads/2026/04/circle-notch-solid-full-92C5B4.svg");
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
 	  color: #92C5B4;
    margin-right: 10px;
    margin-top: 2px;
    position: absolute;
    left: 0;
}
.acf-page-list-container ul li::before {
    top: -2px;
}
.acf-page-list a, .acf-page-list-container ul li a, .acf-list-columns a {
    text-decoration: none;
    color: #333333;
}
.acf-page-list a:hover, .acf-page-list-container ul li a:hover, .acf-list-columns a:hover {
    color: #F59E50;
}
@media (max-width: 768px) {
    .acf-page-list, .acf-list-columns {
        columns: 1;
    }
}

/** Plantilla Cirugía **/    
/* Carrusel fichas */
.carrusel-fichas .uc_image_carousel_content_holder {
  display: flex;
  flex-direction: column-reverse;
}
.carrusel-fichas .uc_image_carousel_placeholder img {
  object-position: top;
}
.carrusel-fichas .uc_post_title {
  margin-bottom: 0;
}
.carrusel-fichas .uc_image_carousel_content {
  bottom: 0px!important;
  left: 0px!important;
  right: 0px!important;
}
.carrusel-fichas .ue-grid-item-category {
  text-shadow: none;
}
.carrusel-fichas .ue-category-no-link {
  color: #FFF;
}


/* Grid icons */
.grid-icons .ue-repeater-grid-item-image {
  margin: 0 auto;
}
@media (max-width: 768px) {
  .grid-icons .uc-items-wrapper {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 768px) {
  .grid-icons .uc-items-wrapper {
    grid-template-columns: 1fr !important;
  }
}

/* Carrusel doctores */
.doctores-carrusel .carousel-image {
	background-position: top!important;
}
.doctores-carrusel .ue-title {
	margin-bottom: 0;
}
.doctores-carrusel p {
  margin-bottom: 0;
}

/* Carrusel galería */
.carrusel-arrows .elementor-image-carousel {
	max-height: 400px;
}
.carrusel-arrows .swiper-slide-image {
	max-height: 390px;
  min-height: 350px;
}
.carrusel-arrows .elementor-swiper-button {
	position: absolute;
	bottom: -280px;
}
.carrusel-arrows .elementor-swiper-button  svg {
	border: 1px solid #002C23;
	border-radius: 100%;
	padding: 5px; 
}
.carrusel-arrows .elementor-swiper-button:hover svg {
	background-color: #002C23;
}
.carrusel-arrows .elementor-swiper-button:hover svg path {
	fill: #FFF;
}
.carrusel-arrows .elementor-swiper-button-prev {
	right: 50px!important;
	left: auto!important;
}
.carrusel-arrows .elementor-swiper-button-next {
	right: 0px!important;
	left: auto;
}
/* Antes y después */
.carrusel-arrows-casos .elementor-image-carousel {
	max-height: none;
}
.carrusel-arrows-casos .elementor-swiper-button {
	height: 35px;
	top: 100%!important;
	transform: translateY(0%)!important;
}
.carrusel-arrows-casos .swiper-slide-image {
	min-height: 0!important;
}

/* Accordions */
.cirugia-accordion .e-n-accordion-item, .cirugia-accordion .ue-repeater-accordion-item {
  border-bottom: 1px solid;
}
.cirugia-accordion-white .e-n-accordion-item, .cirugia-accordion-white .ue-repeater-accordion-item {
  border-color: #FFF;
}
.cirugia-accordion-white a {
  color: #F4F1E8!important;
  text-decoration: underline;
}
.cirugia-accordion-white a:hover {
  color: #002C23!important;
}
.cirugia-accordion-dark .e-n-accordion-item, .cirugia-accordion-dark .ue-repeater-accordion-item {
  border-color: #80928B;
}
.cirugia-accordion-dark a {
  color: #333!important;
  text-decoration: underline;
}
.cirugia-accordion-dark a:hover {
  color: #002C23!important;
}
.cirugia-accordion a {
  color: #F4F1E8;
  text-decoration: underline;
}
.cirugia-accordion a:hover {
  color: #002C23;
}
.cirugia-accordion ul, .cirugia-accordion ol {
  margin-bottom: 15px;
}

/* Repeater ACF Accordion */
.repeater-accordion .ue-repeater-accordion-item-heading, .repeater-accordion .ue-repeater-accordion-item-text p {
	margin: 0;
}

/* Items accordion (proceso cirugía) */
.items-accordion .e-n-accordion-item {
	background-color: #DDD5C74D;
	border-radius: 10px;
}
.elementor-widget-n-accordion .e-n-accordion-item-title {
	justify-content: space-between;
}
.items-accordion .e-n-accordion-item p {
	margin-bottom: 0;
}
.items-accordion .e-n-accordion-item svg {
	fill: none!important;
}

/* Posts grid with hover */
.cg-masonry-posts .uc_post_title {
	margin-right: 60px;
}
.cg-masonry-posts .uc_content-info-wrapper {
	position: relative;
}
.cg-masonry-posts .uc_post_button {
    position: absolute;
    top: 10px;
    right: 20px;
}
.cg-masonry-posts .uc_btn_inner {
	border: 1px solid #F4F1E8;
    padding: 10px;
    border-radius: 50%;
    object-fit: contain;
}
.cg-masonry-posts .uc_post_button:hover .uc_btn_inner {
	background-color: #92C5B4;
  border-color: #92C5B4;
}
.cg-masonry-posts .uc_post_button .uc_btn_txt {
  display: none;
}
.cg-masonry-posts .uc_btn_inner .uc_btn_icon {
  width: 16px;
  height: 16px;
}
.cg-masonry-posts .uc_content {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 110px !important; /* Altura inicial visible */ 
    background-color: #000000 !important;
    opacity: 1 !important; /* Esto anula el ocultamiento del widget */
    visibility: visible !important;
    transform: none !important; /* Por si el widget la esconde abajo */
    transition: height 0.4s ease-in-out !important;
    display: flex !important;
    flex-direction: column !important;
    z-index: 10 !important;
}
.cg-masonry-posts .uc_content .uc_post_title .ue_p_title {
  font-size: 24px;
  line-height: 28px;
  margin: 0;
}
/* Título y Botón */
.cg-masonry-posts .uc_content_inner {
    display: flex !important;
    flex-direction: row !important; /* Asegura que título y botón estén en línea */
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    align-items: center !important;
}
/* Título a la izquierda, botón a la derecha */
.cg-masonry-posts .uc_content-info-wrapper {
    flex: 1 !important;
}
.cg-masonry-posts .uc_post_button {
    margin-left: auto !important;
}
/* Extracto oculto */
.cg-masonry-posts .uc_post_text {
    width: 100% !important;
    opacity: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    transition: opacity 0.3s ease !important;
    margin: 0 !important;
	  transition: height 0.4s ease-in-out !important;
}
.cg-masonry-posts .ue-item:hover .uc_content {
    height: 260px !important; 
}
.cg-masonry-posts .ue-item:hover .uc_post_text {
    opacity: 1 !important;
    height: auto !important;
    margin-top: 15px !important;
}
@media (max-width: 1024px) {
  .cg-masonry-posts .ue-item .uc_post_text {
    opacity: 1 !important;
    height: auto !important;
    margin-top: 15px !important;
}
  .cg-masonry-posts .ue-item .uc_content, .cg-masonry-posts .ue-item:hover .uc_content {
    height: 320px !important; 
    background-color: rgba(0, 0, 0, 0.7)!important;
  }
}
/* Carrusel categorías home */
.carousel-posts-reveal .uc_image_carousel_content {
	position: relative;
	bottom: -41%!important;
}
.carousel-posts-reveal .uc_image_carousel_content  .uc_paragraph {
	opacity: 0;
	visibility: hidden;
}
.carousel-posts-reveal .uc_image_carousel_content .ue-item-btn-holder {
	width: 50px;
	height: 50px;
	position: absolute;
	top: 15px;
	right: 15px;
	z-index: 10;
}
.carousel-posts-reveal .uc_image_carousel_content .ue-item-btn-holder a {
	margin-top: 0!important;
}
/* On hover */
.carousel-posts-reveal .uc_image_carousel_container_holder:hover .uc_image_carousel_content {
	bottom: 0%!important;
}
.carousel-posts-reveal .uc_image_carousel_container_holder:hover .uc_image_carousel_content  .uc_paragraph {
	opacity: 1;
	visibility: visible;
}
/* Laptop */
	.carousel-posts-reveal-laptop .uc_image_carousel_content {
	position: relative;
	bottom: -30%!important;
}
/* Mobile */
@media (max-width: 1024px) {
	.carousel-posts-reveal .uc_image_carousel_container_holder .uc_image_carousel_content {
	bottom: 0%!important;
	background-color: rgba(0, 0, 0, 0.7)!important;
}
	.carousel-posts-reveal .uc_image_carousel_container_holder .uc_image_carousel_content  .uc_paragraph {
	opacity: 1;
	visibility: visible;
}
}

/** Blog **/
/* Archive */
.blog-posts .ue-item {
	background-color: #F4F1E8;
}
/* Single */
.single-post .post h2 {
	font-size: 30px;
	margin-top: 30px;
}
.single-post .post h3 {
	font-size: 22px;
	margin-top: 20px;
	color: #92C5B4;
}
.single-post .post h4 {
	font-size: 18px;
	margin-top: 20px;
	font-family: "Swizzy Light", sans-serif;
}
.single-post .post ul {
  margin-bottom: 20px;
}


