/*
Theme Name: Shackleford
Theme URI: https://shackleford.org/
Description: Genesis child theme for shackleford.org. Rebuilds the WooThemes Canvas / llocally-canvas design and the client's 2026 visual refresh (Lora + Inter, village greens) on a modern, accessible, PHP 8 base.
Author: Fullworks
Author URI: https://fullworks.net/

Version: 1.0.0-alpha.8

Template: genesis

License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Text Domain: genesis-sample
Requires at least: 5.4
Requires PHP: 7.4
*/

/* Table of Contents
- HTML5 Reset
	- Baseline Normalize
	- Box Sizing
	- Float Clearing
- Defaults
	- Typographical Elements
	- Headings
	- Objects
	- Gallery
	- Forms
	- Tables
	- Screen Reader Text
- Structure and Layout
	- Site Container
	- Site Inner
- Common Classes
	- Avatar
	- Genesis
	- Search Form
	- Titles
	- WordPress
- Widgets
	- Featured Content
- Plugins
	- Genesis eNews Extended
	- Genesis Simple FAQ
	- WPForms
- Skip Links
- Site Header
	- Title Area
- Site Navigation
	- Responsive Menu
	- Header Menu
	- Footer Menu
- Content Area
	- Entry Content
	- Entry Meta
	- Pagination
	- Entry Comments
- Sidebar
- Footer Widgets
- Site Footer
- Media Queries
	- Min-width: 960px
		- Site Header
		- Genesis Menu
		- Responsive Menu
		- Header Menu
		- Site Inner
		- Content
		- Sidebar
		- Author Box
		- After Entry
		- Column Classes
		- Entry Misc.
		- Footer Widgets
- Print Styles
*/


/* HTML5 Reset
---------------------------------------------------------------------------- */

/* normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css
---------------------------------------------------------------------------- */
/* stylelint-disable */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}
/* stylelint-enable */

/* Box Sizing
--------------------------------------------- */

html {
	box-sizing: border-box;
}

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

/* Float Clearing
--------------------------------------------- */

.author-box::before,
.clearfix::before,
.entry::before,
.entry-content::before,
.footer-widgets::before,
.nav-primary::before,
.nav-secondary::before,
.pagination::before,
.site-container::before,
.site-footer::before,
.site-header::before,
.site-inner::before,
.widget::before,
.wrap::before {
	content: " ";
	display: table;
}

.author-box::after,
.clearfix::after,
.entry::after,
.entry-content::after,
.footer-widgets::after,
.nav-primary::after,
.nav-secondary::after,
.pagination::after,
.site-container::after,
.site-footer::after,
.site-header::after,
.site-inner::after,
.widget::after,
.wrap::after {
	clear: both;
	content: " ";
	display: table;
}


/* Defaults
---------------------------------------------------------------------------- */

/* Typographical Elements
--------------------------------------------- */

html {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}

body {
	background-color: #fff;
	color: #333;
	font-family: "Source Sans Pro", sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.625;
	margin: 0;
	overflow-x: hidden;
}

button,
input:focus,
input[type="button"],
input[type="reset"],
input[type="submit"],
textarea:focus,
.button,
.gallery img {
	transition: all 0.2s ease-in-out;
}

a {
	color: #0073e5;
	text-decoration: underline;
	transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
}

a:focus,
a:hover {
	color: #333;
	text-decoration: none;
}

p {
	margin: 0 0 28px;
	padding: 0;
}

ol,
ul {
	margin: 0;
	padding: 0;
}

li {
	list-style-type: none;
}

hr {
	border: 0;
	border-collapse: collapse;
	border-bottom: 1px solid currentColor;
	clear: both;
	color: #eee;
	margin: 1.65em auto;
}

b,
strong {
	font-weight: 700;
}

blockquote,
cite,
em,
i {
	font-style: italic;
}

mark {
	background: #ddd;
	color: #333;
}

blockquote {
	margin: 30px;
}

/* Headings
--------------------------------------------- */

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: "Source Sans Pro", sans-serif;
	font-weight: 400;
	line-height: 1.2;
	margin: 0 0 20px;
}

h1 {
	font-size: 30px;
}

h2 {
	font-size: 27px;
}

h3 {
	font-size: 24px;
}

h4 {
	font-size: 20px;
}

.entry-content h3,
.entry-content h4 {
	font-weight: 600;
}

.entry-content h4 {
	margin-top: 40px;
}

h5 {
	font-size: 18px;
}

h6 {
	font-size: 16px;
}

/* Objects
--------------------------------------------- */

embed,
iframe,
img,
object,
video,
.wp-caption {
	max-width: 100%;
}

img {
	height: auto;
	vertical-align: top;
}

figure {
	margin: 0;
}

/* Gallery
--------------------------------------------- */

.gallery {
	overflow: hidden;
}

.gallery img {
	border: 1px solid #eee;
	height: auto;
	padding: 4px;
}

.gallery img:focus,
.gallery img:hover {
	border: 1px solid #999;
	outline: none;
}

.gallery-columns-1 .gallery-item {
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	width: 50%;
}

.gallery-columns-3 .gallery-item {
	width: 33%;
}

.gallery-columns-4 .gallery-item {
	width: 25%;
}

.gallery-columns-5 .gallery-item {
	width: 20%;
}

.gallery-columns-6 .gallery-item {
	width: 16.6666%;
}

.gallery-columns-7 .gallery-item {
	width: 14.2857%;
}

.gallery-columns-8 .gallery-item {
	width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	width: 11.1111%;
}

