.tp-home, .tp-about, .tp-page {
	color: #1A2B3C;
	font-family: system-ui, -apple-system, 'Segoe UI', sans-serif;
	font-size: 16px;
	line-height: 1.7;
	max-width: 680px;
	margin: 0 auto;
}

.tp-home *, .tp-home ::before, .tp-home ::after,
.tp-about *, .tp-about ::before, .tp-about ::after,
.tp-page *, .tp-page ::before, .tp-page ::after {
	box-sizing: border-box;
}

.tp-home .intro-eyebrow, .tp-about .intro-eyebrow, .tp-page .intro-eyebrow {
	font-size: 11px;
	font-variant: small-caps;
	letter-spacing: .12em;
	color: #B86F3C;
	margin-bottom: 14px;
	text-transform: lowercase;
}

.tp-home .intro-name, .tp-about .intro-name, .tp-page .intro-name {
	font-family: Georgia, 'Times New Roman', serif;
	font-size: 32px;
	font-weight: normal;
	line-height: 1.2;
	color: #1A2B3C;
	margin-bottom: 6px;
}

.tp-home .intro-title, .tp-about .intro-title, .tp-page .intro-title {
	font-family: Georgia, 'Times New Roman', serif;
	font-size: 15px;
	color: #5C6E7E;
	font-style: italic;
	margin-bottom: 28px;
}

.tp-about .profile-photo {
	display: block;
	width: 100%;
	max-width: 320px;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	object-position: top center;
	margin: 0 auto 32px;
	border-radius: 2px;
}

.tp-home .intro-body, .tp-about .intro-body, .tp-page .intro-body {
	font-size: 16px;
	color: #1A2B3C;
	max-width: 600px;
	margin-bottom: 10px;
}

.tp-home .intro-body + .intro-body, .tp-about .intro-body + .intro-body, .tp-page .intro-body + .intro-body {
	margin-top: 14px;
}

.tp-home hr.section-rule, .tp-about hr.section-rule, .tp-page hr.section-rule {
	border: none;
	border-top: 1px solid #D0D6DE;
	margin: 40px 0;
}

.tp-home .section-label, .tp-about .section-label, .tp-page .section-label {
	font-size: 10px;
	font-variant: small-caps;
	letter-spacing: .14em;
	color: #5C6E7E;
	text-transform: lowercase;
	margin-bottom: 20px;
}

.tp-about .content-heading {
	font-family: Georgia, 'Times New Roman', serif;
	font-size: 20px;
	font-weight: normal;
	color: #1A2B3C;
	margin-bottom: 16px;
}

.tp-about .body-list {
	list-style: none;
	padding: 0;
	margin: 0 0 10px;
}

.tp-about .body-list li {
	list-style-type: none;
	position: relative;
	padding-left: 18px;
	margin-bottom: 12px;
	color: #1A2B3C;
	font-size: 15px;
	line-height: 1.65;
}

.tp-about .body-list li::before {
	content: '–';
	position: absolute;
	left: 0;
	color: #B86F3C;
}

.tp-home .cards, .tp-page .cards {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.tp-home .card, .tp-page .card {
	background: #FFFFFF;
	border-left: 3px solid #2E6F9E;
	padding: 20px 22px;
}

.tp-home .card:nth-child(2) {
	border-left-color: #B86F3C;
}

.tp-home .card:nth-child(3) {
	border-left-color: #2E6F9E;
}

.tp-home .card-heading, .tp-page .card-heading {
	font-family: Georgia, 'Times New Roman', serif;
	font-size: 18px;
	font-weight: normal;
	color: #1A2B3C;
	margin-bottom: 8px;
}

.tp-home .card-body, .tp-page .card-body {
	font-size: 14px;
	color: #5C6E7E;
	line-height: 1.65;
	margin-bottom: 14px;
}

.tp-page .card-status {
	display: inline-block;
	font-size: 10px;
	font-variant: small-caps;
	letter-spacing: .1em;
	text-transform: lowercase;
	color: #B86F3C;
	border: 1px solid #B86F3C;
	border-radius: 2px;
	padding: 2px 8px;
	margin-bottom: 10px;
}

.tp-home .card-link, .tp-about .card-link, .tp-page .card-link {
	font-size: 13px;
	color: #2E6F9E;
	text-decoration: none;
	letter-spacing: .03em;
	border-bottom: 1px solid transparent;
	word-break: break-word;
}

.tp-home .card:nth-child(2) .card-link {
	color: #B86F3C;
}

.tp-home .card-link:hover, .tp-about .card-link:hover, .tp-page .card-link:hover {
	border-bottom-color: currentColor;
}

.tp-home .card-link::after, .tp-about .card-link::after, .tp-page .card-link::after {
	content: ' →';
}

.tp-page .body-list {
	list-style: none;
	padding: 0;
	margin: 10px 0;
}

.tp-page .body-list li {
	list-style-type: none;
	position: relative;
	padding-left: 18px;
	margin-bottom: 8px;
	color: #1A2B3C;
	font-size: 15px;
	line-height: 1.65;
}

.tp-page .body-list li::before {
	content: '–';
	position: absolute;
	left: 0;
	color: #B86F3C;
}

.tp-page .intro-body strong {
	color: #1A2B3C;
}

#subnav {
	display: none;
}

body.blog #subnav, body.single #subnav, body.category #subnav, body.archive #subnav, body.tag #subnav, body.search-results #subnav {
	display: block;
}

.tp-page .content-heading {
	  font-family: Georgia, 'Times New Roman', serif;
	  font-size: 20px;
	  font-weight: normal;
	  color: #1A2B3C;
	  margin-bottom: 16px;
}
.tp-page .intro-body strong { color: #1A2B3C; }
}
.header-left h4 a {
	  color: #F5F7F9;
}
.header-left h4 a:hover {
	  color: #5AAAD8;
}
.header-left p {
	  color: #F5F7F9;
	  text-shadow: 0 1px 4px rgba(0,0,0,0.65);
}
}
}
}

.header-left h4 a { color: #F5F7F9; }

.header-left h4 a { color: #F5F7F9 !important; }

.page-item-882 { display: none !important; }

.header-left h1 a { color: #F5F7F9 !important; }
.header-left h1 a:hover { color: #5AAAD8 !important; }


/* Post 497 (Jan 20 elections timeline) had ~140 empty <p> spacer paragraphs baked into its content from the original Classic Editor authoring, making it read as way too spaced out. Editing the post content directly (removing them) triggers a WordPress.com save-time content-processing bug that balloons the content to millions of characters, so the fix is CSS-only: collapse the empty paragraphs visually instead of touching content. */
body.postid-497 .entry p:empty { display: none !important; }

.post-497 .entry p:empty { display: none !important; }