/**
 * Free Penny — midnight slate + single teal accent (readability-first contrast on dark)
 * Scoped to body.penny-luxury-home
 */

body.penny-luxury-home.lv-slots-front.lotsa-light-home {
	--penny-bg: #0a101e;
	--penny-elev: #101a2e;
	--penny-elev-2: #0d1628;
	--penny-surface: #152238;
	--penny-lava-1: #0d9488;
	--penny-lava-2: #14b8a6;
	--penny-gold: #2dd4bf; /* secondary accent = same hue as links (teal only) */
	--penny-text: #e8edf5;
	--penny-muted: #b8c5d8;
	--penny-subtle: #8b9cb5;
	--penny-glass: rgba(10, 16, 30, 0.92);
	--penny-line: rgba(148, 180, 220, 0.14);
	--penny-link: #5eead4;
	--penny-link-hover: #99f6e4;

	background-color: var(--penny-bg) !important;
	background-image:
		radial-gradient(ellipse 85% 55% at 15% 0%, rgba(13, 148, 136, 0.18) 0%, transparent 50%),
		radial-gradient(ellipse 70% 50% at 100% 15%, rgba(45, 212, 191, 0.1) 0%, transparent 48%),
		radial-gradient(ellipse 50% 40% at 50% 100%, rgba(45, 212, 191, 0.07) 0%, transparent 45%),
		linear-gradient(180deg, #080c16 0%, #0a101e 40%, #0b1424 100%) !important;
	background-attachment: scroll !important;
	color: var(--penny-muted) !important;
}

@media (min-width: 768px) {
	body.penny-luxury-home.lv-slots-front.lotsa-light-home {
		background-attachment: fixed !important;
	}
}

body.penny-luxury-home main#main-content {
	color: var(--penny-muted);
}

/* Skip link */
body.penny-luxury-home .lv-skip-link {
	background: linear-gradient(135deg, #0d9488 0%, #14b8a6 100%) !important;
	color: #04120f !important;
	border: 1px solid rgba(94, 234, 212, 0.55) !important;
	box-shadow: 0 0 20px rgba(13, 148, 136, 0.35);
}

/* --- Header: glass on midnight --- */
body.penny-luxury-home > header.sticky.penny-site-header,
body.penny-luxury-home > header.sticky {
	background: rgba(10, 16, 30, 0.92) !important;
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	border-bottom: 1px solid var(--penny-line) !important;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.4);
}

body.penny-luxury-home header a:not(.penny-cta),
body.penny-luxury-home header button#nav-toggle {
	color: var(--penny-text) !important;
}

body.penny-luxury-home header nav a:hover,
body.penny-luxury-home header button#nav-toggle:hover {
	color: var(--penny-link) !important;
	border-color: rgba(94, 234, 212, 0.35) !important;
}

body.penny-luxury-home header [class*="border-white"] {
	border-color: rgba(255, 255, 255, 0.12) !important;
}

