﻿/* Final homepage slide overrides loaded after theme.css. */
.alignfull.ls-feature-slide,
.alignfull.ls-feature-slide:nth-of-type(even),
.alignfull.ls-photo-slide {
	position: relative !important;
	left: auto !important;
	inline-size: 104vw !important;
	max-inline-size: 104vw !important;
	margin-inline: 0 !important;
	margin-left: -2vw !important;
	isolation: isolate !important;
	overflow: hidden !important;
	background-color: #071323 !important;
}

.alignfull.ls-feature-slide,
.alignfull.ls-feature-slide:nth-of-type(even) {
	min-block-size: 100svh !important;
	display: grid !important;
	grid-template-columns: minmax(40rem, 1fr) minmax(24rem, 0.82fr) !important;
	align-content: end !important;
	gap: clamp(1rem, 2vw, 1.5rem) clamp(3rem, 6vw, 7rem) !important;
	padding-block: clamp(3rem, 7vh, 5.5rem) 20vh !important;
	padding-inline: max(3rem, calc((100vw - 1480px) / 2)) !important;
	direction: ltr !important;
}

.alignfull.ls-feature-slide::before,
.alignfull.ls-feature-slide:nth-of-type(even)::before {
	content: "" !important;
	position: absolute !important;
	inset: -4% !important;
	z-index: 0 !important;
	display: block !important;
	background-image: var(--ls-section-bg) !important;
	background-position: var(--ls-bg-position, center center) !important;
	background-size: cover !important;
	background-repeat: no-repeat !important;
	opacity: 0.97 !important;
	filter: saturate(1) contrast(1.08) brightness(0.78) !important;
	animation: ls-section-bg-drift 22s var(--ls-ease) infinite alternate !important;
}

.alignfull.ls-feature-slide::after,
.alignfull.ls-feature-slide:nth-of-type(even)::after {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	z-index: 1 !important;
	display: block !important;
	pointer-events: none !important;
	background:
		linear-gradient(0deg, rgba(7, 19, 35, 0.96) 0%, rgba(7, 19, 35, 0.78) 24%, rgba(7, 19, 35, 0.38) 48%, rgba(7, 19, 35, 0.04) 74%),
		linear-gradient(90deg, rgba(7, 19, 35, 0.78) 0%, rgba(7, 19, 35, 0.48) 32%, rgba(7, 19, 35, 0.14) 56%, rgba(7, 19, 35, 0.58) 100%) !important;
}

.alignfull.ls-feature-slide > *,
.alignfull.ls-photo-slide > * {
	position: relative !important;
	z-index: 2 !important;
	direction: rtl !important;
}

.ls-feature-slide--latest { --ls-bg-position: 62% center; }
.ls-feature-slide--speeches { --ls-bg-position: 61% center; }
.ls-feature-slide--documentaries { --ls-bg-position: 64% center; }
.ls-feature-slide--broadcasts { --ls-bg-position: 60% center; }
.ls-feature-slide--diaries { --ls-bg-position: 58% center; }
.ls-feature-slide--books { --ls-bg-position: 60% center; }
.ls-feature-slide--articles { --ls-bg-position: 60% center; }

.alignfull.ls-feature-slide .ls-feature-content,
.alignfull.ls-feature-slide:nth-of-type(even) .ls-feature-content {
	grid-column: 1 !important;
	grid-row: 1 !important;
	align-self: end !important;
	justify-self: stretch !important;
	inline-size: 100% !important;
	max-inline-size: min(56rem, 100%) !important;
	margin: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: clamp(0.85rem, 1.4vw, 1.1rem) !important;
	direction: ltr !important;
}

.alignfull.ls-feature-slide .ls-feature-content > * {
	direction: rtl !important;
}

.alignfull.ls-feature-slide .ls-feature-more {
	order: 1 !important;
	align-self: flex-start !important;
	margin: 0 !important;
	text-align: left !important;
	text-shadow: none !important;
}

.alignfull.ls-feature-slide .ls-feature-query {
	order: 2 !important;
	inline-size: 100% !important;
	margin: 0 !important;
}

.alignfull.ls-feature-slide .ls-feature-grid,
.alignfull.ls-feature-slide .ls-rail__track,
.alignfull.ls-feature-slide:nth-of-type(even) .ls-feature-grid,
.alignfull.ls-feature-slide:nth-of-type(even) .ls-rail__track {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: clamp(1rem, 1.8vw, 1.45rem) !important;
	inline-size: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
	direction: ltr !important;
}

.alignfull.ls-feature-slide .ls-feature-grid > li,
.alignfull.ls-feature-slide .ls-rail__track > li,
.alignfull.ls-feature-slide:nth-of-type(even) .ls-feature-grid > li,
.alignfull.ls-feature-slide:nth-of-type(even) .ls-rail__track > li {
	display: block !important;
	flex: none !important;
	inline-size: auto !important;
	min-inline-size: 0 !important;
	block-size: auto !important;
	margin: 0 !important;
	direction: rtl !important;
}

