@charset "UTF-8";
/**
 * Canonical theme UI foundation.
 * Component files may define layout only and must consume this public DNA.
 */
html{scroll-behavior:smooth}
body{background:var(--stm-surface-page);color:var(--stm-color-ink);font-family:var(--stm-font-sans);font-size:var(--stm-font-size-body);font-weight:var(--stm-body-font-weight);line-height:var(--stm-line-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
:where(h1,h2,h3,h4,h5,h6){margin:0 0 var(--stm-space-4);color:var(--stm-color-heading);font-family:var(--stm-font-display);font-weight:var(--stm-heading-font-weight);line-height:var(--stm-line-heading);letter-spacing:var(--stm-letter-tight);text-wrap:balance}
h1{font-size:var(--stm-font-size-h1)}h2{font-size:var(--stm-font-size-h2)}h3{font-size:var(--stm-font-size-h3)}h4{font-size:var(--stm-font-size-h4)}
:where(p,ul,ol,dl,blockquote,pre,table){margin-top:0;margin-bottom:var(--stm-space-4)}
a{color:var(--stm-color-link);text-decoration:none;text-underline-offset:3px;transition:color var(--stm-transition-fast),text-decoration-color var(--stm-transition-fast)}
a:hover{color:var(--stm-color-link-hover)}
:where(.stm-btn,.button,input[type="button"],input[type="submit"],input[type="reset"],button:not(.stm-ui-header-action):not(.stm-ui-icon-button)){box-sizing:border-box;min-height:var(--stm-control-height);display:inline-flex;align-items:center;justify-content:center;gap:var(--stm-button-gap);margin:0;padding:var(--stm-button-padding-y) var(--stm-button-padding-x);border:var(--stm-button-border-width) solid var(--stm-button-border-color);border-radius:var(--stm-button-radius);
  appearance:none;-webkit-appearance:none;vertical-align:middle;white-space:nowrap;background:var(--stm-raised-accent-bg,var(--stm-button-primary-bg));color:var(--stm-button-primary-text);font-family:var(--stm-font-sans);font-size:var(--stm-font-size-button);font-weight:var(--stm-button-font-weight);line-height:var(--stm-control-content-line-height);text-align:center;text-decoration:none;cursor:pointer;transition:background-color var(--stm-transition-fast),border-color var(--stm-transition-fast),color var(--stm-transition-fast),transform var(--stm-transition-fast)}
:where(.stm-btn,.button,button,input[type="button"],input[type="submit"],input[type="reset"]) > :where(svg,img,.dashicons){display:block;flex:0 0 auto;margin:0;align-self:center;line-height:1}

:where(.stm-btn,.button,input[type="button"],input[type="submit"],input[type="reset"],button:not(.stm-ui-header-action):not(.stm-ui-icon-button)):hover{border-color:var(--stm-color-primary-deep);background:var(--stm-raised-accent-hover-bg,var(--stm-button-primary-hover));color:var(--stm-button-primary-text)}
:where(.stm-btn,.button,input[type="button"],input[type="submit"],input[type="reset"],button):disabled{cursor:not-allowed;opacity:var(--stm-button-disabled-opacity)}
.stm-btn--secondary{background:var(--stm-button-secondary-bg);color:var(--stm-button-secondary-text)}.stm-btn--secondary:hover{background:var(--stm-button-secondary-hover);color:var(--stm-button-secondary-text)}
.stm-btn--ghost{border-color:var(--stm-raised-edge-line,var(--stm-color-border-strong));background:var(--stm-raised-control-bg,var(--stm-color-surface));color:var(--stm-color-heading)}.stm-btn--ghost:hover{border-color:var(--stm-color-primary);background:var(--stm-raised-control-hover-bg,var(--stm-color-primary-soft));color:var(--stm-color-primary-deep)}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:var(--stm-focus-outline);outline-offset:2px}
:where(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),select,textarea){min-height:var(--stm-control-height);max-width:100%;border:1px solid var(--stm-color-border-strong);border-radius:var(--stm-button-radius);background:var(--stm-raised-control-bg,var(--stm-color-surface));color:var(--stm-color-ink);padding-inline:var(--stm-space-3);transition:border-color var(--stm-transition-fast),background var(--stm-transition-fast)}
:where(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),select,textarea):hover{background:var(--stm-raised-control-hover-bg,var(--stm-color-surface-soft))}:where(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),select,textarea):focus{border-color:var(--stm-color-primary);background:var(--stm-raised-control-hover-bg,var(--stm-color-surface-soft))}
textarea{min-height:140px;padding-block:var(--stm-space-3);resize:vertical}
.stm-container,.site-container,.container{width:min(100% - (2 * var(--stm-content-gutter)),var(--stm-container));margin-inline:auto}
.stm-reading-width{width:min(100% - (2 * var(--stm-content-gutter)),var(--stm-container-reading));margin-inline:auto}
.stm-section{padding-block:var(--stm-section-space)}
:where(.stm-panel,.site-main,.entry-content,.widget){background:var(--stm-surface-panel)}
/* Canonical no-shadow widget contract. Every classic/new Theme widget receives .stm-widget;
 * block/widget-area children and opt-in data-stm-widget surfaces consume the same DNA. */
