@import url('https://fonts.googleapis.com/css2?family=Archivo+Black&family=Archivo:ital,wght@0,100..900;1,100..900&family=Merriweather:ital,opsz,wght@0,18..144,300..900;1,18..144,300..900&display=swap');

/* RESET / BASE */

*, *::before, *::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
	overflow-x: hidden;
}

img, video, svg, figure, table {
	max-width: 100%;
	height: auto;
	display: block;
}

iframe {
	width: 100%;
	max-width: 100%;
	display: block;
	border: 0;
}

input, select, textarea, button {
	font: inherit;
	font-size: max(16px, 1em);
	max-width: 100%;
}

p, li, h1, h2, h3, h4, h5, h6 {
	overflow-wrap: break-word;
}

p {
	margin: 10px 0 15px;
}

hr {
	margin: auto;
}

/* PAGE FRAME */

#page {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

#page > * {
	width: 100%;
}

#primary {
	flex: 1 0 auto;
	margin-bottom: 60px;
}

#secondary {
	margin-bottom: 0;
}

#colophon {
	background: #000;
}

#colophon > *:first-child {
	margin-top: 0;
}

#colophon > *:last-child,
.fdd-archive-widgets > *:last-child {
	margin-bottom: 0;
}

/* LAYOUT */

.container {
	width: 100%;
	max-width: 1100px;
	margin-inline: auto;
	padding-inline: 20px;
}

.fdd-wrapper, #comments, .page-title, .archive-description {
	max-width: 1020px;
	margin-inline: auto;
	padding: 0 15px;
}

.page-title {
	margin-top: 30px;
}

.archive-description p {
	font-size: 1.25rem;
}

main, #secondary {
	width: 100%;
	margin-inline: auto;
}
 
.single #primary {
	max-width: 1020px;
}

article, .post, article.page {
	width: 100%;
	max-width: 1020px;
	margin-inline: auto;
	padding: 30px 15px;
	display: block;
}

/* MASTHEAD */

#masthead {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: stretch;
	text-align: center;
	padding: 0 15px;
	min-height: 550px;
	background-image:
url('https://freudiandeathdrive.blog/wp-content/uploads/2026/08/Freudian-Death-Drive-Social-Media-Banner.png');
	background-size: 100%;
	background-position: center center;
	box-shadow: 0 4px 12px -4px rgba(0, 0, 0, 0.25);
}

.custom-logo {
	width: 400px;
}

/* TYPOGRAPHY */

body, p {
	font-family: "Archivo", sans-serif;
	font-size: 1rem;
	line-height: 1.6em;
	color: #000;
}

h1, h2, h3,
h1 a, h2 a, h3 a,
h1 a:hover, h2 a:hover, h3 a:hover,
h1 a:visited, h2 a:visited, h3 a:visited {
	font-family: "Archivo Black", sans-serif;
	line-height: 1.5em;
	color: #000;
	text-decoration: none;
}

h4, h5, h6,
h4 a, h5 a, h6 a,
h4 a:hover, h5 a:hover, h6 a:hover,
h4 a:visited, h5 a:visited, h6 a:visited {
	font-family: "Archivo", sans-serif;
	color: #000;
}

h4, h5, h6,
h4 a, h5 a, h6 a,
blockquote, blockquote p,
.site-description {
	text-shadow:
		0 1px 2px rgba(0, 0, 0, 0.06),
		0 3px 8px rgba(0, 0, 0, 0.08);
}

h1, h2, h3, h4, h5, h6, :is(h1,h2,h3,h4,h5,h6) :is(a, a:link, a:visited, a:hover, a:active) { color: #000; }

figcaption, .entry-meta, .cat-links, .tags-links, .comments-link {
	font-size: 0.8rem;
	line-height: 1.25em;
}

blockquote {
	margin: 45px auto;
	max-width: 90%;
}

blockquote, blockquote p {
	font-family: "Merriweather", serif;
	font-size: 1.15rem;
}

blockquote p {
	margin: 0;
}

blockquote cite {
	margin: 5px 0 0 15px;
}

a, a:link, a:active, a:visited {
	text-decoration: none;
	color: darkblue;
}

a:hover {
	color: blue;
}

/* LISTS */

ol.wp-block-list,
ul.wp-block-list {
	padding: 0;
	margin-left: 30px;
}

ol.wp-block-list li,
ul.wp-block-list li {
	margin-bottom: 10px;
	padding-left: 0.5em;
}

/* CONTENT IMAGES */

.entry-content img,
.wp-block-image img {
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
	border-radius: 3px;
}

/* POST FOOTER & COMMENTS */

.entry-footer {
	padding: 15px 0 0;
}

.cat-links, .tags-links, .comments-link {
	display: block;
	width: 100%;
}

.cat-links, .tags-links {
	margin-bottom: 5px;
}

.comments-link {
	margin-top: 15px;
	font-weight: bold;
}

ol.comment-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

ol.comment-list li {
	margin-bottom: 60px;
}

#comments {
	padding-bottom: 30px;
}