.alignfull.ls-feature-slide .ls-card {
	inline-size: 100% !important;
	min-block-size: clamp(11.5rem, 18vh, 14.5rem) !important;
}

.alignfull.ls-feature-slide .ls-feature-visual,
.alignfull.ls-feature-slide:nth-of-type(even) .ls-feature-visual {
	grid-column: 2 !important;
	grid-row: 1 !important;
	align-self: end !important;
	justify-self: end !important;
	max-inline-size: 31rem !important;
	margin: 0 !important;
	text-align: start !important;
}

.alignfull.ls-feature-slide .ls-feature-title {
	max-inline-size: 9ch !important;
}

.alignfull.ls-feature-slide .ls-feature-more a,
.alignfull.ls-photo-slide .ls-rail__more a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-block-size: 4.15rem !important;
	padding: 1rem 1.45rem !important;
	border: 1px solid rgba(255, 238, 190, 0.78) !important;
	border-radius: 8px !important;
	background: #f6e6b5 !important;
	color: #071323 !important;
	font-weight: 900 !important;
	box-shadow: 0 18px 38px rgba(0, 0, 0, 0.26) !important;
	text-decoration: none !important;
}

.alignfull.ls-photo-slide {
	min-block-size: 100svh !important;
	display: grid !important;
	grid-template-columns: minmax(40rem, 1fr) minmax(24rem, 0.82fr) !important;
	align-content: end !important;
	column-gap: clamp(3rem, 6vw, 7rem) !important;
	padding-block: clamp(3rem, 7vh, 5.5rem) 20vh !important;
	padding-inline: max(3rem, calc((100vw - 1480px) / 2)) !important;
	direction: ltr !important;
}

.alignfull.ls-photo-slide::before {
	content: "" !important;
	position: absolute !important;
	inset: -4% !important;
	z-index: 0 !important;
	background: url("../images/sections/photos.webp") 62% center / cover no-repeat !important;
	opacity: 0.97 !important;
	filter: saturate(1) contrast(1.08) brightness(0.78) !important;
	animation: ls-section-bg-drift 22s var(--ls-ease) infinite alternate !important;
}

.alignfull.ls-photo-slide::after {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	z-index: 1 !important;
	pointer-events: none !important;
	background:
		linear-gradient(0deg, rgba(7, 19, 35, 0.96) 0%, rgba(7, 19, 35, 0.78) 24%, rgba(7, 19, 35, 0.38) 48%, rgba(7, 19, 35, 0.04) 74%),
		linear-gradient(90deg, rgba(7, 19, 35, 0.78) 0%, rgba(7, 19, 35, 0.48) 32%, rgba(7, 19, 35, 0.14) 56%, rgba(7, 19, 35, 0.58) 100%) !important;
}

.alignfull.ls-photo-slide > .alignwide:first-child {
	position: static !important;
	grid-column: 2 !important;
	grid-row: 1 !important;
	align-self: end !important;
	justify-self: end !important;
	inline-size: 100% !important;
	max-inline-size: 31rem !important;
	margin: 0 !important;
	display: block !important;
	text-align: start !important;
}

.alignfull.ls-photo-slide .ls-gallery {
	grid-column: 1 !important;
	grid-row: 1 !important;
	align-self: end !important;
	inline-size: 100% !important;
	margin: 0 !important;
	padding-block-start: 10.8rem !important;
}

.alignfull.ls-photo-slide .ls-gallery__grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: clamp(1rem, 1.8vw, 1.45rem) !important;
	inline-size: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.alignfull.ls-photo-slide .ls-rail__more {
	position: absolute !important;
	z-index: 3 !important;
	left: max(3rem, calc((100vw - 1480px) / 2)) !important;
	top: clamp(5rem, 12vh, 8rem) !important;
	margin: 0 !important;
}

@media (max-width: 1520px) {
	.alignfull.ls-feature-slide,
	.alignfull.ls-feature-slide:nth-of-type(even),
	.alignfull.ls-photo-slide {
		padding-inline: 3rem !important;
	}
	.alignfull.ls-photo-slide .ls-rail__more {
		left: 3rem !important;
	}
}