:where(.stm-widget,.widget,.widget-area > section,.widget-area > aside,.widget-area > .wp-block-group,[data-stm-widget]){
  box-shadow:var(--stm-widget-shadow,none);
  filter:var(--stm-widget-filter,none);
  text-shadow:var(--stm-widget-text-shadow,none);
}
:where(.stm-widget,.widget,.widget-area > section,.widget-area > aside,.widget-area > .wp-block-group,[data-stm-widget]):is(:hover,:focus,:focus-within){
  box-shadow:var(--stm-widget-hover-shadow,none);
  filter:var(--stm-widget-filter,none);
}
:where(.stm-widget,.widget,.widget-area > section,.widget-area > aside,.widget-area > .wp-block-group,[data-stm-widget])::before,
:where(.stm-widget,.widget,.widget-area > section,.widget-area > aside,.widget-area > .wp-block-group,[data-stm-widget])::after{
  box-shadow:none;
  filter:none;
}
:where(hr,.stm-divider){border:0;border-top:1px solid var(--stm-color-divider)}
.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
html[data-stm-layout="tablet"] :where(.stm-container,.site-container,.container,.stm-reading-width),html[data-stm-layout="mobile"] :where(.stm-container,.site-container,.container,.stm-reading-width){width:min(100% - (2 * var(--stm-content-gutter-mobile)),var(--stm-container))}html[data-stm-layout="tablet"] .stm-section,html[data-stm-layout="mobile"] .stm-section{padding-block:var(--stm-section-space-mobile)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms;animation-iteration-count:1;transition-duration:.01ms}}

/* Runtime behavior classes: visual values remain in the global DNA. */
.stm-setup-notice-bar{position:relative;z-index:30;text-align:center;padding:var(--stm-space-2) var(--stm-space-4);background:var(--stm-color-secondary);color:var(--stm-color-on-dark);font-size:var(--stm-font-size-button);font-weight:var(--stm-weight-semibold);line-height:var(--stm-line-ui)}
.stm-setup-notice-bar :where(a,span){color:inherit}.stm-setup-notice-bar a{text-decoration:none}.stm-setup-notice-bar a:hover{text-decoration:underline}
.stm-blog-layout-list .stm-blog-grid{grid-template-columns:1fr}
.stm-blog-layout-grid.stm-blog-columns-1 .stm-blog-grid{grid-template-columns:1fr}
.stm-blog-layout-grid.stm-blog-columns-2 .stm-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.stm-blog-layout-grid.stm-blog-columns-3 .stm-blog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.stm-blog-layout-grid.stm-blog-columns-4 .stm-blog-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
html[data-stm-layout="tablet"] .stm-blog-layout-grid :where(.stm-blog-grid){grid-template-columns:repeat(2,minmax(0,1fr))}
html[data-stm-layout="mobile"] .stm-blog-layout-grid :where(.stm-blog-grid){grid-template-columns:1fr}


/* Theme-owned global widget heading role. */
.stm-widget__title,
.widget .widget-title,
.widget .widgettitle,
.widget .wp-block-heading {
  margin-block: 0 var(--stm-space-3);
  padding:var(--stm-raised-heading-padding-y) var(--stm-raised-heading-padding-x);
  border:1px solid var(--stm-raised-edge-line);
  border-top-color:var(--stm-raised-edge-highlight);
  border-radius:var(--stm-raised-radius);
  background:var(--stm-raised-heading-bg);
  color:var(--stm-raised-heading-text);
  font-family: var(--stm-font-sans);
  font-size: var(--stm-widget-title-size);
  font-weight: var(--stm-widget-title-weight);
  line-height: var(--stm-widget-title-line-height);
  box-shadow:none;
}

/* Canonical premium raised-edge primitives. Component files own placement; Design DNA owns presentation. */
.stm-dna-raised-heading{padding:var(--stm-raised-heading-padding-y) var(--stm-raised-heading-padding-x);border:1px solid var(--stm-raised-edge-line);border-top-color:var(--stm-raised-edge-highlight);border-radius:var(--stm-raised-radius);background:var(--stm-raised-heading-bg);color:var(--stm-raised-heading-text);box-shadow:none}
.stm-dna-raised-surface{border:1px solid var(--stm-raised-edge-line);border-top-color:var(--stm-raised-edge-highlight);border-radius:var(--stm-raised-radius);background:var(--stm-raised-control-bg);box-shadow:none}
.stm-dna-raised-surface:is(:hover,:focus-within){background:var(--stm-raised-control-hover-bg)}
