@charset "utf-8";
/* CSS Document */

      :root {
            --primary-color: #1D2545; /* Azul médico confiable */
            --secondary-color: #149AD7; /* Cyan para acentos */
            --text-dark: #2c3e50;
            --light-bg: #f8f9fa;
        }
ul {list-style-type:disc; list-style-position: outside; margin-block-start: 1em; margin-block-end: 1em; padding-inline-start: 20px; font-family: 'Montserrat', 'Roboto', sans-serif; font-size: 15px; color:#696969}
a .btn-outline-secondary:hover {
  color:#1D2545;
} 
.ir-arriba {
	display:none;
	cursor:pointer;
	position: fixed;
	
}
.btn2 {
  padding: 10px 20px;
  margin: 10px;
border-top:none;
border-left:none;
border-right:none;
  border-bottom: 3px solid #009CDE;
  cursor: pointer;
  font-size: 16px;
  transition: all 0.3s ease;
width: 100%
}
 tr:nth-child(even) {
    background-color: #e2f6ff;
}


/* 3. Border Reveal */
.btn-border-reveal {
  background-color: #fff;
  color: #1d2545;
  position: relative;
}

.btn-border-reveal::after {
  content: "";
  position: absolute;
  width: 0;
  height: 100%;
  top: 0;
  left: 0;
  background-color: #009CDE;
  transition: width 0.3s ease;
  z-index: -1;
}

.btn-border-reveal:hover::after {
  width: 100%;
}

.btn-border-reveal:hover {
  background-color: #009CDE;
  color: white;
}

@media (max-width: 4000px) {
.banner-desktop{display:block !important; width:100%}
.banner-mobile{display: none !important}
}

@media (max-width: 1000px) {
.banner-desktop{display:block !important;  width:100%}
.banner-mobile{display: none !important}
}

@media (max-width: 780px) {
.banner-desktop{display:none !important}
.banner-mobile{display: block !important}
}

@media (max-width: 500px) {
.banner-desktop{display:none !important}
.banner-mobile{display: block !important}
}


    :root{
      --primary:#0d6efd;
      --accent:#0b5ed7;
      --muted:#6c757d;
      --bg:#f7f9fc;
    }

    body{
      font-family: "Helvetica Neue", Arial, sans-serif;
      background: var(--bg);
      color:#222;
      line-height:1.6;
    }

	
	        /* Hero Section Reformulado */
        .hero-section {
            background: linear-gradient(to right, rgba(0, 40, 85, 0.5), rgba(0, 40, 85, 0.3)), url('../images/hemodinamia-hero3.png');
            background-size: cover;
            background-position: center;
            color: white;
            padding: 80px 0 80px 0;
            /* Eliminamos clip-path para que el contenido no se corte en móviles */
        }

        .hero-title {
            font-size: 2.8rem;
            margin-bottom: 20px;
            font-weight: 700;
        }

        /* CTA Cards en Hero */
        .hero-cta-card {
            background: rgba(255, 255, 255, 0.95);
            border-radius: 12px;
            padding: 25px;
            margin-bottom: 20px;
            color: var(--text-dark);
            box-shadow: 0 8px 25px rgba(0,0,0,0.2);
            transition: transform 0.3s ease;
            border-left: 5px solid var(--secondary-color);
        }

        .hero-cta-card:hover {
            transform: translateY(-5px);
        }

        .hero-cta-icon {
            font-size: 2rem;
            color: var(--primary-color);
            margin-bottom: 15px;
            display: block;
        }

        .btn-custom-primary {
            background-color: var(--primary-color);
            color: white;
            border-radius: 50px;
            padding: 10px 25px;
            font-weight: 600;
            box-shadow: 0 4px 15px rgba(0, 86, 179, 0.4);
            transition: all 0.3s;
            display: inline-block;
            text-decoration: none;
        }

        .btn-custom-primary:hover {
            background-color: #004494;
            color: white;
            transform: scale(1.05);
            text-decoration: none;
        }
        
        .btn-custom-outline {
            border: 2px solid var(--primary-color);
            color: var(--primary-color);
            border-radius: 50px;
            padding: 8px 20px;
            font-weight: 600;
            background: transparent;
            transition: all 0.3s;
            display: inline-block;
            text-decoration: none;
        }

        .btn-custom-outline:hover {
            background-color: var(--primary-color);
            color: white;
            text-decoration: none;
        }

        /* Nuevas Cards de Patologías */
        .pathology-card {
            background: white;
            border-radius: 15px;
            padding: 25px 15px;
            text-align: center;
            box-shadow: 0 5px 15px rgba(0,0,0,0.05);
            border: 1px solid #eee;
            transition: all 0.3s ease;
            height: 100%;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: flex-start;
        }

        .pathology-card:hover {
            box-shadow: 0 15px 30px rgba(0, 86, 179, 0.15);
            transform: translateY(-5px);
            border-color: var(--secondary-color);
        }

        .pathology-icon-wrapper {
            width: 70px;
            height: 70px;
            background-color: rgba(20, 154, 215, 0.1); /* Secondary color with opacity */
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 15px;
            transition: all 0.3s;
        }

        .pathology-card:hover .pathology-icon-wrapper {
            background-color: var(--secondary-color);
        }

        .pathology-card:hover .pathology-icon-wrapper i {
            color: white !important;
        }

        .pathology-title {
            font-weight: 600;
            font-size: 1rem;
            color: var(--text-dark);
            margin: 0;
        }

        /* Procedure Cards */
        .procedure-card {
            border: 1px solid #eee;
            border-left: 5px solid var(--secondary-color);
            border-radius: 8px;
            margin-bottom: 20px;
            transition: all 0.3s;
            height: 100%;
            background: white;
        }

        .procedure-card:hover {
            box-shadow: 0 5px 15px rgba(0,0,0,0.08);
        }.text-info {
    color: #149ad7 !important;
}
	

        /* Medical Team */
        .doctor-card {
            border: none;
            text-align: center;
            background: white;
            padding: 30px 20px;
            border-radius: 15px;
            box-shadow: 0 5px 20px rgba(0,0,0,0.05);
            transition: all 0.3s;
        }

        .doctor-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 15px 30px rgba(0,0,0,0.1);
        }

        .doctor-img {
            width: 120px;
            height: 120px;
            border-radius: 50%;
            object-fit: cover;
            margin-bottom: 15px;
            border: 3px solid var(--light-bg);
            box-shadow: 0 4px 8px rgba(0,0,0,0.1);
        }