@media (max-width: 1180px) {
	.alignfull.ls-feature-slide,
	.alignfull.ls-feature-slide:nth-of-type(even),
	.alignfull.ls-photo-slide {
		grid-template-columns: 1fr !important;
		align-content: center !important;
		padding-block: 4rem !important;
		padding-inline: clamp(1rem, 5vw, 2rem) !important;
	}
	.alignfull.ls-feature-slide .ls-feature-content,
	.alignfull.ls-feature-slide .ls-feature-visual,
	.alignfull.ls-feature-slide:nth-of-type(even) .ls-feature-content,
	.alignfull.ls-feature-slide:nth-of-type(even) .ls-feature-visual,
	.alignfull.ls-photo-slide > .alignwide:first-child,
	.alignfull.ls-photo-slide .ls-gallery {
		grid-column: 1 !important;
	}
	.alignfull.ls-photo-slide .ls-rail__more {
		position: relative !important;
		left: auto !important;
		top: auto !important;
		margin-block-end: 1rem !important;
	}
}

@media (max-width: 680px) {
	.alignfull.ls-feature-slide .ls-feature-grid,
	.alignfull.ls-feature-slide .ls-rail__track,
	.alignfull.ls-photo-slide .ls-gallery__grid {
		grid-template-columns: 1fr !important;
	}
}

/* Hero and documentation-method image swap. */
.ls-president-hero .ls-hero__image img {
	object-position: center center !important;
}

.ls-president-hero .ls-hero__inner {
	margin-left: auto !important;
	margin-right: clamp(1rem, 5vw, 4.5rem) !important;
	text-align: right !important;
	inline-size: min(760px, 100%) !important;
}

.ls-president-hero .ls-hero__lead,
.ls-hero__search {
	margin-inline-start: 0 !important;
	margin-inline-end: 0 !important;
}

.ls-president-hero .ls-hero__title {
	margin-inline-start: 0 !important;
	margin-inline-end: 0 !important;
}

.ls-hero__menu {
	display: grid !important;
	grid-template-columns: repeat(6, minmax(7.25rem, 1fr)) !important;
	justify-content: stretch !important;
	gap: 0.68rem !important;
	max-inline-size: min(59rem, 100%) !important;
	margin-inline-start: 0 !important;
	margin-inline-end: 0 !important;
}

.ls-hero__menu p,
.ls-hero__menu a {
	inline-size: 100% !important;
}

.ls-hero__menu a {
	min-block-size: 3.05rem !important;
	padding-inline: 0.72rem !important;
	text-align: center !important;
	white-space: normal !important;
}

.ls-hero__stats {
	display: none !important;
}

.alignfull.ls-method {
	position: relative !important;
	isolation: isolate !important;
	overflow: hidden !important;
	min-block-size: 100svh !important;
	display: grid !important;
	align-content: center !important;
	padding-block: clamp(2rem, 5vh, 3.5rem) !important;
	background: #071323 !important;
	color: #fffaf2 !important;
}

.alignfull.ls-method::before {
	content: "" !important;
	position: absolute !important;
	inset: -4% !important;
	z-index: 0 !important;
	block-size: auto !important;
	background:
		linear-gradient(0deg, rgba(7, 19, 35, 0.90), rgba(7, 19, 35, 0.42) 54%, rgba(7, 19, 35, 0.78)),
		linear-gradient(90deg, rgba(7, 19, 35, 0.78), rgba(7, 19, 35, 0.42) 42%, rgba(7, 19, 35, 0.70)),
		url("../images/morsi-archive-hero.webp") center center / cover no-repeat !important;
	opacity: 1 !important;
	filter: saturate(0.96) contrast(1.08) brightness(0.88) !important;
	transform-origin: center;
	animation: ls-section-bg-drift 22s var(--ls-ease) infinite alternate !important;
}

.alignfull.ls-method::after {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	z-index: 1 !important;
	pointer-events: none !important;
	background:
		linear-gradient(0deg, rgba(7, 19, 35, 0.88) 0%, rgba(7, 19, 35, 0.42) 28%, rgba(7, 19, 35, 0.08) 72%),
		radial-gradient(900px 520px at 28% 66%, rgba(245, 231, 190, 0.13), transparent 62%);
}

.alignfull.ls-method > * {
	position: relative !important;
	z-index: 2 !important;
}

.alignfull.ls-method .ls-kicker,
.alignfull.ls-method .ls-method-card__num {
	color: #f6e6b5 !important;
}

.alignfull.ls-method .ls-method__title {
	color: #fffaf2 !important;
	font-size: clamp(2.05rem, 5.8vh, 3.35rem) !important;
	line-height: 1.1 !important;
	text-shadow: 0 18px 46px rgba(0, 0, 0, 0.46);
}

.alignfull.ls-method .ls-method__lead,
.alignfull.ls-method .ls-method-card__text {
	color: rgba(255, 250, 242, 0.82) !important;
}

