/*!
Theme Name: revive-theme
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.1
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: revive-theme
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

revive-theme is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

.archive-main,
.single-post-layout,
.archive-card,
.archive-card__media,
.archive-card__body {
	box-sizing: border-box;
}

.archive-main {
	width: 100%;
	max-width: 1540px;
	margin: 0 auto;
	padding: 48px 24px 72px;
}

.archive-main .page-header {
	margin: 0 0 32px;
}

.archive-main .page-title {
	margin: 0;
	color: #5b263c;
	font-size: clamp(2rem, 3.2vw, 2.75rem);
	line-height: 1.2;
}

.archive-main .archive-description {
	margin-top: 12px;
	color: #606060;
}

.archive-post-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 32px;
}

.archive-card {
	display: flex;
	min-width: 0;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid #eeeeee;
	background: #ffffff;
	box-shadow: 0 2px 8px rgb(40 20 25 / 7%);
	transition: box-shadow 180ms ease, transform 180ms ease;
}

.archive-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 20px rgb(40 20 25 / 12%);
}

.archive-card__media {
	display: block;
	overflow: hidden;
	aspect-ratio: 1.46;
}

.archive-card__media img {
	display: block;
	width: 100%;
	height: 100%;
}

.archive-card__media img {
	object-fit: cover;
	transition: transform 220ms ease;
}

.archive-card:hover .archive-card__media img {
	transform: scale(1.03);
}

.archive-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
	min-height: 160px;
	padding: 24px 26px;
}

.archive-card .entry-title {
	margin: 0;
	font-size: clamp(1.2rem, 1.5vw, 1.55rem);
	font-weight: 400;
	line-height: 1.35;
}

.archive-card .entry-title a {
	color: #ea748c;
	text-decoration: none;
}

.archive-card .entry-title a:hover,
.archive-card .entry-title a:focus {
	color: #bd4d68;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.archive-card .entry-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 12px;
	margin-top: 20px;
	color: #737373;
	font-size: 0.8rem;
	line-height: 1.5;
}

.archive-card .entry-meta a {
	color: inherit;
}

.archive-main .navigation {
	margin-top: 40px;
}

.single-post-layout {
	display: block;
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 46px 24px 72px;
}

.single-post-layout.has-sidebar {
	display: grid;
	max-width: 1400px;
	grid-template-columns: minmax(0, 2fr) minmax(250px, 0.8fr);
	align-items: start;
	gap: 48px;
}

.single-post-layout.has-sidebar > #secondary {
	display: block !important;
}

.single-post-layout > * {
	min-width: 0;
}

.single-post-layout .entry-title {
	margin: 0 0 14px;
	color: #5b263c;
	font-size: clamp(2rem, 3.5vw, 2.7rem);
	font-weight: 400;
	line-height: 1.2;
}

.single-post-layout .entry-meta {
	margin-bottom: 24px;
	color: #666666;
	font-size: 0.95rem;
}

.single-post-layout .entry-meta a,
.single-post-layout .entry-footer a {
	color: #ea748c;
}

.single-post-layout .post-thumbnail {
	display: block;
	margin: 0 0 28px;
}

.single-post-layout .post-thumbnail img {
	display: block;
	width: 100%;
	height: auto;
}

.single-post-layout .entry-content {
	color: #555555;
	font-size: 1rem;
	line-height: 1.75;
}

.single-post-layout .entry-content > :first-child {
	margin-top: 0;
}

.single-post-layout .entry-content img {
	max-width: 100%;
	height: auto;
}

.single-post-layout .entry-footer {
	margin-top: 28px;
}

.single-post-layout .post-navigation,
.single-post-layout .comments-area {
	margin-top: 40px;
}

@media (max-width: 1200px) {
	.archive-post-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.archive-post-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 24px;
	}

	.single-post-layout.has-sidebar {
		grid-template-columns: minmax(0, 1.7fr) minmax(220px, 0.9fr);
		gap: 32px;
	}
}

@media (max-width: 640px) {
	.archive-main {
		padding: 32px 18px 48px;
	}

	.archive-main .page-header {
		margin-bottom: 24px;
	}

	.archive-post-grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 20px;
	}

	.archive-card__body {
		padding: 20px;
	}

	.single-post-layout,
	.single-post-layout.has-sidebar {
		display: block;
		padding: 32px 18px 48px;
	}

	.single-post-layout .widget-area {
		margin-top: 40px;
	}
}
