/* 
Theme Name: OAK
Theme URI: https://oak.fi/
Description: OAK theme
Author: Design Inspis
Author URI: https://designinspis.fi/
Template: hello-elementor
Version: 2.0.0
Text Domain: oak
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

:root {
	--oak-yellow: #f4b000;
	--oak-dark: #2b2b2b;
	--oak-text: #4a4a4a;
	--oak-muted: #7a7a7a;
	--oak-border: #e6e6e6;
	--oak-bg: #ffffff;
	--oak-link: #005b9f;
}

body {
	font-family: "Helvetica Neue", Arial, sans-serif;
	color: var(--oak-text);
	background: var(--oak-bg);
}

.oak-hero {
	display: grid;
	grid-template-columns: 1fr 1.7fr;
	min-height: 420px;
}

@media (max-width: 1024px) {
	.oak-hero {
		grid-template-columns: 1fr;
	}
}

.oak-hero .oak-hero-left {
	background: var(--oak-yellow);
	padding: 48px 56px;
	display: flex;
	flex-direction: column;
	gap: 16px;
	justify-content: center;
}

.oak-hero .oak-hero-left h2 {
	font-size: 2.4rem;
	margin: 0;
	color: var(--oak-dark);
}

.oak-hero .oak-hero-left p {
	max-width: 360px;
}

.oak-hero .oak-hero-right img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.oak-breadcrumbs {
	font-size: 12px;
	color: var(--oak-muted);
	padding: 12px 0;
}

.oak-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
	padding: 12px 0 40px;
}

@media (max-width: 1024px) {
	.oak-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 768px) {
	.oak-grid {
		grid-template-columns: 1fr;
	}
}

.oak-card {
	border: 1px solid var(--oak-border);
	border-radius: 4px;
	overflow: hidden;
	background: #fff;
	transition: box-shadow 180ms ease, transform 180ms ease;
}

.oak-card:hover {
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12);
	transform: translateY(-2px);
}

.oak-card img {
	width: 100%;
	height: 200px;
	object-fit: cover;
}

.oak-card-body {
	padding: 16px 16px 12px;
	display: grid;
	gap: 8px;
}

.oak-card .oak-date {
	font-size: 12px;
	color: var(--oak-muted);
}

.oak-card h3 {
	font-size: 16px;
	margin: 0;
	color: var(--oak-dark);
}

.oak-card p {
	font-size: 13px;
	margin: 0;
	color: var(--oak-text);
}

.oak-card .oak-arrow {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 14px;
	color: var(--oak-dark);
	margin-top: 6px;
}

.oak-load-more {
	display: inline-block;
	margin: 0 auto 48px;
	padding: 12px 22px;
	border: 1px solid var(--oak-dark);
	color: var(--oak-dark);
	background: transparent;
	transition: background 160ms ease, color 160ms ease;
}

.oak-load-more:hover {
	background: var(--oak-dark);
	color: #fff;
}

.oak-footer {
	background: #fff;
	border-top: 6px solid var(--oak-yellow);
	padding: 32px 0 24px;
	font-size: 13px;
	color: var(--oak-text);
}

.oak-footer-top {
	display: grid;
	grid-template-columns: 1.5fr 2fr;
	gap: 32px;
	align-items: start;
}

@media (max-width: 900px) {
	.oak-footer-top {
		grid-template-columns: 1fr;
	}
}

.oak-footer h4 {
	font-size: 15px;
	margin: 0 0 8px;
	color: var(--oak-dark);
}

.oak-footer ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.oak-footer li {
	margin: 6px 0;
}

.oak-footer a {
	color: var(--oak-dark);
	text-decoration: none;
}

.oak-footer a:hover {
	text-decoration: underline;
}

.oak-footer-bottom {
	display: flex;
	justify-content: space-between;
	margin-top: 20px;
	font-size: 12px;
	color: var(--oak-muted);
}

@media (max-width: 640px) {
	.oak-footer-bottom {
		flex-direction: column;
		gap: 8px;
	}
}