.alignfull.ls-method .ls-method-card {
	border-color: rgba(245, 231, 190, 0.22) !important;
	background:
		linear-gradient(180deg, rgba(9, 22, 39, 0.78), rgba(7, 19, 35, 0.70)),
		linear-gradient(135deg, rgba(245, 231, 190, 0.16), rgba(193, 45, 45, 0.12)) !important;
	box-shadow: 0 24px 70px rgba(0, 0, 0, 0.28) !important;
	backdrop-filter: blur(12px);
}

.alignfull.ls-method .ls-method-card__title {
	color: #fffaf2 !important;
}

.alignfull.ls-method .ls-method__grid {
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: clamp(0.65rem, 1.15vw, 0.95rem) !important;
}

.alignfull.ls-method .ls-method__intro {
	grid-column: 1 / -1 !important;
	margin-block-end: clamp(0.55rem, 1.45vh, 0.9rem) !important;
}

.alignfull.ls-method .ls-method-card {
	min-block-size: clamp(8.35rem, 15vh, 9.85rem) !important;
	padding: clamp(0.8rem, 1.35vw, 1.08rem) !important;
}

.alignfull.ls-method .ls-method-card__num {
	margin-block-end: 0.55rem !important;
	font-size: clamp(0.95rem, 1.55vw, 1.35rem) !important;
}

.alignfull.ls-method .ls-method-card__title {
	font-size: clamp(1.12rem, 2.2vh, 1.35rem) !important;
	margin-block-end: 0.45rem !important;
}

.alignfull.ls-method .ls-method-card__text {
	font-size: clamp(0.8rem, 1.65vh, 0.95rem) !important;
	line-height: 1.55 !important;
}

