/**** BLOQUE: VARIABLES (var(--name)) ****/
:root {
	
	/** Variables de fuentes **/	
	
		/* --Familia-- */
		--font-primary: 'Amaranth',sans-serif;
		--font-secondary: 'Inter',sans-serif;
	
		/* --Títulos-- */
		--title-h1: clamp(2rem, 4vw + 0.9375rem, 4.375rem); /* 40px–55px–70px*/
		--title-h2: clamp(1.75rem, 3vw + 0.5rem, 3rem); /* 28px–40px–48px */
		--title-h3: clamp(1.25rem, 1.2vw + 0.925rem, 1.75rem); /* 20px–28px */
		--title-h4: clamp(1.125rem, 1vw + 0.77rem, 1.25rem); /* 18px–20px */
		--title-h5: clamp(1rem, 2vw + 0.25rem, 1.125rem); /* 16px–18px */
		/* --Títulos por función-- */
		--title-h2-blog: clamp(1.75rem, 3vw + 0.5rem, 2.5rem); /* min 28px – fluid (3vw + 0.5rem) – max 40px */
	
		/* --Textos Principales-- */
		--text-4xl: clamp(1.5rem, 3vw + 0.25rem, 2.5rem); /* 24px–32px–40px */
		--text-3xl: clamp(1.25rem, 2vw + 0.25rem, 2rem); /* 20px–24px–32px */
		--text-2xl: clamp(1.25rem, 1vw + 0.5rem, 1.5rem); /* 20px–24px–24px */
		--text-xl: 1.25rem; /* 20px fijo */
		--text-l: clamp(1rem, 1vw + 0.25rem, 1.125rem); /* 16px–18px–18px */
		--text-m: clamp(0.875rem, 0.6vw + 0.25rem, 1rem); /* 14px–16px–16px */
		--text-s: 0.875rem; /* 14px */
		--text-xs: 0.75rem; /* 12px */
		--text-xxs: 0.625rem; /* 10px */
		--text-btn-l: 13px;
	
		/* --Textos Alternativos-- */
		--text-claim: clamp(1.5rem, 2vw + 1rem, 2rem); /* 24px–32px–32px */
		/*Bento*/
		--title-card-bento-m: clamp(1.5rem, 2vw + 0.5rem, 2rem); /* 24px–32px */
		--title-card-bento-s: clamp(1.25rem, 1.2vw + 0.925rem, 1.75rem); /* 20px–28px */
		/*Campus*/
		--text-card-campus: clamp(1.5rem, 2vw + 0.5rem, 2rem); /* 24px–32px */
		/*Course*/
		--title-card-course: clamp(1rem, 1vw + 0.25rem, 1.125rem); /* 16px–18px–18px */
		--text-card-course: 0.875rem; /* 14px */
	
		/* --Peso-- */
		--font-black: 900;
		--font-bold: 700;
		--font-semibold: 600;
		--font-medium: 500;
		--font-regular: 400;
		--font-light: 300;
	
		/* --Altura de línea-- */
		--line-2xl: 2;
		--line-xl: 1.5;
		--line-l: clamp(1.25, 1.29, 1.33);
		--line-m: clamp(1.1, 1.17, 1.25);
		--line-s: 1;
		--line-xs: 0.9;
	
	/** Variables de colores **/
	
		/* --Marca-- */
		--color-primary: #32567E; /*Azul oscuro*/
		--color-primary-rgb: 50, 86, 126; /*Azul oscuro*/
		--color-secondary: #D8E1EB; /*Azul claro*/
		--color-secondary-rgb: 216, 225, 235; /*Azul claro*/
	
		/* --Neutrales-- */
		--color-full-black: #000000; /* Negro puro */
		--color-full-black-rgb: 0, 0, 0;
		--color-black: #161616; /* Negro suave */
		--color-black-rgb: 22, 22, 22;
		--color-full-white: #ffffff; /* Blanco puro */
		--color-full-white-rgb: 255, 255, 255;
		--color-white: #F8F8FA; /* Blanco roto */
		--color-white-rgb: 248, 248, 250;
		--color-white-alt: #F0F0F0; /* Blanco grisáceo */
		--color-white-alt-rgb: 240, 240, 240;
		--color-gray-200: rgba(0,0,0,0.2); /* Gris 200 */
	
		/* --Otras utilidades-- */
		--color-accent-on-light: var(--color-primary);
		--color-accent-on-light-rgb: var(--color-primary-rgb);
		--color-accent-on-dark: var(--color-white);
		--color-accent-on-dark-rgb: var(--color-white-rgb);
		--color-transparent: rgba(0,0,0,0.01);
	

	
	/** Variables de espacios y medidas **/
	
		/* Scroll */
		--scroll-padding-top: clamp(125px, 7.5vw + 100px, 225px); /* 125px en mobile – 225px en desktop */
	
		/* None */
		--none: 0;
	
		/* Iconos */
		--icon-3xl: clamp(2rem, 2.5vw + 0.5rem, 2.5rem); /* 32px – fluido – 40px */
		--icon-2xl: clamp(1.375rem, 2vw + 0.25rem, 2rem);    /* 22px–32px */
		--icon-xl: clamp(1.375rem, 1.5vw + 0.25rem, 1.75rem); /* 22px–28px */
		--icon-l: 1.375rem; /* 22px */
		--icon-m: clamp(1rem, 1.3vw, 1.125rem); /* 16px a 18px */
		--icon-s: 0.875rem; /* 14px */
	
		/* Alturas */
			/* -- Logos -- */
			--logo-height-s: clamp(2.5rem, 4vw, 3.125rem); /* 40px–50px */
			--logo-height-m: clamp(2.5rem, 5vw, 3.75rem); /* 40px–60px */
			--logo-height-l: clamp(5rem, 8vw, 6.25rem); /* 80px–100px */
			/*-- Contenedor --*/
			--container-height-hero: 45vh;
			/*-- Imágenes --*/			
			--image-height-hero: 70vh;
			--image-height-slider: clamp(28vh, 13vh + 22vw, 90vh);
			--image-height-l: clamp(175px, calc((300 - 175) / (768 - 320) * (100vw - 320px) + 175px), 500px);
			--image-height-m: clamp(175px, calc((300 - 175) / (768 - 320) * (100vw - 320px) + 175px), 300px);
			--image-height-s: clamp(175px, calc((200 - 175) / (768 - 320) * (100vw - 320px) + 175px), 200px);
			/*-- Inputs --*/
			--input-height: 44px; /* field, search, select y botón de limpiar */
	
		/* Opacidad */
		--opacity-0: 0;
		--opacity-5: 0.05;
		--opacity-10: 0.1;
		--opacity-15: 0.15;
		--opacity-20: 0.2;
		--opacity-25: 0.25;
		--opacity-30: 0.3;
		--opacity-35: 0.35;
		--opacity-40: 0.4;
		--opacity-45: 0.45;
		--opacity-50: 0.5;
		--opacity-55: 0.55;
		--opacity-60: 0.6;
		--opacity-65: 0.65;
		--opacity-70: 0.7;
		--opacity-75: 0.75;
		--opacity-80: 0.8;
		--opacity-85: 0.85;
		--opacity-90: 0.9;
		--opacity-95: 0.95;
		--opacity-100: 1;
	
		/* Peso de borde */
		--border-l: 4px;
		--border-m: 2px;
		--border-s: 1px;
		--border-xs: 0.5px;
	
		/* Radios */
		--radius-full: 999px;
		--radius-2xl: clamp(1.5rem, 1.042vw + 1rem, 3rem); /* 24px–fluido–48px */
		--radius-xl:  clamp(1.5rem, 2vw + 0.5rem, 2rem);  /* 24px–fluido–32px */
		--radius-l: clamp(1rem, 1.5vw, 1.5rem); /* 16px-24px */
		--radius-m: 1rem; /* 16px */
		--radius-s: 0.75rem; /* 12px */	
	
		/* Espaciados internos */	
			/* --Paddings de secciones-- */
			--section-padding-x: 0.75rem; /*Usar en secciones principales*/
			--section-padding-y: 1.5rem; /*Usar en secciones principales*/
			/* --Paddings para sección de single post del blog -- */
			--blog-padding-x: 0.75rem; /*Usar en secciones principales*/
			--blog-padding-y: var(--section-padding-y);
			/* --Paddings de Botones-- */
			--btn-padding-x-xl: 0.75rem; /* 12px */
			--btn-padding-y-xl: 1.25rem; /* 20px */
			--btn-padding-x-l: 1rem; /* 16px */
			--btn-padding-y-l: 1rem; /* 16px */
			--btn-padding-x-m: 1.75rem; /* 28px */
			--btn-padding-y-m: 0.875rem; /* 14px */
			--btn-padding-x-s: 1rem; /* 16px */
			--btn-padding-y-s: 0.75rem; /* 12px */
			--btn-padding-x-xs: 0.875rem; /* 14px */
			--btn-padding-y-xs: 0.625rem; /* 10px */
			--btn-padding-x-xxs: 0.625rem; /* 10px */
			--btn-padding-y-xxs: 0.375rem; /* 6px */
	
		/* Espaciados mixtos */	
			/* --Gaps y paddings de precisión-- */
			--space-7xl: clamp(24px, 6vw, 100px); /* min 24px – fluido – max 100px */
			--space-6xl: clamp(1.5rem, 6vw, 4rem); /* 24px – fluido – 64px */
			--space-5xl: clamp(1rem, calc((56 - 16) / (1440 - 320) * (100vw - 320px) + 1rem), 3.5rem); /* 16px–fluido–56px */
			--space-4xl: clamp(1rem, calc((48 - 24) / (1920 - 1336) * (100vw - 1336px) + 1rem), 3rem); /* 16px-24px-48px */
			--space-3xl: clamp(1rem, 4.2vw + 0.1rem, 2.5rem); /* 16px–32px–40px */
			--space-2xl: clamp(1rem, 2vw + 0.5rem, 2rem); /* 16px–24px–32px */
			--space-xl: clamp(1rem, 2vw, 1.5rem); /* 16px–24px */
			--space-l: clamp(0.75rem, 1vw, 1rem); /* 12px – fluido – 16px */
			--space-m: 0.5rem; /* 8px */
			--space-s: 0.375rem; /* 6px */
			--space-xs: 0.25rem; /* 4px */
			--space-xxs: 0.125rem; /* 2px */			
	
	/* Variables de sombras */
	/* --Botones-- */
	--button-shadow-hover: -2px 2px 8px 0px rgba(var(--color-black-rgb), 0.2);
	--button-shadow-pressed: -2px 2px 6px 0px rgba(var(--color-black-rgb), 0.2) inset;
	/* --Contenedores (secciones y tarjetas)-- */
	--shadow-section: 0 6px 8px rgba(var(--color-black-rgb), var(--opacity-15)); 
	--shadow-card: 0 2px 6px rgba(var(--color-black-rgb), var(--opacity-10)); 
	--shadow-card-hover: 0 6px 12px rgba(var(--color-black-rgb), var(--opacity-25));
	/* --Contenedores (inputs)-- */
	--shadow-input: 0 0 10px rgba(var(--color-primary-rgb), var(--opacity-20)); 
	
	/** Overlays & Gradients **/
	/* Versiones en negro */
	--gradient-black-bottom-medium: linear-gradient(to bottom, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.85) 100%);
	--gradient-black-bottom-hard: linear-gradient(to bottom, rgba(0, 0, 0, 0.20) 0%, rgba(0, 0, 0, 0.85) 100%);	
	/* Versiones en blanco */
	--gradient-white-bottom-medium: linear-gradient(to bottom, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 0.85) 100%);
	--gradient-white-bottom-hard: linear-gradient(to bottom, rgba(255, 255, 255, 0) 30%, rgba(255, 255, 255, 0.85) 100%);
	/* Por función */
  	--hero-gradient: linear-gradient(192deg, rgba(var(--color-full-black-rgb), 0.1) 30%, rgba(var(--color-full-black-rgb), 0.8) 100%);
}
@media screen and (min-width:480px){
	/** Mobile **/
	:root { 
		--section-padding-x: clamp(1rem, 6vw, 4.5rem);
		--section-padding-y: clamp(1.5rem, 3vw, 2rem);
		--blog-padding-x: clamp(1rem, calc(8vw + 2rem), 12.5rem);
		--text-btn-l: clamp(0.8125rem, calc(1vw + 0.25rem), 1.125rem);
	  }
}
@media screen and (min-width:768px){
	/** Tablet **/
	:root { 
		--btn-padding-x-xl: 2rem; /* 32px */
		--btn-padding-y-l: 1.125rem; /* 18px */
		--btn-padding-x-l: 1.75rem; /* 28px */
	  }
}
@media (min-width: 1024px) {
	:root {
		--container-height-hero: 72vh;
	}
}
@media (min-width: 1440px) {
	:root {
		--container-height-hero: 70vh;
	}
}
/* Actualización 21/09/2025 21:49 */