/*
Theme Name: A Compassionate Calling Custom Theme
Author: Samantha Fung
Author URI: https://samanthafung.com/
Description: A custom theme created for Marie Holowaychuk.
Version: 1.0
*/

* { box-sizing: border-box; }

html { scroll-behavior: smooth; font-size: 16px; }

body {
	width: 100%;
	height: 100%;
	min-height: 100vh;
	margin: 0 auto;
	max-width: 1600px;
	min-width: 320px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: clamp(0.9375rem, 0.8681rem + 0.2222vw, 1rem); /* 15px / 16px */
	line-height: 1.75;
	box-shadow: 5px 0px 5px rgba(0,0,0,.1), -5px 0px 5px rgba(0,0,0,.1);
	position: relative;
}



/* -- Text Styles -- */

span.bold {
	font-weight: bold;
}

span.italics {
	font-style: italic;
}

h1 {
	font-family: 'Outfit', sans-serif;
	font-size: clamp(1.75rem, 0.9167rem + 2.6667vw, 2.5rem); /* 28px / 40px */
	line-height: 1.2;
	color: #ff0080;
}

h1.horizontal-line {
	text-align: center;
	display: inline-block;
	width: 100%;
	padding-bottom: 20px;
	border-bottom: solid 1px #ff0080;
}

h2 {
	font-family: 'Outfit', sans-serif;
	font-size: clamp(1.4375rem, 0.8125rem + 2vw, 2rem); /* 23px / 32px */
	line-height: 1.25;
	color: #ff0080;
}

h2.teal {
	color: #237c91;
}

h2.inverse {
	color: #ffffff;
}

h2.horizontal-line {
	text-align: center;
	display: inline-block;
	width: 100%;
	padding-bottom: 20px;
	border-bottom: solid 1px #ff0080;
}

h4, h5, h6 {
	line-height: 1.3;
}

h3 {
    font-size: clamp(1.0625rem, 0.8542rem + 0.6667vw, 1.25rem); /* 17px / 20px */
	line-height: 1.5;
}



/* -- Link Styles -- */

a {
	color: #ff0080;
	transition: color .5s ease;
}
a:hover {
	color: #bf0060;
}
a.link-image {
	font-size: 0;
	line-height: 0;
	margin: 0;
}



/* -- Button Styles -- */

a.button, div.button-special button {
	display: inline-block;
	line-height: 1;
	min-width: 140px;
	font-size: clamp(1rem, 0.7917rem + 0.6667vw, 1.1875rem); /* 16px / 19px */
	text-decoration: none;
	font-family: 'Outfit', sans-serif;
	font-weight: 700;
	padding: 10px 16px;
	white-space: nowrap;
	background: #ff0080;
	color: #ffffff;
	text-align: center;
	border: solid 2px #ff0080;
	transition: background .5s ease, color .5s ease, border .5s ease;
}

a.button:hover, div.button-special button:hover {
	background: #bf0060;
	border-color: #bf0060;
	cursor: pointer;
}

/* Primary */


/* Secondary */

a.button.button-secondary, div.button-special button.button-secondary {
	background: #ffffff;
	border: solid 2px #ff0080;
	color: #ff0080;
}

a.button.button-secondary:hover, div.button-special button.button-secondary:hover {
	background: #ff0080;
	border: solid 2px #ff0080;
	color: #ffffff;
}

/* Inverse */

a.button.button-primary-inverse {
	background: #ffffff;
	color: #ff0080;
	border-color: #ffffff;
}

a.button.button-primary-inverse:hover {
	background: #FCD9EC;
	border-color: #FCD9EC;
}

/* Special */

div.button-special {
	display: inline-block;
}

div.button-special button {
	position: relative;
}

div.button-special button::after {
	content: "⌄";
	font-size: clamp(1.0625rem, 0.7153rem + 1.1111vw, 1.375rem); /* 17px / 22px */
	transform: translateY(-4px) scale(1.3, 1);
    display: inline-block;
    margin-left: 6px;
	line-height: 0;
}

div.button-special:hover ul {
	opacity: 1;
	max-height: 365px;
}