/* Text logo / initials — teal */
body.penny-luxury-home .penny-brand-fallback {
	display: inline-flex;
	width: 2.5rem;
	height: 2.5rem;
	align-items: center;
	justify-content: center;
	border-radius: 0.5rem;
	font-size: 1.125rem;
	font-weight: 900;
	letter-spacing: -0.02em;
	color: #0f172a !important;
	background: linear-gradient(145deg, #5eead4 0%, #2dd4bf 100%);
	border: 1px solid rgba(45, 212, 191, 0.45);
	box-shadow:
		0 0 20px rgba(13, 148, 136, 0.35),
		inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

/* Header text wordmark: glass medallion + hairline + kicker + uppercase rest */
body.penny-luxury-home .penny-header-wordmark {
	align-items: stretch;
}

body.penny-luxury-home .penny-brand-mark__medallion {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.75rem;
	height: 2.75rem;
	padding: 0 0.25rem;
	border-radius: 0.65rem;
	background:
		linear-gradient(160deg, rgba(45, 212, 191, 0.12) 0%, rgba(10, 16, 30, 0.65) 55%, rgba(5, 8, 16, 0.85) 100%),
		radial-gradient(80% 80% at 30% 0%, rgba(45, 212, 191, 0.18) 0%, transparent 50%);
	border: 1px solid rgba(45, 212, 191, 0.42);
	box-shadow:
		0 0 0 1px rgba(0, 0, 0, 0.35) inset,
		0 10px 32px rgba(0, 0, 0, 0.35),
		0 0 20px rgba(13, 148, 136, 0.15);
	transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
	flex-shrink: 0;
}

body.penny-luxury-home a.penny-header-brand:hover .penny-brand-mark__medallion,
body.penny-luxury-home a.penny-header-brand:focus-visible .penny-brand-mark__medallion {
	transform: translateY(-1px) scale(1.03);
	border-color: rgba(45, 212, 191, 0.65);
	box-shadow:
		0 0 0 1px rgba(0, 0, 0, 0.35) inset,
		0 14px 40px rgba(0, 0, 0, 0.4),
		0 0 28px rgba(45, 212, 191, 0.3);
}

body.penny-luxury-home .penny-brand-mark__first {
	font-size: clamp(1.35rem, 3.2vw, 1.85rem);
	font-weight: 900;
	letter-spacing: -0.05em;
	line-height: 1;
	color: #ecfeff !important;
	text-shadow: 0 0 20px rgba(45, 212, 191, 0.45);
}

body.penny-luxury-home .penny-brand-mark__rule {
	width: 1px;
	min-height: 2.4rem;
	align-self: center;
	margin: 0 0.05rem;
	background: linear-gradient(180deg, transparent 0%, rgba(45, 212, 191, 0.55) 30%, rgba(45, 212, 191, 0.35) 70%, transparent 100%);
	border-radius: 1px;
	opacity: 0.9;
}

body.penny-luxury-home .penny-brand-mark__restcol {
	display: flex;
	min-width: 0;
	flex-direction: column;
	justify-content: center;
	gap: 0.1rem;
	line-height: 1.15;
}

body.penny-luxury-home .penny-brand-mark__kicker {
	font-size: 0.5rem;
	font-weight: 800;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: rgba(148, 180, 220, 0.72) !important;
	white-space: nowrap;
}

@media (max-width: 380px) {
	body.penny-luxury-home .penny-brand-mark__kicker {
		display: none;
	}
}

body.penny-luxury-home .penny-brand-mark__rest {
	margin: 0;
	font-size: 0.62rem;
	font-weight: 800;
	letter-spacing: 0.18em;
	line-height: 1.3;
	text-transform: uppercase;
	color: transparent !important;
	background: linear-gradient(100deg, #e2e8f0 0%, #5eead4 42%, #99f6e4 100%);
	-webkit-background-clip: text;
	background-clip: text;
	filter: none;
	text-shadow: none;
	max-width: 12.5rem;
}

@media (min-width: 640px) {
	body.penny-luxury-home .penny-brand-mark__medallion {
		min-width: 3.1rem;
		height: 3.1rem;
	}
	body.penny-luxury-home .penny-brand-mark__kicker {
		font-size: 0.52rem;
		letter-spacing: 0.34em;
	}
	body.penny-luxury-home .penny-brand-mark__rest {
		font-size: 0.7rem;
		letter-spacing: 0.2em;
		max-width: 15rem;
	}
}

/* Text brand link (replaces custom logo image in header) */
body.penny-luxury-home a.penny-header-brand {
	text-decoration: none !important;
}
body.penny-luxury-home a.penny-header-brand:focus-visible {
	outline: 2px solid rgba(45, 212, 191, 0.65);
	outline-offset: 3px;
	border-radius: 0.25rem;
}

/* CTAs */
body.penny-luxury-home .penny-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.625rem 1.25rem;
	font-size: 0.875rem;
	font-weight: 800;
	border-radius: 9999px;
	text-decoration: none !important;
	transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
	white-space: nowrap;
}

/*
 * Top header row: Tailwind `hidden` / `lg:inline-flex` is overridden by the rule above
 * (same specificity, CSS loads after utilities). Force-hide bar CTAs below lg.
 * (#mobile-nav .penny-cta and hero CTAs are not direct children of .penny-header-ctas.)
 */
@media (max-width: 1023px) {
	body.penny-luxury-home header .penny-header-ctas > a {
		display: none !important;
	}
}

body.penny-luxury-home .penny-cta--signup {
	color: #04120f !important;
	background: linear-gradient(145deg, #2dd4bf 0%, #0d9488 45%, #0f766e 100%);
	border: 1px solid rgba(94, 234, 212, 0.5);
	box-shadow:
		0 4px 16px rgba(13, 148, 136, 0.4),
		inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

body.penny-luxury-home .penny-cta--signup:hover {
	transform: translateY(-1px);
	box-shadow:
		0 6px 24px rgba(20, 184, 166, 0.45),
		inset 0 1px 0 rgba(255, 255, 255, 0.25);
	color: #04120f !important;
}

body.penny-luxury-home .penny-cta--login {
	color: #2dd4bf !important;
	background: rgba(8, 18, 40, 0.45);
	border: 2px solid rgba(45, 212, 191, 0.85);
	box-shadow: 0 0 18px rgba(13, 148, 136, 0.12);
}

body.penny-luxury-home .penny-cta--login:hover {
	background: rgba(13, 148, 136, 0.15);
	box-shadow: 0 0 24px rgba(45, 212, 191, 0.25);
	color: #e8f7f3 !important;
}

body.penny-luxury-home #mobile-nav {
	background: rgba(13, 22, 40, 0.98) !important;
	border-color: var(--penny-line) !important;
}

body.penny-luxury-home #mobile-nav a {
	color: var(--penny-text) !important;
}

body.penny-luxury-home #mobile-nav .penny-cta {
	width: 100%;
	margin-top: 0.5rem;
}

/* Hide default teal CTA on front (replaced by penny buttons) */
body.penny-luxury-home header a.lv-header-cta {
	display: none !important;
}

/* --- Footer: same family as page bg --- */
body.penny-luxury-home footer#contact {
	background: linear-gradient(180deg, #080c16 0%, #0a101e 100%) !important;
	border-top: 1px solid var(--penny-line) !important;
}

body.penny-luxury-home footer .text-gray-300,
body.penny-luxury-home footer .text-gray-400 {
	color: #94a3b8 !important;
}

body.penny-luxury-home footer a,
body.penny-luxury-home footer .text-luxury-gold {
	color: #5eead4 !important;
}

body.penny-luxury-home footer a:hover {
	color: #99f6e4 !important;
}

body.penny-luxury-home .lv-footer-nav a {
	color: #cbd5e1 !important;
}

body.penny-luxury-home .lv-footer-nav a:hover {
	color: #5eead4 !important;
}

body.penny-luxury-home .lv-footer-legal {
	color: #8b9cb5 !important;
}

body.penny-luxury-home .lv-footer-hub {
	color: #cbd5e1 !important;
}

body.penny-luxury-home .lv-footer-hub .text-luxury-gold {
	color: #5eead4 !important;
}

/* --- Front page main --- */
.penny-front {
	--penny-bg: #0a101e;
	--penny-elev: #101a2e;
	--penny-lava-1: #0d9488;
	--penny-lava-2: #14b8a6;
	--penny-gold: #2dd4bf; /* secondary accent = same hue as links (teal only) */
	/* Shell = page grid; most modules use width:100% inside .penny-container. Narrow reading: legal + single article only. */
	--penny-content-max: 48rem;
	--penny-shell-max: 72rem;
	padding-bottom: max(3rem, env(safe-area-inset-bottom));
}

/* Full width of parent (usually .penny-container) — optional wrapper */
.penny-rail {
	width: 100%;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

.penny-front a {
	color: #5eead4;
	font-weight: 600;
	text-decoration: none;
}

.penny-front a:hover {
	color: #ccfbf1;
	text-decoration: underline;
}

.penny-container {
	width: 100%;
	max-width: var(--penny-shell-max, 72rem);
	margin-left: auto;
	margin-right: auto;
	padding-left: max(1rem, env(safe-area-inset-left));
	padding-right: max(1rem, env(safe-area-inset-right));
}

/* Hero — generous rhythm + image fused into canvas */
.penny-hero {
	position: relative;
	padding: clamp(4.25rem, 11vw, 7.5rem) 0 clamp(4rem, 9vw, 6.5rem);
	overflow: hidden;
	border-bottom: 1px solid rgba(148, 180, 220, 0.1);
}

.penny-hero__bg {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background:
		radial-gradient(circle at 20% 30%, rgba(13, 148, 136, 0.2) 0%, transparent 42%),
		radial-gradient(circle at 80% 70%, rgba(45, 212, 191, 0.08) 0%, transparent 36%),
		linear-gradient(180deg, transparent 0%, rgba(8, 12, 22, 0.88) 100%);
}

.penny-hero__bg::before,
.penny-hero__bg::after {
	content: "";
	position: absolute;
	width: 120px;
	height: 120px;
	border-radius: 50%;
	filter: blur(40px);
	opacity: 0.4;
	animation: penny-float 8s ease-in-out infinite;
}

.penny-hero__bg::before {
	left: 10%;
	top: 20%;
	background: #14b8a6;
}

.penny-hero__bg::after {
	right: 15%;
	bottom: 25%;
	background: #2dd4bf;
	animation-delay: -4s;
}

@keyframes penny-float {
	0%,
	100% {
		transform: translate(0, 0) scale(1);
	}
	50% {
		transform: translate(20px, -15px) scale(1.1);
	}
}

.penny-hero__inner {
	position: relative;
	z-index: 1;
}

.penny-hero__copy {
	display: flex;
	flex-direction: column;
	align-items: center;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.penny-hero__grid--split .penny-hero__copy {
	max-width: none;
	margin-left: 0;
	margin-right: 0;
	align-items: stretch;
}

.penny-hero__grid {
	text-align: center;
}

.penny-hero__grid--split {
	display: grid;
	gap: clamp(2.5rem, 6vw, 4.5rem);
	align-items: center;
	text-align: center;
}

/* Stacked / mobile: breathing room before the visual */
.penny-hero__media {
	margin-top: clamp(2.75rem, 7vw, 4.25rem);
	padding-top: clamp(2rem, 5vw, 3.25rem);
	width: 100%;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	border-top: 1px solid rgba(148, 180, 220, 0.12);
	background: radial-gradient(ellipse 90% 80% at 50% 0%, rgba(13, 148, 136, 0.12) 0%, transparent 55%);
}

@media (min-width: 900px) {
	.penny-hero__grid--split {
		grid-template-columns: minmax(0, 1.05fr) minmax(300px, 1fr);
		text-align: left;
		max-width: var(--penny-shell-max, 72rem);
	}

	.penny-hero__grid--split .penny-hero__copy {
		text-align: left;
		align-items: flex-start;
		padding-right: clamp(0.5rem, 2vw, 1.5rem);
	}

	.penny-hero__grid--split .penny-hero__actions,
	.penny-hero__grid--split .penny-crosslinks {
		justify-content: flex-start;
	}

	.penny-hero__grid--split .penny-hero__media {
		margin-top: 0;
		padding-top: 0;
		border-top: none;
		background: none;
		max-width: none;
	}
}

.penny-hero__figure {
	margin: 0;
	position: relative;
	border-radius: 1.125rem;
	overflow: hidden;
	border: 1px solid rgba(94, 234, 212, 0.25);
	box-shadow:
		0 0 0 1px rgba(13, 148, 136, 0.15),
		0 24px 56px rgba(0, 0, 0, 0.5),
		0 0 48px rgba(13, 148, 136, 0.12);
	aspect-ratio: 4 / 3;
}

/* Fade image into page bg — top + vignette */
.penny-hero__figure::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background:
		linear-gradient(180deg, #0a101e 0%, rgba(10, 16, 30, 0.6) 22%, transparent 45%),
		linear-gradient(0deg, #0a101e 0%, rgba(10, 16, 30, 0.45) 25%, transparent 50%),
		linear-gradient(90deg, rgba(10, 16, 30, 0.3) 0%, transparent 30%, transparent 70%, rgba(10, 16, 30, 0.3) 100%);
}

.penny-hero__figure::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 2;
	pointer-events: none;
	background: linear-gradient(145deg, rgba(13, 148, 136, 0.1) 0%, transparent 45%, rgba(8, 12, 22, 0.2) 100%);
}

.penny-hero__figure img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 40%;
	transform: scale(1.02);
}

.penny-crosslinks {
	margin-top: 0;
	margin-bottom: 0;
	padding-top: clamp(1.75rem, 4vw, 2.5rem);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.5rem 0.75rem;
	font-size: 0.875rem;
	font-weight: 600;
	border-top: 1px solid rgba(255, 255, 255, 0.06);
	width: 100%;
	max-width: 100%;
}

/* One separator before art: either links rule OR media band — not both */
.penny-hero__grid:has(.penny-hero__media) .penny-crosslinks {
	border-top: none;
	padding-top: clamp(1.5rem, 3.5vw, 2.25rem);
}

.penny-hero__grid--split .penny-crosslinks {
	max-width: none;
	margin-right: auto;
	border-top: none;
	padding-top: clamp(1.25rem, 2.5vw, 1.75rem);
}

.penny-crosslinks a {
	color: #5eead4 !important;
	text-decoration: none !important;
	border-bottom: 1px solid rgba(94, 234, 212, 0.45);
	padding-bottom: 1px;
}

.penny-crosslinks a:hover {
	color: #ccfbf1 !important;
	border-bottom-color: #99f6e4;
}

.penny-crosslinks__sep {
	color: rgba(184, 197, 216, 0.45);
	user-select: none;
}

.penny-hero__title {
	margin: 0 0 clamp(1.35rem, 3vw, 1.85rem);
	font-size: clamp(1.75rem, 4.5vw, 2.75rem);
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: -0.02em;
	color: #f8fafc;
	text-shadow:
		0 0 24px rgba(13, 148, 136, 0.25),
		0 0 48px rgba(8, 12, 22, 0.5);
}

.penny-hero__title .penny-glow-word,
.penny-hero__lead .penny-glow-word {
	color: #ecfdf5;
	text-shadow:
		0 0 14px rgba(45, 212, 191, 0.5),
		0 0 28px rgba(13, 148, 136, 0.35);
}

.penny-hero__lead {
	width: 100%;
	max-width: 100%;
	margin: 0 0 clamp(2rem, 4.5vw, 2.75rem);
	font-size: 1.0625rem;
	line-height: 1.72;
	color: #cbd5e1;
}

.penny-hero__lead strong {
	color: #f1f5f9;
	font-weight: 700;
}

.penny-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.85rem 1.1rem;
	justify-content: center;
	align-items: center;
	margin-bottom: 0;
}

.penny-hero__actions .penny-cta--signup {
	padding: 0.85rem 1.5rem;
	font-size: 0.9375rem;
}

.penny-hero__actions .penny-cta--login {
	padding: 0.85rem 1.5rem;
	font-size: 0.9375rem;
}

/* Trust bar */
.penny-trust {
	background: linear-gradient(180deg, #0f1a2e 0%, #0d1628 100%);
	border-top: 1px solid rgba(148, 180, 220, 0.1);
	border-bottom: 1px solid rgba(148, 180, 220, 0.08);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.penny-trust__grid {
	display: grid;
	width: 100%;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 1rem 1.5rem;
	padding: 1.35rem 0;
}

.penny-trust__item {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #cbd5e1;
}

.penny-trust__icon {
	flex-shrink: 0;
	width: 1.5rem;
	height: 1.5rem;
	color: #2dd4bf;
	opacity: 0.95;
}

/* Section titles */
.penny-section-title {
	margin: 0 0 2rem;
	text-align: center;
	font-size: clamp(1.35rem, 3vw, 1.85rem);
	font-weight: 800;
	color: #2dd4bf;
	text-shadow: 0 0 20px rgba(13, 148, 136, 0.15);
	letter-spacing: -0.02em;
}

.penny-section-title:not(.penny-section-title--left) {
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.penny-section-title--left {
	text-align: left;
	margin-bottom: 1.25rem;
	max-width: 100%;
}

.penny-section-subtitle {
	margin: -1.25rem auto 1.75rem;
	max-width: 100%;
	text-align: center;
	font-size: 1rem;
	font-weight: 600;
	color: #a8b8d0;
	line-height: 1.5;
}

.penny-section-subtitle--tight {
	margin: 0.35rem auto 1rem;
}

.penny-section-intro {
	margin: -1rem auto 1.75rem;
	max-width: 100%;
	text-align: center;
	font-size: 1rem;
	color: #a8b8d0;
	line-height: 1.6;
}

.penny-card__kicker {
	margin: 0 0 0.5rem;
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #2dd4bf;
}

.penny-card__more {
	margin: 0.85rem 0 0 !important;
	font-size: 0.875rem;
}

.penny-prose--authority p {
	margin-bottom: 1.1rem;
}

.penny-prose--tight {
	margin: 0 auto;
	max-width: 100%;
	text-align: center;
}

/* Split band — image + copy */
.penny-split {
	display: block;
}

.penny-split--media {
	display: grid;
	gap: clamp(1.75rem, 4vw, 2.5rem);
	align-items: start;
}

@media (min-width: 768px) {
	.penny-split--media {
		grid-template-columns: minmax(240px, 1fr) minmax(240px, 1fr);
		align-items: stretch;
	}

	/* Cap image height so left column (image + two paragraphs) stays closer to right column (four blocks). */
	.penny-split__figure img {
		width: 100%;
		height: auto;
		max-height: 280px;
	}
}

.penny-split__media-col {
	display: flex;
	flex-direction: column;
	gap: clamp(1rem, 2.5vw, 1.5rem);
	min-width: 0;
}

.penny-prose--split-aside {
	text-align: left;
}

.penny-prose--split-aside p:last-child {
	margin-bottom: 0;
}

.penny-split__figure {
	margin: 0;
	border-radius: 0.75rem;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35);
}

.penny-split__figure img {
	display: block;
	width: 100%;
	height: auto;
}

.penny-split__content {
	min-width: 0;
}

/* Vault — headline + wide visual */
.penny-vault-head {
	display: grid;
	gap: 1.5rem;
	margin-bottom: 2rem;
}

@media (min-width: 768px) {
	.penny-vault-head {
		grid-template-columns: 1fr 1.1fr;
		align-items: center;
		gap: 2rem;
	}
}

.penny-vault-head__figure {
	margin: 0;
	border-radius: 0.65rem;
	overflow: hidden;
	border: 1px solid rgba(45, 212, 191, 0.12);
	max-height: 220px;
}

.penny-vault-head__figure img {
	width: 100%;
	height: 100%;
	max-height: 220px;
	object-fit: cover;
	display: block;
}

.penny-vault-head__text .penny-section-title {
	margin-bottom: 0.5rem;
}

.penny-step__title {
	margin: 0 0 0.5rem;
	font-size: 1.0625rem;
	font-weight: 800;
	color: #2dd4bf;
}

.penny-step p {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #cbd5e1;
	font-weight: 500;
}

.penny-faq__summary {
	cursor: pointer;
	list-style: none;
}

.penny-faq__summary::-webkit-details-marker {
	display: none;
}

.penny-faq__q {
	font-weight: 700;
	color: #5eead4;
}

.penny-faq__answer {
	padding-top: 0.5rem;
}

.penny-faq__answer p {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.65;
	color: #cbd5e1;
}

.penny-section {
	padding: clamp(3.25rem, 6.5vw, 5rem) 0;
}

.penny-section--alt {
	background: #0c1628;
	border-top: 1px solid rgba(148, 180, 220, 0.08);
	border-bottom: 1px solid rgba(148, 180, 220, 0.08);
}

/* Game cards — full shell width (wider than typography rail) */
.penny-cards {
	display: grid;
	width: 100%;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 1.5rem;
	margin-top: 0.5rem;
}

.penny-card {
	position: relative;
	border-radius: 0.75rem;
	background: linear-gradient(145deg, #152238 0%, #0d1628 100%);
	border: 1px solid rgba(148, 180, 220, 0.12);
	padding: 0;
	overflow: hidden;
	transition:
		border-color 0.25s ease,
		box-shadow 0.25s ease,
		transform 0.2s ease;
}

.penny-card:hover {
	border-color: rgba(45, 212, 191, 0.5);
	box-shadow:
		0 0 0 1px rgba(13, 148, 136, 0.3),
		0 12px 40px rgba(8, 12, 22, 0.45);
	transform: translateY(-3px);
}

.penny-card__media {
	position: relative;
	aspect-ratio: 4 / 3;
	background: linear-gradient(145deg, #0f1c32 0%, #0a101e 55%, #080c16 100%);
	overflow: hidden;
}

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

.penny-card__tag {
	position: absolute;
	top: 0.65rem;
	right: 0.65rem;
	padding: 0.25rem 0.55rem;
	font-size: 0.6875rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	border-radius: 0.25rem;
	background: #2dd4bf;
	color: #0f172a;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.penny-card__tag--hot {
	background: linear-gradient(135deg, #5eead4 0%, #14b8a6 100%);
}

.penny-card__body {
	padding: 1.25rem 1.15rem 1.35rem;
}

.penny-card__body h3 {
	margin: 0 0 0.5rem;
	font-size: 1.0625rem;
	font-weight: 700;
	color: #f1f5f9;
}

.penny-card__body p {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #cbd5e1;
}

/* Authority / vault */
.penny-prose {
	max-width: 100%;
	margin: 0 auto;
	line-height: 1.8;
	font-size: 1rem;
	color: #cbd5e1;
}

.penny-prose strong {
	color: #fff;
	font-weight: 700;
}

.penny-vault-list {
	max-width: 100%;
	margin: 2rem auto 0;
	padding: 0;
	list-style: none;
}

.penny-vault-list li {
	position: relative;
	padding: 0.5rem 0 0.5rem 1.75rem;
	font-size: 1rem;
	color: #e2e8f0;
	border-bottom: 1px solid rgba(148, 180, 220, 0.1);
}

.penny-vault-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.85rem;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	background: linear-gradient(135deg, #14b8a6, #2dd4bf);
	box-shadow: 0 0 10px rgba(13, 148, 136, 0.4);
}

/* Steps — full shell width (matches game cards above) */
.penny-steps {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.25rem;
	margin-top: 1.5rem;
	width: 100%;
}

@media (min-width: 720px) {
	.penny-steps {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1.25rem 1.15rem;
	}
}

.penny-step {
	padding: 1.25rem 1.15rem;
	text-align: left;
	background: #101a2e;
	border: 1px solid rgba(148, 180, 220, 0.12);
	border-radius: 0.65rem;
	font-weight: 600;
	color: #e2e8f0;
}

/* Testimonials */
.penny-quote {
	margin: 0 0 1rem;
	padding: 1rem 1.15rem;
	background: rgba(16, 26, 46, 0.92);
	border-left: 3px solid #2dd4bf;
	border-radius: 0 0.35rem 0.35rem 0;
	font-style: normal;
	color: #e2e8f0;
}

blockquote.penny-quote {
	margin: 0 0 1rem;
	padding: 1rem 1.15rem;
	background: rgba(16, 26, 46, 0.92);
	border-left: 3px solid #2dd4bf;
	border-radius: 0 0.35rem 0.35rem 0;
}

/* FAQ */
.penny-faq .penny-faq__item {
	width: 100%;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0.75rem;
	padding: 0.85rem 1rem;
	box-sizing: border-box;
	background: #101a2e;
	border: 1px solid rgba(148, 180, 220, 0.1);
	border-radius: 0.35rem;
}

.penny-faq .penny-faq__item[open] {
	border-color: rgba(45, 212, 191, 0.45);
}

/* WP editor content block */
.penny-wp-content {
	padding: clamp(2.5rem, 5vw, 4rem) 0 4rem;
	border-top: 1px solid rgba(148, 180, 220, 0.12);
}

.penny-wp-content .entry-content {
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	color: #cbd5e1;
}

.penny-wp-content .entry-content h2,
.penny-wp-content .entry-content h3 {
	color: #f1f5f9;
}

/* Narrow viewports — consistent section rhythm, comfortable tap targets */
@media (max-width: 639px) {
	.penny-section {
		padding: clamp(2.5rem, 8vw, 4rem) 0;
	}

	.penny-hero {
		padding: clamp(3.25rem, 11vw, 6rem) 0 clamp(2.75rem, 9vw, 5rem);
	}

	.penny-hero__actions {
		flex-direction: column;
		width: 100%;
		max-width: 100%;
		margin-left: auto;
		margin-right: auto;
	}

	.penny-hero__actions .penny-cta {
		width: 100%;
		justify-content: center;
		min-height: 2.75rem;
	}

	.penny-faq .penny-faq__item {
		padding: 1rem 1.15rem;
		border-radius: 0.5rem;
	}

	.penny-faq__summary {
		min-height: 2.75rem;
		display: flex;
		align-items: center;
	}

	.penny-slot-gallery__hero,
	.penny-bonus-page__hero {
		padding-top: clamp(2.75rem, 12vw, 4rem);
	}

	.penny-review-page__cta-row {
		flex-direction: column;
		align-items: stretch;
	}

	.penny-review-page__cta-row .penny-cta {
		width: 100%;
		justify-content: center;
		min-height: 2.75rem;
	}
}

@media (max-width: 1023px) {
	body.penny-luxury-home header .penny-header-ctas {
		gap: 0.5rem;
	}

	body.penny-luxury-home .penny-cta {
		font-size: 0.8125rem;
		padding: 0.5rem 0.85rem;
	}
}

/* --- Slot Gallery (template-slot-gallery.php) --- */
.penny-slot-gallery__hero {
	position: relative;
	padding: clamp(3.5rem, 10vw, 6rem) 0 clamp(2.5rem, 6vw, 4rem);
	border-bottom: 1px solid rgba(45, 212, 191, 0.1);
	background:
		radial-gradient(ellipse 90% 60% at 50% 0%, rgba(13, 148, 136, 0.18) 0%, transparent 55%),
		linear-gradient(180deg, rgba(10, 16, 30, 0.5) 0%, transparent 100%);
}

.penny-slot-gallery__eyebrow {
	max-width: 100%;
	margin: 0 auto 0.75rem;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(45, 212, 191, 0.85);
	text-align: center;
	box-sizing: border-box;
}

.penny-slot-gallery__h1 {
	text-align: center;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.penny-slot-gallery__lead {
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.penny-slot-gallery__search {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: center;
	gap: 0.75rem;
	max-width: 100%;
	margin: clamp(1.75rem, 4vw, 2.5rem) auto clamp(1.75rem, 4vw, 2.5rem);
}

.penny-slot-gallery__search-input {
	flex: 1 1 220px;
	min-height: 3rem;
	padding: 0.65rem 1rem;
	font-size: 1rem;
	font-weight: 600;
	color: #fff;
	background: rgba(6, 10, 20, 0.9);
	border: 1px solid rgba(45, 212, 191, 0.25);
	border-radius: 9999px;
	outline: none;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.penny-slot-gallery__search-input::placeholder {
	color: rgba(224, 224, 224, 0.45);
}

.penny-slot-gallery__search-input:focus {
	border-color: rgba(13, 148, 136, 0.65);
	box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.2);
}

.penny-slot-gallery__search-btn {
	flex: 0 0 auto;
	border: none;
	cursor: pointer;
}

.penny-slot-gallery__hero-cta {
	justify-content: center;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

.penny-slot-gallery__cards {
	margin-top: 0.5rem;
}

.penny-slot-gallery__card-title {
	margin: 0 0 0.35rem;
	font-size: clamp(1.25rem, 2.5vw, 1.5rem);
	font-weight: 800;
	color: #fff;
	line-height: 1.2;
}

.penny-slot-gallery__specs {
	display: grid;
	gap: 0.5rem 1.25rem;
	margin: 1rem 0 0;
	padding: 0.85rem 1rem;
	font-size: 0.875rem;
	font-weight: 600;
	background: rgba(6, 10, 20, 0.45);
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 0.35rem;
}

.penny-slot-gallery__specs dt {
	margin: 0;
	color: rgba(45, 212, 191, 0.85);
}

.penny-slot-gallery__specs dd {
	margin: 0;
	color: #e8e8e8;
}

.penny-slot-gallery__specs > div {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0.35rem 1rem;
	align-items: baseline;
}

.penny-slot-gallery__cats {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.65rem;
	width: 100%;
	max-width: 100%;
	margin: 1rem auto 0;
	box-sizing: border-box;
}

.penny-slot-gallery__chip {
	padding: 0.55rem 1.1rem;
	font-size: 0.875rem;
	font-weight: 700;
	color: #5eead4;
	background: rgba(10, 16, 30, 0.95);
	border: 1px solid rgba(45, 212, 191, 0.28);
	border-radius: 9999px;
	cursor: pointer;
	transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.1s ease;
}

.penny-slot-gallery__chip:hover {
	border-color: rgba(13, 148, 136, 0.55);
	box-shadow: 0 0 20px rgba(13, 148, 136, 0.25);
	transform: translateY(-1px);
}

.penny-slot-gallery__cats-note {
	max-width: 100%;
	margin: 1.5rem auto 0;
	text-align: center;
	font-size: 0.9375rem;
	color: rgba(224, 224, 224, 0.85);
}

.penny-slot-gallery__cats-note a {
	color: #5eead4 !important;
	font-weight: 700;
}

.penny-slot-gallery__anatomy-body {
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.penny-slot-gallery__mobile {
	display: grid;
	gap: clamp(2rem, 5vw, 3rem);
	align-items: center;
}

@media (min-width: 900px) {
	.penny-slot-gallery__mobile {
		grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr);
	}
}

.penny-slot-gallery__mobile-cta-text {
	margin: 1rem 0 0;
	font-size: 1.125rem;
	color: #5eead4;
}

.penny-slot-gallery__mobile-actions {
	justify-content: flex-start;
	margin-top: 1.25rem;
}

.penny-slot-gallery__mobile-figure {
	margin: 0;
	border-radius: 1rem;
	overflow: hidden;
	border: 1px solid rgba(45, 212, 191, 0.2);
	box-shadow: 0 20px 48px rgba(0, 0, 0, 0.5);
}

.penny-slot-gallery__mobile-figure img {
	display: block;
	width: 100%;
	height: auto;
}

/* --- Promotions & Bonuses (template-bonus-inferno.php) — Winner’s Circle --- */
.penny-bonus-page__hero {
	position: relative;
	padding: clamp(3.5rem, 10vw, 6.25rem) 0 clamp(2.5rem, 6vw, 4rem);
	overflow: hidden;
	border-bottom: 1px solid rgba(20, 184, 166, 0.2);
	background:
		radial-gradient(ellipse 85% 55% at 50% -15%, rgba(45, 212, 191, 0.14) 0%, transparent 50%),
		radial-gradient(ellipse 70% 50% at 100% 30%, rgba(20, 184, 166, 0.12) 0%, transparent 45%),
		linear-gradient(180deg, rgba(10, 16, 30, 0.6) 0%, transparent 100%);
}

.penny-bonus-page__eyebrow {
	max-width: 100%;
	margin: 0 auto 0.75rem;
	font-size: 0.8125rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #14b8a6;
	text-align: center;
	text-shadow: 0 0 24px rgba(20, 184, 166, 0.35);
	box-sizing: border-box;
}

.penny-bonus-page .penny-bonus-page__h1.penny-hero__title {
	text-align: center;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	background: linear-gradient(135deg, #fff 0%, #5eead4 45%, #5eead4 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
	text-shadow: none !important;
}

.penny-bonus-page__lead {
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.penny-bonus-page__hero-cta {
	justify-content: center;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

.penny-bonus-page__module-cta {
	max-width: 100%;
	margin: clamp(1.25rem, 3vw, 2rem) auto 0;
	text-align: center;
	font-size: 0.9375rem;
	font-weight: 700;
	box-sizing: border-box;
}

.penny-bonus-page__module-cta--last {
	margin-top: 2rem;
}

.penny-bonus-page__text-link {
	color: #5eead4 !important;
	text-decoration: none !important;
	border-bottom: 1px solid rgba(45, 212, 191, 0.4);
	padding-bottom: 2px;
}

.penny-bonus-page__text-link:hover {
	color: #5eead4 !important;
	border-bottom-color: #5eead4;
}

.penny-bonus-page__learn {
	display: inline-block;
	margin-left: 0.75rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: #5eead4 !important;
	text-decoration: none !important;
	border-bottom: 1px solid rgba(45, 212, 191, 0.35);
}

.penny-bonus-page__learn:hover {
	color: #5eead4 !important;
}

.penny-bonus-page__welcome-box {
	position: relative;
	width: 100%;
	max-width: 100%;
	margin: 1.5rem auto 0;
	padding: clamp(1.5rem, 4vw, 2.25rem);
	border-radius: 1rem;
	background:
		linear-gradient(135deg, rgba(20, 184, 166, 0.08) 0%, transparent 50%),
		linear-gradient(180deg, #0d1628 0%, #101a2e 100%);
	border: 1px solid rgba(45, 212, 191, 0.22);
	box-shadow:
		0 0 0 1px rgba(13, 148, 136, 0.12),
		0 24px 56px rgba(0, 0, 0, 0.45),
		0 0 48px rgba(20, 184, 166, 0.08);
}

.penny-bonus-page__welcome-header {
	text-align: center;
	margin-bottom: 1.25rem;
}

.penny-bonus-page__welcome-badge {
	display: inline-block;
	padding: 0.35rem 0.85rem;
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #0b0b0c;
	background: linear-gradient(135deg, #5eead4 0%, #2dd4bf 100%);
	border-radius: 9999px;
}

.penny-bonus-page__welcome-title {
	margin: 0.65rem 0 0;
	font-size: clamp(1.35rem, 3vw, 1.75rem);
	font-weight: 800;
	color: #fff;
}

.penny-bonus-page__tiers {
	margin: 0;
	padding: 0 0 0 1.25rem;
	list-style: decimal;
	color: #e8e8e8;
	font-weight: 600;
	line-height: 1.55;
}

.penny-bonus-page__tiers li {
	margin-bottom: 1rem;
}

.penny-bonus-page__tiers li strong {
	display: block;
	color: #5eead4;
	margin-bottom: 0.35rem;
}

.penny-bonus-page__tiers li span {
	font-weight: 500;
	color: rgba(224, 224, 224, 0.92);
}

.penny-bonus-page__aside {
	margin-top: 1.5rem;
	padding: 1rem 1.15rem;
	border-radius: 0.5rem;
	font-size: 0.9rem;
	line-height: 1.5;
}

.penny-bonus-page__aside--pro {
	background: rgba(20, 184, 166, 0.1);
	border: 1px solid rgba(20, 184, 166, 0.28);
	color: #f0f0f0;
}

.penny-bonus-page__aside--terms {
	background: rgba(6, 10, 20, 0.65);
	border: 1px solid rgba(255, 255, 255, 0.08);
	color: rgba(224, 224, 224, 0.9);
}

.penny-bonus-page__aside-label {
	margin: 0 0 0.35rem;
	font-size: 0.7rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #5eead4;
}

.penny-bonus-page__grid {
	display: grid;
	gap: 1.25rem;
	margin-top: 1.5rem;
}

@media (min-width: 768px) {
	.penny-bonus-page__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		align-items: stretch;
	}
}

.penny-bonus-page__promo-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 1.35rem 1.25rem;
	background: linear-gradient(180deg, #0d1628 0%, #0a101e 100%);
	border: 1px solid rgba(45, 212, 191, 0.15);
	border-radius: 0.75rem;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
}

.penny-bonus-page__promo-card:hover {
	border-color: rgba(20, 184, 166, 0.45);
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.4);
	transform: translateY(-2px);
}

.penny-bonus-page__promo-title {
	margin: 0 0 0.65rem;
	font-size: 1.2rem;
	font-weight: 800;
	color: #fff;
	line-height: 1.25;
}

.penny-bonus-page__promo-card > p:first-of-type {
	margin: 0 0 1rem;
	flex-grow: 1;
	font-size: 0.9375rem;
	color: rgba(224, 224, 224, 0.9);
	line-height: 1.55;
}

.penny-bonus-page__card-cta {
	margin: 0.75rem 0 0;
	padding-top: 0.75rem;
	border-top: 1px solid rgba(45, 212, 191, 0.12);
	text-align: center;
}

.penny-bonus-page__card-cta a {
	font-weight: 800;
	color: #2dd4bf !important;
	text-decoration: none !important;
}

.penny-bonus-page__card-cta a:hover {
	color: #5eead4 !important;
}

.penny-bonus-page__vip-tiers {
	max-width: 100%;
	margin: 1.25rem auto 0;
	padding: 0;
	list-style: none;
}

.penny-bonus-page__vip-tiers li {
	position: relative;
	margin-bottom: 0.85rem;
	padding-left: 1.25rem;
	font-size: 0.975rem;
	line-height: 1.55;
	color: #e8e8e8;
}

.penny-bonus-page__vip-tiers li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.55rem;
	width: 0.45rem;
	height: 0.45rem;
	border-radius: 50%;
	background: linear-gradient(135deg, #14b8a6, #5eead4);
	box-shadow: 0 0 10px rgba(20, 184, 166, 0.6);
}

/* Same reading rail as section titles / intros — avoids full-shell Pro-Tip vs narrow steps */
.penny-bonus-page__vip-aside {
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

/* Shell width must not be overridden by 100% (was stretching past .penny-container 72rem) */
.penny-container.penny-bonus-page__how {
	width: 100%;
	max-width: var(--penny-shell-max, 72rem);
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

.penny-bonus-page__steps {
	max-width: 100%;
	margin: 1.5rem auto 0;
	padding: 0;
	list-style: none;
	counter-reset: penny-step;
	box-sizing: border-box;
}

.penny-bonus-page__steps > li {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 1rem 1.25rem;
	align-items: flex-start;
	margin-bottom: 1.5rem;
	padding-bottom: 1.5rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.penny-bonus-page__steps > li:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}

.penny-bonus-page__step-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	flex-shrink: 0;
	font-size: 1.125rem;
	font-weight: 900;
	color: #0b0b0c;
	background: linear-gradient(145deg, #5eead4 0%, #2dd4bf 100%);
	border-radius: 50%;
	box-shadow: 0 0 20px rgba(45, 212, 191, 0.35);
}

.penny-bonus-page__step-title {
	margin: 0 0 0.4rem;
	font-size: 1.1rem;
	font-weight: 800;
	color: #fff;
}

.penny-bonus-page__fair-grid {
	display: grid;
	width: 100%;
	gap: 1.5rem;
	margin-top: 1.25rem;
	align-items: start;
}

@media (min-width: 900px) {
	.penny-bonus-page__fair-grid {
		grid-template-columns: minmax(0, 1fr) minmax(220px, 280px);
	}
}

.penny-bonus-page__fair-copy p {
	margin: 0 0 1rem;
	font-size: 0.9375rem;
	line-height: 1.65;
	color: rgba(224, 224, 224, 0.92);
}

.penny-bonus-page__fair-aside {
	margin-top: 0;
}

/* --- Expert Review (template-review-inferno.php) --- */
.penny-review-page__header {
	padding: clamp(3rem, 9vw, 5.5rem) 0 clamp(2rem, 5vw, 3rem);
	border-bottom: 1px solid rgba(45, 212, 191, 0.12);
	background:
		radial-gradient(ellipse 90% 50% at 50% 0%, rgba(20, 184, 166, 0.09) 0%, transparent 55%),
		linear-gradient(180deg, rgba(10, 16, 30, 0.5) 0%, transparent 100%);
}

.penny-review-page__kicker {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: rgba(45, 212, 191, 0.85);
	text-align: center;
}

.penny-review-page__title {
	margin: 0 auto;
	max-width: 100%;
	font-size: clamp(1.65rem, 4vw, 2.5rem);
	font-weight: 800;
	line-height: 1.18;
	letter-spacing: -0.02em;
	text-align: center;
	color: #fff !important;
	text-shadow: 0 0 28px rgba(13, 148, 136, 0.25);
}

.penny-review-page__deck {
	margin: 1.25rem auto 0;
	max-width: 100%;
	font-size: 1.0625rem;
	line-height: 1.72;
	text-align: center;
	color: rgba(224, 224, 224, 0.92);
}

.penny-review-page__section {
	padding-top: clamp(2.25rem, 5vw, 3.5rem);
	padding-bottom: clamp(2.25rem, 5vw, 3.5rem);
}

.penny-review-page__verdict-box {
	max-width: 100%;
	margin: 1.5rem auto 0;
	padding: clamp(1.35rem, 3vw, 2rem);
	background: linear-gradient(165deg, rgba(10, 16, 30, 0.98) 0%, #0a101e 100%);
	border: 1px solid rgba(45, 212, 191, 0.2);
	border-radius: 0.75rem;
	box-shadow: 0 20px 48px rgba(0, 0, 0, 0.5);
}

.penny-review-page__verdict-label {
	margin: 0 0 1rem;
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #2dd4bf;
}

.penny-review-page__scores {
	margin: 0;
}

.penny-review-page__score-row {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 0.75rem 1rem;
	align-items: center;
	padding: 0.65rem 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.penny-review-page__score-row:last-of-type {
	border-bottom: none;
}

.penny-review-page__scores dt {
	margin: 0;
	font-size: 0.95rem;
	font-weight: 600;
	color: #e8e8e8;
}

.penny-review-page__scores dd {
	margin: 0;
	text-align: right;
}

.penny-review-page__score-big {
	font-size: 1.35rem;
	font-weight: 900;
	color: #5eead4;
}

.penny-review-page__score-suffix {
	font-size: 0.9rem;
	font-weight: 600;
	color: rgba(224, 224, 224, 0.75);
}

.penny-review-page__verdict-lead {
	margin: 1.35rem 0 0;
	padding-top: 1.15rem;
	border-top: 1px solid rgba(20, 184, 166, 0.2);
	font-size: 0.975rem;
	line-height: 1.68;
	color: rgba(240, 240, 240, 0.95);
}

.penny-review-page__verdict-lead strong {
	color: #5eead4;
}

.penny-review-page__quote {
	margin: 2rem auto 0;
	max-width: 100%;
	padding: 1.15rem 1.35rem;
	font-size: 1.05rem;
	font-style: italic;
	line-height: 1.65;
	color: #f0f0f0;
	background: rgba(6, 10, 20, 0.65);
	border-left: 4px solid #0d9488;
	border-radius: 0 0.35rem 0.35rem 0;
}

.penny-review-page__quote cite {
	display: block;
	margin-top: 0.75rem;
	font-size: 0.85rem;
	font-style: normal;
	font-weight: 600;
	color: rgba(45, 212, 191, 0.85);
}

.penny-review-page__prose {
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.penny-review-page__prose > p {
	margin: 0 0 1.25rem;
	font-size: 1.02rem;
	line-height: 1.75;
	color: rgba(224, 224, 224, 0.94);
}

.penny-review-page__list {
	margin: 0.75rem 0 1.25rem;
	padding-left: 1.35rem;
	color: rgba(224, 224, 224, 0.95);
	line-height: 1.65;
}

.penny-review-page__list li {
	margin-bottom: 0.5rem;
}

.penny-review-page__list--tight li {
	margin-bottom: 0.4rem;
}

.penny-review-page__columns {
	display: grid;
	gap: 1.25rem;
	margin-top: 1.5rem;
}

@media (min-width: 768px) {
	.penny-review-page__columns {
		grid-template-columns: 1fr 1fr;
		align-items: start;
	}
}

.penny-review-page__column {
	padding: 1.25rem 1.15rem;
	border-radius: 0.5rem;
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.penny-review-page__column--pro {
	background: rgba(46, 125, 50, 0.08);
	border-color: rgba(129, 199, 132, 0.25);
}

.penny-review-page__column--con {
	background: rgba(13, 148, 136, 0.07);
	border-color: rgba(239, 83, 80, 0.22);
}

.penny-review-page__column-title {
	margin: 0 0 0.75rem;
	font-size: 1.1rem;
	font-weight: 800;
	color: #fff;
}

.penny-review-page__grid {
	display: grid;
	gap: clamp(1.5rem, 4vw, 2.5rem);
	align-items: start;
}

@media (min-width: 900px) {
	.penny-review-page__grid {
		grid-template-columns: minmax(0, 1.05fr) minmax(260px, 0.95fr);
	}
}

.penny-review-page__figure {
	margin: 0;
	border-radius: 1rem;
	overflow: hidden;
	border: 1px solid rgba(45, 212, 191, 0.18);
	box-shadow: 0 16px 48px rgba(0, 0, 0, 0.45);
}

.penny-review-page__figure img {
	display: block;
	width: 100%;
	height: auto;
}

.penny-review-page__grade {
	max-width: 100%;
	margin: 1.25rem auto 0;
	padding: 0.85rem 1rem;
	font-size: 1.05rem;
	font-weight: 700;
	color: #5eead4;
	background: rgba(45, 212, 191, 0.06);
	border: 1px solid rgba(45, 212, 191, 0.2);
	border-radius: 0.35rem;
	box-sizing: border-box;
}

.penny-review-page__cta-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.75rem 1rem;
	max-width: 100%;
	margin: 1.5rem auto 0;
	box-sizing: border-box;
}

.penny-review-page__inline-link {
	font-weight: 700;
	color: #5eead4 !important;
	text-decoration: none !important;
	border-bottom: 1px solid rgba(45, 212, 191, 0.35);
}

.penny-review-page__inline-link:hover {
	color: #5eead4 !important;
}

/* Review page — restore list markers (global reset removes bullets), reading rail, FAQ affordance */
.penny-review-page.penny-front,
.penny-review-page.penny-front .penny-review-page__article {
	color: rgba(224, 224, 224, 0.95);
}

.penny-review-page__prose {
	max-width: min(100%, var(--penny-content-max, 48rem));
}

.penny-review-page__prose > p > strong,
.penny-review-page__prose strong {
	color: #fff;
	font-weight: 800;
}

.penny-review-page__list,
.penny-review-page__column .penny-review-page__list {
	list-style-type: disc;
	list-style-position: outside;
	padding-left: 1.5rem;
}

.penny-review-page__list li::marker,
.penny-review-page__column .penny-review-page__list li::marker {
	color: rgba(45, 212, 191, 0.95);
}

.penny-review-page__column .penny-review-page__list {
	margin-top: 0.5rem;
}

.penny-review-page__quote p {
	margin: 0;
}

.penny-review-page__scores {
	display: block;
}

.penny-review-page__scores .penny-review-page__score-row:first-child {
	padding-top: 0;
}

.penny-review-page__section .penny-section-title {
	margin-bottom: clamp(1rem, 2.5vw, 1.5rem);
}

.penny-review-page .penny-faq__summary {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
	font-weight: 700;
	line-height: 1.45;
}

.penny-review-page .penny-faq__summary::after {
	content: "+";
	flex-shrink: 0;
	width: 1.5rem;
	text-align: center;
	font-weight: 900;
	font-size: 1.125rem;
	line-height: 1.35;
	color: rgba(45, 212, 191, 0.75);
	transition: color 0.2s ease;
}

.penny-review-page .penny-faq__item[open] > .penny-faq__summary::after {
	content: "\2212";
	color: #2dd4bf;
}

.penny-review-page .penny-faq__q {
	flex: 1;
	min-width: 0;
}

/* --- Legal & Security (template-legal-inferno.php) — document layout --- */
.penny-legal-doc__masthead {
	padding: clamp(2.5rem, 6vw, 4rem) 0 clamp(1.5rem, 4vw, 2.25rem);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	background: rgba(6, 10, 20, 0.6);
}

.penny-legal-doc__title {
	margin: 0 auto;
	max-width: var(--penny-content-max);
	font-size: clamp(1.35rem, 3vw, 1.85rem);
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.02em;
	text-align: center;
	color: #f5f5f5 !important;
}

.penny-legal-doc__meta {
	margin: 0.75rem auto 0;
	max-width: var(--penny-content-max);
	font-size: 0.875rem;
	line-height: 1.5;
	text-align: center;
	color: rgba(200, 200, 200, 0.85);
}

.penny-legal-doc__paper {
	max-width: var(--penny-content-max);
	margin-left: auto;
	margin-right: auto;
	padding: clamp(2rem, 5vw, 3.5rem) 0 clamp(3rem, 6vw, 4.5rem);
}

.penny-legal-doc__section {
	margin: 0;
}

.penny-legal-doc__h2 {
	margin: 0 0 1rem;
	font-size: 1.05rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: rgba(224, 224, 224, 0.95);
}

.penny-legal-doc__section p {
	margin: 0 0 1rem;
	font-size: 0.9375rem;
	line-height: 1.7;
	color: rgba(218, 218, 218, 0.95);
}

.penny-legal-doc__section p strong {
	color: #fff;
	font-weight: 700;
}

.penny-legal-doc__list {
	margin: 0.75rem 0 1rem;
	padding-left: 1.25rem;
	font-size: 0.9375rem;
	line-height: 1.65;
	color: rgba(218, 218, 218, 0.95);
}

.penny-legal-doc__list li {
	margin-bottom: 0.65rem;
}

.penny-legal-doc__link {
	color: #90caf9 !important;
	text-decoration: underline !important;
	text-underline-offset: 2px;
	font-weight: 600;
}

.penny-legal-doc__link:hover {
	color: #b3e5fc !important;
}

.penny-legal-doc__rule {
	margin: clamp(1.75rem, 4vw, 2.5rem) 0;
	border: none;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.penny-legal-doc__section--closing {
	margin-top: 0.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid rgba(255, 255, 255, 0.06);
}

/* Corporate / policy appendix (block editor) */
.penny-corporate-page__entry {
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	font-size: 0.9375rem;
	line-height: 1.7;
	color: rgba(218, 218, 218, 0.95);
}

.penny-corporate-page__entry > *:first-child {
	margin-top: 0;
}

.penny-corporate-page__entry h2,
.penny-corporate-page__entry h3 {
	margin: 1.25rem 0 0.65rem;
	font-size: 1rem;
	font-weight: 700;
	color: #f0f0f0;
}

.penny-corporate-page__entry p,
.penny-corporate-page__entry li {
	margin: 0 0 0.85rem;
}

.penny-corporate-page__entry a {
	color: #90caf9 !important;
	text-decoration: underline !important;
}

.penny-corporate-page__entry a:hover {
	color: #b3e5fc !important;
}

.penny-corporate-page__paged {
	margin-top: 1.25rem;
	font-size: 0.875rem;
	color: rgba(200, 200, 200, 0.9);
}

.penny-corporate-page__paged-label {
	margin-right: 0.35rem;
	font-weight: 700;
}

/* =============================================================================
   Blog / archive / single / author / search — Free Penny luxury (matches front shell)
   ============================================================================= */

body.penny-luxury-home.lv-posts-luxury #main-content.penny-front {
	color: rgba(224, 224, 224, 0.95);
}

.penny-front.penny-blog {
	padding-bottom: clamp(2.5rem, 6vw, 4rem);
}

.penny-blog__hero {
	padding: clamp(2.25rem, 5vw, 3.5rem) 0 clamp(1.75rem, 4vw, 2.5rem);
	border-bottom: 1px solid rgba(45, 212, 191, 0.1);
	background:
		radial-gradient(ellipse 70% 80% at 50% -30%, rgba(13, 148, 136, 0.18) 0%, transparent 55%),
		rgba(6, 10, 20, 0.35);
}

.penny-blog__eyebrow {
	max-width: 100%;
	margin: 0 0 0.65rem;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(45, 212, 191, 0.95);
}

.penny-blog__title {
	margin: 0;
	max-width: 100%;
	font-size: clamp(1.65rem, 4vw, 2.35rem);
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: -0.02em;
	color: #fff;
}

.penny-blog__lead {
	margin: 1rem 0 0;
	max-width: 100%;
	font-size: 1.0625rem;
	line-height: 1.65;
	color: rgba(224, 224, 224, 0.88);
}

.penny-blog__archive-desc {
	margin-top: 1rem;
	max-width: 100%;
	font-size: 0.9375rem;
	line-height: 1.65;
	color: rgba(200, 200, 200, 0.9);
}

.penny-blog__archive-desc p {
	margin: 0 0 0.65rem;
}

.penny-blog__main {
	padding: clamp(2rem, 5vw, 3rem) 0;
}

.penny-blog__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
}

@media (min-width: 640px) {
	.penny-blog__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 1.5rem 1.25rem;
	}
}

@media (min-width: 1024px) {
	.penny-blog__grid {
		grid-template-columns: repeat(3, 1fr);
		gap: 1.75rem 1.5rem;
	}
}

.penny-blog__grid--related {
	margin-top: 0;
}

.penny-blog__empty {
	text-align: center;
	padding: clamp(2.5rem, 6vw, 4rem) 1rem;
	border-radius: 1rem;
	border: 1px solid rgba(45, 212, 191, 0.12);
	background: rgba(10, 16, 30, 0.55);
}

.penny-blog__empty p {
	margin: 0 0 1.25rem;
	color: rgba(200, 200, 200, 0.95);
}

.penny-blog__empty--inline {
	text-align: left;
	padding: 1.25rem 0;
	border: none;
	background: transparent;
	color: rgba(200, 200, 200, 0.9);
}

/* Search hero form */
.penny-blog--search .penny-blog__search {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 0.75rem;
	margin-top: 1.5rem;
	max-width: 100%;
}

.penny-blog__search-input {
	flex: 1 1 12rem;
	min-height: 2.75rem;
	padding: 0 1rem;
	font-size: 0.9375rem;
	color: #f5f5f5;
	background: rgba(10, 16, 30, 0.85);
	border: 1px solid rgba(45, 212, 191, 0.22);
	border-radius: 9999px;
	outline: none;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.penny-blog__search-input::placeholder {
	color: rgba(180, 180, 180, 0.75);
}

.penny-blog__search-input:focus {
	border-color: rgba(20, 184, 166, 0.55);
	box-shadow: 0 0 0 3px rgba(13, 148, 136, 0.2);
}

.penny-blog__search-btn {
	flex: 0 0 auto;
}

/* Post cards */
.penny-post-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	border-radius: 1rem;
	border: 1px solid rgba(45, 212, 191, 0.12);
	background: linear-gradient(165deg, rgba(16, 26, 46, 0.95) 0%, rgba(8, 14, 28, 0.98) 100%);
	box-shadow:
		0 4px 24px rgba(0, 0, 0, 0.35),
		inset 0 1px 0 rgba(255, 255, 255, 0.04);
	transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.penny-post-card:hover {
	transform: translateY(-3px);
	border-color: rgba(45, 212, 191, 0.28);
	box-shadow:
		0 12px 40px rgba(0, 0, 0, 0.45),
		0 0 32px rgba(20, 184, 166, 0.12);
}

.penny-post-card__thumb {
	position: relative;
	display: block;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: linear-gradient(145deg, #152238 0%, #101a2e 100%);
}

.penny-post-card__thumb--placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none !important;
}

.penny-post-card__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.35s ease;
}

.penny-post-card:hover .penny-post-card__img {
	transform: scale(1.04);
}

.penny-post-card__placeholder-letter {
	font-size: clamp(2.5rem, 6vw, 3.5rem);
	font-weight: 900;
	color: #5eead4;
	text-shadow: 0 0 24px rgba(20, 184, 166, 0.4);
}

.penny-post-card__body {
	display: flex;
	flex-direction: column;
	flex: 1;
	padding: 1.1rem 1.15rem 1.2rem;
	gap: 0.5rem;
}

.penny-post-card__cat {
	margin: 0;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.penny-post-card__cat a {
	color: #5eead4 !important;
	text-decoration: none !important;
}

.penny-post-card__cat a:hover {
	color: #5eead4 !important;
}

.penny-post-card__cat--muted {
	color: rgba(180, 180, 180, 0.85) !important;
}

.penny-post-card__title {
	margin: 0;
	font-size: 1.0625rem;
	font-weight: 800;
	line-height: 1.35;
}

.penny-post-card__title a {
	color: #fff !important;
	text-decoration: none !important;
}

.penny-post-card__title a:hover {
	color: #99f6e4 !important;
}

.penny-post-card__excerpt {
	margin: 0;
	flex: 1;
	font-size: 0.875rem;
	line-height: 1.55;
	color: rgba(200, 200, 200, 0.9);
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.penny-post-card__meta {
	margin-top: auto;
	padding-top: 0.35rem;
	font-size: 0.8125rem;
	color: rgba(160, 160, 160, 0.95);
}

.penny-post-card__meta-sep {
	margin: 0 0.25rem;
}

/* Single */
.penny-single__breadcrumb-wrap {
	padding: 1rem 0 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
	background: rgba(6, 10, 20, 0.5);
}

.penny-single__breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem 0.5rem;
	font-size: 0.8125rem;
}

.penny-single__breadcrumb a {
	color: #5eead4 !important;
	text-decoration: none !important;
	font-weight: 600;
}

.penny-single__breadcrumb a:hover {
	color: #5eead4 !important;
}

.penny-single__bc-sep {
	color: rgba(255, 255, 255, 0.25);
}

.penny-single__bc-current {
	color: rgba(200, 200, 200, 0.85);
	font-weight: 600;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.penny-single__body {
	padding: clamp(1.5rem, 4vw, 2.5rem) 0 clamp(2.5rem, 6vw, 4rem);
}

.penny-single__container {
	max-width: var(--penny-content-max);
}

.penny-single-article {
	margin: 0;
}

.penny-single-article__header {
	margin-bottom: 1.75rem;
}

.penny-single-article__cat {
	margin: 0 0 0.65rem;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.penny-single-article__cat a {
	color: #5eead4 !important;
	text-decoration: none !important;
}

.penny-single-article__title {
	margin: 0;
	font-size: clamp(1.75rem, 4.5vw, 2.5rem);
	font-weight: 800;
	line-height: 1.15;
	color: #fff;
}

.penny-single-article__meta {
	margin-top: 0.85rem;
	font-size: 0.875rem;
	color: rgba(180, 180, 180, 0.95);
}

.penny-single-prose {
	font-size: 1.0625rem;
	line-height: 1.75;
	color: rgba(224, 224, 224, 0.95);
}

.penny-single-prose > *:first-child {
	margin-top: 0;
}

.penny-single-prose h2,
.penny-single-prose h3,
.penny-single-prose h4 {
	margin: 1.75rem 0 0.75rem;
	font-weight: 800;
	color: #f5f5f5;
}

.penny-single-prose h2 {
	font-size: 1.35rem;
}

.penny-single-prose h3 {
	font-size: 1.15rem;
}

.penny-single-prose p {
	margin: 0 0 1.1rem;
}

.penny-single-prose a {
	color: #90caf9 !important;
	text-decoration: underline;
	text-underline-offset: 2px;
	font-weight: 600;
}

.penny-single-prose a:hover {
	color: #b3e5fc !important;
}

.penny-single-prose ul,
.penny-single-prose ol {
	margin: 0 0 1.1rem;
	padding-left: 1.35rem;
}

.penny-single-prose blockquote {
	margin: 1.25rem 0;
	padding: 1rem 1.25rem;
	border-left: 4px solid rgba(45, 212, 191, 0.45);
	background: rgba(10, 16, 30, 0.5);
	border-radius: 0 0.5rem 0.5rem 0;
	color: rgba(220, 220, 220, 0.95);
}

.penny-single-prose img,
.penny-single-prose .wp-block-image img {
	border-radius: 0.5rem;
}

.penny-single-prose__pages {
	display: block;
	margin: 1.5rem 0;
	font-size: 0.9375rem;
}

.penny-single-prose__pages-label {
	font-weight: 700;
	color: rgba(200, 200, 200, 0.9);
	margin-right: 0.35rem;
}

.penny-single-article__tags {
	margin: 2rem 0 0;
	padding-top: 1.25rem;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	font-size: 0.875rem;
}

.penny-single-article__tags-label {
	font-weight: 700;
	color: rgba(200, 200, 200, 0.85);
	margin-right: 0.5rem;
}

.penny-single-article__tag {
	display: inline-block;
	margin: 0.25rem 0.35rem 0 0;
	padding: 0.25rem 0.65rem;
	border-radius: 9999px;
	border: 1px solid rgba(45, 212, 191, 0.25);
	color: #99f6e4 !important;
	text-decoration: none !important;
	font-weight: 600;
	font-size: 0.8125rem;
}

.penny-single-article__tag:hover {
	background: rgba(45, 212, 191, 0.1);
	border-color: rgba(45, 212, 191, 0.45);
	color: #fff !important;
}

.penny-single-article__authorbox {
	margin-top: 2.5rem;
	padding: 1.5rem;
	border-radius: 1rem;
	border: 1px solid rgba(45, 212, 191, 0.15);
	background: linear-gradient(155deg, rgba(16, 28, 44, 0.55) 0%, rgba(8, 14, 28, 0.92) 100%);
}

.penny-single-article__authorbox-inner {
	display: flex;
	gap: 1.25rem;
	align-items: flex-start;
}

.penny-single-article__author-avatar {
	flex-shrink: 0;
	border-radius: 9999px;
	overflow: hidden;
	border: 2px solid rgba(45, 212, 191, 0.35);
	box-shadow: 0 0 20px rgba(20, 184, 166, 0.15);
}

.penny-single-article__author-heading {
	margin: 0 0 0.35rem;
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: rgba(45, 212, 191, 0.95);
}

.penny-single-article__author-name {
	margin: 0 0 0.5rem;
	font-size: 1.125rem;
	font-weight: 800;
}

.penny-single-article__author-name a {
	color: #fff !important;
	text-decoration: none !important;
}

.penny-single-article__author-name a:hover {
	color: #99f6e4 !important;
}

.penny-single-article__author-bio {
	margin: 0 0 0.75rem;
	font-size: 0.9375rem;
	line-height: 1.6;
	color: rgba(210, 210, 210, 0.95);
}

.penny-single-article__author-bio--muted {
	color: rgba(180, 180, 180, 0.85);
	font-style: italic;
}

.penny-single-article__author-more {
	font-size: 0.875rem;
	font-weight: 700;
	color: #5eead4 !important;
	text-decoration: none !important;
}

.penny-single-article__author-more:hover {
	color: #5eead4 !important;
}

.penny-single__related {
	margin-top: 3rem;
	padding-top: 2rem;
	border-top: 1px solid rgba(45, 212, 191, 0.12);
}

.penny-single__related-title {
	margin: 0 0 1.25rem;
	font-size: 1.25rem;
	font-weight: 800;
	color: #fff;
}

.penny-single__post-nav {
	margin-top: 2.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.penny-single__post-nav .nav-links {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.75rem;
}

@media (min-width: 600px) {
	.penny-single__post-nav .nav-links {
		grid-template-columns: 1fr 1fr;
	}
}

.penny-single__post-nav .nav-previous,
.penny-single__post-nav .nav-next {
	margin: 0;
}

.penny-single__post-nav .nav-next {
	text-align: right;
}

.penny-single__post-nav a {
	display: block;
	padding: 1rem 1.15rem;
	border-radius: 0.75rem;
	border: 1px solid rgba(45, 212, 191, 0.18);
	background: rgba(10, 16, 30, 0.65);
	text-decoration: none !important;
	transition: border-color 0.15s ease, background 0.15s ease;
}

.penny-single__post-nav a:hover {
	border-color: rgba(45, 212, 191, 0.4);
	background: rgba(16, 32, 48, 0.6);
}

.penny-single__nav-label {
	display: block;
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #5eead4;
	margin-bottom: 0.35rem;
}

.penny-single__nav-title {
	display: block;
	font-size: 0.9375rem;
	font-weight: 700;
	color: #f0f0f0 !important;
	line-height: 1.35;
}

/* Author archive */
.penny-author__hero .penny-blog__title {
	margin-top: 0;
}

.penny-author__head {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 1.25rem;
}

@media (min-width: 640px) {
	.penny-author__head {
		flex-direction: row;
		align-items: flex-start;
		text-align: left;
	}
}

.penny-author__avatar-wrap {
	flex-shrink: 0;
	border-radius: 9999px;
	padding: 4px;
	background: linear-gradient(145deg, rgba(45, 212, 191, 0.45) 0%, rgba(13, 148, 136, 0.35) 100%);
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);
}

.penny-author__avatar-wrap img,
.penny-author__avatar-img {
	border-radius: 9999px;
	display: block;
}

.penny-author__intro {
	flex: 1;
	min-width: 0;
}

.penny-author__count {
	margin: 0.75rem 0 0;
	font-size: 0.875rem;
	color: rgba(180, 180, 180, 0.9);
}

.penny-author__back {
	margin: 1rem 0 0;
}

.penny-author__back a,
.penny-author__back .penny-legal-doc__link {
	color: #90caf9 !important;
	text-decoration: underline !important;
	font-weight: 600;
}

.penny-author__back a:hover {
	color: #b3e5fc !important;
}

.penny-author__section-title {
	margin: 0 0 1.5rem;
	font-size: 1.15rem;
	font-weight: 800;
	color: #fff;
}

/* Pagination — Free Penny (overrides front-page teal for luxury blog context) */
body.penny-luxury-home.lv-posts-luxury .lv-pagination-shell .nav-links {
	background: linear-gradient(180deg, rgba(14, 22, 40, 0.96) 0%, rgba(8, 14, 28, 0.98) 100%);
	border: 1px solid rgba(45, 212, 191, 0.18);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35);
}

body.penny-luxury-home.lv-posts-luxury .lv-pagination-shell a.page-numbers:not(.prev):not(.next) {
	color: rgba(224, 224, 224, 0.95) !important;
}

body.penny-luxury-home.lv-posts-luxury .lv-pagination-shell a.page-numbers:not(.prev):not(.next):hover {
	background: rgba(20, 184, 166, 0.15);
	border-color: rgba(45, 212, 191, 0.35);
	color: #5eead4 !important;
}

body.penny-luxury-home.lv-posts-luxury .lv-pagination-shell span.page-numbers.dots {
	color: rgba(255, 255, 255, 0.35) !important;
}

body.penny-luxury-home.lv-posts-luxury .lv-pagination-shell span.page-numbers.current {
	background: linear-gradient(145deg, #0d9488 0%, #0f766e 100%);
	border-color: rgba(20, 184, 166, 0.45);
	color: #fff !important;
}

body.penny-luxury-home.lv-posts-luxury .lv-pagination-shell a.page-numbers.prev,
body.penny-luxury-home.lv-posts-luxury .lv-pagination-shell a.page-numbers.next {
	border-color: rgba(45, 212, 191, 0.35);
	color: #5eead4 !important;
}

body.penny-luxury-home.lv-posts-luxury .lv-pagination-shell a.page-numbers.prev:hover,
body.penny-luxury-home.lv-posts-luxury .lv-pagination-shell a.page-numbers.next:hover {
	background: rgba(45, 212, 191, 0.08);
	border-color: #5eead4;
	color: #5eead4 !important;
}

/* TOC / comments — dark glass on Free Penny single */
body.penny-luxury-home.lv-posts-luxury .entry-content #toc_container,
body.penny-luxury-home.lv-posts-luxury .entry-content #ez-toc-container,
body.penny-luxury-home.lv-posts-luxury .entry-content div[class*="ez-toc-wrap"],
body.penny-luxury-home.lv-posts-luxury .entry-content .ez-toc-v2_0,
body.penny-luxury-home.lv-posts-luxury .entry-content .lwptoc,
body.penny-luxury-home.lv-posts-luxury .entry-content .lwptoc_i,
body.penny-luxury-home.lv-posts-luxury .entry-content .simpletoc,
body.penny-luxury-home.lv-posts-luxury .entry-content .wp-block-table-of-contents {
	background: rgba(10, 16, 30, 0.85) !important;
	border: 1px solid rgba(45, 212, 191, 0.15) !important;
	color: rgba(224, 224, 224, 0.95) !important;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.35);
}

body.penny-luxury-home.lv-posts-luxury .entry-content #toc_container .toc_title,
body.penny-luxury-home.lv-posts-luxury .entry-content .ez-toc-title,
body.penny-luxury-home.lv-posts-luxury .entry-content .lwptoc_header,
body.penny-luxury-home.lv-posts-luxury .entry-content .lwptoc_title {
	color: #fff !important;
}

body.penny-luxury-home.lv-posts-luxury .entry-content .toc_list a,
body.penny-luxury-home.lv-posts-luxury .entry-content .ez-toc-list a,
body.penny-luxury-home.lv-posts-luxury .entry-content .ez-toc-link,
body.penny-luxury-home.lv-posts-luxury .entry-content .lwptoc_item a {
	color: #5eead4 !important;
}

body.penny-luxury-home.lv-posts-luxury .entry-content .toc_list a:hover,
body.penny-luxury-home.lv-posts-luxury .entry-content .ez-toc-list a:hover {
	color: #5eead4 !important;
}

body.penny-luxury-home.lv-posts-luxury #comments.comments-area {
	background: rgba(8, 14, 28, 0.65);
	border: 1px solid rgba(45, 212, 191, 0.12);
	border-radius: 1rem;
	padding: 1.5rem;
	margin-top: 2rem;
}

body.penny-luxury-home.lv-posts-luxury #comments .comments-title {
	color: #fff;
}

body.penny-luxury-home.lv-posts-luxury .comment-list .comment-body {
	border-color: rgba(255, 255, 255, 0.08);
}

body.penny-luxury-home.lv-posts-luxury #respond textarea,
body.penny-luxury-home.lv-posts-luxury #respond input[type="text"],
body.penny-luxury-home.lv-posts-luxury #respond input[type="email"],
body.penny-luxury-home.lv-posts-luxury #respond input[type="url"] {
	background: rgba(10, 16, 30, 0.9);
	border: 1px solid rgba(45, 212, 191, 0.2);
	color: #f5f5f5;
}

body.penny-luxury-home.lv-posts-luxury #respond .form-submit input[type="submit"] {
	background: linear-gradient(145deg, #0d9488 0%, #0f766e 100%);
	border: 1px solid rgba(20, 184, 166, 0.45);
	color: #fff;
	font-weight: 800;
}