@media (max-width: 1180px) {
	.ls-hero__menu {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}

	.alignfull.ls-method .ls-method__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 680px) {
	.ls-president-hero {
		min-block-size: 100svh !important;
		justify-content: center !important;
		padding-block: clamp(2rem, 5vh, 3rem) !important;
	}

	.ls-president-hero .ls-reveal {
		opacity: 1 !important;
		transform: none !important;
	}

	.ls-president-hero .ls-hero__inner {
		width: calc(100vw - 2rem) !important;
		max-width: calc(100vw - 2rem) !important;
		inline-size: calc(100vw - 2rem) !important;
		margin-inline: auto !important;
		margin-left: auto !important;
		margin-right: auto !important;
		padding-inline: 0 !important;
		text-align: center !important;
	}

	.ls-president-hero .ls-hero__title {
		max-inline-size: 8.5ch !important;
		font-size: clamp(2.25rem, 11vw, 2.9rem) !important;
		line-height: 1.08 !important;
		margin-block-end: 0.85rem !important;
		text-align: center !important;
	}

	.ls-president-hero .ls-hero__eyebrow {
		margin-block-end: 0.8rem !important;
		font-size: 0.76rem !important;
	}

	.ls-president-hero .ls-hero__lead {
		width: min(18rem, calc(100vw - 2rem)) !important;
		max-width: calc(100vw - 2rem) !important;
		inline-size: 100% !important;
		max-inline-size: calc(100vw - 2rem) !important;
		font-size: 0.8rem !important;
		line-height: 1.65 !important;
		margin-block-end: 1.1rem !important;
		margin-left: auto !important;
		margin-right: auto !important;
		white-space: normal !important;
		overflow-wrap: anywhere !important;
		word-break: normal !important;
	}

	.ls-president-hero .ls-hero__lead,
	.ls-hero__search,
	.ls-hero__menu {
		max-inline-size: 100% !important;
		margin-inline: auto !important;
	}

	.ls-hero__menu,
	.alignfull.ls-method .ls-method__grid {
		grid-template-columns: 1fr !important;
	}

	.ls-hero__menu {
		max-block-size: 12rem !important;
		overflow: auto !important;
	}

	.ls-hero__search,
	.ls-hero__search .wp-block-search__inside-wrapper {
		width: min(18rem, calc(100vw - 2rem)) !important;
		max-width: calc(100vw - 2rem) !important;
		inline-size: 100% !important;
		box-sizing: border-box !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.ls-hero__search .wp-block-search__input {
		inline-size: 100% !important;
		min-inline-size: 0 !important;
	}
}

/* Ensure every encyclopedia door uses its generated image, not a plain gradient. */
.ls-cat--biography {
	--ls-tile: linear-gradient(135deg, rgba(7, 19, 35, 0.30), rgba(7, 19, 35, 0.82)), url("../images/sections/biography.webp") center / cover !important;
}

.ls-cat--speeches {
	--ls-tile: linear-gradient(135deg, rgba(7, 19, 35, 0.30), rgba(7, 19, 35, 0.82)), url("../images/sections/speeches.webp") center / cover !important;
}

.ls-cat--documentaries {
	--ls-tile: linear-gradient(135deg, rgba(7, 19, 35, 0.30), rgba(7, 19, 35, 0.82)), url("../images/sections/documentaries.webp") center / cover !important;
}

.ls-cat--testimonials {
	--ls-tile: linear-gradient(135deg, rgba(7, 19, 35, 0.30), rgba(7, 19, 35, 0.82)), url("../images/sections/testimonials.webp") center / cover !important;
}

.ls-cat--photos {
	--ls-tile: linear-gradient(135deg, rgba(7, 19, 35, 0.30), rgba(7, 19, 35, 0.82)), url("../images/sections/photos.webp") center / cover !important;
}

.ls-cat--broadcasts {
	--ls-tile: linear-gradient(135deg, rgba(7, 19, 35, 0.30), rgba(7, 19, 35, 0.82)), url("../images/sections/broadcasts.webp") center / cover !important;
}

.ls-cat--events {
	--ls-tile: linear-gradient(135deg, rgba(7, 19, 35, 0.30), rgba(7, 19, 35, 0.82)), url("../images/sections/events.webp") center / cover !important;
}

.ls-cat--artworks {
	--ls-tile: linear-gradient(135deg, rgba(7, 19, 35, 0.30), rgba(7, 19, 35, 0.82)), url("../images/sections/artworks.webp") center / cover !important;
}

.ls-cat--diaries {
	--ls-tile: linear-gradient(135deg, rgba(7, 19, 35, 0.30), rgba(7, 19, 35, 0.82)), url("../images/sections/diaries.webp") center / cover !important;
}

.ls-cat--books {
	--ls-tile: linear-gradient(135deg, rgba(7, 19, 35, 0.30), rgba(7, 19, 35, 0.82)), url("../images/sections/books.webp") center / cover !important;
}

.ls-cat--articles {
	--ls-tile: linear-gradient(135deg, rgba(7, 19, 35, 0.30), rgba(7, 19, 35, 0.82)), url("../images/sections/articles.webp") center / cover !important;
}

.ls-footer {
	position: relative !important;
	min-block-size: 100svh !important;
	scroll-snap-align: start !important;
	scroll-snap-stop: always !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	padding-block: clamp(4rem, 10vh, 7rem) !important;
	background:
		linear-gradient(135deg, rgba(7, 19, 35, 0.96), rgba(12, 31, 54, 0.96)),
		radial-gradient(760px 420px at 18% 24%, rgba(245, 231, 190, 0.12), transparent 62%) !important;
}

.ls-footer > .alignwide {
	inline-size: min(var(--ls-content-wide), calc(100vw - clamp(2rem, 6vw, 5rem))) !important;
	margin-inline: auto !important;
	gap: clamp(2rem, 5vw, 5rem) !important;
}

.ls-footer .wp-block-separator,
.ls-footer > p {
	inline-size: min(var(--ls-content-wide), calc(100vw - clamp(2rem, 6vw, 5rem))) !important;
	margin-inline: auto !important;
}
/* Category archive page */
html:has(body.category) {
	scroll-behavior: auto;
	scroll-snap-type: none !important;
}

body.category {
	scroll-snap-type: none !important;
}

body.category .wp-site-blocks {
	background: #071323;
}

body.category .wp-site-blocks > * {
	margin-block-start: 0 !important;
}

body.category .ls-footer {
	min-block-size: auto !important;
	scroll-snap-align: none !important;
	scroll-snap-stop: normal !important;
}

.ls-category-page {
	max-width: none !important;
	margin: 0;
	background: #071323;
	color: #fffaf2;
}

.ls-category-page > .alignfull {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-inline: calc(50% - 50vw) !important;
}

.ls-category-hero {
	position: relative;
	min-height: clamp(26rem, 58vh, 38rem);
	display: grid;
	align-items: end;
	overflow: hidden;
	margin: 0 !important;
	padding: clamp(6rem, 14vh, 9rem) clamp(1.25rem, 6vw, 5rem) clamp(3rem, 8vh, 5rem);
	background:
		linear-gradient(0deg, rgba(7,19,35,.96) 0%, rgba(7,19,35,.70) 30%, rgba(7,19,35,.22) 68%, rgba(7,19,35,.06) 100%),
		linear-gradient(90deg, rgba(7,19,35,.88) 0%, rgba(7,19,35,.38) 54%, rgba(7,19,35,.70) 100%),
		var(--ls-category-bg, url("../images/morsi-archive-hero.webp")) center / cover;
}

.category-biography .ls-category-hero { --ls-category-bg: url("../images/sections/biography.webp"); }
.category-speeches .ls-category-hero { --ls-category-bg: url("../images/sections/speeches.webp"); }
.category-documentaries .ls-category-hero { --ls-category-bg: url("../images/sections/documentaries.webp"); }
.category-testimonials .ls-category-hero { --ls-category-bg: url("../images/sections/testimonials.webp"); }
.category-photos .ls-category-hero { --ls-category-bg: url("../images/sections/photos.webp"); }
.category-broadcasts .ls-category-hero { --ls-category-bg: url("../images/sections/broadcasts.webp"); }
.category-events .ls-category-hero { --ls-category-bg: url("../images/sections/events.webp"); }
.category-artworks .ls-category-hero { --ls-category-bg: url("../images/sections/artworks.webp"); }
.category-diaries .ls-category-hero { --ls-category-bg: url("../images/sections/diaries.webp"); }
.category-books .ls-category-hero { --ls-category-bg: url("../images/sections/books.webp"); }
.category-articles .ls-category-hero { --ls-category-bg: url("../images/sections/articles.webp"); }

.ls-category-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	background: repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 1px, transparent 1px 90px);
	pointer-events: none;
}