div.button-special ul {
	list-style: none;
	margin: 0;
    padding: 0;
	display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
	position: absolute;
    width: max-content;
	min-width: 225px;
	overflow: hidden;
	max-height: 0; /* Initial */
	opacity: 0; /* Initial */
	background: #ffffff;
	border-top: solid 1px #ff0080;
	transition: max-height .5s ease, opacity .5s ease;
	border: solid 1px #ff0080;
	z-index: 1;
}

div.button-special ul li {
	padding: 8px 10px;
	background: #ffffff;
	transition: background .5s ease;
}

div.button-special ul li:hover {
	background: #FFE5F2;
}

div.button-special ul li a {
	font-size: clamp(0.8125rem, 0.6042rem + 0.6667vw, 1rem); /* 13px / 14px */
	color: #ff0080;
	text-decoration: none;
}

div.button-special ul li:hover a {
	color: #bf0060;
}



/* -- Container Styles -- */

.container-image {
	height: auto;
	line-height: 0;
	overflow: hidden;
}

.container-image img {
	object-fit: cover;
	width: 100%;
	height: 100%;
	transition: transform .5s ease;
}

.container-cta {
	width: 100%;
	margin: 0;
	padding-top: 25px;
	display: flex;
    align-items: center;
	gap: 15px;
	flex-wrap: wrap;
}



/* --- Layout Styles --- */

/* Block */

.layout-block {
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: stretch;
}

.layout-block.image-left .container-image {
	order: 1;
}

.layout-block.image-left .container-text {
	order: 2;
}

.layout-block.image-right .container-image {
	order: 2;
}

.layout-block.image-right .container-text {
	order: 1;
}

.layout-block .container-image {
	width: 40%;
}

.layout-block .container-text {
	flex: 1;
	padding: 65px;
	display: flex;
	flex-direction: column;
}

.layout-block .container-text.pink {
	background: rgba(255,0,128,.1);
}

.layout-block .container-text.teal {
	background: rgba(35,124,145,.1);
}

.layout-block .container-text h2 {
	margin-top: 0;
}

.layout-block .container-text p:last-of-type {
	margin-bottom: 0;
}



/* -- Default/Error Pages -- */

body.error404 main, div.error404, body.page-template-default main {
	width: 100%;
	margin: 0 auto;
}

body.error404 main, div.error404 {
    text-align: center;
}



/* -- Banner Bar -- */

#banner-bar {
	width: 100%;
	margin: 0 auto;
	background: #bf0060;
}

#banner-bar .container {
	width: 90%;
	margin: 0 auto;
	padding: 12px 0;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	font-size: 14px;
}

#banner-bar .container p, #banner-bar .container a {
	color: rgba(255,255,255.1);
	display: block;
	margin: 0;
	line-height: 1.4;
}

#banner-bar .container a {
	font-weight: 700;
	margin-left: 15px;
	text-decoration: none;
	white-space: nowrap;
}

#banner-bar .container a:hover {
	color: rgba(255,255,255.8);
	text-decoration: underline;
}



/* -- Header & Footer -- */

/* Mobile Menu Icons */
.icon-mobile-menu {
	display: none;
	width: 64px;
	transition: filter .5s ease;
	z-index: 2;
}

.icon-mobile-menu:hover {
	cursor: pointer;
	filter: brightness(85%);
}

/* Site Logo */

#site-nav #site-logo-container, #site-footer #site-footer-logo-container {
	width: max(16%, 168px);
	margin-right: 5%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

#site-nav img#site-logo, #site-footer img#site-footer-logo {
	width: 100%;
	height: auto;
}

/* Header and Footer */

#site-nav, #site-footer {
	width: 100%;
	margin: 0 auto;
	padding: 24px 5%;
	background: rgba(255,0,128,.1);
}

#site-nav .container, #site-footer .container {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
}

#site-nav .menu-main-menu-container {
	flex: 1;
}

/* Header & Footer Nav */ 

#site-nav ul#menu-main-menu, #site-footer ul#menu-footer-menu {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-end;
	justify-content: space-between;
	align-items: center;
}

#site-nav ul#menu-main-menu > li {
	position: relative;
}

#site-nav ul#menu-main-menu > li.hide {
	display: none; /* PENDING/HIDE */
} 

