/* November 2026: readable navigation and a faster route to the page content. */
.jb-link, .alu-link, .alu-inline-link {
	min-height: 44px;
	text-underline-offset: 0.22em;
}
:where(a, button, summary):focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 5px;
}
.hero__copy { min-width: 0; }
.hero__title { text-wrap: balance; }
.brand .brand__claim { display: block; margin: 8px 0 0; font-size: 9px; white-space: nowrap; }
.jb-topic-links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 20px;
}
.jb-topic-links a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 10px 14px;
	border: 1px solid currentColor;
	font-size: 14px;
	text-decoration: none;
}
.jb-topic-links a:hover { color: var(--jb-red); }
.hero.glossary-single__hero {
	min-height: 450px;
	grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
}
.glossary-single__hero .hero__panel { padding-top: 140px; padding-bottom: 58px; }
.glossary-single__hero .hero__title {
	max-width: none;
	font-size: clamp(40px, 4.8vw, 76px);
	line-height: 1.03;
	hyphens: auto;
	overflow-wrap: break-word;
}
.glossary-single__hero .hero__text { max-width: 52ch; font-size: clamp(17px, 1.5vw, 21px); }
.glossary-single__hero .hero__image { min-height: 0; }
.glossary-single__hero .hero__image picture { display: block; height: 100%; }
.glossary-single__hero .hero__image img { min-height: 0; max-height: 450px; object-fit: cover; }
.single-team .tlp-member-title { font-size: clamp(30px, 4vw, 58px); line-height: 1.08; }
.single-team .rt-team-container .tlp-position { color: var(--jb-hero-muted); }
.single-team .site-main { padding-top: 140px; padding-bottom: 64px; }
.jb-team-profile { padding: 150px var(--jb-pad) 70px; }

@media (min-width: 1101px) {
	.site-header { grid-template-columns: minmax(160px, 18vw) minmax(0, 1fr); gap: 18px; }
	.icon-nav { max-width: 1040px; }
	.icon-nav ul, .icon-nav__list { display: grid; grid-template-columns: repeat(11, minmax(0, 1fr)); gap: 3px; }
	.icon-nav a, .icon-nav__link { width: 100%; min-width: 0; min-height: 58px; }
	.icon-nav a > .nav-label { max-width: none; font-size: clamp(10px, .78vw, 12px); opacity: 1; line-height: 1.15; }
}

@media (max-width: 1100px) {
	.hero { grid-template-columns: minmax(0, 1fr); }
	.hero .hero__panel { order: 0; padding-top: 140px; padding-bottom: 38px; }
	.hero .hero__image { order: 1; min-height: 0; padding-top: 0; }
	.hero .hero__image img { min-height: 0; width: 100%; height: 360px; max-height: none; object-fit: cover; }
	.hero .hero__image::before { background: linear-gradient(180deg, rgba(12,12,10,.18), transparent 45%); }
	.hero.glossary-single__hero { min-height: 0; grid-template-columns: minmax(0, 1fr); }
	.glossary-single__hero .hero__image { display: none; }
	.glossary-single__hero .hero__panel { padding-bottom: 48px; }
}

@media (max-width: 700px) {
	.hero .hero__panel { padding: 120px 22px 32px; }
	.hero .hero__image img { height: 240px; }
	.home .hero__panel { display: flex; flex-direction: column; gap: 24px; }
	.home .hero__copy { order: 0; }
	.home .social-rail { order: 1; border-bottom: 0; border-top: 1px solid var(--jb-hero-line); padding-top: 18px; padding-bottom: 0; }
	.hero .hero__title, .hero--subpage .hero__title, .standard-post .content-hero .hero__title {
		max-width: none;
		font-size: clamp(36px, 10.8vw, 65px);
		line-height: 1.03;
		hyphens: auto;
		overflow-wrap: break-word;
		word-break: normal;
	}
	.home .hero__title { font-size: clamp(34px, 10.2vw, 58px); }
	.glossary-single__hero .hero__title { font-size: clamp(32px, 8.4vw, 49px); }
	.glossary-single__hero .hero__panel { padding-bottom: 34px; }
	.glossary-single .glossary-single__rail {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		gap: 0 22px;
		position: static;
		margin-bottom: 32px;
	}
	.glossary-single__rail > .glossary-single__rail-title,
	.glossary-single__rail > nav { grid-column: 1 / -1; }
	.glossary-single__rail > dl { display: contents; }
	.glossary-single__rail > nav a { min-height: 44px; align-items: center; }
	.hero .hero__text { max-width: 48ch; line-height: 1.55; }
	.collection-hero .hero__panel, .content-hero .hero__panel { padding-top: 140px; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { scroll-behavior: auto !important; }
	.icon-nav, .nav-label, .project-card__image, .team-card__media img { transition: none !important; }
}
