/* OSNND Articles — archive, single, and shared cards */

body.osnnd-article-page,
body.osnnd-single-article-page {
	background: #ffffff;
}

.osnnd-app--articles {
	background: #ffffff;
}

.osnnd-articles-main {
	background: #ffffff;
}

/* ---- Shared cards ---- */
.osnnd-article-card__link {
	display: block;
	text-decoration: none;
	color: inherit;
}

.osnnd-article-card__media {
	border-radius: 12px;
	overflow: hidden;
	background: var(--color-canvas-soft);
}

.osnnd-article-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.osnnd-article-card__placeholder {
	width: 100%;
	aspect-ratio: 4 / 3;
	background: linear-gradient(135deg, var(--color-canvas-soft), var(--color-canvas-hover));
}

.osnnd-article-card__category {
	margin: 16px 0 8px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	color: var(--color-body-mid);
}

.osnnd-article-card__title {
	margin: 0;
	font-family: var(--font-display);
	font-size: clamp(18px, 2vw, 22px);
	font-weight: 600;
	line-height: 1.25;
	color: var(--color-ink);
}

.osnnd-article-card__link:hover .osnnd-article-card__title {
	color: var(--color-link-hover, #205ab8);
}

/* ---- Archive ---- */
.osnnd-articles-archive {
	padding: clamp(48px, 6vw, 88px) 0 clamp(72px, 8vw, 104px);
}

.osnnd-articles-archive__head {
	display: flex;
	flex-direction: column;
	gap: 24px;
	margin-bottom: 48px;
}

.osnnd-articles-archive__head-top {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 32px;
	align-items: end;
}

.osnnd-articles-archive__title {
	margin: 0;
	font-family: var(--font-display);
	font-size: 32px;
	font-weight: 600;
	line-height: 1.05;
	color: var(--color-ink);
}

.osnnd-articles-archive__intro {
	margin: 0;
	width: 100%;
	max-width: none;
	color: var(--color-body);
}

.osnnd-articles-archive__filters {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
}

.osnnd-articles-filter {
	display: inline-flex;
	align-items: center;
	padding: 10px 16px;
	border: 1px solid color-mix(in oklab, var(--color-ink) 14%, transparent);
	border-radius: 8px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-decoration: none;
	color: var(--color-ink);
	background: #ffffff;
	transition: background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);
}

.osnnd-articles-filter:hover,
.osnnd-articles-filter.is-active {
	border-color: var(--color-ink);
	background: var(--color-canvas-soft);
}

.osnnd-articles-archive__featured {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
	margin-bottom: 28px;
}

.osnnd-article-card--featured .osnnd-article-card__media img,
.osnnd-article-card--featured .osnnd-article-card__placeholder {
	aspect-ratio: 4 / 3;
	min-height: 0;
}

.osnnd-article-card--featured .osnnd-article-card__title {
	font-size: clamp(18px, 2vw, 20px);
}

.osnnd-articles-archive__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
}

.osnnd-article-card--grid .osnnd-article-card__media img,
.osnnd-article-card--grid .osnnd-article-card__placeholder {
	aspect-ratio: 4 / 3;
}

.osnnd-articles-archive__pagination {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 56px;
}

.osnnd-articles-page-btn {
	display: inline-flex;
	align-items: center;
	padding: 10px 18px;
	border: 1px solid color-mix(in oklab, var(--color-ink) 14%, transparent);
	border-radius: 8px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-decoration: none;
	color: var(--color-ink);
	background: #ffffff;
}

.osnnd-articles-page-btn.is-disabled {
	opacity: 0.45;
	pointer-events: none;
}

.osnnd-articles-empty {
	color: var(--color-body);
	font-size: 18px;
}

/* ---- Single article ---- */
.osnnd-article-single {
	padding: clamp(40px, 5vw, 72px) 0 clamp(72px, 8vw, 104px);
}

.osnnd-article-single__hero {
	text-align: center;
	max-width: 820px;
	margin: 0 auto 40px;
}