#site-nav ul#menu-main-menu a, #site-footer ul#menu-footer-menu a {
	text-decoration: none;
	font-family: 'Outfit', sans-serif;
	font-size: clamp(0.875rem, 0.7361rem + 0.4444vw, 1rem); /* 14px / 16px */;
	color: #000000;
}

#site-nav ul#menu-main-menu > li > a, #site-footer ul#menu-footer-menu > li > a {
	display: inline-block;
	padding: 4px 10px;
	font-weight: 700;
	white-space: nowrap;
	background: rgba(255,0,128,0);
	transition: background .5s ease;
}

#site-nav ul#menu-main-menu > li > a:hover, #site-nav ul#menu-main-menu > li.current-menu-item {
	background: rgba(255,0,128,.15);
}

/* Header Nav CTA */

#site-nav ul#menu-main-menu li#menu-item-32 > a {
    background: #ff0080;
	color: #ffffff;
}

/* Footer */

#site-footer {
	padding: 40px 5%;
}

#site-footer .container {
	justify-content: flex-start;
}

#site-footer #site-footer-logo-container {
	width: max(12%, 132px);
}

#site-footer .menu-footer-menu-container {
	border-left: solid 1px #ff0080;
	padding-left: 15px;
}

#site-footer ul#menu-footer-menu a {
	font-size: 14px;
	margin: 0 15px;
}

p#site-copyright {
	margin-top: 40px;
	margin-bottom: 0;
	font-size: 12px;
	text-align: center;
}



/* --- Hero Types --- */

/* Site Hero */

#site-hero	{
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: stretch;
}

#site-hero h1 {
	margin: 0;
}

#site-hero #site-tagline {
	font-family: 'Outfit', sans-serif;
	font-size: clamp(1.25rem, 0.8333rem + 1.3333vw, 1.625rem); /* 20px / 26px */
	color: #bf0060;
	margin: 10px 0 32px 0;
	line-height: 1.25;
}

#site-hero p {
	margin: 0;
}

#site-hero .container-image {
	width: 33%;
}

#site-hero .container-text {
	flex: 1;
}

#site-hero .container	{
	flex: 1;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: flex-start;
	padding: max(35px,5%);
}

#site-hero .container img  {
	width: 30%;
	max-width: 225px;
	margin-left: 35px;
}

/* Ribbon Hero */

#hero.hero-ribbon {
	width: 100%;
	margin: 5% auto;
	position: relative;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: stretch;
}

#hero.hero-ribbon .container-image {
	flex: 1;
}

#hero.hero-ribbon .container-image.float {
	max-width: 400px;
	padding-left: 65px;
}

#hero.hero-ribbon .container-image.float img {
    object-fit: contain;
    width: 100%;
    height: 100%;
    object-position: 50% 0%;
}

#hero.hero-ribbon .container-text {
	width: 65%;
	display: flex;
	flex-direction: column;
	padding: 0 65px;
}

#hero.hero-ribbon .container-text h1 {
	margin-top: 0;
	margin-bottom: 65px;
}

#hero.hero-ribbon .container-text p:first-of-type {
	margin-top: 0;
}

#hero.hero-ribbon .container-text p:last-of-type {
	margin-bottom: 0;
}

#hero.hero-ribbon .container-text .container-cta {
	margin-top: 65px;
}

#hero.hero-ribbon div.ribbon {
	position: absolute;
	width: 100%;
	top: 50%;
	z-index: -1;
	background: rgba(35,124,145,.1);
}

/* Default Hero (Image Float Right) */

#hero.hero-default {
	width: 100%;
	max-width: 1450px;
	margin: 5% auto;
	padding: 0 5%;
	position: relative;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: stretch;
}

#hero.hero-default .container-image {
	flex: 1;
	order: 2;
}

#hero.hero-default .container-image.float img {
    object-fit: contain;
    width: 100%;
    height: 100%;
}

#hero.hero-default .container-text {
	width: 65%;
	display: flex;
	flex-direction: column;
	padding-right: 65px;
	order: 1;
}

#hero.hero-default .container-text h1 {
	margin-top: 0;
	margin-bottom: 35px;
}

#hero.hero-default .container-text p:first-of-type {
	margin-top: 0;
}

