/* 
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: Adgoritmo
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;
}

:focus-visible {
  outline: none;
}

@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;
}

.columna-contacto-ajustada {
    padding-left: calc((100vw - 1200px) / 2 + 10px) !important;
}

@media (max-width: 767px) {
    .columna-contacto-ajustada {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

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

/** Footer **/
.menu-2col ul {
	column-count: 2;
  column-gap: 80px;
}

/* 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/05/circle-solid.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;
  }
}

/** Reveal cads **/
.reveal-box .uc_long_content_box_holder .ue_btn_container {
    position: absolute !important;
    top: 10px !important;
    right: 10px !important;
    left: auto !important;
    display: flex !important; 
    opacity: 1 !important;
    visibility: visible !important;
    transform: scale(1) !important;
    z-index: 999 !important;
}
.reveal-box .uc_long_content_box_holder .ue_btn_container a,
.reveal-box .uc_long_content_box_holder .ue_btn_container svg {
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
}
.reveal-box .uc_long_content_box_holder .uc_long_content_box_box .uc_box_content {
    margin-right: 50px;
    background-color: #80928B;
    border-radius: 16px;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto !important;
    min-height: 60px;
    overflow: visible !important; 
    transition: none !important; 
    opacity: 1 !important;
    visibility: visible !important;
}
.reveal-box .uc_hidden_content {
    max-height: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    display: block !important;
    visibility: visible !important;
    transition: max-height 0.6s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s ease !important;
    transform: none !important;
}
.reveal-box .uc_long_content_box_holder:hover .uc_hidden_content {
    max-height: 400px !important; 
    opacity: 1 !important;
}

.reveal-box .uc_long_content_box_holder .uc_long_content_box_box .uc_box_content .uc_box_content_open {
    margin-right: 55px !important; 
    padding-bottom: 5px;
}

/** Carrusels **/
/* Carrusel arrows */


/* 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;
}
.border-accordion .e-n-accordion-item {
	margin-bottom: 0px!important;
	border-bottom: 1px solid #F4F1E8;
}

/* 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;
  border-radius: 24px;
  margin: 10px;
  width: calc(100% - 20px) !important;
  bottom: 0 !important;
  left: 10px !important;
  height: 65px !important;
  background-color: #80928B !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  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;
}

.cg-masonry-posts .uc_content_inner {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: space-between !important;
  align-items: center !important;
}

.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;
  }
}

/* Carrusel Content Carousel */
.ue-content-carousel .uc_image_carousel_content {
  margin: 10px;
}
.ue-content-carousel .uc_carousel .owl-item .uc_image_carousel_placeholder .carousel-image {
  background-position: top center!important;
}
.ue-content-carousel .uc_carousel .ue-text p {
  margin-bottom: 0;
}

/* Repeater accordion with image */
.content-slider-repeater .ue-item-image {
  background-position: top center!important;
  border-radius: 24px;
}

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

.hero-post{
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}