/*****************************************************************************/
/* About page                                                                */
/*****************************************************************************/

.about-content
{
	max-width: 72ch;
	margin: 0 auto;
	padding: 3rem 0 2.5rem;
}

.about-content h1,
.about-content h2
{
	font-family: var(--font-serif);
	font-weight: 600;
	line-height: 1.25;
	color: var(--text);
	margin-top: 2.25em;
	margin-bottom: 0.6em;
}

.about-content h1
{
	font-size: 2.25rem;
	letter-spacing: -0.02em;
	margin-top: 0;
	padding-bottom: 0.75rem;
	border-bottom: 2px solid var(--border);
}

.about-content h2
{
	font-size: 1.45rem;
	padding-bottom: 0.4rem;
	border-bottom: 1px solid var(--border);
}

.about-content p 
{
	margin-bottom: 1.2rem;
}

/*****************************************************************************/
/* CTA (call to action)                                                      */
/*****************************************************************************/

.about-cta
{
	display: flex;
	align-items: center;
	gap: 1.5rem;
	margin-top: 0.5rem;
	color: var(--text-muted);
	font-size: 0.95rem;
}

.about-cta a
{
	font-weight: 600;
	color: var(--accent);
	text-decoration: none;
	border-bottom: 1px solid var(--accent-dim);
	transition: border-color 0.15s;
	white-space: nowrap;
}

.about-cta a:hover
{
	border-color: var(--accent);
}

/*****************************************************************************/
/* Sections                                                                  */
/*****************************************************************************/

.section-header
{
	margin-bottom: 1.5rem;
}

.section-label
{
	font-size: 0.72rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--text-faint);
	margin-bottom: 0.3rem;
}

.section-desc
{
	font-size: 0.9rem;
	color: var(--text-muted);
	margin: 0;
}

/*****************************************************************************/
/* Skills grid                                                               */
/*****************************************************************************/

.skills-section
{
	padding: 2.5rem 0;
	border-top: 1px solid var(--border);
}

.skills-grid
{
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 1rem;
}

.skill-item
{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.4rem;
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: var(--radius-lg);
	padding: 1.25rem 1rem;
	box-shadow: var(--shadow-sm);
	transition: box-shadow 0.15s, border-color 0.15s;
}

.skill-item img
{
	width: 40px;
	height: 40px;
	object-fit: contain;
	border: none;
	border-radius: 0;
	margin: 0;
	box-shadow: none;
}

.skill-name
{
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--text);
}

.skill-label
{
	font-size: 0.72rem;
	color: var(--text-faint);
	text-align: center;
}

/*****************************************************************************/
/* Responsive                                                                */
/*****************************************************************************/

@media (max-width: 640px)
{
	.skills-grid
	{
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (max-width: 400px)
{
	.skills-grid
	{
		grid-template-columns: repeat(2, 1fr);
	}
}