.btn-outline-primary {
    color: #149ad7;
    background-color: transparent;
    background-image: none;
    border-color: #149ad7;
}
.btn-outline-primary:hover {
    color: #fff;
    background-color: #149ad7;
}
        /* Technology Section */
        .tech-section {
            background-color: #f1f8ff;
            padding: 80px 0;
            position: relative;
        }
        
        /* Commitment Section */
        .commitment-item {
            display: flex;
            align-items: center;
            margin-bottom: 20px;
            padding: 15px;
            background: white;
            border-radius: 10px;
            box-shadow: 0 2px 5px rgba(0,0,0,0.05);
        }
        
        .commitment-icon {
            width: 50px;
            height: 50px;
            background: var(--secondary-color);
            color: white;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-right: 15px;
            flex-shrink: 0;
        }

        /* Section Spacing */
        section {
            padding: 5px 0;
        }
	
	
	
	
    /* Cards and sections */
    .section-card{
      background:#fff;
      border-radius:14px;
      box-shadow:0 6px 20px rgba(18,38,63,0.06);
      padding:28px;
      margin-bottom:20px;
    }

    .timeline{
      position:relative;
      padding-left: 1rem;
      margin-top:1rem;
    }
    .timeline::before{
      content:'';
      position:absolute;
      left:8px;
      top:0;
      bottom:0;
      width:3px;
      background:linear-gradient(180deg,var(--accent),rgba(11,94,215,0.3));
      border-radius:4px;
    }
    .timeline-item{
      position:relative;
      margin-bottom:1.2rem;
      padding-left:1.5rem;
    }
    .timeline-item .dot{
      position:absolute;
      left:-1px;
      top:6px;
      width:18px;
      height:18px;
      border-radius:50%;
      background:#fff;
      border:4px solid var(--primary);
      box-shadow:0 3px 10px rgba(11,94,215,0.12);
    }

    /* Equipment highlight */
    .equip {
      display:flex;
      align-items:center;
      gap:18px;
      flex-wrap:wrap;
    }
    .equip img{
      max-width:320px;
      border-radius:12px;
      box-shadow:0 10px 30px rgba(11,94,215,0.08);
    }

.form-icon{
    position:absolute;
    left:12px;
    top:50%;
    transform:translateY(-50%);
    color:#94a3b8;
    font-size:14px;
}

.form-control-icon{
    padding-left:35px;
    background:#f8fafc;
    border:1px solid #e2e8f0;
    border-radius:8px;
}

.btn-custom{
    background:#0f172a;
    color:white;
    font-weight:bold;
    padding:12px;
    border-radius:12px;
    transition:all .3s;
}