/* POST NAVIGATION */

.post-navigation .nav-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 20px;
	margin: 40px 0;
}

.nav-previous,
.nav-next {
	flex: 1 1 260px;
	max-width: 48%;
	min-width: 0;
	background: transparent;
	box-shadow: none;
	padding: 0;
}

.nav-previous { text-align: left; }
.nav-next     { text-align: right; }

.nav-previous:only-child,
.nav-next:only-child {
	max-width: 100%;
}

.post-navigation a {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 14px 18px;
	border-radius: 6px;
	text-decoration: none;
	font-weight: 600;
	line-height: 1.35;
	transition: background 0.2s ease;
}

.post-navigation a:hover {
	background: rgba(0, 0, 0, 0.04);
}

.nav-previous a::before { content: '« Previous'; }
.nav-next a::after      { content: 'Next »'; }

.nav-previous a::before,
.nav-next a::after {
	font-size: 0.75rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	opacity: 0.7;
}

.post-navigation .nav-title {
	font-weight: 600;
	line-height: 1.35;
}

.nav-subtitle {
	display: none;
}

/* BUTTONS & SOCIAL */

.wp-block-button,
button,
.wp-block-button__link,
#subscribe-submit button {
	background: #333;
	border-radius: 5px;
	box-shadow:
		0 2px 4px -1px rgba(0, 0, 0, 0.1),
		0 1px 2px -1px rgba(0, 0, 0, 0.04);
}

/* Specificity here must beat the global a:visited rule above. */
.wp-block-button .wp-block-button__link,
.wp-block-button .wp-block-button__link:link,
.wp-block-button .wp-block-button__link:visited,
.wp-block-button .wp-block-button__link:active,
.wp-block-buttons .wp-element-button,
.wp-block-buttons .wp-element-button:link,
.wp-block-buttons .wp-element-button:visited,
#subscribe-submit button {
	color: #fff;
	font-weight: bold;
}

.wp-block-button .wp-block-button__link:hover,
.wp-block-buttons .wp-element-button:hover,
#subscribe-submit button:hover {
	color: #dedede;
	background: #333;
}

.wp-block-buttons {
	margin-bottom: 30px;
}

.wp-social-link,
.wp-social-link svg {
	filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.15));
}

/* SUBSCRIBE / WIDGETS / FOOTER */

.fdd-subscribe-widgets {
	padding-bottom: 60px;
}

.fdd-archive-widgets {
	padding: 15px 0;
	background: #000;
	box-shadow: 0 -4px 5px -4px rgba(0, 0, 0, 0.075);
}

.fdd-archive-widgets, .fdd-archive-widgets p,
.fdd-archive-widgets .wp-block-heading {
	color: #fff;
}

#secondary h1 {
	margin-bottom: 0;
}

.fdd-archive-widgets a {
	color: #dedede;
}

.widget ul {
	padding: 0;
	margin: 0;
}

.widget ul li {
	list-style: none;
}

.children {
	padding-left: 15px;
}

.widget {
	margin-bottom: 0 !important;
}

/* -- File Downloads -- */


.wp-block-file a {
	font-size: 14pt;
}

.wp-block-file__button, .wp-block-file__button a {
	background: transparent; 
	text-transform: uppercase;
	font-weight: bold;
	padding: 0px 15px;
}

.wp-block-file__button::after {
	content: "⬇";
		margin-left: 5px;
}



/* ---------- Floating Boxes --------- */

.fdd-contact-editor {
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
	padding: 30px 15px;
	border-radius: 5px;
	background: linear-gradient(to bottom, #ffffff, #f1f5f9);
}

/* ---------- HIDDEN ---------- */

#infinite-footer,
.edit-link {
	display: none;
}

/* ---------- RESPONSIVE ---------- */

@media (max-width: 1024px) {
	#masthead {
		min-height: 250px !important;
		background-position: center center;
	}
	.page-title {
		margin-top: 0;
	}
	.widget h1 {
		margin: 0 !important;
	}
	.fdd-footer-icon {
		margin-top: 45px;
	}
	.widget .wp-block-paragraph {
		margin-bottom: 0;
	}
}

@media (max-width: 600px) {
	.post-navigation .nav-links {
		flex-direction: column;
		margin: 45px 15px;
	}
		#masthead {
		min-height: 150px !important;
		background-position: center center;
	}

	.nav-previous,
	.nav-next {
		flex: 1 1 auto;
		width: 100%;
		max-width: 100%;
		text-align: left;
	}
}