#hero.hero-default .container-text p:last-of-type {
	margin-bottom: 0;
}

#hero.hero-default .container-text .container-cta {
	margin-top: 25px;
}



/* --- Lists --- */

/* Events */

ul.list-events {
	list-style: none;
	padding: 0;
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: stretch;
	align-items: stretch;
}

ul.list-events li {
	width: 100%;
	max-width: 1150px;
    margin: 0 auto;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: stretch;
	padding: 10px 5px;
}

ul.list-events li p {
    padding: 0 20px;
	margin: 0;
	display: inline-block;
	flex: none;
	line-height: 1.4;
}

ul.list-events li p.date {
	font-weight: 700;
	width: 16%;
	text-align: right;
}

ul.list-events li p.event-name {
	width: 33%;
	text-align: center;
}

ul.list-events li p.location {
	width: 16%;
}


ul.list-events li p.venue {
	width: 24%;
}

ul.list-events li a.event-link {
	color: #ff0080;
	line-height: 1.4;
	flex: 1;
}

ul.list-events li a.event-link:hover {
	color: #bf0060;
}

/* Press list */

ul.list-press {
	width: 100%;
	margin: 0 auto 25px auto;
	list-style: none;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
	gap: 35px;
}

ul.list-press li {
	width: 30%;
}

ul.list-press li .container-image {
	width: 100%;
	aspect-ratio: 6/4;
}

ul.list-press li:hover .container-image img {
	transform: scale(1.05);
}

ul.list-press a.post-title {
	margin-top: 15px;
	text-decoration: none;
	font-size: clamp(1rem, 0.8611rem + 0.4444vw, 1.125rem); /* 16px / 18px */
	line-height: 1.5;
	font-weight: 700;
	color: #000000;
	display: block;
}

ul.list-press li:hover a.post-title {
	color: #FF0080;
}

ul.list-press p.post-date {
	margin: 5px 0;
	font-size: .9rem;
}

div.post-tags {
	list-style: none;
	padding: 5px 0 0 0;
	display: flex;
	gap: 0 10px;
}

div.post-tags a {
	text-decoration: none;
	color: #ff0080;
}

div.post-tags a:hover {
	text-decoration: underline;
}

/* Downloads List */

ul.list-downloads {
	width: 100%;
	margin: 0 auto;
	list-style: none;
	padding: 35px 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 65px;
}

ul.list-downloads li {
	width: 100%;
	max-width: 1200px;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: flex-start;
	gap: 35px;
}

ul.list-downloads li div.container-image {
	width: 100%;
	max-width: 250px;
	aspect-ratio: 1/1;
}

ul.list-downloads li div.container-text {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

ul.list-downloads h3.download-title {
	margin-top: 0;
	margin-bottom: 3px;
}

ul.list-downloads p:last-of-type {
	margin-bottom: 0;
}



/* --- Sections --- */

/* Testimonials */

#testimonials {
	width: 100%;
	margin: 0 auto;
	background: rgba(35,124,145,.1);
	padding-top: max(65px, 5%);
    padding-bottom: max(65px, 5%);
}

#testimonials h2 {
	text-align: center;
	margin: 0 auto 35px auto;
}

#testimonials .container {
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
	overflow: hidden;
}

#testimonials .container ul.list-carousel {
	width: 400%; /* Total slides % */
	margin: 0;
	list-style: none;
	padding: 0;
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: stretch;
	transition: transform .5s ease;
}

#testimonials .container ul.list-carousel li {
	width: 100%;
	padding: 0 35px;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
}

#testimonials .container ul.list-carousel li p {
	color: #123e49;
	text-align: center;
	margin: 0;
}

#testimonials .container ul.list-carousel li p.source {
	margin-top: 35px;
}

#testimonials .container ul.list-carousel li p.source::before {
	content: "— ";
}

#testimonials nav.carousel-dot-nav {
	width: 90%;
	margin: 35px auto 0 auto;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
}

#testimonials nav.carousel-dot-nav img {
	width: 20px;
	height: auto;
	margin: 0 10px;
	opacity: .5;
	transition: opacity .5s ease;
}

#testimonials nav.carousel-dot-nav img.carousel-nav-arrow {
	width: 50px;
}