.gallery-columns-2 .gallery-item:nth-child(2n+1),
.gallery-columns-3 .gallery-item:nth-child(3n+1),
.gallery-columns-4 .gallery-item:nth-child(4n+1),
.gallery-columns-5 .gallery-item:nth-child(5n+1),
.gallery-columns-6 .gallery-item:nth-child(6n+1),
.gallery-columns-7 .gallery-item:nth-child(7n+1),
.gallery-columns-8 .gallery-item:nth-child(8n+1),
.gallery-columns-9 .gallery-item:nth-child(9n+1) {
	clear: left;
}

.gallery-item {
	float: left;
	margin: 0 0 30px;
	text-align: center;
}

/* Forms
--------------------------------------------- */

input,
select,
textarea {
	background-color: #fff;
	border: 1px solid #ddd;
	color: #333;
	font-size: 18px;
	font-weight: 400;
	padding: 15px;
	width: 100%;
}

input:focus,
textarea:focus {
	border: 1px solid #999;
	outline: none;
}

input[type="checkbox"],
input[type="image"],
input[type="radio"] {
	width: auto;
}

:-ms-input-placeholder {
	color: #333;
	opacity: 1;
}

::placeholder {
	color: #333;
	opacity: 1;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.site-container div.wpforms-container-full .wpforms-form input[type="submit"],
.site-container div.wpforms-container-full .wpforms-form button[type="submit"],
.button {
	background-color: #333;
	border: 0;
	border-radius: 5px;
	color: #fff;
	cursor: pointer;
	font-size: 16px;
	font-weight: 600;
	padding: 15px 30px;
	text-align: center;
	text-decoration: none;
	white-space: normal;
	width: auto;
}

button:focus,
button:hover,
input[type="button"]:focus,
input[type="button"]:hover,
input[type="reset"]:focus,
input[type="reset"]:hover,
input[type="submit"]:focus,
input[type="submit"]:hover,
.site-container div.wpforms-container-full .wpforms-form input[type="submit"]:focus,
.site-container div.wpforms-container-full .wpforms-form input[type="submit"]:hover,
.site-container div.wpforms-container-full .wpforms-form button[type="submit"]:focus,
.site-container div.wpforms-container-full .wpforms-form button[type="submit"]:hover,
.button:focus,
.button:hover {
	background-color: #0073e5;
	border-width: 0;
	color: #fff;
}

.entry-content .button:focus,
.entry-content .button:hover {
	color: #fff;
}

.button {
	display: inline-block;
}

.site-container button:disabled,
.site-container button:disabled:hover,
.site-container input:disabled,
.site-container input:disabled:hover,
.site-container input[type="button"]:disabled,
.site-container input[type="button"]:disabled:hover,
.site-container input[type="reset"]:disabled,
.site-container input[type="reset"]:disabled:hover,
.site-container input[type="submit"]:disabled,
.site-container input[type="submit"]:disabled:hover {
	background-color: #eee;
	border-width: 0;
	color: #777;
	cursor: not-allowed;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button {
	display: none;
}

/* Tables
--------------------------------------------- */

table {
	border-collapse: collapse;
	border-spacing: 0;
	margin-bottom: 40px;
	width: 100%;
	word-break: break-all;
}

tbody {
	border-bottom: 1px solid #eee;
}

td,
th {
	line-height: 2;
	text-align: left;
	vertical-align: top;
}

td {
	padding: 0.5em;
}

tr {
	border-top: 1px solid #eee;
}

th {
	font-weight: 600;
	padding: 0.5em;
}

/* Screen Reader Text
--------------------------------------------- */

.screen-reader-shortcut,
.screen-reader-text,
.screen-reader-text span {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus,
.screen-reader-shortcut:focus,
.widget_search input[type="submit"]:focus {
	background: #fff;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #333;
	display: block;
	font-size: 1em;
	font-weight: 700;
	height: auto;
	padding: 15px 23px 14px;
	text-decoration: none;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

.more-link {
	display: inline-block;
	position: relative;
	margin-bottom: 30px;
}


/* Structure and Layout
---------------------------------------------------------------------------- */

/* Site Container
--------------------------------------------- */

.site-container {
	animation: fadein 1s;
	word-wrap: break-word;
}

@keyframes fadein {

	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}

}

/* Site Inner
--------------------------------------------- */

.site-inner {
	clear: both;
	margin: 0 auto;
	padding: 60px 30px 0;
}


/* Common Classes
---------------------------------------------------------------------------- */

/* Avatar
--------------------------------------------- */

.avatar {
	border-radius: 50%;
	float: left;
}

.author-box .avatar,
.alignleft .avatar {
	margin-right: 20px;
}

.alignright .avatar {
	margin-left: 20px;
}

.comment .avatar {
	margin: 0 15px 20px 0;
}

/* Genesis
--------------------------------------------- */

.after-entry,
.archive-description,
.author-box {
	margin-bottom: 40px;
}

.after-entry {
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
	padding: 20px 30px;
}

.after-entry .widget:last-of-type {
	margin-bottom: 0;
}

.breadcrumb {
	border-bottom: 1px solid #eee;
	font-size: 16px;
	margin-bottom: 40px;
	padding-bottom: 10px;
}

.genesis-title-hidden .breadcrumb {
	margin-top: 40px;
}

.archive-description p:last-child,
.author-box p:last-child {
	margin-bottom: 0;
}

/* Search Form
--------------------------------------------- */

.search-form {
	overflow: hidden;
}

.entry-content .search-form {
	margin-bottom: 40px;
	width: 50%;
}

.post-password-form input[type="submit"],
.search-form input[type="submit"] {
	margin-top: 10px;
}

.widget_search input[type="submit"] {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	margin: -1px;
	padding: 0;
	position: absolute;
	width: 1px;
}

/* Titles
--------------------------------------------- */

.archive-description .entry-title,
.archive-title,
.author-box-title {
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 10px;
}

.entry-title {
	font-size: 30px;
	margin-bottom: 10px;
}

.entry-title a,
.sidebar .widget-title a {
	color: #333;
	text-decoration: none;
}

.entry-title a:focus,
.entry-title a:hover {
	color: #0073e5;
}

.widget-title {
	font-size: 18px;
	font-weight: 600;
	margin-bottom: 20px;
}

.genesis-title-hidden .site-inner {
	padding-top: 0;
}

/* WordPress
--------------------------------------------- */

a.aligncenter img {
	display: block;
	margin: 0 auto;
}

a.alignnone {
	display: inline-block;
}

.alignleft {
	float: left;
	text-align: left;
}

.alignright {
	float: right;
	text-align: right;
}

a.alignleft,
a.alignnone,
a.alignright {
	max-width: 100%;
}

img.centered,
.aligncenter,
.singular-image {
	display: block;
	margin: 0 auto 30px;
}

img.alignnone,
.alignnone {
	margin-bottom: 15px;
}

a.alignleft,
img.alignleft,
.wp-caption.alignleft {
	margin: 0 20px 20px 0;
}

a.alignright,
img.alignright,
.wp-caption.alignright {
	margin: 0 0 20px 20px;
}

figcaption,
.gallery-caption,
.wp-caption-text {
	font-size: 14px;
	font-weight: 600;
	margin-top: 0.5em;
	margin-bottom: 1em;
	padding-left: 10px;
	padding-right: 10px;
	text-align: center;
}

.entry-content p.wp-caption-text {
	margin-bottom: 0;
}

.entry-content .wp-audio-shortcode,
.entry-content .wp-playlist,
.entry-content .wp-video {
	margin: 0 0 30px;
}

/* Widgets
---------------------------------------------------------------------------- */

.widget {
	margin-bottom: 40px;
}

.widget p:last-child,
.widget ul > li:last-of-type {
	margin-bottom: 0;
}

.widget ul > li {
	margin-bottom: 10px;
}

.widget ul > li:last-of-type {
	padding-bottom: 0;
}

.widget ol > li {
	list-style-position: inside;
	list-style-type: decimal;
	padding-left: 20px;
	text-indent: -20px;
}

.widget li li {
	border: 0;
	margin: 0 0 0 30px;
	padding: 0;
}

.widget_calendar table {
	width: 100%;
}

.widget_calendar td,
.widget_calendar th {
	text-align: center;
}

/* Featured Content
--------------------------------------------- */

.featured-content .entry {
	border-bottom: 1px solid #eee;
	margin-bottom: 20px;
}

.featured-content .entry:last-of-type {
	border-bottom: none;
	margin-bottom: 0;
}

.featured-content .entry-title {
	font-size: 16px;
	margin-bottom: 5px;
	margin-top: 10px;
}


/* Plugins
---------------------------------------------------------------------------- */

/* Genesis eNews Extended
--------------------------------------------- */

.after-entry .enews {
	text-align: center;
	padding: 10px;
}

.sidebar .enews {
	background-color: #f5f5f5;
	padding: 30px;
}

.enews-widget input {
	font-size: 16px;
	margin-bottom: 10px;
}

.after-entry .enews-widget input {
	text-align: center;
}

.enews-widget input[type="submit"] {
	margin: 0;
	width: 100%;
}

.enews form + p {
	margin-top: 20px;
}

/* Genesis Simple FAQ
--------------------------------------------- */

.gs-faq__question {
	background: transparent;
	border-bottom: 1px solid #eee;
	color: #333;
	padding-left: 0;
	padding-right: 0;
}

.gs-faq__question:focus,
.gs-faq__question:hover {
	background: transparent;
	color: #0073e5;
}

.gs-faq__question::after {
	content: "\f132";
	font-family: dashicons; /* stylelint-disable-line font-family-no-missing-generic-family-keyword */
	float: right;
}

.gs-faq__question.gs-faq--expanded::after {
	content: "\f460";
}

/* WP Forms
--------------------------------------------- */

.entry-content .wpforms-container {
	margin-bottom: 40px;
}

.entry-content .wpforms-form .wpforms-field {
	clear: both;
	margin: 20px 0;
	overflow: hidden;
}

.site-container .wpforms-container .wpforms-form .wpforms-field input {
	border-radius: 0;
	height: auto;
	padding: 15px;
}

.site-container .entry-content .wpforms-form .wpforms-field-label {
	font-weight: 600;
}

.site-container .entry-content .wpforms-form .wpforms-field-sublabel {
	font-size: 14px;
	font-weight: 300;
}

.entry-content .wpforms-form .wpforms-field-hp {
	display: none !important;
	left: -9000px !important;
	position: absolute !important;
}

.site-container .entry-content .wpforms-form textarea {
	padding: 15px;
}

.site-container .entry-content .wpforms-form textarea.wpforms-field-small {
	height: 120px;
}

.site-container .entry-content .wpforms-form textarea.wpforms-field-medium {
	height: 200px;
}

.site-container .entry-content .wpforms-form textarea.wpforms-field-large {
	height: 300px;
}


/* Skip Links
---------------------------------------------------------------------------- */

.genesis-skip-link {
	margin: 0;
}

.genesis-skip-link .skip-link-hidden {
	display: none;
	visibility: hidden;
}

.genesis-skip-link li {
	height: 0;
	list-style: none;
	width: 0;
}

/* Display outline on focus */
:focus {
	color: #333;
	outline: #ccc solid 1px;
}


/* Site Header
---------------------------------------------------------------------------- */

.site-header {
	background-color: #fff;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
	padding: 0 30px;
}

/* Title Area
--------------------------------------------- */

.title-area {
	float: left;
	padding-bottom: 25px;
	padding-top: 25px;
}

.wp-custom-logo .title-area {
	max-width: 350px;
	padding-bottom: 5px;
	padding-top: 5px;
	width: 100%;
}

.wp-custom-logo .custom-logo-link {
	display: block;
}

.wp-custom-logo .title-area img {
	width: auto;
}

.site-title {
	font-size: 20px;
	font-weight: 600;
	line-height: 1;
	margin-bottom: 0;
}

.site-title a,
.site-title a:focus,
.site-title a:hover {
	color: #333;
	text-decoration: none;
}

.site-description,
.wp-custom-logo .site-title {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}


/* Site Navigation
---------------------------------------------------------------------------- */

.genesis-nav-menu {
	clear: both;
	line-height: 1;
	width: 100%;
}

.genesis-nav-menu .menu-item {
	display: block;
	float: none;
	position: relative;
}

.genesis-nav-menu a {
	color: #333;
	display: block;
	font-size: 15px;
	font-weight: 400;
	outline-offset: -1px;
	padding-bottom: 12px;
	padding-top: 12px;
	text-decoration: none;
}

.genesis-nav-menu a:focus,
.genesis-nav-menu a:hover,
.genesis-nav-menu .current-menu-item > a,
.genesis-nav-menu .sub-menu .current-menu-item > a:focus,
.genesis-nav-menu .sub-menu .current-menu-item > a:hover {
	color: #0073e5;
	text-decoration: none;
}

.genesis-nav-menu .sub-menu,
.genesis-nav-menu .sub-menu a {
	width: 100%;
}

.genesis-nav-menu .sub-menu {
	clear: both;
	display: none;
	left: -9999px;
	margin: 0;
	opacity: 1;
	padding-left: 15px;
	position: static;
	z-index: 99;
}

.genesis-nav-menu .sub-menu a {
	background-color: #fff;
	font-size: 14px;
	position: relative;
	word-wrap: break-word;
}

.genesis-nav-menu .menu-item:focus,
.genesis-nav-menu .menu-item:hover {
	position: relative;
}

.genesis-nav-menu .menu-item:hover > .sub-menu {
	display: block;
	left: auto;
	opacity: 1;
}

/* Responsive Menu
--------------------------------------------- */

.menu .menu-item:focus {
	position: static;
}

.menu .menu-item > a:focus + ul.sub-menu,
.menu .menu-item.sfHover > ul.sub-menu {
	left: auto;
	opacity: 1;
}

.js .nav-primary {
	display: none;
	position: relative;
}

.genesis-responsive-menu .genesis-nav-menu .menu-item:hover > .sub-menu {
	display: none;
}

.menu-toggle,
.sub-menu-toggle {
	background-color: transparent;
	border-width: 0;
	color: #333;
	display: block;
	margin: 0 auto;
	overflow: hidden;
	text-align: center;
	visibility: visible;
}

.menu-toggle:focus,
.menu-toggle:hover,
.sub-menu-toggle:focus,
.sub-menu-toggle:hover {
	background-color: transparent;
	border-width: 0;
	color: #0073e5;
}

.menu-toggle {
	float: right;
	line-height: 20px;
	margin-bottom: 10px;
	margin-top: 10px;
	padding: 15px 0;
	position: relative;
	z-index: 1000;
}

.menu-toggle.activated::before {
	content: "\f335";
}

.site-header .dashicons-before::before {
	transition: none;
}

.site-header .menu-toggle::before {
	float: left;
	margin-right: 5px;
	position: relative;
	text-rendering: auto;
	top: 1px;
}

.sub-menu-toggle {
	float: right;
	padding: 9px 10px;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 100;
}

.sub-menu .sub-menu-toggle {
	padding: 12px 10px;
}

.sub-menu-toggle::before {
	display: inline-block;
	text-rendering: auto;
	transform: rotate(0);
	transition: transform 0.25s ease-in-out;
}

.sub-menu-toggle.activated::before {
	transform: rotate(180deg);
}

/* Header Menu
--------------------------------------------- */

.nav-primary {
	clear: left;
	padding-bottom: 15px;
	padding-top: 15px;
	width: 100%;
}

/* Footer Menu
--------------------------------------------- */

.nav-secondary {
	margin-top: 10px;
}

.nav-secondary .genesis-nav-menu {
	line-height: 1.5;
}

.nav-secondary .menu-item {
	display: inline-block;
}

.nav-secondary a {
	margin-left: 10px;
	margin-right: 10px;
	padding: 0;
}


/* Content Area
---------------------------------------------------------------------------- */

/* Entry Content
--------------------------------------------- */

.entry {
	margin-bottom: 40px;
}

.entry-content ol,
.entry-content ul {
	margin-bottom: 30px;
	padding-left: 40px;
}

.entry-content ol > li {
	list-style-type: decimal;
}

.entry-content ul > li {
	list-style-type: disc;
}

.entry-content ol ul > li,
.entry-content ul ul > li {
	list-style-type: circle;
}

.entry-content ol ol,
.entry-content ul ul {
	margin-bottom: 0;
}

.entry-content code {
	background-color: #f5f5f5;
}

.content .sticky {
	background-color: #f5f5f5;
	padding: 30px;
}

/* Entry Meta
--------------------------------------------- */

p.entry-meta {
	font-size: 16px;
	margin-bottom: 0;
}

.entry-header .entry-meta {
	margin-bottom: 20px;
}

.entry-footer .entry-meta {
	border-top: 1px solid #eee;
	padding-top: 20px;
}

.entry-categories,
.entry-tags {
	display: block;
}

.entry-comments-link::before {
	content: "\2014";
	margin: 0 6px 0 2px;
}

/* Pagination
--------------------------------------------- */

.pagination {
	clear: both;
	margin: 60px 0;
}

.adjacent-entry-pagination {
	margin-bottom: 0;
}

.archive-pagination li {
	display: inline;
}

.archive-pagination li a {
	background-color: #f5f5f5;
	color: #333;
	cursor: pointer;
	display: inline-block;
	font-size: 16px;
	font-weight: 600;
	margin-bottom: 4px;
	padding: 8px 12px;
	text-decoration: none;
}

.archive-pagination li a:focus,
.archive-pagination li a:hover,
.archive-pagination li.active a {
	background-color: #333;
	color: #fff;
}

/* Entry Comments
--------------------------------------------- */

.comment-respond,
.entry-comments,
.entry-pings {
	margin-bottom: 40px;
}

.comment-list li {
	padding: 40px 0 0 30px;
}

.comment-list .depth-1 {
	padding-left: 0;
}

.comment-header {
	margin-bottom: 30px;
}

.comment-content {
	clear: both;
}

.comment-content ul > li {
	list-style-type: disc;
}

.comment-respond input[type="email"],
.comment-respond input[type="text"],
.comment-respond input[type="url"] {
	width: 50%;
}

.comment-respond label {
	display: block;
	margin-right: 12px;
}

.comment-header p {
	margin-bottom: 0;
}

.entry-pings .reply {
	display: none;
}

.comment-form-cookies-consent label {
	display: inline;
	padding-left: 10px;
}

/* Sidebar
---------------------------------------------------------------------------- */

.sidebar {
	font-size: 16px;
	line-height: 1.5;
}

.sidebar .widget {
	margin-bottom: 40px;
}

.sidebar p {
	margin-bottom: 20px;
}

/* Footer Widgets
---------------------------------------------------------------------------- */

.footer-widgets {
	border-top: 1px solid #eee;
	background-color: #fff;
	clear: both;
	padding: 60px 0;
}

.footer-widgets .wrap {
	margin-left: auto;
	margin-right: auto;
}

.footer-widget-area {
	margin-bottom: 40px;
	padding-left: 30px;
	padding-right: 30px;
}

.footer-widget-area:last-child,
.footer-widgets .widget:last-child {
	margin-bottom: 0;
}


/* Site Footer
---------------------------------------------------------------------------- */

.site-footer {
	background-color: #fff;
	border-top: 1px solid #eee;
	font-size: 15px;
	line-height: 1.5;
	padding: 30px;
	text-align: center;
}

.site-footer p {
	margin-bottom: 0;
}


/* Media Queries
---------------------------------------------------------------------------- */

@media only screen and (min-width: 480px) {

	table {
		table-layout: auto;
		word-break: normal;
	}

}

@media only screen and (min-width: 960px) {

	/* Site Header
	--------------------------------------------- */

	.site-header {
		position: sticky;
		top: 0;
		z-index: 9999;
	}

	.admin-bar .site-header {
		top: 32px;
	}

	/* Genesis Menu
	--------------------------------------------- */

	.genesis-nav-menu .menu-item {
		display: inline-block;
	}

	.genesis-nav-menu .menu-item:focus,
	.genesis-nav-menu .menu-item:hover {
		position: relative;
	}

	.genesis-nav-menu > .menu-bold > a {
		font-weight: 700;
	}

	.genesis-nav-menu > .menu-highlight > a {
		background-color: #333;
		border-radius: 3px;
		color: #fff;
		font-weight: 600;
		margin-left: 15px;
		padding-left: 20px;
		padding-right: 20px;
	}

	.genesis-nav-menu > .menu-highlight > a:focus,
	.genesis-nav-menu > .menu-highlight > a:hover {
		background-color: #0073e5;
	}

	.genesis-nav-menu .sub-menu,
	.genesis-nav-menu .sub-menu a {
		width: 180px;
	}

	.genesis-nav-menu .sub-menu {
		border-top: 1px solid #eee;
		opacity: 0;
		padding-left: 0;
		position: absolute;
		transition: opacity 0.4s ease-in-out;
	}

	.genesis-nav-menu .sub-menu a {
		border: 1px solid #eee;
		border-top: 0;
		padding-bottom: 15px;
		padding-top: 15px;
	}

	.genesis-nav-menu .sub-menu .sub-menu {
		margin: -46px 0 0 179px;
	}

	/* Responsive Menu
	--------------------------------------------- */

	.js .nav-primary {
		display: block;
		padding-top: 15px;
	}

	.menu-toggle,
	.sub-menu-toggle {
		display: none;
		visibility: hidden;
	}

	/* Header Menu
	--------------------------------------------- */

	.nav-primary {
		clear: none;
		float: right;
		width: auto;
	}

	.nav-primary .genesis-nav-menu a {
		padding-left: 15px;
		padding-right: 15px;
	}

	/* Site-Inner
	--------------------------------------------- */

	.site-inner {
		max-width: 1140px;
	}

	/* Content
	--------------------------------------------- */

	.content {
		float: left;
		width: 65%;
	}

	.sidebar-content .content {
		float: right;
	}

	.full-width-content .content {
		float: none;
		margin-left: auto;
		margin-right: auto;
	}

	/* Sidebar
	--------------------------------------------- */

	.sidebar {
		float: right;
		width: 30%;
	}

	.sidebar-content .sidebar {
		float: left;
	}

	/* Author Box
	--------------------------------------------- */

	.author-box {
		background-color: #f5f5f5;
		padding: 30px;
	}

	/* After Entry
	--------------------------------------------- */

	.after-entry {
		padding: 40px 60px;
	}

	.after-entry .enews {
		padding-left: 30px;
		padding-right: 30px;
	}

	/* Column Classes
	--------------------------------------------- */

	.five-sixths,
	.four-sixths,
	.one-fourth,
	.one-half,
	.one-sixth,
	.one-third,
	.three-fourths,
	.three-sixths,
	.two-fourths,
	.two-sixths,
	.two-thirds {
		float: left;
		margin-left: 2.564102564102564%;
	}

	.one-half,
	.three-sixths,
	.two-fourths {
		width: 48.717948717948715%;
	}

	.one-third,
	.two-sixths {
		width: 31.623931623931625%;
	}

	.four-sixths,
	.two-thirds {
		width: 65.81196581196582%;
	}

	.one-fourth {
		width: 23.076923076923077%;
	}

	.three-fourths {
		width: 74.35897435897436%;
	}

	.one-sixth {
		width: 14.52991452991453%;
	}

	.five-sixths {
		width: 82.90598290598291%;
	}

	.first {
		clear: both;
		margin-left: 0;
	}

	/* Entry Misc.
	--------------------------------------------- */

	.after-entry,
	.archive-description,
	.author-box,
	.comment-respond,
	.entry,
	.entry-comments,
	.entry-pings {
		margin-bottom: 60px;
	}

	/* Footer Widgets
	--------------------------------------------- */

	.footer-widgets .wrap {
		max-width: 1140px;
	}

	.footer-widget-area {
		float: left;
		margin-bottom: 0;
		width: calc(100% / 3);
	}

}

/* Print Styles
---------------------------------------------------------------------------- */

@media print {

	*,
	*::before,
	*::after {
		background: transparent !important;
		box-shadow: none !important;
		color: #333 !important;
		text-shadow: none !important;
	}

	a,
	a:visited {
		text-decoration: underline;
	}

	a[href]::after {
		content: " (" attr(href) ")";
	}

	abbr[title]::after {
		content: " (" attr(title) ")";
	}

	a[href^="javascript:"]::after,
	a[href^="#"]::after,
	.site-title > a::after {
		content: "";
	}

	thead {
		display: table-header-group;
	}

	img,
	tr {
		page-break-inside: avoid;
	}

	img {
		max-width: 100% !important;
	}

	@page {
		margin: 2cm 0.5cm;
	}

	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}

	blockquote,
	pre {
		border: 1px solid #999;
		page-break-inside: avoid;
	}

	.content,
	.content-sidebar {
		width: 100%;
	}

	button,
	input,
	select,
	textarea,
	.breadcrumb,
	.comment-edit-link,
	.comment-form,
	.comment-list .reply a,
	.comment-reply-title,
	.edit-link,
	.entry-comments-link,
	.entry-footer,
	.genesis-box,
	.header-widget-area,
	.hidden-print,
	.home-top,
	.nav-primary,
	.nav-secondary,
	.post-edit-link,
	.sidebar {
		display: none !important;
	}

	.title-area {
		text-align: center;
		width: 100%;
	}

	.site-title > a {
		margin: 0;
		text-decoration: none;
		text-indent: 0;
	}

	.site-inner {
		padding-top: 0;
		position: relative;
	}

	.author-box {
		margin-bottom: 0;
	}

	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
		orphans: 3;
		page-break-after: avoid;
		page-break-inside: avoid;
		widows: 3;
	}


	img {
		page-break-after: avoid;
		page-break-inside: avoid;
	}

	blockquote,
	pre,
	table {
		page-break-inside: avoid;
	}

	dl,
	ol,
	ul {
		page-break-before: avoid;
	}

}

/* ==========================================================================
   Shackleford — brand layer
   Mirrors the live Canvas site as measured on 2026-10-12 (1729px viewport):
   995px green header box (collage at 0 0) centred on a white band, a
   full-width #1e3d1b nav band with a 940px inner row, a 995px white content
   column (615px main + 295px sidebar) on the #f7f5f0 page ground, and a
   dark-green footer box with a 3px accent rule. Tokens are the client's own
   from their "visual refresh v2/v3" CSS.
   ========================================================================== */

:root {
	--clr-primary:      #2d5a27;
	--clr-primary-dark: #1e3d1b;
	--clr-accent:       #8b3a2a;
	--clr-accent-light: #a84f3c;
	--clr-bg:           #f7f5f0;
	--clr-surface:      #ffffff;
	--clr-text:         #1e2022;
	--clr-text-muted:   #555e67;
	--clr-border:       #ddd8cf;
	--clr-highlight:    #85c777; /* current/hover nav item, as rendered live */
	--font-heading:     'Lora', Georgia, serif;
	--font-body:        'Inter', system-ui, sans-serif;
	--shk-box:          995px;
	--shk-row:          940px;
}

body {
	background-color: var(--clr-bg);
	color: var(--clr-text);
	font-family: var(--font-body);
	font-size: 17px;
	font-weight: 300;
	line-height: 1.75;
	-webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6,
.entry-title, .archive-title, .widget-title {
	color: var(--clr-text);
	font-family: var(--font-heading);
	letter-spacing: -0.01em;
	line-height: 1.3;
}

h1, .entry-title { font-size: 2.2rem; font-weight: 700; }
h2 { font-size: 1.65rem; font-weight: 600; }
h3 { font-size: 1.3rem;  font-weight: 600; }
h4 { font-size: 1.1rem;  font-weight: 600; }
h5, h6 { font-size: 1rem; font-weight: 600; }

a { color: var(--clr-accent); text-decoration: none; }
a:hover, a:focus { color: var(--clr-accent-light); }

/* ---- Header: white band, 995px green box with the collage ---------------- */

.site-header {
	background-color: var(--clr-surface);
	box-shadow: none;
	padding: 0;
	position: static;
}

.site-header > .wrap {
	background-color: var(--clr-primary);
	margin: 0 auto;
	background-position: 0 0;
	background-repeat: no-repeat;
	border-bottom: 3px solid var(--clr-primary-dark);
	max-width: var(--shk-box);
	min-height: 149px;
	padding: 40px 27px 27px;
}

.title-area { float: none; padding: 0; max-width: 260px; }

.site-title {
	font-family: var(--font-heading);
	font-size: 1.9rem;
	font-weight: 700;
	line-height: 1.3;
	margin-bottom: 0;
}

.site-title a,
.site-title a:focus,
.site-title a:hover { color: #fff; }

.site-description {
	color: rgba(255, 255, 255, 0.75);
	font-family: var(--font-body);
	font-size: 0.85rem;
	font-weight: 300;
	letter-spacing: 0.03em;
	margin-bottom: 0;
	position: static;
	height: auto;
	width: auto;
	clip: auto;
	clip-path: none;
	overflow: visible;
}

/* ---- Nav: full-width dark band, 940px row -------------------------------- */

.nav-primary {
	background-color: var(--clr-primary-dark);
	clear: both;
	float: none;
	padding: 0;
	width: 100%;
	border-bottom: 2px solid rgba(0, 0, 0, 0.15);
	margin-bottom: 1em;
}

.nav-primary .wrap { margin: 0 auto; max-width: var(--shk-row); padding: 0; }
.nav-primary .genesis-nav-menu { text-align: left; }

.nav-primary .genesis-nav-menu a {
	color: rgba(255, 255, 255, 0.92);
	font-family: var(--font-body);
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.2;
	padding: 14px 18px;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.nav-primary .genesis-nav-menu a:hover,
.nav-primary .genesis-nav-menu a:focus,
.nav-primary .genesis-nav-menu .current-menu-item > a,
.nav-primary .genesis-nav-menu .current-menu-ancestor > a,
.nav-primary .genesis-nav-menu .current-page-ancestor > a {
	background-color: var(--clr-highlight);
	color: #fff;
}

.nav-primary .genesis-nav-menu .sub-menu {
	background-color: var(--clr-primary-dark);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 0 0 4px 4px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.nav-primary .genesis-nav-menu .sub-menu a {
	background-color: transparent;
	border: 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	color: rgba(255, 255, 255, 0.92);
	font-size: 0.85rem;
	padding: 10px 16px;
	width: 220px;
}

.nav-primary .genesis-nav-menu .sub-menu a:hover,
.nav-primary .genesis-nav-menu .sub-menu a:focus {
	background-color: var(--clr-accent);
	color: #fff;
}

/* ---- Content column ------------------------------------------------------ */

.site-inner {
	background-color: var(--clr-surface);
	margin-top: 0;
	max-width: var(--shk-box);
	padding: 15px 27px 40px;
}

.entry { margin-bottom: 2.5rem; padding: 2rem 0 0; }

/* Live renders body copy in Open Sans 400 (Canvas' own font setting wins
   over the refresh CSS there), so match the rendered result. */
.entry-content {
	font-family: 'Open Sans', var(--font-body);
	font-weight: 400;
}

.entry-content p {
	font-size: 1rem;
	line-height: 1.8;
	margin-bottom: 1.4rem;
}

.entry-content ul,
.entry-content ol { line-height: 1.8; margin-bottom: 1.4rem; }

.entry-content li { margin-bottom: 0.45rem; }

.entry-content a { border-bottom: 1px solid rgba(139, 58, 42, 0.3); }
.entry-content a:hover { border-bottom-color: var(--clr-accent-light); }
.entry-content a:has(img) { border-bottom: 0; }

.entry-content h2,
.entry-content h3 { margin-top: 2.2rem; margin-bottom: 0.8rem; }

.entry-content h2 { border-bottom: 2px solid var(--clr-border); padding-bottom: 0.4rem; }

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

/* Canvas framed every content image; live measures 3px padding, 1px #e6e6e6. */
.entry-content img[class*="wp-image-"] {
	background-color: rgba(255, 255, 255, 0.7);
	border: 1px solid #e6e6e6;
	box-sizing: content-box;
	padding: 3px;
}

.entry-content img.alignleft  { margin: 5px 15px 15px 0; }
.entry-content img.alignright { margin: 5px 0 15px 15px; }

/* A paragraph holding only a floated image must not push the next float down:
   side-by-side images then top-align, as on live. */
.entry-content p:has(> img.alignleft:only-child),
.entry-content p:has(> img.alignright:only-child),
.entry-content p:has(> a:only-child > img.alignleft),
.entry-content p:has(> a:only-child > img.alignright) { margin-bottom: 0; }

.wp-caption-text {
	color: var(--clr-text-muted);
	font-size: 0.82rem;
	font-style: italic;
}

/* ---- Buttons and search -------------------------------------------------- */

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.button,
.wp-block-button__link,
.wp-block-search__button {
	background-color: var(--clr-accent);
	border: 0;
	border-radius: 4px;
	color: #fff;
	font-family: var(--font-body);
	font-size: 0.9rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	padding: 10px 22px;
}

button:hover,
button:focus,
input[type="submit"]:hover,
input[type="submit"]:focus,
.button:hover,
.wp-block-search__button:hover {
	background-color: var(--clr-accent-light);
	color: #fff;
}

.wp-block-search .wp-block-search__button {
	background-color: var(--clr-accent);
	border: 0;
	border-radius: 0 4px 4px 0;
	color: #fff;
	font-size: 0.82rem;
	margin-left: 0;
	padding: 6px 12px;
}

.wp-block-search { margin-left: auto; max-width: 220px; opacity: 0.7; transition: opacity 0.2s ease; }
.wp-block-search:hover,
.wp-block-search:focus-within { opacity: 1; }
.wp-block-search__label { display: none; }
.wp-block-search__input { border: 1px solid var(--clr-border); border-radius: 4px 0 0 4px; font-size: 0.85rem; padding: 6px 10px; }
.wp-block-search__button { border-radius: 0 4px 4px 0; font-size: 0.82rem; margin-left: 0; padding: 6px 12px; }

/* ---- Home page --------------------------------------------------------------
   The client's v2/v3 CSS also tried to turn the intro list into cards, but its
   selectors never matched Canvas markup, so live renders plain bullets. Match
   what live shows, not what that CSS intended. */

.home .entry-title { color: var(--clr-primary); font-size: 2.3rem; }

/* ---- Social icons (Contact page): round brand-coloured buttons, as Canvas showed */

.shk-social { display: flex; gap: 8px; }

.entry-content a.shk-social__link {
	align-items: center;
	border: 0;
	border-radius: 50%;
	color: #fff;
	display: inline-flex;
	height: 36px;
	justify-content: center;
	transition: opacity 0.2s ease;
	width: 36px;
}

.entry-content a.shk-social__link:hover,
.entry-content a.shk-social__link:focus { color: #fff; opacity: 0.85; }

.shk-social__link--twitter  { background-color: #1da1f2; }
.shk-social__link--facebook { background-color: #3b5998; }

.shk-social .dashicons { font-size: 20px; height: 20px; width: 20px; }

/* ---- Sidebar ------------------------------------------------------------- */

.sidebar { font-size: 0.9rem; padding-top: 2rem; }
.sidebar .widget { border-bottom: 1px solid var(--clr-border); margin-bottom: 2rem; padding-bottom: 1.5rem; }
.sidebar .widget:last-child { border-bottom: 0; }
.widget-title {
	border-bottom: 2px solid var(--clr-border);
	color: var(--clr-primary);
	font-size: 1.05rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	margin-bottom: 1rem;
	padding-bottom: 0.5rem;
	text-transform: uppercase;
}

/* ---- Footer: darker full-width band, 982px dark-green box ---------------- */

.site-footer {
	background-color: rgba(0, 0, 0, 0.2);
	border-top: 0;
	font-size: 0.8rem;
	padding: 1rem 0;
	text-align: left;
}

.site-footer > .wrap {
	background-color: var(--clr-primary-dark);
	border-top: 3px solid var(--clr-accent);
	color: rgba(255, 255, 255, 0.85);
	margin: 0 auto;
	max-width: 982px;
	padding: 12px 20px;
}

.site-footer p { color: rgba(255, 255, 255, 0.5); font-size: 0.8rem; line-height: 1.6; margin-bottom: 0; }

.site-footer a { border-bottom: 1px solid rgba(255, 255, 255, 0.2); color: rgba(255, 255, 255, 0.9); }
.site-footer a:hover,
.site-footer a:focus { border-bottom-color: rgba(255, 255, 255, 0.6); color: #fff; }

.nav-secondary { margin-bottom: 4px; }
.nav-secondary .genesis-nav-menu .menu-item { display: inline-block; float: none; }
.nav-secondary .genesis-nav-menu { line-height: 1.6; text-align: left; }
.nav-secondary .genesis-nav-menu a { color: rgba(255, 255, 255, 0.9); font-size: 0.8rem; padding: 0 16px 0 0; }

/* ---- Focus ---------------------------------------------------------------- */

a:focus,
input:focus,
button:focus,
select:focus,
textarea:focus { outline: 2px solid var(--clr-accent); outline-offset: 2px; }

/* ---- Desktop: two-column layout inside the 995px column ------------------- */

@media only screen and (min-width: 960px) {
	.content-sidebar-wrap { display: flex; gap: 30px; }
	.content-sidebar .content { float: none; width: 615px; }
	.content-sidebar .sidebar-primary { float: none; width: 295px; }
	.full-width-content .content { width: 100%; }

	.nav-primary .genesis-nav-menu .sub-menu { width: 220px; }
}

/* ---- Mobile ---------------------------------------------------------------- */

@media only screen and (max-width: 959px) {
	body { font-size: 16px; }
	h1, .entry-title { font-size: 1.7rem; }
	h2 { font-size: 1.35rem; }
	h3 { font-size: 1.15rem; }

	/* The collage would sit behind the title at this width: drop it. */
	body .site-header > .wrap { background-image: none !important; min-height: 0; padding: 20px 16px; }

	/* The responsive-menu script puts the toggle straight after the header;
	   give it the nav band's colour so it reads as the nav. */
	.menu-toggle {
		background-color: var(--clr-primary-dark);
		display: block;
		float: none;
		margin: 0;
		padding: 12px 16px;
		text-align: left;
		width: 100%;
	}

	.nav-primary { margin-bottom: 0; }

	.entry-content .alignleft,
	.entry-content .alignright {
		display: block;
		float: none;
		margin: 0 auto 1.4rem;
	}
	.site-inner { padding: 15px 16px 40px; }

	.nav-primary .wrap { padding: 0 16px; }
	.menu-toggle,
	.sub-menu-toggle { color: #fff; min-height: 44px; }
	.sub-menu-toggle { background-color: transparent; }
	.menu-toggle:hover,
	.menu-toggle:focus,
	.sub-menu-toggle:hover,
	.sub-menu-toggle:focus { background-color: var(--clr-primary); color: #fff; }
	.nav-primary .genesis-nav-menu .sub-menu a { width: 100%; }

	.home .entry-content ul { grid-template-columns: 1fr 1fr; }
}

@media only screen and (max-width: 480px) {
	h1, .entry-title { font-size: 1.5rem; }
	.home .entry-content ul { grid-template-columns: 1fr; }
}
