/* LBX refinements — layered on top of porg.css, preserves the original style */

/* CJK-friendly typography: keep Helvetica for Latin, fall back to system CJK fonts for Chinese */
body,
h1, h2, h3, h4, h5, h6,
article.content p,
.tile p,
.block p,
.list-entry p {
	font-family: "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB",
		"Microsoft YaHei", "微软雅黑", sans-serif;
}

/* Slightly tighter line-height on Chinese paragraphs for readability */
:lang(zh-CN) p,
:lang(zh-CN) .tile p {
	line-height: 1.7;
}

/* The original CSS labels every tile with a "Post" / "Article" / "FAQ" tag in
   the corner via :before. That made sense for a publishing site; on LBX it
   reads as clutter. Hide the auto-labels on the new pages. */
.recent-entries-list .tile .top:before,
.featured-entries-list .list-entry:before {
	content: "" !important;
	display: none !important;
}

/* The entire featured-entries card is an anchor now — keep porg.css's
   data-collection top-border colours, but reset the link's text colour and
   give the whole tile a visible hover state. */
.featured-entries-list a.list-entry {
	display: block;
	padding: 1.25rem 0 .5rem;
	text-decoration: none;
	color: inherit;
	transition: transform 180ms ease, box-shadow 180ms ease;
}
.featured-entries-list a.list-entry:hover,
.featured-entries-list a.list-entry:focus {
	text-decoration: none;
	transform: translateY(-2px);
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.06);
}
.featured-entries-list a.list-entry h3 {
	color: #111;
	margin-bottom: .5rem;
}
.featured-entries-list a.list-entry p {
	margin: .25rem 0 0;
	font-size: .95rem;
	line-height: 1.55;
	font-weight: 300;
	color: #333;
}

/* Slightly more breathable intro on the home + competition pages */
.home .intro-content header h1,
.audience .intro-content header h1,
.collection .intro-content header h1 {
	font-size: 2.75rem;
	line-height: 1.1;
	letter-spacing: -.02em;
}
.home .intro-content article,
.audience .intro-content article,
.collection .intro-content article {
	font-size: 1.125rem;
	line-height: 1.6;
	font-weight: 300;
	color: #2a2a2a;
}

/* Section headings sit closer to the cards below them */
.recent-entries-list h2 {
	font-size: 1.65rem;
	margin-top: 1.5rem;
	margin-bottom: 1rem;
	letter-spacing: -.01em;
}

/* Subtle hover on tiles — the original had none */
.recent-entries-list .tile {
	transition: transform 180ms ease, box-shadow 180ms ease;
}
.recent-entries-list .tile:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.06);
}

/* Article-page emphasis runs (used heavily on About / Apply / Schedule) */
section.article-no-image span.addspan {
	display: inline-block;
	margin-top: .25rem;
	font-weight: 700;
	color: #1a1a1a;
	letter-spacing: -.005em;
}

/* CTA buttons. Two variants — primary (filled red) and secondary (outline). */
a.cta-link {
	display: inline-block;
	padding: .65rem 1.1rem;
	border: 1px solid #1a1a1a;
	color: #1a1a1a;
	background: transparent;
	text-decoration: none;
	font-weight: 600;
	transition: background 160ms ease, color 160ms ease, border-color 160ms ease;
}
a.cta-link:hover,
a.cta-link:focus {
	background: #1a1a1a;
	color: #fff;
	text-decoration: none;
}
a.cta-link.cta-primary {
	background: #E54028;
	border-color: #E54028;
	color: #fff;
}
a.cta-link.cta-primary:hover,
a.cta-link.cta-primary:focus {
	background: #c63420;
	border-color: #c63420;
	color: #fff;
}
a.cta-link.cta-secondary {
	background: transparent;
	border-color: #1a1a1a;
	color: #1a1a1a;
}

/* Hero CTA row — used on the homepage's intro-content AND inside article-page
   headers. One rule covers both contexts. */
.intro-cta {
	margin-top: 1.5rem;
	margin-bottom: 0;
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
}
.intro-cta a.cta-link {
	margin-right: 0;
}

/* On article pages the lead paragraph sits in the page header; the CTA goes
   directly under it with a hair more breathing room. */
section.article-no-image header .intro-cta {
	margin-top: 1.25rem;
	margin-bottom: 1rem;
}

/* Footer credit link — keeps the small grey credit text clickable but
   visually unchanged from the original. */
footer small a.footer-credit-link {
	color: inherit;
	text-decoration: none;
}
footer small a.footer-credit-link:hover,
footer small a.footer-credit-link:focus {
	color: #fff;
	text-decoration: underline;
}

/* Search box in the sidebar nav — sits below the nav list on desktop. */
.navbar-porg .navbar-form {
	margin: 1rem 0 0;
	padding: 0;
	float: none;
	border: none;
}
.navbar-porg .navbar-form .form-control.search {
	width: 100%;
	max-width: 100%;
	height: 2rem;
	padding: .25rem .75rem;
	border: 1px solid #ddd;
	border-radius: 1rem;
	background: #fff;
}

/* Active nav item: keep the original brand red but make it more readable */
.navbar-porg .nav .active a {
	color: #E54028;
	font-weight: 600;
}

/* The footer's third column logo container — keep contained on smaller widths */
footer .turnitin-logo {
	max-width: 140px;
}

/* On the article pages, give the headers a touch more space below */
section.article-no-image article > .article-container > header {
	margin-bottom: 2rem;
}
section.article-no-image article > .article-container > header > p {
	font-size: 1.05rem;
	line-height: 1.6;
	color: #333;
	font-weight: 300;
}

/* h4 acts as a section divider on article pages */
section.article-no-image h4 {
	margin-top: 2.25rem;
	padding-top: 1rem;
	border-top: 1px solid rgba(0, 0, 0, 0.08);
	font-size: 1.2rem;
	letter-spacing: .03em;
	text-transform: uppercase;
	color: #1a1a1a;
}
section.article-no-image h4:first-of-type {
	border-top: none;
	padding-top: 0;
}

/* Article paragraph rhythm */
section.article-no-image p {
	font-size: 1rem;
	line-height: 1.65;
	margin-bottom: .9rem;
}
section.article-no-image ul {
	margin-bottom: 1.25rem;
}
section.article-no-image ul li {
	line-height: 1.6;
	margin-bottom: .35rem;
}

/* Mobile spacing: nav select shouldn't overflow */
.navbar-porg select#jump-links {
	max-width: 100%;
	font-family: inherit;
	padding: .25rem .4rem;
	border: 1px solid #ddd;
	background: #fff;
}