.osnnd-article-single__date {
	margin: 0 0 12px;
	font-size: 14px;
	color: var(--color-body-mid);
}

.osnnd-article-single__title {
	margin: 0;
	font-family: var(--font-display);
	font-size: clamp(28px, 4vw, 46px);
	font-weight: 600;
	line-height: 1.08;
	color: var(--color-ink);
}

.osnnd-article-single__lede {
	margin: 18px auto 0;
	max-width: 680px;
	font-size: 20px;
	line-height: 1.55;
	color: var(--color-body);
}

.osnnd-article-single__media {
	margin: 0 0 48px;
}

.osnnd-article-single__image {
	display: block;
	width: 100%;
	max-height: 520px;
	object-fit: cover;
}

.osnnd-article-single__layout {
	display: grid;
	grid-template-columns: 120px minmax(0, 1fr) 280px;
	gap: 48px;
	align-items: start;
}

.osnnd-article-single__share-label,
.osnnd-article-single__box-label {
	display: block;
	margin-bottom: 16px;
	color: var(--color-body-mid);
}

.osnnd-article-share {
	display: grid;
	gap: 10px;
}

.osnnd-article-share__btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--color-body);
	font: inherit;
	font-size: 14px;
	text-align: left;
	text-decoration: none;
	cursor: pointer;
	transition: color var(--dur-fast) var(--ease-out);
}