.ls-category-hero__inner {
	position: relative;
	z-index: 1;
	width: min(920px, 100%);
	margin-inline: auto !important;
	text-align: right;
}

.ls-category-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	min-height: 2.4rem;
	margin: 0 0 1rem;
	padding: .45rem .95rem;
	border: 1px solid rgba(245,231,190,.35);
	border-radius: 999px;
	background: rgba(245,231,190,.10);
	color: #f6e6b5;
	font-weight: 800;
	font-size: .85rem;
}

.ls-category-hero__title,
.ls-category-hero__title h1 {
	max-width: 11ch;
	margin: 0 !important;
	color: #fffaf2;
	font-size: clamp(3.2rem, 7vw, 6.4rem) !important;
	line-height: 1.04 !important;
	letter-spacing: 0;
	text-shadow: 0 18px 48px rgba(0,0,0,.46);
}

.ls-category-hero__desc {
	max-width: 58ch;
	margin-top: 1rem;
	color: rgba(255,250,242,.82);
	font-size: clamp(1rem, 1.4vw, 1.18rem);
	line-height: 1.8;
	font-weight: 650;
}

.ls-category-grid-section {
	margin: 0 !important;
	padding: clamp(2.5rem, 7vh, 5rem) clamp(1.25rem, 6vw, 5rem) clamp(4rem, 9vh, 6rem);
	background: #071323;
}

.ls-category-search {
	width: min(920px, 100%);
	margin: 0 auto clamp(1.5rem, 4vh, 2.5rem) !important;
}

.ls-category-search .wp-block-search__inside-wrapper {
	gap: .5rem;
	padding: .35rem;
	border: 1px solid rgba(245,231,190,.22) !important;
	border-radius: 8px;
	background: rgba(255,250,242,.075) !important;
	box-shadow: 0 18px 44px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.05);
}

.ls-category-search input,
.ls-category-search .wp-block-search__input {
	min-height: 3.2rem;
	border-radius: 8px !important;
	background: transparent !important;
	border: 0 !important;
	color: #fffaf2 !important;
	box-shadow: none !important;
}

.ls-category-search input::placeholder,
.ls-category-search .wp-block-search__input::placeholder {
	color: rgba(255,250,242,.58);
}

.ls-category-search button,
.ls-category-search .wp-block-search__button {
	border-radius: 6px !important;
	background: #c12d2d !important;
	color: #fff !important;
	font-weight: 900;
	border: 0 !important;
	padding-inline: 1.35rem !important;
}

.ls-category-grid {
	width: min(1180px, 100%);
	margin-inline: auto !important;
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: clamp(1rem, 2vw, 1.35rem) !important;
}

.ls-category-card {
	position: relative;
	overflow: hidden;
	border: 1px solid rgba(245,231,190,.18);
	border-radius: 8px;
	background: rgba(255,250,242,.06);
	box-shadow: 0 18px 52px rgba(0,0,0,.22);
	transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.ls-category-card:hover,
.ls-category-card:focus-within {
	transform: translateY(-6px);
	border-color: rgba(246,230,181,.42);
	box-shadow: 0 30px 70px rgba(0,0,0,.34);
}

.ls-category-card__image {
	position: relative;
	aspect-ratio: 16 / 9;
	margin: 0 !important;
	background: linear-gradient(145deg, rgba(42,157,143,.32), rgba(193,45,45,.20)), #0a182a;
	overflow: hidden;
}

.ls-category-card__image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(7,19,35,.04), rgba(7,19,35,.42));
	pointer-events: none;
}

.ls-category-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .35s ease;
}

.ls-category-card:hover .ls-category-card__image img,
.ls-category-card:focus-within .ls-category-card__image img {
	transform: scale(1.05);
}

.ls-category-card__body {
	margin: 0 !important;
	padding: 1rem 1rem 1.15rem;
}

.ls-category-card__date {
	margin: 0 0 .45rem;
	color: #f6e6b5;
	font-size: .78rem;
	font-weight: 800;
}

