:root {
 --wpnugget-base: #FFFFFF; --wpnugget-surface: #F7F6F2; --wpnugget-contrast: #20241F; --wpnugget-muted: #555B52; --wpnugget-accent: #8A6100;
 --wpnugget-reading-width: 768px; --wpnugget-wide-width: 1200px; --wpnugget-logo-width: 44px;
 --wpnugget-font: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; --wpnugget-font-size: 16px; --wpnugget-line-height: 1.65;
}
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; background: var(--wpnugget-base); color: var(--wpnugget-contrast); font-family: var(--wpnugget-font); font-size: var(--wp--custom--wpnugget--typography--font-size--body); line-height: var(--wp--custom--wpnugget--typography--line-height--body); }
h1, h2, h3, h4 { line-height: var(--wp--custom--wpnugget--typography--line-height--heading); } h1 { font-size: var(--wp--custom--wpnugget--typography--font-size--display); } h2 { font-size: var(--wp--custom--wpnugget--typography--font-size--heading); } h3 { font-size: var(--wp--custom--wpnugget--typography--font-size--large); }
a { color: var(--wpnugget-accent); text-decoration: underline; } a:hover { text-decoration: none; }
button, input, textarea, select { font: inherit; } button, input[type="submit"] { cursor: pointer; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible { outline: var(--wp--custom--wpnugget--interaction--focus-width) solid var(--wpnugget-accent); outline-offset: var(--wp--custom--wpnugget--interaction--focus-offset); }
/* Explicit CTAs only. Utility controls opt into neutral styling below.
   Local properties select a variant; shared values remain theme.json tokens. */
:is(
 .wpnugget-button,
 .wp-block-button .wp-block-button__link,
 .elementor-widget-button .elementor-button.elementor-button,
 .woocommerce :where(a, button, input).button,
 .woocommerce [id="respond"] :where(input)[id="submit"], [id="review_form"] [id="submit"],
 .wc-block-components-button:where(:not(.is-link)),
 .menu-toggle, .submenu-toggle
):where(:not([hidden])) {
 --wpnugget-button-background: var(--wp--custom--wpnugget--button--background);
 --wpnugget-button-color: var(--wp--custom--wpnugget--button--color);
 --wpnugget-button-border: transparent;
 --wpnugget-button-hover-background: var(--wp--custom--wpnugget--button--background-hover);
 --wpnugget-button-hover-color: var(--wp--custom--wpnugget--button--color-hover);
 display: inline-flex;
 align-items: center;
 justify-content: center;
 box-sizing: border-box;
 max-width: 100%;
 font-family: var(--wpnugget-font);
 font-size: var(--wp--custom--wpnugget--typography--font-size--body);
 line-height: var(--wp--custom--wpnugget--typography--line-height--body);
 text-align: center;
 text-decoration: none;
 white-space: normal;
 overflow-wrap: anywhere;
 cursor: pointer;
 background: var(--wpnugget-button-background);
 color: var(--wpnugget-button-color);
 border: var(--wp--custom--wpnugget--button--border-width) solid var(--wpnugget-button-border);
 border-radius: var(--wp--custom--wpnugget--button--radius);
 min-height: var(--wp--custom--wpnugget--button--min-height);
 padding: var(--wp--custom--wpnugget--button--padding-block) var(--wp--custom--wpnugget--button--padding-inline);
 font-weight: var(--wp--custom--wpnugget--button--font-weight);
 box-shadow: var(--wp--custom--wpnugget--button--shadow);
 gap: var(--wp--custom--wpnugget--button--icon-gap);
 transition-property: background-color, color, border-color;
 transition-duration: var(--wp--custom--wpnugget--button--transition-duration);
 transition-timing-function: var(--wp--custom--wpnugget--button--transition-timing-function);
}

:is(.wpnugget-button.wpnugget-button--secondary,
 .wp-block-button.is-style-wpnugget-secondary .wp-block-button__link,
 .elementor-widget-button.wpnugget-button--secondary .elementor-button, .menu-toggle) {
 --wpnugget-button-background: var(--wp--custom--wpnugget--button--secondary--background);
 --wpnugget-button-color: var(--wp--custom--wpnugget--button--secondary--color);
 --wpnugget-button-border: var(--wp--custom--wpnugget--button--secondary--border-color);
 --wpnugget-button-hover-background: var(--wp--custom--wpnugget--button--secondary--background-hover);
 --wpnugget-button-hover-color: var(--wp--custom--wpnugget--button--secondary--color-hover);
}

:is(.wpnugget-button.wpnugget-button--outline,
 .wp-block-button.is-style-outline .wp-block-button__link,
 .elementor-widget-button.wpnugget-button--outline .elementor-button) {
 --wpnugget-button-background: var(--wp--custom--wpnugget--button--outline--background);
 --wpnugget-button-color: var(--wp--custom--wpnugget--button--outline--color);
 --wpnugget-button-border: var(--wp--custom--wpnugget--button--outline--border-color);
 --wpnugget-button-hover-background: var(--wp--custom--wpnugget--button--outline--background-hover);
 --wpnugget-button-hover-color: var(--wp--custom--wpnugget--button--outline--color-hover);
}

:is(.wpnugget-button.wpnugget-button--text,
 .wp-block-button.is-style-wpnugget-text .wp-block-button__link,
 .elementor-widget-button.wpnugget-button--text .elementor-button) {
 --wpnugget-button-background: var(--wp--custom--wpnugget--button--text--background);
 --wpnugget-button-color: var(--wp--custom--wpnugget--button--text--color);
 --wpnugget-button-border: transparent;
 --wpnugget-button-hover-background: var(--wp--custom--wpnugget--button--text--background);
 --wpnugget-button-hover-color: var(--wp--custom--wpnugget--button--text--color-hover);
}

.primary-navigation .submenu-toggle.submenu-toggle {
 --wpnugget-button-background: transparent;
 --wpnugget-button-color: var(--wp--custom--wpnugget--button--secondary--color);
 --wpnugget-button-hover-background: var(--wp--custom--wpnugget--button--secondary--background-hover);
 --wpnugget-button-hover-color: var(--wp--custom--wpnugget--button--secondary--color-hover);
 min-width: var(--wp--custom--wpnugget--button--min-height);
 padding: var(--wp--custom--wpnugget--spacing--2-xs);
}
:is(
 .wpnugget-button,
 .wp-block-button .wp-block-button__link,
 .elementor-widget-button .elementor-button.elementor-button,
 .woocommerce :where(a, button, input).button,
 .woocommerce [id="respond"] :where(input)[id="submit"], [id="review_form"] [id="submit"],
 .wc-block-components-button:where(:not(.is-link)),
 .menu-toggle, .submenu-toggle
):where(:not([hidden])):where(:not(:disabled):not([aria-disabled="true"]):not(.disabled)):is(:hover, :active) {
 background: var(--wpnugget-button-hover-background);
 color: var(--wpnugget-button-hover-color);
 text-decoration: none;
}

:is(.wpnugget-button.wpnugget-button--text,
 .wp-block-button.is-style-wpnugget-text .wp-block-button__link,
 .elementor-widget-button.wpnugget-button--text .elementor-button):where(:not(:disabled):not([aria-disabled="true"]):not(.disabled)):is(:hover, :active) {
 text-decoration: underline;
}
:is(
 .wpnugget-button,
 .wp-block-button .wp-block-button__link,
 .elementor-widget-button .elementor-button.elementor-button,
 .woocommerce :where(a, button, input).button,
 .woocommerce [id="respond"] :where(input)[id="submit"], [id="review_form"] [id="submit"],
 .wc-block-components-button:where(:not(.is-link)),
 .menu-toggle, .submenu-toggle
):where(:not([hidden])):focus-visible {
 outline: var(--wp--custom--wpnugget--interaction--focus-width) solid var(--wpnugget-accent);
 outline-offset: var(--wp--custom--wpnugget--interaction--focus-offset);
}
:is(
 .wpnugget-button,
 .wp-block-button .wp-block-button__link,
 .elementor-widget-button .elementor-button.elementor-button,
 .woocommerce :where(a, button, input).button,
 .woocommerce [id="respond"] :where(input)[id="submit"], [id="review_form"] [id="submit"],
 .wc-block-components-button:where(:not(.is-link)),
 .menu-toggle, .submenu-toggle
):where(:not([hidden])):is(:disabled, [aria-disabled="true"], .disabled) {
 opacity: var(--wp--custom--wpnugget--button--disabled-opacity);
 cursor: not-allowed;
}
@media (prefers-reduced-motion: reduce) {
:is(
 .wpnugget-button,
 .wp-block-button .wp-block-button__link,
 .elementor-widget-button .elementor-button.elementor-button,
 .woocommerce :where(a, button, input).button,
 .woocommerce [id="respond"] :where(input)[id="submit"], [id="review_form"] [id="submit"],
 .wc-block-components-button:where(:not(.is-link)),
 .menu-toggle, .submenu-toggle
):where(:not([hidden])) { transition: none; }
}

img, video { max-width: 100%; height: auto; } iframe { max-width: 100%; } .site-main { overflow-wrap: anywhere; flex: 1 0 auto; min-width: 0; margin-block-end: var(--wp--custom--wpnugget--spacing--xl); }
.site-shell { display: flex; flex-direction: column; min-height: 100vh; min-height: 100dvh; }
/* Core reserves space above the document for the logged-in admin bar. */
.admin-bar .site-shell { min-height: calc(100vh - 32px); min-height: calc(100dvh - 32px); }
@media (max-width: 782px) {
 .admin-bar .site-shell { min-height: calc(100vh - 46px); min-height: calc(100dvh - 46px); }
}
.site-shell > .site-header, .site-shell > .site-footer { flex-shrink: 0; }
.wide-container { width: min(calc(100% - 2 * var(--wp--custom--wpnugget--layout--container-gutter)), var(--wpnugget-wide-width)); margin-inline: auto; }
.reading-container { width: min(calc(100% - 2 * var(--wp--custom--wpnugget--layout--container-gutter)), var(--wpnugget-reading-width)); margin-inline: auto; }
.site-header { border-bottom: var(--wp--custom--wpnugget--border--width) solid var(--wp--custom--wpnugget--border--subtle); background: var(--wpnugget-base); }
.header-inner { display: flex; align-items: center; justify-content: space-between; gap: var(--wp--custom--wpnugget--layout--grid-gap); padding-block: var(--wp--custom--wpnugget--spacing--sm); flex-wrap: wrap; }
.header-layout--inline { justify-content: flex-start; }
.header-layout--centered { flex-direction: column; justify-content: center; text-align: center; }
.header-layout--centered .primary-menu { justify-content: center; }
.header-layout--centered .site-branding { justify-content: center; max-width: 100%; }
.site-branding { display: flex; align-items: center; gap: var(--wp--custom--wpnugget--spacing--sm); min-width: 0; overflow-wrap: anywhere; }
.custom-logo-link { flex-shrink: 0; max-width: min(var(--wpnugget-logo-width), 30vw); } .custom-logo { display: block; width: auto; max-height: var(--wp--custom--wpnugget--layout--logo-max-height); }
.site-title, .site-description { margin: 0; } .site-title { font-size: var(--wp--custom--wpnugget--typography--font-size--large); font-weight: var(--wp--custom--wpnugget--typography--weight--bold); line-height: var(--wp--custom--wpnugget--typography--line-height--heading); } .site-title a { color: var(--wpnugget-contrast); text-decoration: none; } .site-description { color: var(--wpnugget-muted); font-size: var(--wp--custom--wpnugget--typography--font-size--small); }
.primary-navigation { max-width: 100%; } .primary-menu, .primary-menu ul, .footer-menu, .footer-menu ul { list-style: none; padding: 0; margin: 0; }
.primary-menu { display: flex; flex-wrap: wrap; gap: var(--wp--custom--wpnugget--spacing--xs) var(--wp--custom--wpnugget--spacing--md); align-items: center; }
.primary-menu li { position: relative; } .primary-menu a { display: inline-block; padding-block: var(--wp--custom--wpnugget--spacing--xs); }
.primary-menu .sub-menu { padding: var(--wp--custom--wpnugget--spacing--xs) var(--wp--custom--wpnugget--spacing--sm); background: var(--wpnugget-base); min-width: var(--wp--custom--wpnugget--layout--submenu-min-width); border: var(--wp--custom--wpnugget--border--width) solid var(--wp--custom--wpnugget--border--subtle); }
.primary-navigation.enhanced .sub-menu { display: none; } .primary-navigation.enhanced .submenu-open > .sub-menu { display: block; }
.submenu-toggle { min-width: var(--wp--custom--wpnugget--button--min-height); padding: var(--wp--custom--wpnugget--spacing--2-xs); margin-inline-start: var(--wp--custom--wpnugget--spacing--2-xs); }
.menu-toggle[hidden] { display: none; }
@media (min-width: 769px) {
 .primary-navigation.enhanced .sub-menu { position: absolute; z-index: var(--wp--custom--wpnugget--interaction--z-index-dropdown); right: 0; max-width: min(var(--wp--custom--wpnugget--layout--submenu-max-width), 85vw); }
 .primary-navigation.enhanced .sub-menu .sub-menu { position: static; min-width: 0; }
 .primary-navigation.enhanced .menu-toggle { display: none; }
}
@media (max-width: 768px) {
 .header-layout--inline { flex-direction: column; align-items: flex-start; }
 .primary-navigation { width: 100%; } .primary-menu { display: block; }
 .primary-navigation.enhanced .primary-menu { display: none; padding-top: var(--wp--custom--wpnugget--spacing--sm); }
 .primary-navigation.enhanced.is-open .primary-menu { display: block; }
 .primary-menu .sub-menu { min-width: 0; }
}
.site-footer { background: var(--wpnugget-surface); padding: var(--wp--custom--wpnugget--spacing--xl) 0 var(--wp--custom--wpnugget--spacing--lg); margin-block-start: auto; }
.footer-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 14.5rem), 1fr)); gap: var(--wp--custom--wpnugget--spacing--xl) var(--wp--custom--wpnugget--spacing--sm); }
.footer-branding { align-items: flex-start; flex-wrap: wrap; } .footer-region h2 { font-size: var(--wp--custom--wpnugget--typography--font-size--body); margin: 0 0 var(--wp--custom--wpnugget--spacing--sm); }
.footer-menu li { margin-block: var(--wp--custom--wpnugget--spacing--xs); } .footer-menu ul { padding-inline-start: var(--wp--custom--wpnugget--spacing--sm); } .footer-menu a { overflow-wrap: anywhere; }
.copyright { border-top: var(--wp--custom--wpnugget--border--width) solid var(--wp--custom--wpnugget--border--subtle); padding-top: var(--wp--custom--wpnugget--spacing--md); margin-top: var(--wp--custom--wpnugget--spacing--xl); font-size: var(--wp--custom--wpnugget--typography--font-size--small); }
.entry-content { padding-block: var(--wp--custom--wpnugget--spacing--xl); }
.entry-content > :where(:not(.alignwide):not(.alignfull):not(.elementor)) { max-width: var(--wpnugget-reading-width); margin-inline: auto; width: calc(100% - 2 * var(--wp--custom--wpnugget--layout--container-gutter)); }
.entry-content > .alignwide { max-width: var(--wpnugget-wide-width); margin-inline: auto; width: calc(100% - 2 * var(--wp--custom--wpnugget--layout--container-gutter)); }
.entry-content > .alignfull, .entry-content > .elementor { width: 100%; max-width: none; margin-inline: 0; }
.entry-content :where(.is-layout-constrained) > :where(:not(.alignwide):not(.alignfull)) { max-width: var(--wpnugget-reading-width); margin-inline: auto; }
.entry-content > .alignfull { padding-inline: var(--wp--custom--wpnugget--layout--container-gutter); }
.entry-content .elementor { padding-inline: 0; }
.post-summary, .listing { padding-block: var(--wp--custom--wpnugget--spacing--md); } .navigation.pagination { max-width: var(--wpnugget-reading-width); margin: var(--wp--custom--wpnugget--spacing--lg) auto; padding-inline: var(--wp--custom--wpnugget--layout--container-gutter); }
.skip-link, .screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.skip-link:focus { position: fixed; z-index: var(--wp--custom--wpnugget--interaction--z-index-skip-link); top: var(--wp--custom--wpnugget--spacing--sm); left: var(--wp--custom--wpnugget--spacing--sm); width: auto; height: auto; clip-path: none; padding: var(--wp--custom--wpnugget--spacing--sm); background: var(--wpnugget-base); }