#testimonials nav.carousel-dot-nav img.carousel-nav-arrow.next {
	transform: scaleX(-1);
}

#testimonials nav.carousel-dot-nav img:hover {
	opacity: 1;
	cursor: pointer;
}

#testimonials img.carousel-nav-dot.one.active, #testimonials img.carousel-nav-dot.two.active, #testimonials img.carousel-nav-dot.three.active, #testimonials img.carousel-nav-dot.four.active  {
	opacity: 1;
}

/* Find the book */

#find-the-book {
	width: 100%;
	margin: 0 auto;
	background: #237c91;
	padding-top: max(65px, 5%);
    padding-bottom: max(65px, 5%);
}

#find-the-book h2 {
	margin-top: 10px;
	margin-bottom: 35px;
	text-align: center;
}

#find-the-book .container {
	width: 90%;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	flex-wrap: nowrap;
}

#find-the-book .container ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
}

#find-the-book .container ul li {
	width: 25%;
	text-align: center;
	padding: 10px;
}

#find-the-book .container ul a {
	width: 100%;
	text-decoration: none;
	font-weight: 600;
	color: #237c91;
	background: #e8f2f4;
	padding: 10px;
	display: block;
	transition: background .5s ease;
}

#find-the-book .container ul a:hover {
	background: #C7DEE3;
}

/* Press */

#press {
	width: 100%;
	margin: 0 auto;
	padding-top: max(65px, 5%);
    padding-bottom: max(65px, 5%);
}

#press h2 {
	margin-top: 0;
	margin-bottom: 45px;
}

#press .container {
	width: 100%;
	padding: 0 max(35px,6%);
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
}

/* Bulk Buy */

#bulk-buy {
	width: 100%;
	margin: 0 auto;
	background: #bf0060;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: stretch;
}

#bulk-buy h2 {
	margin-top: 0;
	margin-bottom: 30px;
}

#bulk-buy .container-text {
	flex: 1;
	padding: max(55px,6%) max(35px,6%);
}

#bulk-buy .container-text p {
	margin: 0;
	color: #ffffff;
}

#bulk-buy .container-image {
	width: 40%;
}



/* --- Home Page --- */

/* Book Tour */

#book-tour {
	width: 100%;
	margin: 0 auto;
	padding-top: max(65px, 5%);
    padding-bottom: max(65px, 5%);
	background: rgba(255,0,128,.1);
}

#book-tour h2 {
	margin-top: 0;
	margin-bottom: 45px;
}

#book-tour .container {
	width: 100%;
	padding: 0 max(35px,6%);
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
}

#book-tour .container a.button {
	margin-top: 35px;
}

/* Author */

#author {
	width: 100%;
	margin: 0 auto;
	padding-top: max(65px, 5%);
    padding-bottom: max(65px, 5%);
}

#author h2 {
	margin-top: 0;
	margin-bottom: 30px;
	text-align: center;
}

#author .container {
	width: 100%;
	max-width: 950px;
	padding: 0 max(35px,6%);
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
}

#author .container-cta {
	justify-content: center;
}



/* --- About the Book Page --- */

/* Hero */

.page-id-15 #hero.hero-ribbon div.ribbon {
	height: calc(61% + 70px);
	transform: translateY(-46%);
}

.page-id-15 #hero div.button-special button.button-secondary:hover {
	background: #FF0080;
}

/* Testimonials */

.page-id-15 #testimonials {
	background: #ffffff;
}



/* --- About the Author Page --- */

/* Hero */

.page-id-17 #hero.hero-ribbon div.ribbon {
	height: calc(65% + 70px);
    transform: translateY(-51%);
}

/* Videos */

#marie-speaking-videos {
	width: 100%;
	margin: 5% auto;
}

#marie-speaking-videos .container {
	width: 90%;
	margin: 0 auto;
}

#marie-speaking-videos .container ul {
	list-style: none;
	padding: 0;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: stretch;
	gap: 55px;
}

#marie-speaking-videos .container ul li {
	width: 50%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

#marie-speaking-videos h3 {
	font-weight: 400;
	text-align: center;
	margin-top: 0;
}

#marie-speaking-videos iframe {
	width: 100%;
	aspect-ratio: 16/9;
	height: auto;
}