.ls-category-card__title {
	margin: 0 !important;
	font-size: clamp(1.1rem, 1.35vw, 1.35rem) !important;
	line-height: 1.4 !important;
	font-weight: 900;
}

.ls-category-card__title a {
	color: #fffaf2;
	text-decoration: none;
}

.ls-category-card__excerpt {
	margin-top: .65rem;
	color: rgba(255,250,242,.68);
	font-size: .92rem;
	line-height: 1.7;
}

.ls-category-pagination {
	margin-top: clamp(2rem, 5vh, 3rem) !important;
	color: #fffaf2;
}

.ls-category-pagination a,
.ls-category-pagination .page-numbers {
	min-width: 2.4rem;
	min-height: 2.4rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(245,231,190,.24);
	border-radius: 8px;
	color: #fffaf2;
	text-decoration: none;
}

.ls-category-empty {
	width: min(920px, 100%);
	margin: 2rem auto 0;
	padding: 2rem;
	border: 1px dashed rgba(245,231,190,.26);
	border-radius: 8px;
	color: rgba(255,250,242,.72);
}

@media (max-width: 980px) {
	.ls-category-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 680px) {
	.ls-category-hero {
		min-height: 23rem;
		padding-inline: 1rem;
	}

	.ls-category-hero__title,
	.ls-category-hero__title h1 {
		font-size: clamp(2.4rem, 12vw, 3.3rem) !important;
	}

	.ls-category-grid-section {
		padding-inline: 1rem;
	}

	.ls-category-grid {
		grid-template-columns: 1fr !important;
	}
}

/* Single article page */
html:has(body.single-post) {
	scroll-behavior: auto;
	scroll-snap-type: none !important;
}

body.single-post {
	scroll-snap-type: none !important;
}

body.single-post .wp-site-blocks {
	background: #071323;
}

body.single-post .wp-site-blocks > * {
	margin-block-start: 0 !important;
}

body.single-post .ls-footer {
	min-block-size: auto !important;
	scroll-snap-align: none !important;
	scroll-snap-stop: normal !important;
}

.ls-post-page {
	max-width: none !important;
	margin: 0;
	background: #071323;
	color: #fffaf2;
}

.ls-post-page > .alignfull {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-inline: calc(50% - 50vw) !important;
}

.ls-post-hero {
	position: relative;
	overflow: hidden;
	margin: 0 !important;
	padding: clamp(6rem, 12vh, 8rem) clamp(1.25rem, 6vw, 5rem) clamp(2.75rem, 7vh, 5rem);
	background:
		linear-gradient(0deg, rgba(7,19,35,.98) 0%, rgba(7,19,35,.72) 34%, rgba(7,19,35,.28) 72%, rgba(7,19,35,.10) 100%),
		radial-gradient(780px 440px at 72% 16%, rgba(245,231,190,.14), transparent 64%),
		linear-gradient(135deg, #071323 0%, #0f263f 58%, #071323 100%);
}

.ls-post-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	background: repeating-linear-gradient(90deg, rgba(255,255,255,.032) 0 1px, transparent 1px 90px);
	pointer-events: none;
}

.ls-post-hero__inner {
	position: relative;
	z-index: 1;
	width: min(960px, 100%);
	margin-inline: auto !important;
	text-align: right;
}

.ls-post-hero__kicker,
.ls-post-hero__kicker a {
	display: inline-flex;
	align-items: center;
	min-height: 2.35rem;
	margin: 0 0 1rem;
	padding: .42rem .9rem;
	border: 1px solid rgba(245,231,190,.34);
	border-radius: 999px;
	background: rgba(245,231,190,.10);
	color: #f6e6b5 !important;
	font-size: .88rem;
	font-weight: 900;
	text-decoration: none;
}

.ls-post-hero__title,
.ls-post-hero__title h1 {
	max-width: 13ch;
	margin: 0 !important;
	color: #fffaf2;
	font-size: clamp(2.8rem, 6.2vw, 5.8rem) !important;
	line-height: 1.08 !important;
	letter-spacing: 0;
	text-shadow: 0 18px 48px rgba(0,0,0,.46);
}

.ls-post-hero__meta {
	gap: .65rem 1rem !important;
	margin: 1rem 0 clamp(1.5rem, 4vh, 2.75rem) !important;
	color: rgba(255,250,242,.72);
	font-weight: 700;
}

.ls-post-hero__media {
	position: relative;
	width: min(960px, 100%);
	aspect-ratio: 16 / 9;
	margin: 0 auto !important;
	overflow: hidden;
	border: 1px solid rgba(245,231,190,.22);
	border-radius: 8px;
	background:
		linear-gradient(135deg, rgba(193,45,45,.78), rgba(7,19,35,.82)),
		radial-gradient(circle at 70% 72%, rgba(255,255,255,.20), transparent 22%);
	box-shadow: 0 28px 80px rgba(0,0,0,.34);
}

