/* Conservative layout repairs. Existing Customizer colors remain authoritative. */
.screen-reader-text {
 display: block; position: absolute; width: 1px; height: 1px;
 padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0);
 clip-path: inset(50%); white-space: nowrap; border: 0;
}
.skip-link:focus {
 position: fixed; top: 12px; left: 12px; width: auto; height: auto;
 margin: 0; padding: 12px 20px; clip: auto; clip-path: none;
 color: #fff; background: #171717; z-index: 9999999;
}
a:focus-visible, button:focus-visible, input:focus-visible,
select:focus-visible, textarea:focus-visible {
 outline: 3px solid #dfbd72; outline-offset: 4px;
 box-shadow: 0 0 0 1px #171717;
}
#content:focus { outline: none; }
.site-branding img { max-width: 100%; height: auto; }
.site-branding .site-title { overflow-wrap: anywhere; }
.entry-title, .page-title, .widget-title, .entry-content, .comment-content { overflow-wrap: anywhere; }
.entry-content pre, .wp-block-table { overflow-x: auto; }
.entry-content video { max-width: 100%; height: auto; }
.entry-content iframe { max-width: 100%; }
.entry-content iframe[src*="youtube.com"], .entry-content iframe[src*="youtube-nocookie.com"],
.entry-content iframe[src*="player.vimeo.com"] { width: 100%; height: auto; aspect-ratio: 16 / 9; }
.entry-content a { text-underline-offset: .18em; }
.featured-thumbnail img { display: block; height: auto; }
.lifestylepress-no-sidebar .featured-content { width: 100%; margin-right: 0; }
.footer-column-wrapper::after { content: ''; display: table; clear: both; }
.page-numbers li a, .page-numbers li span { min-width: 44px; min-height: 44px; }
ul.page-numbers { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; }
.page-numbers li { margin: 0; }
.page-numbers li .page-numbers { display: inline-flex; align-items: center; justify-content: center; }
.super-menu .menu-toggle { display: none; border: 0; border-radius: 0; background: transparent; box-shadow: none; font: inherit; min-height: 48px; }
.super-menu .menu-toggle:before { content: '☰'; font-family: inherit; }
.main-navigation .sub-arrow { display: none; }
.lifestylepress-image-placeholder { display: block; aspect-ratio: 5 / 3; background: rgba(128,128,128,.15); }
.bottom-header-wrapper:not(:has(> img)) .header-txt-wrap { position: relative; top: auto; transform: none; padding: 24px; }
@media (min-width: 1024px) {
 .primary-menu ul li:hover > ul, .primary-menu ul li:focus-within > ul { display: block; }
 .primary-menu ul li ul { max-width: min(280px, 90vw); }
 .primary-menu ul > li:last-child > ul { left: auto; right: 0; }
 .primary-menu ul li a { min-height: 48px; }
}
@media (max-width: 1023px) {
 .super-menu { display: none; }
 .lifestylepress-nav-ready .super-menu, .lifestylepress-nav-ready .super-menu .menu-toggle { display: block; }
 #primary-site-navigation { display: block; width: 100%; margin: 0; }
 .lifestylepress-nav-ready #primary-site-navigation { display: none; }
 .lifestylepress-nav-ready #primary-site-navigation.is-open { display: block; }
 #primary-site-navigation .content-wrap { width: 100%; max-width: 100%; }
 #primary-site-navigation .center-main-menu { display: block; width: 100%; }
 #primary-site-navigation ul, #primary-site-navigation li { width: 100%; float: none; display: block; text-align: left; }
 #primary-site-navigation ul ul { position: static; box-shadow: none; margin: 0; padding: 0 0 0 16px; min-width: 0; left: auto; }
 .lifestylepress-nav-ready #primary-site-navigation ul ul { display: none; }
 .lifestylepress-nav-ready #primary-site-navigation li.submenu-open > ul { display: block; }
 #primary-site-navigation ul li a, #primary-site-navigation ul.pmenu > li:first-child a { padding: 12px 60px 12px 20px; min-height: 48px; }
 #primary-site-navigation li { border-top: 1px solid rgba(255,255,255,.15); }
 #primary-site-navigation .sub-arrow { display: block; width: 48px; height: 48px; padding: 0; line-height: 1; right: 4px; top: 0; border: 0; background: transparent; box-shadow: none; font-size: 24px; }
 .featured-content, .featured-sidebar { width: 100%; margin: 0; float: none; }
 .bottom-header-wrapper .header-txt-wrap { position: relative; top: auto; transform: none; padding: 20px; }
 .bottom-header-wrapper span.bottom-header-title { float: none; font-size: clamp(24px, 5vw, 36px); line-height: 1.25; }
}
@media (max-width: 600px) {
 .content-wrap { max-width: calc(100% - 32px); }
 .site-branding { margin-top: 20px; margin-bottom: 20px; }
 .site-branding .site-title { font-size: clamp(24px, 6vw, 32px); line-height: 1.3; }
 .site-main .entry-title { font-size: clamp(22px, 5.5vw, 30px); line-height: 1.3; }
 .entry-content, .entry-summary { font-size: 16px; line-height: 1.7; }
 .header-widgets-three, .footer-column-three { width: 100%; max-width: 100%; float: none; margin-left: 0; margin-right: 0; }
 .comments-area input:not([type="checkbox"]):not([type="radio"]), .comments-area textarea, .search-field { max-width: 100%; font-size: 16px; }
 .comments-area .comment-list ol.children { margin-left: 0; padding-left: 16px; }
}
@media (prefers-reduced-motion: reduce) {
 .primary-menu *, .featured-thumbnail img { transition: none; animation: none; }
}
/* Large touch tablets also need an explicit submenu control. */
@media (min-width: 1024px) and (hover: none) {
 .primary-menu li:has(> .sub-arrow) > a { padding-right: 52px; }
 .primary-menu .sub-arrow { display: block; width: 44px; height: 48px; padding: 0; right: 0; top: 0; border: 0; background: transparent; box-shadow: none; }
 .primary-menu li:not(.submenu-open) > ul { display: none; }
 .primary-menu li.submenu-open > ul { display: block; }
}