.osnnd-article-share__btn:hover,
.osnnd-article-share__btn:focus-visible {
	color: var(--color-link-hover, #205ab8);
}

.osnnd-article-share__btn.is-copied {
	color: var(--color-primary);
}

.osnnd-article-share__icon {
	display: inline-block;
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	background: currentColor;
	mask-size: contain;
	mask-repeat: no-repeat;
	mask-position: center;
	-webkit-mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
}

.osnnd-article-share__icon--linkedin {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4.98 3.5C4.98 4.88 3.86 6 2.5 6S0 4.88 0 3.5 1.12 1 2.5 1s2.48 1.12 2.48 2.5zM.2 8.2h4.6V23.8H.2V8.2zm7.3 0h4.4v2.1h.1c.6-1.1 2.1-2.3 4.3-2.3 4.6 0 5.5 3 5.5 6.9v9.1h-4.6v-8.1c0-1.9 0-4.3-2.6-4.3s-3 2.1-3 4.2v8.2H7.5V8.2z'/%3E%3C/svg%3E");
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4.98 3.5C4.98 4.88 3.86 6 2.5 6S0 4.88 0 3.5 1.12 1 2.5 1s2.48 1.12 2.48 2.5zM.2 8.2h4.6V23.8H.2V8.2zm7.3 0h4.4v2.1h.1c.6-1.1 2.1-2.3 4.3-2.3 4.6 0 5.5 3 5.5 6.9v9.1h-4.6v-8.1c0-1.9 0-4.3-2.6-4.3s-3 2.1-3 4.2v8.2H7.5V8.2z'/%3E%3C/svg%3E");
}

.osnnd-article-share__icon--facebook {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M13.5 22v-8h2.7l.4-3.2h-3.1V8.5c0-.9.3-1.6 1.6-1.6h1.7V4c-.3 0-1.4-.1-2.7-.1-2.7 0-4.5 1.6-4.5 4.7V10H7.8v3.2h2.8v8h2.9z'/%3E%3C/svg%3E");
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M13.5 22v-8h2.7l.4-3.2h-3.1V8.5c0-.9.3-1.6 1.6-1.6h1.7V4c-.3 0-1.4-.1-2.7-.1-2.7 0-4.5 1.6-4.5 4.7V10H7.8v3.2h2.8v8h2.9z'/%3E%3C/svg%3E");
}

.osnnd-article-share__icon--x {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M17.3 3H20l-6.2 7.1L21 21h-5.5l-4.3-5.6L6.2 21H3.5l6.6-7.6L3 3h5.6l3.9 5.2L17.3 3zm-1.9 16.2h1.5L8.8 4.7H7.2l8.2 14.5z'/%3E%3C/svg%3E");
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M17.3 3H20l-6.2 7.1L21 21h-5.5l-4.3-5.6L6.2 21H3.5l6.6-7.6L3 3h5.6l3.9 5.2L17.3 3zm-1.9 16.2h1.5L8.8 4.7H7.2l8.2 14.5z'/%3E%3C/svg%3E");
}

.osnnd-article-share__icon--email {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 4h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2zm0 2 8 5 8-5'/%3E%3C/svg%3E");
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 4h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2zm0 2 8 5 8-5'/%3E%3C/svg%3E");
}

.osnnd-article-share__icon--link {
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10 13a5 5 0 0 1 0-7l1-1a5 5 0 0 1 7 7l-1 1M14 11a5 5 0 0 1 0 7l-1 1a5 5 0 0 1-7-7l1-1'/%3E%3C/svg%3E");
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10 13a5 5 0 0 1 0-7l1-1a5 5 0 0 1 7 7l-1 1M14 11a5 5 0 0 1 0 7l-1 1a5 5 0 0 1-7-7l1-1'/%3E%3C/svg%3E");
}

.osnnd-article-share__text {
	line-height: 1.35;
}

.osnnd-article-single__content {
	font-size: 18px;
	line-height: 1.75;
	color: var(--color-ink);
}

.osnnd-article-single__content > :first-child {
	margin-top: 0;
}

.osnnd-article-single__content h2 {
	margin: 2em 0 0.75em;
	font-size: clamp(24px, 3vw, 32px);
	line-height: 1.2;
}

.osnnd-article-single__content h3 {
	margin: 1.6em 0 0.6em;
	font-size: 22px;
}

.osnnd-article-single__content p {
	margin: 0 0 1.25em;
}

.osnnd-article-single__content a {
	color: var(--color-primary);
}

.osnnd-article-single__content a:hover {
	color: var(--color-link-hover, #205ab8);
}

.osnnd-article-single__sidebar {
	display: grid;
	gap: 20px;
}

.osnnd-article-single__box {
	padding: 24px;
	border-radius: 12px;
	background: var(--color-canvas-soft);
}

.osnnd-article-single__meta {
	margin: 0;
	display: grid;
	gap: 14px;
}

.osnnd-article-single__meta div {
	display: grid;
	gap: 4px;
}

.osnnd-article-single__meta dt {
	margin: 0;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--color-body-mid);
}

.osnnd-article-single__meta dd {
	margin: 0;
	font-size: 15px;
	color: var(--color-ink);
}

.osnnd-article-single__author {
	display: flex;
	gap: 12px;
	align-items: center;
}

.osnnd-article-single__author-avatar {
	width: 44px;
	height: 44px;
	border-radius: 9999px;
	background: var(--color-ink);
	color: var(--color-on-primary);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	font-weight: 700;
}

.osnnd-article-single__author-name {
	font-size: 16px;
	font-weight: 600;
	color: var(--color-ink);
}

.osnnd-article-single__back {
	display: inline-flex;
	margin-top: 48px;
	font-size: 14px;
	font-weight: 600;
	color: var(--color-primary);
	text-decoration: none;
}

.osnnd-article-single__back:hover {
	color: var(--color-link-hover, #205ab8);
	text-decoration: underline;
}

@media (min-width: 1001px) {
	.osnnd-article-single__title {
		font-size: 46px;
	}

	.osnnd-article-card--grid .osnnd-article-card__title,
	.osnnd-article-card--featured .osnnd-article-card__title {
		font-size: 20px;
	}
}

@media (max-width: 1000px) {
	.osnnd-articles-archive__head-top {
		grid-template-columns: 1fr;
	}

	.osnnd-articles-archive__filters {
		justify-content: flex-start;
	}

	.osnnd-articles-archive__featured,
	.osnnd-articles-archive__grid {
		grid-template-columns: 1fr;
	}

	.osnnd-article-single__layout {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 700px) {
	.osnnd-articles-archive__featured {
		grid-template-columns: 1fr;
	}
}
