/* base.css: foundation for the theme UI (chrome, blog). Element defaults have zero specificity (:where) and apply only to theme
   components ([data-rgn-component]) or to body typography, so Elementor, WooCommerce and the content skin always win. */

/* page defaults (lose to every other rule) */
:where(html){-webkit-text-size-adjust:100%;text-size-adjust:100%}
:where(body.rgn-theme){margin:0;font-family:var(--rgn-font-body);font-size:var(--rgn-fs-base);line-height:var(--rgn-lh-base);color:var(--rgn-text)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body.rgn-theme [id]{scroll-margin-top:calc(var(--rgn-header-h) + var(--wp-admin--admin-bar--height,0px) + 16px)}

/* theme components: box model and element defaults */
:where([data-rgn-component],[data-rgn-component] *,[data-rgn-component] *::before,[data-rgn-component] *::after,.rgn-container,.rgn-container *){box-sizing:border-box}
:where([data-rgn-component]) :where(h1,h2){margin:0;font-family:var(--rgn-font-heading);font-weight:700;letter-spacing:-.01em}
:where([data-rgn-component]) :where(h3,h4,h5,h6){margin:0;font-family:var(--rgn-font-body);font-weight:700}
:where([data-rgn-component]) :where(p,ul,ol,dl,dd,figure,blockquote){margin:0}
:where([data-rgn-component]) :where(ul,ol){padding:0;list-style:none}
:where([data-rgn-component]) :where(a){color:var(--rgn-link);text-underline-offset:.15em}
:where([data-rgn-component]) :where(a:hover){color:var(--rgn-link-hover)}
:where([data-rgn-component]) :where(img,svg,video){max-width:100%;height:auto}
:where([data-rgn-component]) :where(button,input,select,textarea){font:inherit}
.rgn-on-dark{color:var(--rgn-text)}

/* layout */
.rgn-container{width:100%;max-width:var(--rgn-container);margin-inline:auto;padding-inline:var(--rgn-gutter)}
.rgn-container--wide{max-width:var(--rgn-container-wide)}
.rgn-container--text{max-width:calc(var(--rgn-container-text) + 2 * var(--rgn-gutter))}

/* helpers */
.rgn-sr-only{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}
.rgn-skip-link{position:fixed;top:8px;left:8px;z-index:var(--rgn-z-skip);padding:12px 20px;border-radius:var(--rgn-radius);background:var(--rgn-bg);box-shadow:var(--rgn-shadow-2);
  color:var(--rgn-ink);font:700 1rem/1.2 var(--rgn-font-body);text-decoration:none;transform:translateY(-200%)}
.rgn-skip-link:focus{transform:none}
.rgn-main:focus{outline:none}/* skip-link target, tabindex -1 (F21) */
.rgn-icon{display:inline-block;width:1.25em;height:1.25em;flex:none;vertical-align:-.2em}

/* focus (theme UI): 3 px ring, purple on light, light orange on night */
[data-rgn-component] :focus-visible,.rgn-btn:focus-visible,.rgn-skip-link:focus-visible,.rgn-input:focus-visible,.rgn-select:focus-visible,.rgn-textarea:focus-visible{
  outline:3px solid var(--rgn-focus);outline-offset:var(--rgn-focus-offset,2px)}

/* buttons: one orange primary per view, navy outline for the rest */
.rgn-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;min-height:48px;padding:12px 24px;border:1px solid transparent;
  border-radius:var(--rgn-radius);font:700 1rem/1.25 var(--rgn-font-body);text-align:center;text-decoration:none;cursor:pointer;
  transition:background-color var(--rgn-dur-fast) var(--rgn-ease),color var(--rgn-dur-fast) var(--rgn-ease),border-color var(--rgn-dur-fast) var(--rgn-ease)}