.ls-post-hero__media img,
.ls-post-hero__media iframe,
.ls-post-hero__media video,
.ls-post-hero__media .wp-block-embed__wrapper,
.ls-post-hero__media figure {
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
}

.ls-post-hero__media img,
.ls-post-hero__media video,
.ls-post-hero__media iframe {
	display: block;
	object-fit: cover;
	border: 0;
}

.ls-post-hero__media--empty::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px),
		linear-gradient(0deg, rgba(255,255,255,.08) 1px, transparent 1px);
	background-size: 34px 34px;
	opacity: .28;
}

.ls-post-content-section {
	margin: 0 !important;
	padding: clamp(2.5rem, 6vh, 4.5rem) clamp(1.25rem, 6vw, 5rem) clamp(3.25rem, 8vh, 5.5rem);
	background: #071323;
}

.ls-post-prose {
	width: min(820px, 100%);
	margin-inline: auto !important;
	color: rgba(255,250,242,.88);
	font-size: clamp(1.05rem, 1.5vw, 1.22rem);
	line-height: 2.05;
}

.ls-post-prose > * {
	margin-block-start: 0;
	margin-block-end: 1.35rem;
}

.ls-post-prose h2,
.ls-post-prose h3,
.ls-post-prose h4 {
	margin-block-start: 2.2rem;
	color: #fffaf2;
	line-height: 1.35;
}

.ls-post-prose a {
	color: #f6e6b5;
	text-underline-offset: .2em;
}

.ls-post-prose img,
.ls-post-prose video,
.ls-post-prose iframe {
	max-width: 100%;
	border-radius: 8px;
}

.ls-post-tags {
	width: min(820px, 100%);
	margin: 2rem auto 0 !important;
	padding-top: 1.25rem;
	border-top: 1px solid rgba(245,231,190,.18);
	color: rgba(255,250,242,.70);
	font-weight: 800;
}

.ls-post-tags a {
	color: #f6e6b5;
	text-decoration: none;
}

.ls-post-related {
	margin: 0 !important;
	padding: clamp(3rem, 7vh, 5rem) clamp(1.25rem, 6vw, 5rem) clamp(4rem, 9vh, 6rem);
	background: linear-gradient(180deg, #071323 0%, #0d2137 100%);
}

.ls-post-related__heading {
	width: min(1180px, 100%);
	margin: 0 auto 1.5rem !important;
	color: #fffaf2;
	font-size: clamp(1.7rem, 3vw, 2.6rem) !important;
	line-height: 1.2 !important;
}

.ls-post-related__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.2rem;
	width: min(1180px, 100%);
	margin-inline: auto;
}

.ls-post-related__card {
	overflow: hidden;
	border: 1px solid rgba(245,231,190,.18);
	border-radius: 8px;
	background: rgba(255,255,255,.055);
	box-shadow: 0 22px 60px rgba(0,0,0,.22);
	transition: transform .24s ease, border-color .24s ease, background .24s ease;
}

.ls-post-related__card:hover,
.ls-post-related__card:focus-within {
	transform: translateY(-5px);
	border-color: rgba(245,231,190,.40);
	background: rgba(255,255,255,.075);
}

.ls-post-related__media {
	display: block;
	aspect-ratio: 16 / 9;
	background:
		linear-gradient(135deg, rgba(193,45,45,.84), rgba(7,19,35,.82)),
		radial-gradient(circle at 68% 76%, rgba(255,255,255,.22), transparent 24%);
	overflow: hidden;
}

.ls-post-related__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .28s ease;
}

.ls-post-related__card:hover .ls-post-related__media img,
.ls-post-related__card:focus-within .ls-post-related__media img {
	transform: scale(1.04);
}

.ls-post-related__body {
	padding: 1rem 1.05rem 1.15rem;
}

.ls-post-related__date {
	color: #f6e6b5;
	font-size: .82rem;
	font-weight: 900;
}

.ls-post-related__title {
	margin: .45rem 0 0;
	font-size: clamp(1.05rem, 1.35vw, 1.25rem);
	line-height: 1.45;
}

.ls-post-related__title a {
	color: #fffaf2;
	text-decoration: none;
}

@media (max-width: 900px) {
	.ls-post-related__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 680px) {
	.ls-post-hero {
		padding-top: 5.5rem;
	}

	.ls-post-hero__title,
	.ls-post-hero__title h1 {
		max-width: 12ch;
		font-size: clamp(2.3rem, 12vw, 3.3rem) !important;
	}

	.ls-post-related__grid {
		grid-template-columns: 1fr;
	}
}