.btn-custom:hover{
    background:#1e293b;
    transform:translateY(-1px);
}

    /* CTA */
    .cta {
      background:linear-gradient(90deg,var(--primary),var(--accent));
      color:white;
      border-radius:12px;
      padding:28px;
    }
    .btn-outline-light {
      border-color: rgba(255,255,255,0.25);
    }

    /* Footer */
    footer {
      padding:0px 0;
      color:var(--muted);
    }

    @media (max-width:767.98px){
      .hero { padding: 48px 0; }
      .equip img { max-width:100%; }
    }

	  .icon-circle {
  width: 70px;
  height: 70px;
  background: #149ad7; /* azul */
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 15px auto;
}
.icon-circle i {
  color: #fff !important;
  font-size: 28px;
}
	  
	 .timeline-h-modern {
  position: relative;
  flex-wrap: wrap;
}

.timeline-h-step {
  width: 260px;
  text-align: center;
  margin: 0 0px;
}

.timeline-h-icon {
  width: 70px;
  height: 70px;
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  background: linear-gradient(135deg, #1D2545, #1D2545);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.timeline-h-icon:hover {
  transform: translateY(-6px) scale(1.05);
  box-shadow: 0 12px 25px rgba(0, 123, 255, 0.3);
}

.timeline-h-line {
  width: 120px;
  height: 4px;
  background: linear-gradient(90deg, #007bff33, #007bff);
  border-radius: 4px;
  position: relative;
}

.timeline-h-line::after {
  content: "";
  position: absolute;
  top: -6px;
  right: -6px;
  width: 14px;
  height: 14px;
  background: #007bff;
  border-radius: 50%;
  box-shadow: 0 0 12px rgba(0,123,255,0.5);
}

@media (max-width: 767px) {
  .timeline-h-modern {
    flex-direction: column;
  }
  .timeline-h-line {
    display: none;
  }
  .timeline-h-step {
    margin-bottom: 40px;
  }
	    .hero-section {
            background: linear-gradient(to right, rgba(0, 40, 85, 0.9), rgba(0, 40, 85, 0.6)), url('../images/hemodinamia-hero2.png');
            background-size: cover;
            background-position: center;
            color: white;
            padding: 80px 0 80px 0;
            /* Eliminamos clip-path para que el contenido no se corte en móviles */
        }
}

html {
  scroll-behavior: smooth;
}

.g-recaptcha-response {
    display: block !important;
    position: absolute;
    margin: -95px 0px 0 25px !important;
    width: 302px !important;
    height: 76px !important;
    z-index: -999999;
    opacity: 0;
}

/* VARIABLES DE COLOR */
:root {
    --rojo-urgencia: #ec3233;
    --azul-menu: #044083;
}
/* =========================================
   ESTILOS MOBILE FIRST (Por defecto)
========================================= */


/* Menú Inferior Sticky */
.menu-mobile-sticky {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: var(--azul-menu);
    display: flex;
    justify-content: space-around;
    align-items: flex-end;
    padding: 10px 0 8px 0;
    z-index: 9999;
    box-shadow: 0 -4px 10px rgba(0,0,0,0.15);
    font-family: inherit;
}

.menu-mobile-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #ffffff;
    text-decoration: none;
    font-size: 12px;
    width: 25%;
    transition: opacity 0.3s ease;
}

.menu-mobile-item:hover,
.menu-mobile-item:focus {
    color: #ffffff;
    opacity: 0.8;
    text-decoration: none;
}

.menu-mobile-item i {
    font-size: 22px;
    margin-bottom: 4px;
}

/* Ítem Central Destacado en Mobile */
.item-central-destacado {
    position: relative;
    /* Añadimos un poco de altura base para asegurar que el contenido interno se distribuya bien */
    height: 40px; 
}

.circulo-rojo-urgencia {
    position: absolute;
    bottom: 5px; /* CORRECCIÓN: Valor positivo para que no se corte por debajo de la pantalla */
    left: 50%;
    transform: translateX(-50%);
    background-color: var(--rojo-urgencia);
    width: 72px;
    height: 72px;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 3px solid #ffffff;
    box-shadow: 0 4px 8px rgba(0,0,0,0.2);
    color: #ffffff;
}

.circulo-rojo-urgencia i {
    font-size: 22px;
    margin-bottom: 2px;
}

.circulo-rojo-urgencia span {
    font-size: 10px;
    font-weight: bold;
    text-align: center;
    line-height: 1.1;
}

/* =========================================
   MEDIA QUERIES (Desktop - Desde 768px)
========================================= */
@media (min-width: 768px) {
    /* Ocultar menú mobile en resoluciones mayores */
    .menu-mobile-sticky {
        display: none;
    }
}

@media (max-width: 500px) {
    /* Ocultar menú mobile en resoluciones mayores */
    .trabajo {
        display: block!important;
		width:50%!important;
		border-radius:0px;
		
    }   

 } 