.rgn-btn--primary{border-color:var(--rgn-orange-edge);background:var(--rgn-orange);color:var(--rgn-cta-ink)}
.rgn-btn--primary:hover,.rgn-btn--primary:active{background:var(--rgn-orange-hover);color:var(--rgn-cta-ink)}
.rgn-btn--secondary{padding:11px 23px;border:2px solid var(--rgn-navy);background:transparent;color:var(--rgn-navy)}
.rgn-btn--secondary:hover{background:var(--rgn-navy);color:var(--rgn-on-dark)}
.rgn-on-dark .rgn-btn--secondary{border-color:var(--rgn-on-dark);color:var(--rgn-on-dark)}
.rgn-on-dark .rgn-btn--secondary:hover{background:var(--rgn-on-dark);color:var(--rgn-night)}
.rgn-btn--link{min-height:var(--rgn-tap);padding:0 4px;border:0;background:none;color:var(--rgn-link);text-decoration:underline;text-underline-offset:.15em}
.rgn-btn--lg{min-height:56px;padding:14px 28px;font-size:1.125rem}
.rgn-btn--block{display:flex;width:100%}
.rgn-btn[aria-disabled="true"],.rgn-btn:disabled{opacity:.55;pointer-events:none}

/* chips */
.rgn-chip{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:4px 12px;border-radius:var(--rgn-radius-pill);background:var(--rgn-bg-sky);
  color:var(--rgn-navy);font:700 var(--rgn-fs-sm)/1.2 var(--rgn-font-body)}
.rgn-chip--on-dark{border:1px solid var(--rgn-on-dark-muted);background:transparent;color:var(--rgn-on-dark)}

/* forms: visible labels, 48 px fields, 16 px text (no iOS zoom), errors with text */
.rgn-label{display:block;margin-bottom:6px;color:var(--rgn-text);font-weight:700}
.rgn-input,.rgn-select,.rgn-textarea{box-sizing:border-box;width:100%;min-height:48px;padding:10px 14px;border:1px solid var(--rgn-border-strong);border-radius:var(--rgn-radius);
  background:var(--rgn-bg);color:var(--rgn-ink);font:400 1rem/1.4 var(--rgn-font-body)}
.rgn-textarea{min-height:120px}
.rgn-input::placeholder{color:var(--rgn-muted);opacity:1}
.rgn-field--error .rgn-input,.rgn-field--error .rgn-select,.rgn-field--error .rgn-textarea{border-color:var(--rgn-error)}
.rgn-error{color:var(--rgn-error);font-size:var(--rgn-fs-sm)}
.rgn-check{display:flex;align-items:center;gap:12px;min-height:var(--rgn-tap)}
.rgn-check input{width:24px;height:24px;flex:none;accent-color:var(--rgn-navy)}

/* chrome base (WP0 minimum; chrome.css of WP1 refines): sticky header, night footer */
.rgn-header{position:sticky;top:var(--wp-admin--admin-bar--height,0px);z-index:var(--rgn-z-header);background:var(--rgn-bg);border-bottom:1px solid var(--rgn-border)}
.rgn-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--rgn-space-4);min-height:var(--rgn-header-h)}
.rgn-header__logo{display:block;width:auto;height:30px}
@media (min-width:1024px){.rgn-header__logo{height:44px}}
.rgn-header__brand{display:inline-flex;align-items:center;min-width:var(--rgn-tap);min-height:var(--rgn-tap)}
.rgn-header__link{display:inline-flex;align-items:center;justify-content:center;min-width:var(--rgn-tap);min-height:var(--rgn-tap);font-weight:700}
.rgn-footer{padding:var(--rgn-space-6) 0;background:var(--rgn-night-3);color:var(--rgn-text)}

/* theme prose and lists used by the WP0 fallback templates (WP4 styles the real article) */
.rgn-archive__list{margin:var(--rgn-space-5) 0;padding-left:1.25em}

/* reduced motion: effectively no animation or smooth scrolling on theme pages */
@media (prefers-reduced-motion:reduce){
  body.rgn-theme *,body.rgn-theme *::before,body.rgn-theme *::after{animation-delay:-1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-delay:0s!important;transition-duration:0s!important;scroll-behavior:auto!important}
}

/* print: article and text only */
@media print{
  [data-rgn-component="announce"],[data-rgn-component="header"],[data-rgn-component="drawer"],[data-rgn-component="footer"],.rgn-trust,.rgn-band,.rgn-skip-link,#rgn-preview-badge,#fc_frame{display:none!important}
  body.rgn-theme{background:white!important;color:black!important}
}