/* --- Events Page --- */

/* Events list */

#events {
	width: 100%;
	margin: 0 auto;
	padding-top: max(65px, 5%);
    padding-bottom: max(65px, 5%);
}

#events .container {
	width: 100%;
	padding: 0 max(35px,6%);
	margin: 0 auto;
}

#events .container ul.list-events li:nth-of-type(even) {
	background: rgba(255,0,128,.05);
}



/* --- Book Club Page --- */

#bulk-buy-information {
	width: 90%;
	margin: 0 auto;
	background: rgb(35,124,145,.1);
	padding: 75px 0;
}

#bulk-buy-information .container {
	width: 90%;
	max-width: 900px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
}

#bulk-buy-information a {
	text-decoration: none;
}

#bulk-buy-information h2 {
	margin-top: 0;
}

#bulk-buy-information a.button {
	margin-top: 25px;
}

#free-pdf-handouts {
	width: 100%;
	margin: max(6%, 35px) auto;
}

#free-pdf-handouts .container {
	width: 90%;
	margin: 0 auto;
}



/* --- Press Page (Blog Home) --- */

.blog h1 {
	text-align: center;
	width: 90%;
	margin: 65px auto;
	display: block;
}

.blog #press {
	padding-top: 0;
}

/* Press Nav */

nav.nav-post-list {
	width: 90%;
	margin: 35px auto 65px auto;
}

nav.nav-post-list .nav-links ul.page-numbers {
	list-style: none;
	padding: 0;
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
}

nav.nav-post-list .nav-links ul.page-numbers li {
	padding: 5px 10px;
	margin: 0 20px;
}

nav.nav-post-list .nav-links ul.page-numbers a, nav.nav-post-list .nav-links ul.page-numbers span {
	text-decoration: none;
	font-weight: 700;
	font-family: 'Outfit', sans-serif;
	font-size: 1.2rem;
}

nav.nav-post-list .nav-links ul.page-numbers span.current {
	color: rgba(255,0,128,.5);
}

nav.nav-post-list .nav-links ul.page-numbers a {
	color: #ff0080;
}

nav.nav-post-list .nav-links ul.page-numbers a:hover {
	color: #bf0060;
}



/* --- Single Page (Blog Post) --- */

body.single-post nav.nav-back, body.single-post div#post-single, body.single-post nav.nav-post {
	width: 90%;
	margin: 0 auto;
	max-width: 950px;
}

body.single-post nav.nav-back {
	margin-top: max(3%, 45px);
	padding-bottom: 8px;
	border-bottom: solid 1px #ff0080;
}

body.single-post h1 {
	color: #000000;
	margin-bottom: 15px;
}

body.single-post div.post-tags {
	list-style: none;
	padding: 5px 0 0 0;
	display: flex;
	gap: 10px;
}

body.single-post div.post-tags a {
	text-decoration: none;
	color: #ff0080;
}

body.single-post div.post-tags a:hover {
	text-decoration: underline;
}

body.single-post p.post-date {
	margin-top: 0;
	margin-bottom: 35px;
}

body.single-post h2, body.single-post h3, body.single-post h4, body.single-post h5, body.single-post h6 {
	font-size: clamp(1.125rem, 0.4306rem + 2.2222vw, 1.75rem); /* 18px / 28px */
	color: #bf0060;
}

body.single-post #post-single .container-image {
	width: 100%;
	height: auto;
	aspect-ratio: 8/5;
	margin-bottom: 6%;
}

body.single-post nav.nav-post {
	width: max-content;
	padding: 45px 0 65px 0;
}

body.single-post nav.nav-post a {
	margin: 0 15px;
}

/* Single Nav Links */

body.single-post nav.nav-back a, body.single-post nav.nav-post a {
	text-decoration: none;
	font-weight: 700;
	font-family: 'Outfit', sans-serif;
	font-size: 1.2rem;
	color: #ff0080;
}

body.single-post nav.nav-back a:hover, body.single-post nav.nav-post a:hover {
	color: #bf0060;
}



/* --- Tag/Category/Archive Pages --- */

body.archive h1 {
	text-align: center;
	width: 90%;
	margin: 65px auto;
	display: block;
}

body.archive #press {
	padding: 0;
}