/*
Theme Name: Render and Finish
Theme URI: https://renderandfinish.com.au/
Author: Render and Finish
Description: A classic WordPress theme with editable public pages, native blog posts, a safe admin content updater, and same-site customer portal links.
Version: 1.2.0
Requires at least: 6.4
Requires PHP: 7.4
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: render-and-finish
*/
:root { --rf-content-width: 1120px; }
.rf-native-content { max-width: var(--rf-content-width); margin: 0 auto; padding: 56px 24px; }
.rf-native-content > h1 { margin-bottom: 24px; }
.rf-native-content img { max-width: 100%; height: auto; }
.rf-native-content a { text-underline-offset: .2em; }
.rf-native-content .alignwide { width: 100%; }
.rf-native-content .alignfull { max-width: 100vw; }
.rf-post-list { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,300px),1fr)); gap: 24px; padding: 30px 0; }
.rf-post-card { padding: 28px; border: 1px solid #d9dddf; border-radius: 8px; background: #fff; color: #233d49; }
.rf-post-card h2 { margin: 12px 0; font-size: 1.45rem; line-height: 1.3; }
.rf-post-card p { line-height: 1.7; }
.rf-post-card time { font-size: .85rem; }
.rf-post-card img { width: 100%; aspect-ratio: 16/9; object-fit: cover; }
.rf-pagination { margin: 24px 0; }
.rf-pagination .page-numbers { display: inline-block; padding: 8px 14px; margin: 4px; border: 1px solid currentColor; }
.rf-custom-logo { display: block; text-align: center; padding: 10px 20px; background: #fff; }
.rf-custom-logo img { max-width: 240px; max-height: 90px; width: auto; height: auto; }
.rf-primary-menu { padding: 12px 24px; background: #173e50; color: white; }
.rf-primary-menu ul { display: flex; flex-wrap: wrap; justify-content: center; list-style: none; gap: 20px; margin: 0; padding: 0; }
.rf-primary-menu a { color: inherit; }
.rf-editor-note { border-left: 3px solid #d6aa72; padding: 12px 20px; }
.screen-reader-text { position: absolute !important; height: 1px; width: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); white-space: nowrap; }
.screen-reader-text:focus { clip: auto !important; height: auto; width: auto; left: 12px; top: 12px; padding: 12px 20px; color: #fff; background: #173e50; z-index: 100000; }
body.admin-bar .site-header { scroll-margin-top: 32px; }
