/*
Theme Name: Deland Simple
Theme URI: https://delandmediagroup.com
Author: MedForward
Description: Minimal custom theme for Deland Media Group. Five static pages, no page builder, nothing to update.
Version: 1.0
License: GNU General Public License v2 or later
Text Domain: deland-simple
*/

:root {
	--ink: #333;
	--muted: #747474;
	--accent: #a0ce4e;
	--line: #e7e6e6;
	--band: #f6f6f6;
	--footer: #363839;
	--footer-bar: #282a2b;
	--footer-text: #bfbfbf;
	--max: 1100px;
}

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

body {
	margin: 0;
	color: var(--ink);
	background: #fff;
	font: 400 15px/1.7 "PT Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
	-webkit-font-smoothing: antialiased;
}

img { max-width: 100%; height: auto; }

a { color: var(--ink); text-decoration: none; }
a:hover { color: var(--accent); }
a:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }

.wrap {
	max-width: var(--max);
	margin: 0 auto;
	padding: 0 20px;
}

/* Header */
.site-header {
	border-bottom: 1px solid var(--line);
	background: #fff;
}
.site-header .wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	flex-wrap: wrap;
	padding-top: 18px;
	padding-bottom: 18px;
}
.site-logo img { max-height: 58px; width: auto; display: block; }
.site-logo .site-name { font-size: 22px; font-weight: 700; }

.main-nav ul {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 26px;
	margin: 0;
	padding: 0;
}
.main-nav a {
	color: var(--muted);
	font-size: 14px;
	padding: 4px 0;
	display: inline-block;
}
.main-nav .current-menu-item > a,
.main-nav .current_page_item > a {
	color: var(--accent);
	border-top: 2px solid var(--accent);
}

/* Page title band */
.page-band {
	background: var(--band);
	border-bottom: 1px solid var(--line);
	padding: 22px 0;
}
.page-band h1 {
	margin: 0;
	font-size: 22px;
	font-weight: 400;
	color: #555;
}

/* Content */
.site-main { padding: 40px 0 60px; }
.entry-content { max-width: 74ch; }
.entry-content p { margin: 0 0 1.2em; }
.entry-content h2 { font-size: 20px; font-weight: 700; margin: 1.6em 0 .6em; }
.entry-content h3 { font-size: 17px; font-weight: 700; margin: 1.4em 0 .5em; }
.entry-content ul, .entry-content ol { padding-left: 1.3em; }

.entry-content blockquote {
	margin: 0 0 1.6em;
	padding: 18px 22px;
	background: var(--band);
	border-left: 3px solid var(--accent);
	font-style: italic;
	color: #666;
}

/* Footer */
.site-footer {
	background: var(--footer);
	color: var(--footer-text);
	padding: 44px 0 30px;
}
.site-footer h2 {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .04em;
	color: #fff;
	margin: 0 0 14px;
}
.site-footer ul {
	list-style: none;
	margin: 0;
	padding: 0;
	max-width: 260px;
}
.site-footer li { border-bottom: 1px solid #4a4c4d; }
.site-footer li:first-child { border-top: 1px solid #4a4c4d; }
.site-footer a {
	color: var(--footer-text);
	display: block;
	padding: 11px 0;
	font-size: 14px;
}
.site-footer a:hover { color: var(--accent); }

.footer-bar {
	background: var(--footer-bar);
	color: #8a8a8a;
	font-size: 13px;
	padding: 16px 0;
}

/* Small screens */
@media (max-width: 700px) {
	.site-header .wrap { justify-content: center; text-align: center; }
	.main-nav ul { justify-content: center; gap: 18px; }
	.site-main { padding: 28px 0 40px; }
}

/* Accessibility helper */
.skip-link {
	position: absolute;
	left: -9999px;
}
.skip-link:focus {
	left: 20px;
	top: 10px;
	z-index: 100;
	background: #fff;
	padding: 8px 12px;
	border: 1px solid var(--line);
}
