@charset "utf-8";
/* RUTT'S MACHINE BLOG CSS
 *
 * Loaded after the static site's skeleton.css and main.css (and WordPress's
 * block styles). Every rule is scoped to blog-only classes so the shared
 * header, navigation and footer keep exactly the static site's styling.
 */

/* Accessibility helpers (WordPress core class names) */

	.screen-reader-text {border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute !important;width:1px;word-wrap:normal !important;}
	.screen-reader-text:focus {background-color:#fff;clip:auto !important;clip-path:none;color:#005e8c;display:block;font-size:14px;font-weight:700;height:auto;left:5px;line-height:normal;padding:15px 23px;text-decoration:none;top:5px;width:auto;z-index:200000;box-shadow:0 0 10px rgba(0,0,0,.35);}

/* Layout */

	/* main.css gives the first .row in a container a 20px top margin and no
	   bottom margin (meant for the header row). Content rows sit inside <main>,
	   so restore normal row spacing there. */
	.blog-main {display:block;}
	.blog-main > .row:first-of-type {margin-top:0;margin-bottom:20px;}

	/* Long article titles in the banner */
	.single .int-head h1 {font-size:36px;line-height:1.25;padding-left:20px;padding-right:20px;box-sizing:border-box;}
	/* On phones the banner is only ~120px tall, so long titles go in the dark
	   band directly under the image instead of overlapping the header. */
	@media only screen and (max-width:750px) {
	.single .int-head {display:flex;flex-direction:column-reverse;}
	.single .int-head h1 {position:static;margin:0;font-size:20px;text-shadow:none;}
	.single .int-head img {display:block;}
	}

	/* Static mobile pages pad p/h1/h2 by 10px; pad the column instead so lists,
	   images and cards line up with the text. */
	@media only screen and (max-width:750px) {
	.blog-listing > .columns,.blog-article > .columns {padding:0 10px;}
	.blog-listing p,.blog-listing h2,.blog-article p,.blog-article h1,.blog-article h2 {padding-left:0;padding-right:0;}
	}

	/* Mobile menu sits under the WordPress toolbar for logged-in editors */
	.admin-bar .m-nav {top:32px;}
	@media screen and (max-width:782px) {
	.admin-bar .m-nav {top:46px;}
	}

/* Listing */

	.blog-intro {margin-bottom:20px;}
	.blog-intro p:last-child {margin-bottom:0;}

	.blog-filter {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:15px;margin-bottom:25px;padding-bottom:20px;border-bottom:1px solid #E1E1E1;}

	.blog-categories ul {display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;}
	.blog-categories ul li,.blog-categories ul li:last-of-type {margin:0;}
	.blog-categories a {display:inline-block;padding:7px 12px;border:1px solid #231F20;border-radius:4px;color:#231F20;font-size:11px;font-weight:600;line-height:1.4;letter-spacing:.1rem;text-transform:uppercase;text-decoration:none;transition:color .2s,border-color .2s,background-color .2s;}
	.blog-categories a:hover,.blog-categories a:focus {color:#005e8c;border-color:#005e8c;}
	.blog-categories a.is-current {background-color:#005e8c;border-color:#005e8c;color:#fff;}

	/* Blog search: same treatment as the header search box */
	.blog-search-form {position:relative;display:flex;width:260px;max-width:100%;margin:0 0 0 auto;}
	.blog-search-form input[type="search"] {flex:1 1 auto;width:auto;height:38px;margin:0;padding-right:45px;border:4px solid #005e8c;border-radius:0;}
	.blog-search-form button {position:absolute;top:4px;right:4px;width:35px;height:30px;margin:0;padding:0;border:none;border-radius:0;background-color:#231f20;color:#fff;font-size:16px;font-weight:normal;line-height:30px;letter-spacing:0;}
	.blog-search-form button:hover,.blog-search-form button:focus {color:#fad000;background-color:#231f20;}
	.row .eight.columns .blog-search-form {margin:10px 0 25px;}

	@media only screen and (max-width:750px) {
	.blog-filter {flex-direction:column;align-items:stretch;}
	.blog-search-form {width:100%;margin:0;}
	}

	/* Cards */
	.blog-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;margin-bottom:30px;}
	@media only screen and (max-width:750px) {
	.blog-grid {grid-template-columns:minmax(0,1fr);gap:20px;}
	}

	.blog-card {display:flex;flex-direction:column;margin:0;padding:0;background-color:#fff;}
	.blog-card__media {display:block;aspect-ratio:16/9;overflow:hidden;background-color:#005e8c;}
	.blog-card__media img {display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease;}
	.blog-card:hover .blog-card__media img {transform:scale(1.03);}
	.blog-card__fallback {display:block;width:100%;height:100%;background-color:#005e8c;background-repeat:no-repeat;background-position:center;background-size:auto 55%;}

	.blog-card__body {display:flex;flex:1 1 auto;flex-direction:column;padding:15px;}
	.blog-card .blog-card__title {margin:0 0 5px;padding:0;font-size:20px;line-height:1.3;letter-spacing:0;}
	.blog-card__title a {color:#005e8c;text-decoration:none;}
	.blog-card__title a:hover,.blog-card__title a:focus {color:#00486b;text-decoration:underline;}
	.blog-card .blog-card__date {margin:0 0 10px;padding:0;color:#666;font-size:13px;}
	.blog-card .blog-card__excerpt p {margin:0 0 15px;padding:0;}
	.blog-card .blog-card__more {align-self:flex-start;margin:auto 0 0;}

	/* Pagination */
	.blog-pagination {margin:0 0 30px;}
	.blog-pagination .nav-links {display:flex;flex-wrap:wrap;justify-content:center;gap:6px;}
	.blog-pagination .page-numbers {display:inline-block;min-width:38px;height:38px;padding:0 12px;border:1px solid #231F20;border-radius:4px;box-sizing:border-box;color:#231F20;font-size:11px;font-weight:600;line-height:36px;letter-spacing:.1rem;text-align:center;text-transform:uppercase;text-decoration:none;transition:color .2s,border-color .2s;}
	.blog-pagination a.page-numbers:hover,.blog-pagination a.page-numbers:focus {color:#005e8c;border-color:#005e8c;}
	.blog-pagination .page-numbers.current {background-color:#005e8c;border-color:#005e8c;color:#fff;}
	.blog-pagination .page-numbers.dots {border-color:transparent;}

	/* Empty state */
	.blog-empty {margin-bottom:30px;}
	.blog-empty h2 {margin-bottom:10px;}
	.blog-empty .button {margin:0 10px 10px 0;}

/* Article */

	.blog-post {margin-bottom:30px;}
	.blog-post .blog-post__meta {margin:0 0 20px;padding:0;color:#666;font-size:13px;}
	.blog-post__meta i {margin-right:3px;color:#005e8c;}
	.blog-post__sep {margin:0 8px;color:#bbb;}

	.blog-post__image {margin:0 0 25px;}
	.blog-post__image img {display:block;max-width:100%;height:auto;margin:0 auto;border:5px solid #fff;box-sizing:border-box;box-shadow:0 0 15px 0 rgba(0,0,0,.15);}
	.blog-post__image figcaption {margin-top:8px;color:#666;font-size:13px;text-align:center;}

	.blog-post__footer {clear:both;margin-top:30px;padding-top:20px;border-top:1px solid #E1E1E1;}
	.blog-post-nav .nav-links {display:flex;justify-content:space-between;gap:20px;margin-bottom:20px;}
	.blog-post-nav .nav-previous,.blog-post-nav .nav-next {flex:1 1 0;}
	.blog-post-nav .nav-next {text-align:right;}
	.blog-post-nav a {display:block;color:#005e8c;font-weight:700;text-decoration:none;}
	.blog-post-nav a:hover,.blog-post-nav a:focus {color:#00486b;text-decoration:underline;}
	.blog-post-nav .nav-label {display:block;margin-bottom:3px;color:#666;font-size:11px;font-weight:600;letter-spacing:.1rem;text-transform:uppercase;}
	.blog-post .blog-post__back {margin:0;padding:0;}
	.blog-post__back .button {margin:0;}

	@media only screen and (max-width:750px) {
	.blog-post-nav .nav-links {flex-direction:column;gap:15px;}
	.blog-post-nav .nav-next {text-align:left;}
	}

/* Article content (WordPress and Gutenberg elements) */

	.entry-content {color:#222;font-size:16px;line-height:1.6;}
	.entry-content::after {content:"";display:table;clear:both;}
	.entry-content > :first-child {margin-top:0;}

	/* Headings: site colours and weights, with a size scale that stays in order
	   (skeleton.css would otherwise make h4 larger than main.css's h2). */
	.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6 {margin:30px 0 12px;color:#005e8c;font-weight:700;line-height:1.3;letter-spacing:0;}
	.entry-content h1 {font-size:24px;text-transform:uppercase;}
	.entry-content h2 {font-size:20px;}
	.entry-content h3 {font-size:18px;}
	.entry-content h4 {font-size:16px;}
	.entry-content h5 {font-size:14px;letter-spacing:.05em;text-transform:uppercase;}
	.entry-content h6 {color:#555;font-size:13px;letter-spacing:.05em;text-transform:uppercase;}

	/* Lists: main.css adds 25px under the last item of every list */
	.entry-content ul,.entry-content ol {margin:0 0 25px;padding-left:1.6em;list-style-position:outside;}
	.entry-content ul {list-style-type:circle;}
	.entry-content ol {list-style-type:decimal;}
	.entry-content li {margin-bottom:8px;}
	.entry-content li:last-of-type {margin-bottom:0;}
	.entry-content li > ul,.entry-content li > ol {margin:8px 0 0;font-size:inherit;}

	.entry-content blockquote,.entry-content .wp-block-quote {margin:0 0 25px;padding:15px 20px;border-left:4px solid #005e8c;background-color:#F1F1F1;font-style:italic;}
	.entry-content blockquote p:last-child {margin-bottom:0;}
	.entry-content blockquote cite,.entry-content .wp-block-quote cite {display:block;margin-top:10px;color:#555;font-size:13px;font-style:normal;}
	.entry-content .wp-block-pullquote {margin:0 0 25px;padding:25px 0;border-top:4px solid #005e8c;border-bottom:4px solid #005e8c;color:#005e8c;}
	.entry-content .wp-block-pullquote blockquote {padding:0;border:0;background:none;}

	.entry-content hr,.entry-content .wp-block-separator {margin:30px 0;border:0;border-top:1px solid #E1E1E1;}

	.entry-content pre {overflow-x:auto;padding:15px;border:1px solid #E1E1E1;border-radius:4px;background-color:#F1F1F1;white-space:pre;}
	.entry-content pre code {padding:0;border:0;background:none;}

	/* Images, captions and alignment (same frame as .img-left/.img-right) */
	.entry-content img {max-width:100%;height:auto;}
	.entry-content figure {margin:0 0 25px;}
	.entry-content figcaption,.entry-content .wp-element-caption,.entry-content .wp-caption-text {margin-top:8px;color:#666;font-size:13px;text-align:center;}
	.entry-content .wp-caption {max-width:100%;}
	.entry-content .alignleft {float:left;max-width:50%;margin:5px 20px 15px 0;}
	.entry-content .alignright {float:right;max-width:50%;margin:5px 0 15px 20px;}
	.entry-content .aligncenter {margin-left:auto;margin-right:auto;text-align:center;}
	.entry-content .alignwide,.entry-content .alignfull {width:100%;max-width:100%;margin-left:0;margin-right:0;}
	@media only screen and (max-width:550px) {
	.entry-content .alignleft,.entry-content .alignright {float:none;max-width:100%;margin:0 0 20px;}
	}

	/* Tables: zebra rows like the engine tables on /dealers/ */
	.entry-content table {width:100%;margin:0 0 25px;border-collapse:collapse;}
	.entry-content .wp-block-table table {margin:0;}
	.entry-content th,.entry-content td,.entry-content th:first-child,.entry-content td:first-child,.entry-content th:last-child,.entry-content td:last-child {padding:8px 10px;border-bottom:1px solid #E1E1E1;text-align:left;vertical-align:top;}
	.entry-content thead th {border-bottom:0;background-color:#005e8c;color:#fff;}
	.entry-content tbody tr:nth-child(odd) {background-color:#F1F1F1;}
	.entry-content .wp-block-table td,.entry-content .wp-block-table th {border-left:0;border-right:0;border-top:0;}

	/* Embeds and video */
	.entry-content iframe,.entry-content embed,.entry-content object,.entry-content video {max-width:100%;}
	.entry-content .wp-block-embed,.entry-content .wp-block-video {margin:0 0 25px;}

	/* Gutenberg layout blocks */
	.entry-content .wp-block-columns {margin-bottom:25px;}
	.entry-content .wp-block-column > :last-child {margin-bottom:0;}
	.entry-content .wp-block-gallery {margin-bottom:25px;}
	.entry-content .wp-block-group.has-background {padding:20px;}

	/* Buttons block: dark call-to-action style from the home page slider,
	   outline style matches the site's .button */
	.entry-content .wp-block-buttons {margin-bottom:25px;}
	.entry-content .wp-block-button {margin-bottom:0;}
	.entry-content .wp-block-button__link {display:inline-block;padding:12px 30px;border:1px solid #272425;border-radius:0;background-color:#272425;color:#fff;font-size:13px;font-weight:700;line-height:1.4;letter-spacing:.1rem;text-transform:uppercase;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s;}
	.entry-content .wp-block-button__link:hover,.entry-content .wp-block-button__link:focus {border-color:#005e8c;background-color:#005e8c;color:#fff;}
	.entry-content .is-style-outline > .wp-block-button__link {border-color:#231F20;background-color:transparent;color:#231F20;}
	.entry-content .is-style-outline > .wp-block-button__link:hover,.entry-content .is-style-outline > .wp-block-button__link:focus {border-color:#005e8c;background-color:transparent;color:#005e8c;}
