		/* Reset básico */
		* {
			margin: 0;
			padding: 0;
			box-sizing: border-box;
		}

		html {
			scroll-behavior: smooth;
			scroll-padding-top: 80px;
			/* Espacio para la barra fija */
		}

		body {
			font-family: 'Open Sans', Helvetia, 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
			padding-top: 70px;
			background-color: #f0f2f5;
			color: #333;
			min-height: 100vh;
		}

		a {
			color: #004f6b !important;
		}

		a:hover {
			text-decoration: none !important;
		}

		a:visited {
			color: #004f6b !important;
		}

		/* ===== BARRA SUPERIOR FIJA - BLANCA ===== */
		.navbar {
			position: fixed;
			top: 0;
			left: 0;
			width: 100%;
			height: 70px;
			background: #ffffff;
			box-shadow: 0 2px 15px rgba(0, 0, 0, 0.1);
			display: flex;
			align-items: center;
			justify-content: space-between;
			padding: 0 20px;
			z-index: 1000;
			transition: all 0.3s ease;
			border-bottom: 2px solid #e8ecf1;
		}

		/* LOGO */
		.logo {
			display: flex;
			align-items: center;
			gap: 10px;
			color: #1a2a6c;
			font-size: 1.5rem;
			font-weight: bold;
			text-decoration: none;
			flex-shrink: 0;
		}

		.logo-icon {
			width: 40px;
			height: 40px;
			background: linear-gradient(135deg, #1a2a6c, #2d4373);
			border-radius: 50%;
			display: flex;
			align-items: center;
			justify-content: center;
			color: white;
			font-size: 1.3rem;
			font-weight: 900;
		}

		.logo span {
			font-size: 1rem;
			font-weight: 300;
			color: #666;
		}

		/* ===== MENÚ DE ESCRITORIO ===== */
		.nav-links {
			display: flex;
			list-style: none;
			gap: 5px;
			align-items: center;
		}

		.nav-links li a {
			color: #444;
			text-decoration: none;
			padding: 8px 14px;
			border-radius: 6px;
			font-size: 0.9rem;
			font-weight: 500;
			transition: all 0.3s ease;
			white-space: nowrap;
		}

		.nav-links li a:hover {
			background: #f0f2f5;
			color: #1a2a6c;
			transform: translateY(-2px);
		}

		.nav-links li a:active {
			transform: scale(0.95);
		}

		/* ===== SELECTOR DE IDIOMA ===== */
		.language-selector {
			display: flex;
			gap: 5px;
			align-items: center;
			margin-left: 10px;
			padding-left: 10px;
			border-left: 2px solid #e8ecf1;
		}

		.lang-btn {
			background: none;
			border: 2px solid transparent;
			padding: 4px 10px;
			border-radius: 4px;
			cursor: pointer;
			font-size: 0.8rem;
			font-weight: 600;
			color: #666;
			transition: all 0.3s ease;
		}

		.lang-btn:hover {
			background: #f0f2f5;
			color: #1a2a6c;
		}

		.lang-btn.active {
			border-color: #1a2a6c;
			color: #1a2a6c;
			background: #eef2f7;
		}

		.lang-btn .flag {
			margin-right: 4px;
		}

		/* ===== BOTÓN HAMBURGUESA (móvil) ===== */
		.hamburger {
			display: none;
			flex-direction: column;
			gap: 5px;
			background: none;
			border: none;
			cursor: pointer;
			padding: 5px;
			z-index: 1001;
		}

		.hamburger span {
			display: block;
			width: 28px;
			height: 3px;
			background: #1a2a6c;
			border-radius: 3px;
			transition: all 0.3s ease;
		}

		.hamburger.active span:nth-child(1) {
			transform: rotate(45deg) translate(5px, 6px);
		}

		.hamburger.active span:nth-child(2) {
			opacity: 0;
		}

		.hamburger.active span:nth-child(3) {
			transform: rotate(-45deg) translate(5px, -6px);
		}

		/* ===== CONTENIDO PRINCIPAL ===== */
		.container {
			max-width: 1200px;
			margin: 0 auto;
			padding: 30px 20px;
		}

		.top {
			background: url(imgs/banner.jpg);
			padding: 40px;
			border-radius: 12px;
			box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
			margin-bottom: 30px;
			background-size: cover;
			background-position: center center;
			width: 100%;
			height: 350px;
			opacity: 1;
			background-repeat: no-repeat;
			align-items: center;
			display: flex;
		}

		.top p {
			max-width: 25%;
			color: white;
			font-style: italic;
			font-family: helvetia;
			font-size: 1.2em;
		}

		.toplogo {
			text-align: center;
		}

		.hero {
			background: white;
			padding: 40px 80px;
			border-radius: 12px;
			margin-top: 30px;
			box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
			margin-bottom: 30px;
		}

		.hero h1 {
			font-size: 16px;
			color: #1a2a6c;
			margin-bottom: 15px;
		}

		.hero p {
			font-size: 1.3rem;
			line-height: 1.8;
			color: #555;
		}

		.sec {
			text-align: center;
			margin-bottom: 25px;
			margin-top: 35px;
		}

		.sec h3 {
			text-align: center;
			color: #f39200;
			font-size: 38px;
			font-weight: normal;
		}

		.cards {
			display: grid;
			grid-template-columns: repeat(auto-fit, minmax(512px, 1fr));
			gap: 25px;
			margin-top: 20px;
		}

		.card {
			background: white;
			padding: 25px;
			border-radius: 10px;
			box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
			transition: transform 0.3s ease;
		}

		.card:hover {
			transform: translateY(-5px);
		}

		.card h3 {
			color: #f39200;
			margin-bottom: 10px;
		}

		.card img {
			width: 512px;
			float: left
		}

		.card p {
			color: #666;
			line-height: 1.6;
			text-align: justify;
		}

		.cards1 {
			display: grid;
			gap: 25px;
			margin-top: 20px;
			grid-template-columns: 1fr;
		}


		.ext {
			display: flex;
			flex-direction: row;
		}

		.exticon {
			width: 64px;
			height: 64px;
			color: #f39200;
			font-size: 48px;
			margin-right: 32px;
			border-style: solid;
			border-color: rgb(223, 223, 223);
			border-radius: 64px;
			border-width: 2px;
			padding: 4px;
		}

		.extcontent {
			display: flex;
			flex-direction: column;
		}

		.extcontent h3 {
			font-weight: 600;
			color: #666;
		}

		.cardimg {
			display: flex;
			align-items: center;
			justify-content: center;
			flex-direction: column;
		}

		.imgqr {
			width: 150px !important;
			height: 150px !important;
			float: none !important;
		}

		.imgstore {
			width: 250px !important;
			height: auto !important;
			float: none !important;
		}

		.listencontainer {
			display: flex;
			flex-direction: row;
			align-items: center;
			justify-content: center;
			flex-wrap: wrap;
		}

		.listen {
			width: 64px !important;
			height: 64px !important;
			float: none !important;
			margin: 4px 12px;
		}

		.divider {
			height: 64px;
		}

		.contact {
			font-size: 18pt;
			font-weight: normal;
			text-align: center;
		}

		.contact2 {
			text-align: center;
		}

		.phone {
			text-align: center !important;
			color: black;
		}

		.twitter {
			font-size: 48px;
			padding: 12px;
			background-color: #00aced;
			color: white;
		}

		.facebook {
			font-size: 48px;
			padding: 12px;
			background-color: #3b5998;
			color: white;
		}

		.linkedin {
			font-size: 48px;
			padding: 12px;
			background-color: #0e76a8;
			color: white;
		}

		.envelope {
			font-size: 48px;
			padding: 12px;
			background-color: #d6c14a;
			color: white;
		}

		.scroll-top {
			border-radius: 4px;
			position: fixed;
			right: 8px;
			bottom: 8px;
			font-size: 32px;
			background: silver;
			width: 48px;
			height: 48px;
			text-align: center;
			color: white !important;
			padding-top: 8px;
		}

		.scroll-top:hover {
			background: linear-gradient(135deg, #2d4373, #1a2a6c);
			transform: translateY(0px) scale(1.05);
			box-shadow: 0 2px 2px rgba(26, 42, 108, 0.5);
		}

		#gototop {
			display: none;
		}

		.on {
			display: inline !important;
		}

		/* ===== RESPONSIVE: TABLET Y MÓVIL ===== */
		@media (max-width: 1224px) {
			.nav-links li a {
				font-size: 0.8rem;
				padding: 6px 10px;
			}

			.language-selector {
				margin-left: 5px;
				padding-left: 5px;
			}

			.lang-btn {
				font-size: 0.7rem;
				padding: 3px 8px;
			}
		}

		@media (max-width: 1024px) {
			body {
				padding-top: 60px;
			}

			.navbar {
				height: 60px;
				padding: 0 15px;
			}

			.logo {
				font-size: 1.2rem;
			}

			.logo-icon {
				width: 34px;
				height: 34px;
				font-size: 1rem;
			}

			.language-selector {
				border-left: none;
				margin-left: 0;
				padding-left: 0;
			}

			.lang-btn {
				font-size: 0.7rem;
				padding: 3px 6px;
			}

			.lang-btn .flag {
				margin-right: 2px;
			}

			/* Ocultar menú en móvil por defecto */
			.nav-links {
				position: fixed;
				top: 60px;
				left: 0;
				width: 100%;
				background: #ffffff;
				flex-direction: column;
				padding: 20px 0;
				gap: 2px;
				transform: translateY(-150%);
				transition: transform 0.4s ease;
				box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15);
				border-top: 2px solid #e8ecf1;
			}

			.nav-links.open {
				transform: translateY(0);
			}

			.nav-links li {
				width: 100%;
				text-align: center;
			}

			.nav-links li a {
				display: block;
				padding: 14px 20px;
				font-size: 1rem;
				border-radius: 0;
				border-bottom: 1px solid #f0f2f5;
				color: #333;
			}

			.nav-links li a:hover {
				background: #f0f2f5;
				color: #1a2a6c;
				transform: none;
			}

			/* Mostrar hamburguesa en móvil */
			.hamburger {
				display: flex;
			}

			.hero h1 {
				font-size: 1.8rem;
			}

			.hero {
				padding: 25px;
			}

			.top p {
				max-width: 75%;
			}

			.cards {
				grid-template-columns: 1fr;
			}
		}

		@media (max-width: 480px) {
			.logo span {
				display: none;
			}

			.hero h1 {
				font-size: 1.5rem;
			}

			.container {
				padding: 15px;
			}

			.lang-btn {
				font-size: 0.6rem;
				padding: 2px 5px;
			}
		}