
.dropdown {
  position: relative;
  font-size: 14px;
  color: #333;

  .dropdown-list {
    position: absolute;
    top: 40px;
    left: 2px;
    right: 2px;
    transform-origin: 50% 0;
    transform: scale(1, 0);
    box-shadow: 0 1px 2px 1px rgba(0, 0, 0, .15);
    transition: transform .15s ease-in-out .15s;
    max-height: 66vh;
    overflow-y: scroll;
    z-index: 1;
  }
  
  .dropdown-option {
    display: block;
    padding: 6px;
    opacity: 0;
    transition: opacity .15s ease-in-out;
  }
  
  .dropdown-label {
    display: block;
    cursor: pointer;
    
    &:before {
      content: '▼';
      float: right;
    }
  }
  
  &.on {
   .dropdown-list {
      transform: scale(1, 1);
      transition-delay: 0s;
      
      .dropdown-option {
        opacity: 1;
        transition-delay: .2s;
      }
    }
    
    .dropdown-label:before {
      content: '▲';
    }
  }
  
  [type="checkbox"] {
    position: relative;
    top: -1px;
    margin-right: 4px;
  }
}

		/* Buscador anclado: queda fijo bajo la cabecera al hacer scroll */
		.buscador-sticky-wrapper{
			position: -webkit-sticky;
			position: sticky;
			top: 76px; /* Ajustar si la cabecera cambia de altura */
			z-index: 900;
			padding: 10px 0;
			transition: padding .25s ease, box-shadow .25s ease, background .25s ease;
		}

		.buscador-sticky-wrapper .box-search{
			background: rgba(255,255,255,.94);
			-webkit-backdrop-filter: blur(8px);
			backdrop-filter: blur(8px);
			border: 1px solid rgba(0,0,0,.10);
			border-radius: 14px;
			box-shadow: 0 6px 22px rgba(0,0,0,.07);
			transition: padding .25s ease, box-shadow .25s ease, border-color .25s ease;
		}

		.buscador-sticky-wrapper.is-sticky-active{
			background: rgba(255,255,255,.70);
		}

		.buscador-sticky-wrapper.is-sticky-active .box-search{
			box-shadow: 0 8px 26px rgba(0,0,0,.12);
			border-color: rgba(0,60,164,.16);
		}

		/* Al estar anclado, los desplegables deben quedar por encima de las tarjetas */
		.buscador-sticky-wrapper .dropdown-list{
			z-index: 1200;
		}

		.buscador-sticky-wrapper #sugerenciasEstudios{
			z-index: 1300 !important;
		}

		@media (max-width: 991px){
			.buscador-sticky-wrapper{
				top: 64px;
				padding: 8px 0;
			}
		}

		@media (max-width: 767px){
			.buscador-sticky-wrapper{
				position: static !important;
				top: auto !important;
				padding: 0 !important;
			}

			.buscador-sticky-wrapper .box-search{
				border-radius: 10px;
			}
		}
		#buscadorEstudio-reset{
			height: 40px;
		}
		
		/* =========================================================
	   Sticky real para el buscador de estudios
	   En escritorio se fija ocupando TODO el ancho de la ventana.
	   En móvil se desactiva para que no tape la pantalla.
	   ========================================================= */

	.buscador-sticky-wrapper{
		position: relative !important;
		top: auto !important;
		z-index: auto !important;
		padding: 0 !important;
		background: transparent !important;
	}

	.buscador-estudios-sticky{
		position: relative !important;
		z-index: 20;
		background: rgba(255,255,255,.96) !important;
		-webkit-backdrop-filter: blur(8px);
		backdrop-filter: blur(8px);
		border: 1px solid rgba(0,0,0,.10) !important;
		border-radius: 14px !important;
		box-shadow: 0 6px 22px rgba(0,0,0,.08) !important;
		transition: box-shadow .2s ease, background .2s ease, padding .2s ease;
	}

	/* Estado fijo: ancho completo real, sin margen lateral */
	.buscador-estudios-sticky.uah-search-fixed{
		position: fixed !important;
		top: var(--uah-study-search-top, 66px) !important;
		left: 0 !important;
		right: 0 !important;
		width: 100vw !important;
		max-width: 100vw !important;
		margin: 0 !important;
		transform: none !important;
		z-index: 5050 !important;
		border-left: 0 !important;
		border-right: 0 !important;
		border-radius: 0 !important;
		background: rgba(255,255,255,.97) !important;
		box-shadow: 0 10px 30px rgba(0,0,0,.14) !important;
	}

	/* Compacto pero sin encoger el ancho */
	.buscador-estudios-sticky.uah-search-fixed.is-compact{
		transform: none !important;
		margin: 0 !important;
		padding-top: 8px !important;
		padding-bottom: 8px !important;
		background-color: #f5f5f5 !important;
	}

	.buscador-estudios-sticky.is-compact .g-mb-30{
		margin-bottom: 12px !important;
	}

	.buscador-estudios-sticky.is-compact .g-py-12{
		padding-top: 7px !important;
		padding-bottom: 7px !important;
	}

	.buscador-estudios-sticky.is-compact .g-py-13{
		padding-top: 8px !important;
		padding-bottom: 8px !important;
	}

	.buscador-estudios-sticky.is-compact input,
	.buscador-estudios-sticky.is-compact select,
	.buscador-estudios-sticky.is-compact .dropdown-label{
		font-size: .92rem;
	}

	.uah-search-placeholder{
		display: none;
	}

	.uah-search-placeholder.is-active{
		display: block;
	}

	.buscador-estudios-sticky .dropdown-list{
		z-index: 5100 !important;
	}

	.buscador-estudios-sticky #sugerenciasEstudios{
		z-index: 5200 !important;
	}

	/* En móvil se anula completamente el sticky/fixed */
	@media (max-width: 767px){
		.buscador-sticky-wrapper{
			position: static !important;
			top: auto !important;
			padding: 0 !important;
		}

		.buscador-estudios-sticky,
		.buscador-estudios-sticky.uah-search-fixed,
		.buscador-estudios-sticky.is-compact{
			position: relative !important;
			top: auto !important;
			left: auto !important;
			right: auto !important;
			width: auto !important;
			max-width: none !important;
			transform: none !important;
			margin: 10px 15px 20px !important;
			padding: 14px 12px !important;
			border-radius: 10px !important;
			box-shadow: 0 4px 14px rgba(0,0,0,.06) !important;
		}

		.uah-search-placeholder,
		.uah-search-placeholder.is-active,
		.buscador-placeholder-sticky{
			display: none !important;
			height: 0 !important;
		}

		.buscador-estudios-sticky .g-mb-30{
			margin-bottom: 14px !important;
		}

		.buscador-estudios-sticky .dropdown-label,
		.buscador-estudios-sticky input.form-control{
			height: 42px !important;
			padding-top: 8px !important;
			padding-bottom: 8px !important;
			font-size: 14px !important;
		}

		#buscadorEstudio-reset{
			height: 42px !important;
			width: auto !important;
			padding: 0 18px !important;
		}
	}