/*!
Theme Name: Custom Base Theme
Description: A custom base theme, created by Michael Hughes
Author: Michael Hughes
Text Domain: custom_s
Version: 1.0.15
*/
:root {
  --custom-s--size--max-content-width: 80rem;
  --custom-s--size--no-sidebar-max-width: 64rem;
  --custom-s--size--mobile-logo-width: 12rem;
  --custom-s--size--desktop-logo-width: 20rem;
  --custom-s--size--max-header-height: 6.5rem;
  --custom-s--size--max-hero-height: 500px;
  --custom-s--size--radius-lg: 2em;
  --custom-s--size--radius-sm: 1em;
  --custom-s--size--radius-button: var(--custom-s--size--radius-lg);
  --custom-s--time--trans-dur: .3s;
  --custom-s--time--trans-dur-med: .7s;
  --custom-s--time--trans-dur-long: 1s;
  --custom-s--time--trans-dur-xlong: 1.3s;
  --custom-s--scroll-padding: 12rem;
  --custom-s--spacing--nav-li: 0;
  --custom-s--spacing--nav-a: 1em;
  --custom-s--spacing--dd-nav-li: 0;
  --custom-s--spacing--dd-nav-a: .5em 1em;
  --custom-s--spacing--dd-nav-indent: 2em;
  --custom-s--width--dd-nav: 19em;
  --custom-s--width--border-top-dd-nav: 4px;
  --custom-s--width--border-bottom-dd-nav: 1px;
  --custom-s--width--border-left-dd-nav: 1px;
  --custom-s--width--border-right-dd-nav: 1px;
  --custom-s--height-max: 40em;
  --custom-s--decoration--offset-nav: .25em;
  --custom-s--decoration--offset-dd-nav: .25em;
  --custom-s--color--primary: #002663;
  --custom-s--color--secondary: #007db8;
  --custom-s--color--tertiary: #045199;
  --custom-s--color--highlight: #ec008c;
  --custom-s--color--highlight-alt: #3f3494;
  --custom-s--color--bg-body: #fff;
  --custom-s--color--bg-light: #f4f3ee;
  --custom-s--color--bg-dark: #444547;
  --custom-s--color--text-light: #fff;
  --custom-s--color--text-dark: #555658;
  --custom-s--color--bg-header-narrow: var(--custom-s--color--bg-body);
  --custom-s--color--border-header-narrow: var(--custom-s--color--bg-body);
  --custom-s--color--logo-header-narrow: var(--custom-s--color--bg-dark);
  --custom-s--color--text-header-narrow: var(--custom-s--color--bg-dark);
  --custom-s--color--text-header-narrow-hover: var(--custom-s--color--highlight);
  --custom-s--color--bg-header-wide: var(--custom-s--color--bg-body);
  --custom-s--color--border-header-wide: var(--custom-s--color--bg-body);
  --custom-s--color--logo-header-wide: var(--custom-s--color--bg-dark);
  --custom-s--color--text-header-wide: var(--custom-s--color--bg-dark);
  --custom-s--color--text-header-wide-hover: var(--custom-s--color--highlight);
  --custom-s--color--bg-header-trans: transparent;
  --custom-s--color--border-header-trans: var(--custom-s--color--bg-body);
  --custom-s--color--logo-header-trans: var(--custom-s--color--text-light);
  --custom-s--color--text-header-trans: var(--custom-s--color--text-light);
  --custom-s--color--text-header-trans-hover: var(--custom-s--color--highlight);
  --custom-s--color--border-header-scrolled: var(--custom-s--color--bg-body);
  --custom-s--color--logo-header-scrolled: var(--custom-s--color--primary);
  --custom-s--color--bg-nav: var(--custom-s--color--bg-body);
  --custom-s--color--bg-nav-hover: var(--custom-s--color--bg-body);
  --custom-s--color--border-nav: var(--custom-s--color--primary);
  --custom-s--color--text-nav: var(--custom-s--color--text-dark);
  --custom-s--color--text-nav-hover: var(--custom-s--color--primary);
  --custom-s--color--text-nav-decoration: var(--custom-s--color--primary);
  --custom-s--color--icon-nav: var(--custom-s--color--text-light);
  --custom-s--color--bg-dd-nav: var(--custom-s--color--bg-body);
  --custom-s--color--bg-dd-nav-hover: var(--custom-s--color--primary);
  --custom-s--color--border-top-dd-nav: var(--custom-s--color--primary);
  --custom-s--color--border-child-dd-nav: var(--custom-s--color--bg-body);
  --custom-s--color--border-bottom-dd-nav: var(--custom-s--color--primary);
  --custom-s--color--border-left-dd-nav: var(--custom-s--color--primary);
  --custom-s--color--border-right-dd-nav: var(--custom-s--color--primary);
  --custom-s--color--text-dd-nav: var(--custom-s--color--text-dark);
  --custom-s--color--text-dd-nav-hover: var(--custom-s--color--text-light);
  --custom-s--color--text-dd-nav-decoration: var(--custom-s--color--primary);
  --custom-s--color--bg-footer: var(--custom-s--color--primary);
  --custom-s--color--text-footer: var(--custom-s--color--text-light);
  --custom-s--color--text-footer-hover: var(--custom-s--color--text-light);
  --custom-s--color--link: var(--custom-s--color--highlight);
  --custom-s--color--link-visited: var(--custom-s--color--highlight);
  --custom-s--color--link-hover: var(--custom-s--color--tertiary);
  --custom-s--color--bg-button: var(--custom-s--color--secondary);
  --custom-s--color--bg-button-hover: var(--custom-s--color--tertiary);
  --custom-s--color--border-button: var(--custom-s--color--secondary);
  --custom-s--color--border-button-hover: var(--custom-s--color--tertiary);
  --custom-s--color--border-button-focus: var(--custom-s--color--tertiary);
  --custom-s--color--text-button: var(--custom-s--color--text-light);
  --custom-s--color--text-button-hover: var(--custom-s--color--text-light);
  --custom-s--color--border-input: var(--custom-s--color--text-dark);
  --custom-s--color--text-input: var(--custom-s--color--text-dark);
  --custom-s--color--text-input-focus: var(--custom-s--color--bg-dark);
  --custom-s--color--text-main: var(--custom-s--color--text-dark);
  --custom-s--color--border-abbr: var(--custom-s--color--text-dark);
  --custom-s--color--border-outline: var(--custom-s--color--primary);
  --custom-s--color--bg-hr: var(--custom-s--color--highlight);
  --custom-s--color--bg-pre: var(--custom-s--color--bg-light);
  --custom-s--color--bg-ins: var(--custom-s--color--bg-light);
  --custom-s--color--bg-screen: var(--custom-s--color--bg-light);
  --custom-s--color--text-screen: var(--custom-s--color--text-dark);
  --custom-s--animated-subhead-text: var(--custom-s--color--text-light);
  --custom-s--animated-subhead-accent: var(--custom-s--color--tertiary);
  --custom-s--animated-subhead-accent-2: var(--custom-s--color--secondary);
  --custom-s--font--primary: Roboto, Helvetica, Arial, sans-serif;
  --custom-s--font--primary-normal: 400;
  --custom-s--font--primary-bold: 700;
  --custom-s--font--secondary: "Segoe UI", "Baskerville", "Times New Roman", Times, serif;
  --custom-s--font--secondary-normal: 400;
  --custom-s--font--secondary-bold: 700;
  --custom-s--font--cite: var(--custom-s--font--secondary);
  --custom-s--font--code: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  --custom-s--font--pre: "Courier 10 Pitch", courier, monospace;
  --custom-s--font--line-height-body: 1.4;
  --custom-s--font--line-height-pre: 1.6;
  --custom-s--font--body-size-wide: 17px;
  --custom-s--font--body-size-xwide: 18px;
  --custom-s--font--button: var(--custom-s--font--primary);
  --custom-s--font--button-weight: var(--custom-s--font--primary-normal);
  --custom-s--font--button-transform: none;
  --custom-s--font--h1: var(--custom-s--font--primary);
  --custom-s--font--h1-weight: var(--custom-s--font--secondary-bold);
  --custom-s--font--h1-size: 2.5em;
  --custom-s--font--h1-size-med: 2.75em;
  --custom-s--font--h1-size-reg: 3em;
  --custom-s--font--h2: var(--custom-s--font--primary);
  --custom-s--font--h2-weight: var(--custom-s--font--primary-bold);
  --custom-s--font--h2-size: 2em;
  --custom-s--font--h2-size-med: 2.125em;
  --custom-s--font--h2-size-reg: 2.25em;
  --custom-s--font--h3: var(--custom-s--font--primary);
  --custom-s--font--h3-weight: var(--custom-s--font--primary-bold);
  --custom-s--font--h3-size: 1.875em;
  --custom-s--font--h4: var(--custom-s--font--primary);
  --custom-s--font--h4-weight: var(--custom-s--font--primary-bold);
  --custom-s--font--h4-size: 1.5em;
  --custom-s--font--h5: var(--custom-s--font--primary);
  --custom-s--font--h5-weight: var(--custom-s--font--primary-bold);
  --custom-s--font--h5-size: 1.25em;
  --custom-s--font--h6: var(--custom-s--font--primary);
  --custom-s--font--h6-weight: var(--custom-s--font--primary-bold);
  --custom-s--font--h6-size: 1em;
  --custom-s--font--footer-size: .875rem;
}

@media (prefers-contrast: more) {
  :root {
    --custom-s--color--secondary: #045199;
    --custom-s--color--tertiary: #034079;
  }
}

.site {
  --wp--preset--font-size--small: .75em;
  --wp--preset--font-size--medium: 1.25em;
  --wp--preset--font-size--large: 1.5em;
  --wp--preset--font-size--x-large: 1.75em;
}

@media screen and (min-width: 782px) {
  .site {
    --wp--preset--font-size--x-large: 2em;
  }
}

*, :before, :after {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
  line-height: 1.15;
}

body {
  margin: 0;
}

main {
  display: block;
}

h1 {
  margin: .67em 0;
  font-size: 2em;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

pre {
  font-family: monospace;
  font-size: 1em;
}

a {
  background-color: rgba(0, 0, 0, 0);
}

abbr[title] {
  border-bottom: none;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

b, strong {
  font-weight: var(--custom-s--font--primary-bold);
}

code, kbd, samp {
  font-family: monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub, sup {
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0;
  position: relative;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

img {
  border-style: none;
}

button, input, optgroup, select, textarea {
  margin: 0;
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
}

button, input {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button {
  -webkit-appearance: button;
}

[type="button"] {
  -webkit-appearance: button;
}

[type="reset"] {
  -webkit-appearance: button;
}

[type="submit"] {
  -webkit-appearance: button;
}

button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

[type="button"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

[type="reset"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring {
  outline: 1px dotted buttontext;
}

[type="button"]:-moz-focusring {
  outline: 1px dotted buttontext;
}

[type="reset"]:-moz-focusring {
  outline: 1px dotted buttontext;
}

[type="submit"]:-moz-focusring {
  outline: 1px dotted buttontext;
}

fieldset {
  padding: .35em .75em .625em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  white-space: normal;
  max-width: 100%;
  padding: 0;
  display: table;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type="checkbox"] {
  box-sizing: border-box;
  padding: 0;
}

[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

[type="number"]::-webkit-inner-spin-button {
  height: auto;
}

[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template, [hidden] {
  display: none;
}

body {
  background: var(--custom-s--color--bg-body);
}

button, .custom-s-button, .wp-block-button[class*="is-style-custom-s-button-"] .wp-block-button__link, .header-links .menu li.custom-s-menu-item-button a, .block-editor-block-list__block[class*="is-style-custom-s-button-"] .wp-block-button__link {
  border: 1px solid;
  border-color: var(--custom-s--color--border-button);
  border-radius: var(--custom-s--size--radius-button);
  background: var(--custom-s--color--bg-button);
  color: var(--custom-s--color--text-button);
  font-family: var(--custom-s--font--button);
  font-weight: var(--custom-s--font--button-weight);
  text-transform: var(--custom-s--font--button-transform);
  transition: var(--custom-s--time--trans-dur) ease;
  padding: 1em 2em;
  font-size: .875em;
  line-height: 1;
}

input[type="button"] {
  border: 1px solid;
  border-color: var(--custom-s--color--border-button);
  border-radius: var(--custom-s--size--radius-button);
  background: var(--custom-s--color--bg-button);
  color: var(--custom-s--color--text-button);
  font-family: var(--custom-s--font--button);
  font-weight: var(--custom-s--font--button-weight);
  text-transform: var(--custom-s--font--button-transform);
  transition: var(--custom-s--time--trans-dur) ease;
  padding: 1em 2em;
  font-size: .875em;
  line-height: 1;
}

input[type="button"]:visited {
  color: var(--custom-s--color--text-button);
}

input[type="button"]:active {
  border-color: var(--custom-s--color--border-button-hover);
  background: var(--custom-s--color--bg-button-hover);
  color: var(--custom-s--color--text-button-hover);
  text-decoration: none;
}

input[type="button"]:hover {
  border-color: var(--custom-s--color--border-button-hover);
  background: var(--custom-s--color--bg-button-hover);
  color: var(--custom-s--color--text-button-hover);
  text-decoration: none;
}

input[type="button"]:focus {
  border-color: var(--custom-s--color--border-button-focus);
  color: var(--custom-s--color--text-button);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

input[type="reset"] {
  border: 1px solid;
  border-color: var(--custom-s--color--border-button);
  border-radius: var(--custom-s--size--radius-button);
  background: var(--custom-s--color--bg-button);
  color: var(--custom-s--color--text-button);
  font-family: var(--custom-s--font--button);
  font-weight: var(--custom-s--font--button-weight);
  text-transform: var(--custom-s--font--button-transform);
  transition: var(--custom-s--time--trans-dur) ease;
  padding: 1em 2em;
  font-size: .875em;
  line-height: 1;
}

input[type="reset"]:visited {
  color: var(--custom-s--color--text-button);
}

input[type="reset"]:active {
  border-color: var(--custom-s--color--border-button-hover);
  background: var(--custom-s--color--bg-button-hover);
  color: var(--custom-s--color--text-button-hover);
  text-decoration: none;
}

input[type="reset"]:hover {
  border-color: var(--custom-s--color--border-button-hover);
  background: var(--custom-s--color--bg-button-hover);
  color: var(--custom-s--color--text-button-hover);
  text-decoration: none;
}

input[type="reset"]:focus {
  border-color: var(--custom-s--color--border-button-focus);
  color: var(--custom-s--color--text-button);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

input[type="submit"] {
  border: 1px solid;
  border-color: var(--custom-s--color--border-button);
  border-radius: var(--custom-s--size--radius-button);
  background: var(--custom-s--color--bg-button);
  color: var(--custom-s--color--text-button);
  font-family: var(--custom-s--font--button);
  font-weight: var(--custom-s--font--button-weight);
  text-transform: var(--custom-s--font--button-transform);
  transition: var(--custom-s--time--trans-dur) ease;
  padding: 1em 2em;
  font-size: .875em;
  line-height: 1;
}

input[type="submit"]:visited {
  color: var(--custom-s--color--text-button);
}

input[type="submit"]:active {
  border-color: var(--custom-s--color--border-button-hover);
  background: var(--custom-s--color--bg-button-hover);
  color: var(--custom-s--color--text-button-hover);
  text-decoration: none;
}

input[type="submit"]:hover {
  border-color: var(--custom-s--color--border-button-hover);
  background: var(--custom-s--color--bg-button-hover);
  color: var(--custom-s--color--text-button-hover);
  text-decoration: none;
}

input[type="submit"]:focus {
  border-color: var(--custom-s--color--border-button-focus);
  color: var(--custom-s--color--text-button);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

:is(button, .custom-s-button, .wp-block-button[class*="is-style-custom-s-button-"] .wp-block-button__link, .header-links .menu li.custom-s-menu-item-button a, .block-editor-block-list__block[class*="is-style-custom-s-button-"] .wp-block-button__link):visited {
  color: var(--custom-s--color--text-button);
}

:is(button, .custom-s-button, .wp-block-button[class*="is-style-custom-s-button-"] .wp-block-button__link, .header-links .menu li.custom-s-menu-item-button a, .block-editor-block-list__block[class*="is-style-custom-s-button-"] .wp-block-button__link):active {
  border-color: var(--custom-s--color--border-button-hover);
  background: var(--custom-s--color--bg-button-hover);
  color: var(--custom-s--color--text-button-hover);
  text-decoration: none;
}

:is(button, .custom-s-button, .wp-block-button[class*="is-style-custom-s-button-"] .wp-block-button__link, .header-links .menu li.custom-s-menu-item-button a, .block-editor-block-list__block[class*="is-style-custom-s-button-"] .wp-block-button__link):hover {
  border-color: var(--custom-s--color--border-button-hover);
  background: var(--custom-s--color--bg-button-hover);
  color: var(--custom-s--color--text-button-hover);
  text-decoration: none;
}

:is(button, .custom-s-button, .wp-block-button[class*="is-style-custom-s-button-"] .wp-block-button__link, .header-links .menu li.custom-s-menu-item-button a, .block-editor-block-list__block[class*="is-style-custom-s-button-"] .wp-block-button__link):focus {
  border-color: var(--custom-s--color--border-button-focus);
  color: var(--custom-s--color--text-button);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

textarea {
  color: var(--custom-s--color--text-input);
  border: 1px solid var(--custom-s--color--border-input);
  border-radius: 0;
  padding: .75em;
}

input[type="text"] {
  color: var(--custom-s--color--text-input);
  border: 1px solid var(--custom-s--color--border-input);
  border-radius: 0;
  padding: .75em;
}

input[type="text"]:focus {
  color: var(--custom-s--color--text-input-focus);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

input[type="email"] {
  color: var(--custom-s--color--text-input);
  border: 1px solid var(--custom-s--color--border-input);
  border-radius: 0;
  padding: .75em;
}

input[type="email"]:focus {
  color: var(--custom-s--color--text-input-focus);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

input[type="url"] {
  color: var(--custom-s--color--text-input);
  border: 1px solid var(--custom-s--color--border-input);
  border-radius: 0;
  padding: .75em;
}

input[type="url"]:focus {
  color: var(--custom-s--color--text-input-focus);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

input[type="password"] {
  color: var(--custom-s--color--text-input);
  border: 1px solid var(--custom-s--color--border-input);
  border-radius: 0;
  padding: .75em;
}

input[type="password"]:focus {
  color: var(--custom-s--color--text-input-focus);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

input[type="search"] {
  color: var(--custom-s--color--text-input);
  border: 1px solid var(--custom-s--color--border-input);
  border-radius: 0;
  padding: .75em;
}

input[type="search"]:focus {
  color: var(--custom-s--color--text-input-focus);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

input[type="number"] {
  color: var(--custom-s--color--text-input);
  border: 1px solid var(--custom-s--color--border-input);
  border-radius: 0;
  padding: .75em;
}

input[type="number"]:focus {
  color: var(--custom-s--color--text-input-focus);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

input[type="tel"] {
  color: var(--custom-s--color--text-input);
  border: 1px solid var(--custom-s--color--border-input);
  border-radius: 0;
  padding: .75em;
}

input[type="tel"]:focus {
  color: var(--custom-s--color--text-input-focus);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

input[type="range"] {
  color: var(--custom-s--color--text-input);
  border: 1px solid var(--custom-s--color--border-input);
  border-radius: 0;
  padding: .75em;
}

input[type="range"]:focus {
  color: var(--custom-s--color--text-input-focus);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

input[type="date"] {
  color: var(--custom-s--color--text-input);
  border: 1px solid var(--custom-s--color--border-input);
  border-radius: 0;
  padding: .75em;
}

input[type="date"]:focus {
  color: var(--custom-s--color--text-input-focus);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

input[type="month"] {
  color: var(--custom-s--color--text-input);
  border: 1px solid var(--custom-s--color--border-input);
  border-radius: 0;
  padding: .75em;
}

input[type="month"]:focus {
  color: var(--custom-s--color--text-input-focus);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

input[type="week"] {
  color: var(--custom-s--color--text-input);
  border: 1px solid var(--custom-s--color--border-input);
  border-radius: 0;
  padding: .75em;
}

input[type="week"]:focus {
  color: var(--custom-s--color--text-input-focus);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

input[type="time"] {
  color: var(--custom-s--color--text-input);
  border: 1px solid var(--custom-s--color--border-input);
  border-radius: 0;
  padding: .75em;
}

input[type="time"]:focus {
  color: var(--custom-s--color--text-input-focus);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

input[type="datetime"] {
  color: var(--custom-s--color--text-input);
  border: 1px solid var(--custom-s--color--border-input);
  border-radius: 0;
  padding: .75em;
}

input[type="datetime"]:focus {
  color: var(--custom-s--color--text-input-focus);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

input[type="datetime-local"] {
  color: var(--custom-s--color--text-input);
  border: 1px solid var(--custom-s--color--border-input);
  border-radius: 0;
  padding: .75em;
}

input[type="datetime-local"]:focus {
  color: var(--custom-s--color--text-input-focus);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

input[type="color"] {
  color: var(--custom-s--color--text-input);
  border: 1px solid var(--custom-s--color--border-input);
  border-radius: 0;
  padding: .75em;
}

input[type="color"]:focus {
  color: var(--custom-s--color--text-input-focus);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

textarea:focus {
  color: var(--custom-s--color--text-input-focus);
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

select {
  border: 1px solid var(--custom-s--color--border-input);
}

textarea {
  width: 100%;
}

hr {
  background-color: var(--custom-s--color--bg-hr);
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

a {
  color: var(--custom-s--color--link);
  text-decoration: none;
}

a:visited {
  color: var(--custom-s--color--link);
}

a:hover {
  color: var(--custom-s--color--link-hover);
  text-decoration: underline;
}

a:focus {
  color: var(--custom-s--color--link-hover);
  text-decoration: underline;
}

a:active {
  color: var(--custom-s--color--link-hover);
  text-decoration: underline;
}

a:focus {
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

a:hover {
  outline: 0;
}

a:active {
  outline: 0;
}

ul, ol {
  margin: 0 0 1.5em;
  padding: 0 0 0 1.25em;
}

ul {
  list-style: outside;
}

ul > li::marker {
  color: inherit;
}

ol {
  list-style: decimal;
}

li > ul, li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: bold;
}

dd {
  margin: 0 1.5em 1.5em;
}

embed, iframe, object {
  max-width: 100%;
}

img {
  max-width: 100%;
  height: auto;
}

figure {
  margin: 1em 0;
}

table {
  width: 100%;
  margin: 0 0 1.5em;
}

body, input, select, optgroup, textarea {
  color: var(--custom-s--color--text-main);
  font-family: var(--custom-s--font--primary);
  font-weight: var(--custom-s--font--primary-normal);
  font-size: 1rem;
  line-height: var(--custom-s--font--line-height-body);
}

@media screen and (min-width: 1280px) {
  body {
    font-size: var(--custom-s--font--body-size-wide);
  }
}

@media screen and (min-width: 1600px) {
  body {
    font-size: var(--custom-s--font--body-size-xwide);
  }
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  clear: both;
  color: var(--custom-s--color--primary);
  font-optical-sizing: auto;
}

h1, .h1, .is-style-custom-s-heading-page-title {
  font-family: var(--custom-s--font--h1);
  font-optical-sizing: auto;
  font-weight: var(--custom-s--font--h1-weight);
  font-size: var(--custom-s--font--h1-size);
  margin-top: 0;
  line-height: 1.1;
}

@media screen and (min-width: 782px) {
  :is(h1, .h1, .is-style-custom-s-heading-page-title) {
    font-size: var(--custom-s--font--h1-size-med);
  }
}

@media screen and (min-width: 1024px) {
  :is(h1, .h1, .is-style-custom-s-heading-page-title) {
    font-size: var(--custom-s--font--h1-size-reg);
  }
}

h2, .h2, .is-style-custom-s-heading-h2-styles {
  font-family: var(--custom-s--font--h2);
  font-weight: var(--custom-s--font--h2-weight);
  font-size: var(--custom-s--font--h2-size);
}

@media screen and (min-width: 782px) {
  :is(h2, .h2, .is-style-custom-s-heading-h2-styles) {
    font-size: var(--custom-s--font--h2-size-med);
  }
}

@media screen and (min-width: 1024px) {
  :is(h2, .h2, .is-style-custom-s-heading-h2-styles) {
    font-size: var(--custom-s--font--h2-size-reg);
  }
}

.site-main > article > .entry-content > h2:first-child {
  clear: none;
}

h2 > a, h2 > a:visited {
  color: inherit;
  background: none !important;
  text-decoration: underline !important;
}

:is(h2 > a, h2 > a:visited):focus {
  color: inherit;
  opacity: .66;
  text-decoration: underline !important;
}

:is(h2 > a, h2 > a:visited):hover {
  color: inherit;
  opacity: .66;
  text-decoration: underline !important;
}

h3, .h3, .is-style-custom-s-heading-h3-styles {
  font-family: var(--custom-s--font--h3);
  font-weight: var(--custom-s--font--h3-weight);
  font-size: var(--custom-s--font--h3-size);
}

h4, .h4, .is-style-custom-s-heading-h4-styles {
  font-family: var(--custom-s--font--h4);
  font-weight: var(--custom-s--font--h4-weight);
  font-size: var(--custom-s--font--h4-size);
}

h5, .h5 {
  font-family: var(--custom-s--font--h5);
  font-weight: var(--custom-s--font--h5-weight);
  font-size: var(--custom-s--font--h5-size);
}

h6, .h6 {
  font-family: var(--custom-s--font--h6);
  font-weight: var(--custom-s--font--h6-weight);
  font-size: var(--custom-s--font--h6-size);
}

p {
  margin-bottom: 1.5em;
}

dfn, cite, em, i {
  font-style: italic;
}

blockquote, .wp-block-pullquote, .wp-block-quote {
  background-color: var(--custom-s--color--tertiary);
  color: var(--custom-s--color--text-light);
  border: none;
  margin: 2em 0;
  padding: 3em 1.5em;
  font-size: 1.4em;
  font-style: italic;
}

@media screen and (min-width: 512px) {
  :is(blockquote, .wp-block-pullquote, .wp-block-quote) {
    padding: 3em 3em 2em;
  }
}

:is(blockquote, .wp-block-pullquote, .wp-block-quote) p {
  margin: .5em 0 1em;
}

:is(blockquote, .wp-block-pullquote, .wp-block-quote) p:before {
  content: "“";
}

:is(blockquote, .wp-block-pullquote, .wp-block-quote) p:after {
  content: "”";
}

:is(blockquote, .wp-block-pullquote, .wp-block-quote) cite {
  font-size: .5em;
  font-family: var(--custom-s--font--cite);
  font-optical-sizing: auto;
}

:is(blockquote, .wp-block-pullquote, .wp-block-quote) cite:before {
  content: "– ";
}

.wp-block-pullquote blockquote {
  border: solid 1px var(--custom-s--color--text-light);
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: var(--custom-s--color--bg-pre);
  font-family: var(--custom-s--font--pre);
  line-height: var(--custom-s--font--line-height-pre);
  max-width: 100%;
  margin-bottom: 1.6em;
  padding: 1.6em;
  overflow: auto;
}

code, kbd, tt, var {
  font-family: var(--custom-s--font--code);
}

abbr, acronym {
  border-bottom: 1px dotted var(--custom-s--color--border-abbr);
  cursor: help;
}

mark, ins {
  background: var(--custom-s--color--bg-ins);
  text-decoration: none;
}

big {
  font-size: 125%;
}

.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  word-wrap: normal !important;
  position: absolute !important;
}

.screen-reader-text:focus {
  background-color: var(--custom-s--color--bg-screen);
  clip-path: none;
  color: var(--custom-s--color--text-screen);
  z-index: 100000;
  border-radius: 3px;
  width: auto;
  height: auto;
  padding: 15px 23px 14px;
  font-size: .875rem;
  font-weight: bold;
  line-height: normal;
  text-decoration: none;
  display: block;
  top: 5px;
  left: 5px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, .6);
  clip: auto !important;
}

#primary[tabindex="-1"]:focus {
  outline: 0;
}

.site-breadcrumbs {
  padding: 0 1rem;
  font-size: .825em;
}

.site-main {
  padding: 1rem;
}

.widget-area {
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 2em;
  padding: 3rem 1rem 1rem;
  display: flex;
}

@media screen and (max-width: 781px) {
  .site {
    flex-direction: column;
    display: flex;
  }

  .site > * {
    flex: none;
  }
}

@supports (display: grid) {
  @media screen and (min-width: 782px) {
    .site {
      grid-template-columns: auto 35% 65% auto;
      grid-template-areas: "header header header header"
                           "hero hero hero hero"
                           "gutter-left breadcrumbs breadcrumbs gutter-right"
                           "gutter-left sidebar main gutter-right"
                           "subfooter subfooter subfooter subfooter"
                           "footer footer footer footer";
      display: grid;
    }

    .site:before {
      content: "";
      grid-area: gutter-left;
    }

    .site:after {
      content: "";
      grid-area: gutter-right;
    }

    .site-header {
      grid-area: header;
    }

    .site-hero {
      grid-area: hero;
    }

    .site-breadcrumbs {
      grid-area: breadcrumbs;
    }

    .site-main {
      grid-area: main;
    }

    .widget-area {
      grid-area: sidebar;
      padding-top: calc(1.25rem + .5vw);
      display: block;
    }

    .site-subfooter {
      grid-area: subfooter;
    }

    .site-footer {
      grid-area: footer;
    }
  }

  @media screen and (min-width: 1280px) {
    .site {
      grid-template-columns: auto 28rem 52rem auto;
    }
  }
}

@media screen and (min-width: 782px) {
  .no-sidebar .site-breadcrumbs {
    width: var(--custom-s--size--no-sidebar-max-width, 1000px);
    max-width: 100%;
    margin: 0 auto;
  }

  .no-sidebar .site-main {
    width: var(--custom-s--size--no-sidebar-max-width, 1000px);
    grid-column: 2 / -2;
    max-width: 100%;
    margin: 0 auto;
  }
}

.site:has(.site-main .entry-content .wp-block-cover.alignfull) {
  overflow-x: hidden;
}

.site:has(.site-main .entry-content .wp-block-group.alignfull) {
  overflow-x: hidden;
}

.page-template-page-full-width .site-main {
  padding-top: 0;
  padding-bottom: 0;
}

@media screen and (min-width: 782px) {
  .page-template-page-full-width .site {
    display: block;
  }
}

.site-header {
  z-index: 500;
  width: 100%;
  color: var(--custom-s--color--text-header-narrow);
  background-color: var(--custom-s--color--bg-header-narrow);
  border-bottom: solid 1px var(--custom-s--color--border-header-narrow);
  transition: color var(--custom-s--time--trans-dur) ease, border-color var(--custom-s--time--trans-dur-med) ease, background-color var(--custom-s--time--trans-dur-med) ease;
  position: relative;
}

@media screen and (max-width: 1023px) {
  .site-header {
    max-height: 100vh;
    overflow-y: auto;
  }
}

.site-header a {
  color: var(--custom-s--color--text-header-narrow);
  transition: color var(--custom-s--time--trans-dur) ease;
}

.site-header a:active {
  color: var(--custom-s--color--text-header-narrow-hover);
}

.site-header a:hover {
  color: var(--custom-s--color--text-header-narrow-hover);
}

.site-header a:focus {
  color: var(--custom-s--color--text-header-narrow-hover);
}

#header-scroll-trigger {
  width: 1px;
  height: 1px;
  position: absolute;
  top: 0;
  left: 0;
}

@media screen and (min-width: 1024px) {
  .site-header {
    color: var(--custom-s--color--text-header-wide);
    background-color: var(--custom-s--color--bg-header-wide);
    border-bottom: solid 1px var(--custom-s--color--border-header-wide);
  }

  .site-header a {
    color: var(--custom-s--color--text-header-wide);
  }

  .site-header a:active {
    color: var(--custom-s--color--text-header-wide-hover);
  }

  .site-header a:hover {
    color: var(--custom-s--color--text-header-wide-hover);
  }

  .site-header a:focus {
    color: var(--custom-s--color--text-header-wide-hover);
  }

  .custom-s-transparent-header .site-header:not(.custom-s-header-scrolled):not(:hover):not(:focus-within) {
    color: var(--custom-s--color--text-header-trans);
    background-color: var(--custom-s--color--bg-header-trans);
    border-bottom: solid 1px var(--custom-s--color--border-header-trans);
    position: absolute;
  }

  .custom-s-transparent-header .site-header:not(.custom-s-header-scrolled):not(:hover):not(:focus-within) a {
    color: var(--custom-s--color--text-header-trans);
  }

  .custom-s-transparent-header .site-header:not(.custom-s-header-scrolled):not(:hover):not(:focus-within) a:active {
    color: var(--custom-s--color--text-header-trans-hover);
  }

  .custom-s-transparent-header .site-header:not(.custom-s-header-scrolled):not(:hover):not(:focus-within) a:hover {
    color: var(--custom-s--color--text-header-trans-hover);
  }

  .custom-s-transparent-header .site-header:not(.custom-s-header-scrolled):not(:hover):not(:focus-within) a:focus {
    color: var(--custom-s--color--text-header-trans-hover);
  }

  .custom-s-header-scrolled {
    border-bottom: solid 1px var(--custom-s--color--border-header-scrolled);
  }
}

@media screen and (min-height: 600px) {
  .custom-s-acf-notification-bar {
    z-index: 501;
    width: 100%;
    height: 3rem;
    position: fixed;
    top: 0;
    overflow: auto hidden;
  }

  .custom-s-acf-notification-bar .custom-s-acf-notification-bar__inner {
    white-space: nowrap;
    width: auto;
    max-width: none;
  }

  .custom-s-acf-notification-bar .custom-s-acf-notification-bar__content {
    white-space: nowrap;
    width: auto;
    max-width: none;
  }

  .site-header, .custom-s-transparent-header .site-header {
    position: fixed;
    top: 0;
  }

  body:has(.custom-s-acf-notification-bar) .site-header {
    top: 3rem;
  }

  html {
    scroll-padding: var(--custom-s--scroll-padding);
  }
}

.header-region {
  grid-template-columns: auto;
  grid-template-areas: "logo"
                       "links"
                       "main-nav";
  place-items: end center;
  margin: 0 auto;
  padding: .75rem 0 0;
  display: grid;
  position: relative;
}

@media screen and (min-width: 1024px) {
  .header-region {
    grid-template-columns: minmax(1rem, calc(50vw - 39rem)) minmax(10vw, auto) auto minmax(1rem, calc(50vw - 39rem));
    grid-template-areas: "gutter-left logo links gutter-right"
                         "gutter-left logo main-nav gutter-right";
    justify-items: end;
    row-gap: 1rem;
    padding: 1rem 0 0;
  }

  .header-region:before {
    grid-area: gutter-left;
  }

  .header-region:after {
    grid-area: gutter-right;
  }
}

.site-branding {
  z-index: 3;
  grid-area: logo;
  align-items: flex-end;
  padding: 0 1rem;
  display: flex;
}

@media screen and (min-width: 1024px) {
  .site-branding {
    justify-self: start;
    padding: 0 1rem 0 0;
  }
}

@media screen and (min-width: 1024px) and (min-height: 600px) {
  .site-branding {
    height: var(--custom-s--size--max-header-height, 10rem);
  }
}

.header-links {
  grid-area: links;
  justify-content: space-between;
  align-items: center;
  gap: 2rem;
  display: flex;
}

.header-links-widgets {
  grid-area: links;
  display: none;
}

@media screen and (min-width: 1024px) {
  .header-links-widgets {
    display: block;
  }
}

.main-navigation {
  grid-area: main-nav;
}

.menu-header-links-container .menu {
  margin-bottom: 0;
}

.menu-header-links-container .menu li {
  line-height: 1;
}

.menu-header-links-container .menu a {
  padding: .25em 0;
  line-height: 1;
}

@media screen and (min-width: 1024px) {
  .custom-s-full-width-main-menu .header-region {
    grid-template-areas: "gutter-left-no-bg logo links gutter-right-no-bg"
                         "gutter-left main-nav main-nav gutter-right";
  }

  .custom-s-full-width-main-menu .header-region:before {
    content: "";
    background-color: var(--custom-s--color--bg-nav);
    align-self: stretch;
    width: 100%;
    display: block;
  }

  .custom-s-full-width-main-menu .header-region:after {
    content: "";
    background-color: var(--custom-s--color--bg-nav);
    align-self: stretch;
    width: 100%;
    display: block;
  }
}

@media screen and (min-width: 1024px) {
  .custom-s-center-aligned-logo .header-region {
    grid-template-columns: minmax(1rem, calc(50vw - 39rem)) auto minmax(1rem, calc(50vw - 39rem));
    grid-template-areas: "gutter-left-no-bg logo-links gutter-right-no-bg"
                         "gutter-left main-nav gutter-right";
  }
}

@media screen and (min-width: 1024px) {
  .custom-s-center-aligned-logo .site-branding {
    grid-area: logo-links;
    justify-self: center;
    padding: 0 1rem;
  }

  .custom-s-center-aligned-logo .site-branding .custom-logo-link {
    margin-bottom: .25em;
  }
}

@media screen and (min-width: 1024px) {
  .custom-s-center-aligned-logo .header-links {
    justify-content: space-between;
    align-items: center;
    gap: var(--custom-s--size-mobile-logo-width, 6rem);
    grid-area: logo-links;
    width: 100%;
    display: flex;
  }
}

@media screen and (min-width: 1024px) {
  .custom-s-transparent-header .site-header:not(.custom-s-header-scrolled):not(:hover):not(:focus-within) .header-region:before {
    background-color: rgba(0, 0, 0, 0);
  }

  .custom-s-transparent-header .site-header:not(.custom-s-header-scrolled):not(:hover):not(:focus-within) .header-region:after {
    background-color: rgba(0, 0, 0, 0);
  }
}

@media screen and (min-height: 600px) {
  .site-hero {
    margin-top: calc(var(--custom-s--size--max-header-height, 10rem));
  }

  body:has(.custom-s-acf-notification-bar) .site-hero {
    margin-top: calc(var(--custom-s--size--max-header-height, 10rem)  + 3rem);
  }
}

@media screen and (min-width: 1024px) and (min-height: 600px) {
  .site-hero {
    margin-top: calc(var(--custom-s--size--max-header-height, 10rem)  + 3rem);
  }

  body:has(.custom-s-acf-notification-bar) .site-hero {
    margin-top: calc(var(--custom-s--size--max-header-height, 10rem)  + 6rem);
  }

  body.custom-s-transparent-header .site-hero {
    margin-top: 0;
  }

  body.custom-s-full-width-main-menu .site-hero {
    padding-top: 3rem;
  }

  body.admin-bar.custom-s-full-width-main-menu .site-hero {
    padding-top: 1rem;
  }

  body.custom-s-transparent-header.custom-s-full-width-main-menu .site-hero, body.admin-bar.custom-s-transparent-header.custom-s-full-width-main-menu .site-hero {
    padding-top: 0;
  }
}

.site-hero {
  background-color: var(--custom-s--color--secondary);
  text-align: center;
  grid-template-columns: 1fr;
  grid-template-areas: "hero";
  justify-content: center;
  align-items: center;
  margin-bottom: 2em;
  display: grid;
}

.wp-custom-header {
  grid-area: hero;
}

.wp-custom-header img {
  width: 100%;
  min-height: 33vh;
  max-height: var(--custom-s--size--max-hero-height, "none");
  object-fit: cover;
  object-position: top center;
  opacity: .7;
  display: block;
}

.custom-s-hero-title {
  color: var(--custom-s--color--text-light, #fff);
  text-align: center;
  max-width: var(--custom-s--size--max-content-width, 80rem);
  opacity: 1;
  z-index: 3;
  text-shadow: 0 0 5px rgba(0, 0, 0, .4);
  grid-area: hero;
  margin: 0 auto;
  padding: 1em;
}

.site-footer {
  clear: both;
  background: var(--custom-s--color--bg-footer);
  color: var(--custom-s--color--text-footer);
  width: 100%;
  font-size: var(--custom-s--font--footer-size);
  padding: 2rem 0 0;
}

.site-footer a {
  color: var(--custom-s--color--text-footer);
}

.site-footer a:hover {
  color: var(--custom-s--color--text-footer-hover);
}

.site-footer a:focus {
  color: var(--custom-s--color--text-footer-hover);
}

.footer-region {
  max-width: var(--custom-s--size--max-content-width);
  margin: 0 auto;
  padding: 0;
  position: relative;
}

@media screen and (min-width: 782px) {
  .footer-region {
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    gap: 2rem;
    display: flex;
  }
}

@media screen and (min-width: 1024px) {
  .footer-region {
    flex-wrap: nowrap;
  }
}

.footer-region h2 {
  color: inherit;
  font-family: var(--custom-s--font--primary);
  margin-bottom: .25em;
  font-size: 1.1em;
}

.footer-region .widget {
  max-width: 32rem;
  margin: 0;
  padding: 0 1rem;
}

.footer-region .menu {
  margin: 0;
  padding: 0;
  line-height: 2;
  list-style: none;
}

@media screen and (max-width: 782px) {
  .footer-region .menu a {
    padding: .85em 0;
    display: block;
  }
}

.footer-column {
  margin-bottom: 3rem;
}

@media screen and (min-width: 782px) {
  .footer-column {
    flex: auto;
  }
}

.page-content .wp-smiley, .entry-content .wp-smiley, .comment-content .wp-smiley {
  border: none;
  margin-top: 0;
  margin-bottom: 0;
  padding: 0;
}

.wp-caption {
  max-width: 100%;
  margin-bottom: 1.5em;
}

.wp-caption img[class*="wp-image-"] {
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.wp-caption .wp-caption-text {
  margin: .8075em 0;
}

.wp-caption-text {
  text-align: center;
}

.post-list-grid .post-thumbnail img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  max-height: 22rem;
}

.single .post-thumbnail figcaption {
  text-align: center;
  font-size: .75em;
  font-style: italic;
}

.responsive-container, .responsive-container-21x9 {
  height: 0;
  padding-top: 30px;
  padding-bottom: 56.25%;
  position: relative;
  overflow: hidden;
}

.responsive-container-21x9 {
  padding-bottom: 42.85%;
}

.responsive-map-container {
  padding-bottom: 300px;
}

.responsive-container embed, .responsive-container object, .responsive-container iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.custom-logo-link {
  max-width: var(--custom-s--size--mobile-logo-width, 6rem);
  margin-bottom: 1rem;
  display: block;
}

.custom-logo-link img {
  object-fit: contain;
  object-position: bottom center;
  width: 100%;
  height: 100%;
  display: block;
}

.custom-logo-link svg path {
  fill: var(--custom-s--color--logo-header-narrow);
  transition: fill var(--custom-s--time--trans-dur) ease;
}

@media screen and (min-width: 1024px) {
  .custom-logo-link {
    max-width: var(--custom-s--size--desktop-logo-width, 6rem);
  }

  .custom-logo-link svg path {
    fill: var(--custom-s--color--logo-header-wide);
  }

  .custom-s-transparent-header .custom-logo-link svg path {
    fill: var(--custom-s--color--logo-header-trans);
  }

  .custom-s-header-scrolled .custom-logo-link svg path {
    fill: var(--custom-s--color--logo-scrolled);
  }

  .site-header:hover .custom-logo-link svg path {
    fill: var(--custom-s--color--logo-scrolled);
  }

  .site-header:focus-within .custom-logo-link svg path {
    fill: var(--custom-s--color--logo-scrolled);
  }

  .custom-logo-link {
    height: calc(var(--custom-s--size--max-header-height, 10rem)  - 1rem);
  }
}

.wp-block-cover.custom-s-cover-with-slider-bg .wp-block-cover__inner-container {
  position: initial;
}

.wp-block-cover.custom-s-cover-with-slider-bg .metaslider {
  z-index: -2;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.wp-block-cover.custom-s-cover-with-slider-bg .metaslider:after {
  content: "";
  z-index: 2;
  background: linear-gradient(90deg, rgba(0, 0, 0, .9) 0%, rgba(0, 0, 0, 0) 100%);
  position: absolute;
  inset: 0;
}

@media screen and (max-width: 781px) {
  .wp-block-cover.custom-s-cover-with-slider-bg .metaslider:after {
    background: linear-gradient(rgba(0, 0, 0, .9) 0%, rgba(0, 0, 0, 0) 100%);
  }
}

@media screen and (max-width: 781px) {
  .wp-block-cover.custom-s-cover-with-slider-bg > .wp-block-cover__inner-container {
    padding-bottom: 50%;
  }
}

@media screen and (max-width: 1450px) {
  .wp-block-cover.custom-s-cover-with-slider-bg .metaslider {
    width: auto;
    height: 100%;
  }

  .wp-block-cover.custom-s-cover-with-slider-bg .metaslider div {
    height: 100% !important;
  }

  .wp-block-cover.custom-s-cover-with-slider-bg .metaslider div ul {
    height: 100%;
  }

  .wp-block-cover.custom-s-cover-with-slider-bg .metaslider div ul li {
    height: 100%;
  }

  .wp-block-cover.custom-s-cover-with-slider-bg .metaslider div ul li img {
    object-fit: cover;
    object-position: 75% 50%;
    width: 100% !important;
    height: 100% !important;
  }
}

.header-links {
  align-self: start;
  margin-left: auto;
}

.header-links .menu {
  justify-content: space-between;
  align-items: center;
  gap: 1.25em;
  margin-bottom: 0;
  list-style: none;
  display: flex;
}

.header-links .menu li {
  line-height: 1;
}

.header-links .menu li.custom-s-menu-item-button a {
  display: block;
}

.header-links .menu li.custom-s-menu-item-button a svg path {
  fill: var(--custom-s--color-text-button);
}

.header-links .menu li.custom-s-menu-search-button a {
  padding: 1.34em;
}

.header-links .menu li.custom-s-menu-search-button a svg {
  width: 1.2em;
  height: 1.2em;
  margin: 0;
  padding: 0;
}

.header-links .menu li.custom-s-menu-search-button a svg path {
  fill: var(--custom-s--color--text-button);
}

@media screen and (min-width: 1024px) {
  .header-links .menu li.custom-s-menu-phone a {
    padding: .25em 0 .08em;
    font-size: 1.2em;
    font-weight: bold;
  }

  .header-links .menu li.custom-s-menu-phone a:not(:hover) {
    color: var(--custom-s--color--secondary);
  }
}

@media screen and (max-width: 1023px) {
  .header-links .menu li.custom-s-menu-phone a {
    background: var(--custom-s--color--bg-button);
    color: var(--custom-s--color--text-button);
    font-family: var(--custom-s--font--button);
    font-weight: var(--custom-s--font--button-weight);
    padding: 1.5em 3em;
    font-size: 1em;
    line-height: 1;
    display: block;
  }

  .header-links .menu li:not(.custom-s-menu-phone) {
    display: none;
  }

  .header-links .menu li.custom-s-menu-phone .menu-item-description {
    display: none;
  }
}

@media screen and (min-width: 1024px) {
  .header-links .menu li.custom-s-menu-phone:has(.menu-item-description) {
    flex-direction: column;
    align-items: center;
    gap: .25em;
    display: flex;
  }
}

@media screen and (min-width: 1024px) {
  .custom-s-center-aligned-logo .header-region .header-links {
    align-self: stretch;
    align-items: flex-end;
  }

  .custom-s-center-aligned-logo .header-region .header-links .menu {
    flex-direction: column;
  }

  .custom-s-center-aligned-logo .header-region .header-links .menu li {
    display: block;
  }

  .custom-s-center-aligned-logo .header-region .header-links .menu li.custom-s-menu-phone:has(.menu-item-description) {
    display: flex;
  }
}

@media screen and (max-width: 1023px) {
  .header-links, .header-links .menu, .header-links .menu li.custom-s-menu-phone {
    text-align: center;
    width: 100%;
    margin: 0;
    padding: 0;
    display: block;
  }
}

.menu-toggle, .main-navigation.toggled > div > ul {
  display: block;
}

.menu-toggle {
  text-indent: -9999em;
  background-color: rgba(0, 0, 0, 0);
  border-color: rgba(0, 0, 0, 0);
  width: 1.5rem;
  height: 1.5rem;
  padding: 0;
  position: absolute;
  top: 1rem;
  right: 1rem;
  overflow: hidden;
}

@media screen and (min-width: 1024px) {
  .menu-toggle {
    display: none;
  }
}

.menu-toggle:before {
  content: "";
  background-color: var(--custom-s--color--text-header-narrow);
  transform-origin: center;
  width: 100%;
  height: 1px;
  transition: transform var(--custom-s--time--trans-dur) ease;
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: rotate(0)translateY(-.4rem);
}

.menu-toggle:after {
  content: "";
  background-color: var(--custom-s--color--text-header-narrow);
  transform-origin: center;
  width: 100%;
  height: 1px;
  transition: transform var(--custom-s--time--trans-dur) ease;
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: rotate(0)translateY(-.4rem);
}

.menu-toggle:after {
  transform: rotate(0)translateY(.4rem);
}

.menu-toggle:active {
  background-color: rgba(0, 0, 0, 0);
  border-color: rgba(0, 0, 0, 0);
}

.menu-toggle:focus {
  background-color: rgba(0, 0, 0, 0);
  border-color: rgba(0, 0, 0, 0);
}

.menu-toggle:hover {
  background-color: rgba(0, 0, 0, 0);
  border-color: rgba(0, 0, 0, 0);
}

.toggled .menu-toggle:before {
  transform: rotate(45deg)translateY(0);
}

.toggled .menu-toggle:after {
  transform: rotate(-45deg)translateY(0);
}

.main-navigation {
  grid-area: main-nav;
  width: 100%;
  display: block;
}

.main-navigation ul {
  background-color: var(--custom-s--color--bg-nav);
  margin: 0;
  padding-left: 0;
  list-style: none;
  display: none;
}

.main-navigation ul ul {
  background-color: var(--custom-s--color--bg-dd-nav);
  z-index: 99999;
  flex-direction: column;
  max-height: 0;
  margin: 0;
  transition: max-height .33s ease-in-out 10ms;
  display: block;
  position: relative;
  overflow: hidden;
}

.main-navigation ul ul li:hover > ul {
  max-height: var(--custom-s--height-max);
}

.main-navigation ul ul li.focus > ul {
  max-height: var(--custom-s--height-max);
}

.main-navigation ul li:hover > ul {
  max-height: var(--custom-s--height-max);
}

.main-navigation ul li.focus > ul {
  max-height: var(--custom-s--height-max);
}

.main-navigation li {
  border-top: solid 1px var(--custom-s--color--border-nav);
  padding: var(--custom-s--spacing--nav-li);
  display: block;
  position: relative;
}

.main-navigation li:hover {
  background-color: var(--custom-s--color--bg-nav-hover);
}

.main-navigation li.focus {
  background-color: var(--custom-s--color--bg-nav-hover);
}

.main-navigation li li {
  border-color: var(--custom-s--color--border-child-dd-nav);
  padding: var(--custom-s--spacing--dd-nav-li);
}

.main-navigation li li a {
  color: var(--custom-s--color--text-dd-nav);
  padding-left: var(--custom-s--spacing--dd-nav-indent);
}

.main-navigation li li li a {
  padding-left: calc(var(--custom-s--spacing--dd-nav-indent) * 2);
}

.main-navigation li li:hover {
  background-color: var(--custom-s--color--bg-dd-nav);
}

.main-navigation li li:hover:after {
  display: none;
}

.main-navigation li li:hover > a {
  color: var(--custom-s--color--text-dd-nav-hover);
  background-color: var(--custom-s--color--bg-dd-nav-hover);
}

.main-navigation li li.focus {
  background-color: var(--custom-s--color--bg-dd-nav);
}

.main-navigation li li.focus:after {
  display: none;
}

.main-navigation li li.focus > a {
  color: var(--custom-s--color--text-dd-nav-hover);
  background-color: var(--custom-s--color--bg-dd-nav-hover);
}

.main-navigation li li:first-child {
  border-top: none;
}

.main-navigation a {
  color: var(--custom-s--color--text-nav);
  text-underline-offset: var(--custom-s--decoration--offset-dd-nav);
  padding: var(--custom-s--spacing--dd-nav-a);
  transition: color var(--custom-s--time--trans-dur) ease;
  text-decoration: none;
  display: block;
}

.main-navigation a:active {
  color: var(--custom-s--color--text-nav-hover);
  text-decoration: underline;
  -webkit-text-decoration-color: var(--custom-s--color--text-dd-nav-decoration);
  text-decoration-color: var(--custom-s--color--text-dd-nav-decoration);
}

.main-navigation a:focus {
  color: var(--custom-s--color--text-nav-hover);
  text-decoration: underline;
  -webkit-text-decoration-color: var(--custom-s--color--text-dd-nav-decoration);
  text-decoration-color: var(--custom-s--color--text-dd-nav-decoration);
}

.main-navigation a:hover {
  color: var(--custom-s--color--text-nav-hover);
  text-decoration: underline;
  -webkit-text-decoration-color: var(--custom-s--color--text-dd-nav-decoration);
  text-decoration-color: var(--custom-s--color--text-dd-nav-decoration);
}

.main-navigation > div > ul > li > a {
  text-underline-offset: var(--custom-s--decoration--offset-nav);
  padding: var(--custom-s--spacing--nav-a);
}

.main-navigation > div > ul > li > a:active {
  text-decoration: underline;
  -webkit-text-decoration-color: var(--custom-s--color--text-nav-decoration);
  text-decoration-color: var(--custom-s--color--text-nav-decoration);
}

.main-navigation > div > ul > li > a:focus {
  text-decoration: underline;
  -webkit-text-decoration-color: var(--custom-s--color--text-nav-decoration);
  text-decoration-color: var(--custom-s--color--text-nav-decoration);
}

.main-navigation > div > ul > li > a:hover {
  text-decoration: underline;
  -webkit-text-decoration-color: var(--custom-s--color--text-nav-decoration);
  text-decoration-color: var(--custom-s--color--text-nav-decoration);
}

.main-navigation .menu-item-has-children a {
  flex-flow: row;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.main-navigation .menu-item-has-children > a:after {
  content: "";
  width: .4em;
  height: .4em;
  color: var(--custom-s--color--icon-nav);
  border-top: .15em solid;
  border-right: .15em solid;
  margin-left: .4em;
  display: block;
  transform: rotate(135deg);
}

@media screen and (min-width: 1024px) {
  .main-navigation ul {
    justify-content: flex-end;
    align-items: flex-end;
    gap: 0;
    margin: 0 -1rem;
    display: flex;
  }

  .custom-s-transparent-header .site-header:not(.custom-s-header-scrolled):not(:hover):not(:focus-within) :is(.main-navigation ul) {
    background-color: rgba(0, 0, 0, 0);
  }

  .custom-s-full-width-main-menu :is(.main-navigation ul) {
    justify-content: space-between;
  }

  .main-navigation ul > li {
    flex: 0 auto;
  }

  .main-navigation ul ul {
    border-top: solid var(--custom-s--width--border-top-dd-nav) var(--custom-s--color--border-top-dd-nav);
    border-bottom: solid var(--custom-s--width--border-bottom-dd-nav) var(--custom-s--color--border-bottom-dd-nav);
    border-left: solid var(--custom-s--width--border-left-dd-nav) var(--custom-s--color--border-left-dd-nav);
    border-right: solid var(--custom-s--width--border-right-dd-nav) var(--custom-s--color--border-right-dd-nav);
    max-height: none;
    padding: 0;
    position: absolute;
    top: 100%;
    left: -999em;
    overflow: visible;
  }

  .main-navigation ul ul a {
    width: var(--custom-s--width--dd-nav);
    padding: var(--custom-s--spacing--dd-nav-a);
  }

  .main-navigation ul ul li a {
    padding: var(--custom-s--spacing--dd-nav-a);
  }

  .main-navigation ul ul li:not(:last-child) > a {
    border-bottom: solid 1px var(--custom-s--color--border-child-dd-nav);
  }

  .main-navigation ul ul ul {
    top: 0;
    left: -999em;
  }

  .main-navigation ul li:hover > ul {
    position: relative;
    left: auto;
  }

  .main-navigation ul li.focus > ul {
    position: relative;
    left: auto;
  }

  .main-navigation ul li:hover > ul {
    padding-left: 0;
    position: absolute;
    left: 0;
  }

  .main-navigation ul li:hover > ul > li:hover > ul {
    left: 100%;
  }

  .main-navigation ul li:hover > ul > li.focus > ul {
    left: 100%;
  }

  .main-navigation ul li.focus > ul {
    padding-left: 0;
    position: absolute;
    left: 0;
  }

  .main-navigation ul li.focus > ul > li:hover > ul {
    left: 100%;
  }

  .main-navigation ul li.focus > ul > li.focus > ul {
    left: 100%;
  }

  .main-navigation > div > ul > li.custom-s-dd-open-left:hover > ul {
    left: auto;
    right: 0;
  }

  .main-navigation > div > ul > li.custom-s-dd-open-left:hover > ul li:hover > ul {
    left: auto;
    right: 100%;
  }

  .main-navigation > div > ul > li.custom-s-dd-open-left.focus > ul {
    left: auto;
    right: 0;
  }

  .main-navigation > div > ul > li.custom-s-dd-open-left.focus > ul li:hover > ul {
    left: auto;
    right: 100%;
  }

  .main-navigation li {
    border-top: none;
  }

  .main-navigation > div > ul > li > a {
    color: var(--custom-s--color--text-nav);
    line-height: 1;
  }

  .main-navigation > div > ul > li > a:active {
    color: var(--custom-s--color--text-nav-hover);
    text-decoration: underline;
    -webkit-text-decoration-color: var(--custom-s--color--text-nav-decoration);
    text-decoration-color: var(--custom-s--color--text-nav-decoration);
  }

  .main-navigation > div > ul > li > a:focus {
    color: var(--custom-s--color--text-nav-hover);
    text-decoration: underline;
    -webkit-text-decoration-color: var(--custom-s--color--text-nav-decoration);
    text-decoration-color: var(--custom-s--color--text-nav-decoration);
  }

  .main-navigation > div > ul > li > a:hover {
    color: var(--custom-s--color--text-nav-hover);
    text-decoration: underline;
    -webkit-text-decoration-color: var(--custom-s--color--text-nav-decoration);
    text-decoration-color: var(--custom-s--color--text-nav-decoration);
  }

  .main-navigation li .menu-item-has-children > a:after {
    transform: rotate(45deg);
  }

  .custom-s-transparent-header .site-header:not(.custom-s-header-scrolled):not(:hover):not(:focus-within) .main-navigation a {
    --custom-s--color--text-nav: var(--custom-s--color--text-header-trans);
    --custom-s--color--text-nav-hover: var(--custom-s--color--text-header-trans-hover);
  }

  .main-navigation > div > ul > .current_page_item > a {
    color: var(--custom-s--color--text-nav-hover);
    text-decoration: underline;
    -webkit-text-decoration-color: var(--custom-s--color--text-nav-decoration);
    text-decoration-color: var(--custom-s--color--text-nav-decoration);
  }

  .main-navigation > div > ul > .current-menu-item > a {
    color: var(--custom-s--color--text-nav-hover);
    text-decoration: underline;
    -webkit-text-decoration-color: var(--custom-s--color--text-nav-decoration);
    text-decoration-color: var(--custom-s--color--text-nav-decoration);
  }

  .main-navigation > div > ul > .current_page_ancestor > a {
    color: var(--custom-s--color--text-nav-hover);
    text-decoration: underline;
    -webkit-text-decoration-color: var(--custom-s--color--text-nav-decoration);
    text-decoration-color: var(--custom-s--color--text-nav-decoration);
  }

  .main-navigation > div > ul > .current-menu-ancestor > a {
    color: var(--custom-s--color--text-nav-hover);
    text-decoration: underline;
    -webkit-text-decoration-color: var(--custom-s--color--text-nav-decoration);
    text-decoration-color: var(--custom-s--color--text-nav-decoration);
  }
}

@media screen and (min-width: 1280px) {
  .main-navigation > div > ul > li > a {
    min-height: 3em;
  }
}

@media screen and (min-width: 1024px) {
  .main-navigation .custom-s-hide-item-in-dd {
    display: none;
  }
}

.site-main :is(.comment-navigation, .posts-navigation, .post-navigation) {
  margin: 0 0 1.5em;
}

:is(.comment-navigation, .posts-navigation, .post-navigation) .nav-links {
  display: flex;
}

:is(.comment-navigation, .posts-navigation, .post-navigation) .nav-previous {
  flex: 1 0 50%;
}

:is(.comment-navigation, .posts-navigation, .post-navigation) .nav-next {
  text-align: end;
  flex: 1 0 50%;
}

.sticky {
  display: block;
}

.post, .page {
  margin: 0;
}

.updated:not(.published) {
  display: none;
}

.page-content, .entry-content, .entry-summary {
  margin: 1.5em 0 0;
}

.single-post .entry-content, .single-post .entry-footer {
  margin-bottom: 1.5em;
}

.home .site-main > article > .entry-content {
  margin-top: 0;
}

.entry-header .post-category {
  display: block;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

.post-list-grid > article {
  margin-bottom: 2em;
}

.site-main > article > .entry-content a:not([class]) {
  text-decoration: underline;
}

.site-main > article > .entry-content a:not([class]):focus {
  text-decoration: underline;
}

.site-main > article > .entry-content a:not([class]):hover {
  text-decoration: underline;
}

.site-main > article > .entry-content li {
  margin-bottom: .5em;
}

.custom-s-back-link {
  color: var(--custom-s--color--text-main);
  cursor: pointer;
  margin-bottom: 1em;
  display: block;
}

.widget-area .widget {
  max-width: 22rem;
  margin: 0 0 1.5em;
}

.widget-area .widget select {
  max-width: 100%;
}

@media screen and (max-width: 782px) {
  .widget-area .widget_block:first-child {
    flex-basis: 100%;
    max-width: 100%;
  }
}

.home .wp-block-columns.is-layout-flex {
  gap: 3em;
}

:where(.wp-block-group.has-background) {
  padding: 1em;
}

.wp-block-cover.alignwide, .wp-block-group.alignwide {
  position: relative;
}

@media screen and (min-width: 782px) {
  .page-template-default :is(.wp-block-cover.alignwide, .wp-block-group.alignwide) {
    width: calc(154% + 1rem);
    left: calc(-54% - 1rem);
  }
}

@media screen and (min-width: 1056px) {
  .page-template-page-no-sidebar :is(.wp-block-cover.alignwide, .wp-block-group.alignwide) {
    width: calc(50vw + 50%);
    left: calc(-25vw + 25%);
  }
}

.page-template-page-full-width :is(.wp-block-cover.alignwide, .wp-block-group.alignwide) {
  width: 100%;
}

.wp-block-cover.alignfull, .wp-block-group.alignfull {
  width: 100vw;
  position: relative;
  left: calc(-50vw + 50%);
}

.post-template .site-main :is(.wp-block-cover.alignfull, .wp-block-group.alignfull) {
  width: calc(100% + 2rem);
  left: -1rem;
}

@media screen and (min-width: 782px) {
  .post-template .site-main :is(.wp-block-cover.alignfull, .wp-block-group.alignfull) {
    width: calc(154% + 3rem);
    left: calc(-54% - 2rem);
  }
}

@media screen and (min-width: 1280px) {
  .post-template .site-main :is(.wp-block-cover.alignfull, .wp-block-group.alignfull) {
    width: 100vw;
    left: calc(-50vw + 38rem - 54%);
  }
}

.post-template-default .site-main :is(.wp-block-cover.alignfull, .wp-block-group.alignfull) {
  width: calc(100% + 2rem);
  left: -1rem;
}

@media screen and (min-width: 782px) {
  .post-template-default .site-main :is(.wp-block-cover.alignfull, .wp-block-group.alignfull) {
    width: calc(154% + 3rem);
    left: calc(-54% - 2rem);
  }
}

@media screen and (min-width: 1280px) {
  .post-template-default .site-main :is(.wp-block-cover.alignfull, .wp-block-group.alignfull) {
    width: 100vw;
    left: calc(-50vw + 38rem - 54%);
  }
}

.page-template-default .site-main :is(.wp-block-cover.alignfull, .wp-block-group.alignfull) {
  width: calc(100% + 2rem);
  left: -1rem;
}

@media screen and (min-width: 782px) {
  .page-template-default .site-main :is(.wp-block-cover.alignfull, .wp-block-group.alignfull) {
    width: calc(154% + 3rem);
    left: calc(-54% - 2rem);
  }
}

@media screen and (min-width: 1280px) {
  .page-template-default .site-main :is(.wp-block-cover.alignfull, .wp-block-group.alignfull) {
    width: 100vw;
    left: calc(-50vw + 38rem - 54%);
  }
}

.wp-block-latest-posts__post-title {
  font-size: var(--custom-s--font--h5-size, 1.25em);
  font-weight: var(--custom-s--font--primary-bold, 700);
  line-height: 1.1;
}

.is-layout-flex .custom-s-margin-top-auto {
  margin-top: auto;
}

@media screen and (max-width: 781px) {
  .custom-s-stack-on-top {
    order: -1;
  }
}

.wp-block {
  max-width: 100%;
}

.editor-page-attributes__parent .components-form-token-field__suggestions-list {
  max-height: 40em;
}

.interface-interface-skeleton__content {
  padding-bottom: 2em;
}

.custom-s-flex-row {
  flex-wrap: nowrap;
  justify-content: space-between;
  display: flex;
}

.custom-s-flex-row > * {
  flex: 0 0 50%;
}

.has-primary-color {
  color: var(--custom-s--color--primary);
}

.has-secondary-color {
  color: var(--custom-s--color--secondary);
}

.has-tertiary-color {
  color: var(--custom-s--color--tertiary);
}

.has-highlight-color {
  color: var(--custom-s--color--highlight);
}

.has-background-light-color {
  color: var(--custom-s--color--bg-light);
}

.has-background-dark-color {
  color: var(--custom-s--color--bg-dark);
}

.has-background-body-color {
  color: var(--custom-s--color--bg-body);
}

.has-text-light-color {
  color: var(--custom-s--color--text-light);
}

.has-text-dark-color {
  color: var(--custom-s--color--text-dark);
}

.has-primary-background-color {
  background-color: var(--custom-s--color--primary);
}

.has-secondary-background-color {
  background-color: var(--custom-s--color--secondary);
}

.has-tertiary-background-color {
  background-color: var(--custom-s--color--tertiary);
}

.has-highlight-background-color {
  background-color: var(--custom-s--color--highlight);
}

.has-background-light-background-color {
  background-color: var(--custom-s--color--bg-light);
}

.has-background-dark-background-color {
  background-color: var(--custom-s--color--bg-dark);
}

.has-background-body-background-color {
  background-color: var(--custom-s--color--bg-body);
}

.has-text-light-background-color {
  background-color: var(--custom-s--color--text-light);
}

.has-text-dark-background-color {
  background-color: var(--custom-s--color--text-dark);
}

.is-style-custom-s-button-corona .wp-block-button__link {
  background: var(--custom-s--color--secondary);
  position: relative;
}

.is-style-custom-s-button-corona .wp-block-button__link:hover {
  background-color: var(--custom-s--color--primary);
  border-color: var(--custom-s--color--highlight);
  box-shadow: 0 0 1.5em .125em var(--custom-s--color--highlight);
  text-shadow: 0 0 .2em #9718ed, 0 0 1.8em #fb0094, 0 0 1.8em #fb0094, 0 0 2.2em #fff;
  z-index: 1;
  text-decoration: none;
  transition: box-shadow .2s ease-in-out;
}

.is-style-custom-s-button-corona .wp-block-button__link:focus {
  background-color: var(--custom-s--color--primary);
  border-color: var(--custom-s--color--highlight);
  box-shadow: 0 0 1.5em .125em var(--custom-s--color--highlight);
  text-shadow: 0 0 .2em #9718ed, 0 0 1.8em #fb0094, 0 0 1.8em #fb0094, 0 0 2.2em #fff;
  z-index: 1;
  text-decoration: none;
  transition: box-shadow .2s ease-in-out;
}

.block-editor-block-list__block.is-style-custom-s-button-square .wp-block-button__link, .is-style-custom-s-button-square .wp-block-button__link {
  background-color: var(--custom-s--color--tertiary);
  border-color: var(--custom-s--color--secondary);
  color: var(--custom-s--color--text-dark);
  display: block;
  border-radius: 0 !important;
}

.is-style-custom-s-button-square .wp-block-button__link:not(.has-text-color):visited {
  color: var(--custom-s--color--text-light);
}

.is-style-custom-s-button-square .wp-block-button__link:not(.has-text-color):hover {
  color: var(--custom-s--color--text-light);
  background-color: var(--custom-s--color--secondary);
  border-color: var(--custom-s--color--secondary);
}

.is-style-custom-s-button-square .wp-block-button__link:not(.has-text-color):focus {
  color: var(--custom-s--color--text-light);
  background-color: var(--custom-s--color--secondary);
  border-color: var(--custom-s--color--secondary);
}

.is-style-custom-s-button-square .wp-block-button__link:not(.has-text-color):active {
  color: var(--custom-s--color--text-light);
  background-color: var(--custom-s--color--secondary);
  border-color: var(--custom-s--color--secondary);
}

.is-style-custom-s-button-square .wp-block-button__link {
  aspect-ratio: 1;
  justify-content: center;
  align-items: center;
  display: flex;
}

@media screen and (min-width: 1280px) {
  .is-style-custom-s-button-square .wp-block-button__link {
    padding: 1.5em;
  }
}

.wp-block-button__link:not(.has-text-color):visited {
  color: var(--custom-s--color--text-light);
}

.wp-block-button__link:not(.has-text-color):hover {
  color: var(--custom-s--color--text-light);
}

.wp-block-button__link:not(.has-text-color):focus {
  color: var(--custom-s--color--text-light);
}

.wp-block-button__link:not(.has-text-color):active {
  color: var(--custom-s--color--text-light);
}

.is-style-custom-s-columns-no-bottom-margin {
  margin-bottom: 0;
}

@media screen and (min-width: 782px) {
  .is-style-custom-s-cover-constrain-width > .wp-block-cover__inner-container {
    padding: 4rem 1rem;
  }
}

.is-style-custom-s-cover-constrain-width > .wp-block-cover__inner-container > :last-child {
  margin-bottom: 0;
}

.is-style-custom-s-cover-constrain-width .wp-block-cover__inner-container {
  max-width: var(--custom-s--size--max-content-width);
  margin: 0 auto;
}

.page-template-page-no-sidebar .site-main :is(.is-style-custom-s-cover-constrain-width .wp-block-cover__inner-container) {
  max-width: var(--custom-s--size--no-sidebar-max-width, 1000px);
}

.is-style-custom-s-group-constrain-width > .wp-block-group__inner-container {
  padding: 3rem 1rem;
}

.is-style-custom-s-group-constrain-width.has-background > .wp-block-group__inner-container {
  padding: 3rem 1rem;
}

.is-style-custom-s-group-constrain-width > .wp-block-group__inner-container > :last-child {
  margin-bottom: 0;
}

.is-style-custom-s-group-constrain-width > .wp-block-group__inner-container {
  max-width: var(--custom-s--size--max-content-width);
  margin: 0 auto;
}

.page-template-page-no-sidebar .site-main :is(.is-style-custom-s-group-constrain-width > .wp-block-group__inner-container) {
  max-width: var(--custom-s--size--no-sidebar-max-width, 1000px);
}

.is-style-custom-s-heading-alt-font-family {
  font-family: var(--custom-s--font--secondary);
  text-transform: none;
}

.is-style-custom-s-heading-alt-font-family strong {
  font-weight: var(--custom-s--font--secondary-normal);
}

.is-style-custom-s-heading-alt-font-family em {
  font-style: normal;
}

.is-style-custom-s-image-cover {
  width: 100%;
  height: 100%;
}

.is-style-custom-s-image-cover img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
}

.wp-block-image.is-style-custom-s-image-figcaption-card {
  position: relative;
}

.wp-block-image.is-style-custom-s-image-figcaption-card a:after {
  content: "";
  z-index: 100;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.wp-block-image.is-style-custom-s-image-figcaption-card img {
  object-fit: cover;
  width: 100%;
  max-height: 20em;
  display: block;
}

.wp-block-image.is-style-custom-s-image-figcaption-card figcaption {
  background-color: var(--custom-s--color--bg-button);
  color: var(--custom-s--color--text-button);
  margin: 0;
  padding: 1em 1.5em;
  font-size: .875em;
  line-height: 1;
  position: absolute;
  bottom: 1em;
  left: 1em;
}

.wp-block-image.is-style-custom-s-image-figcaption-card a + figcaption {
  transition: background-color var(--custom-s--time--trans-dur) ease;
}

.wp-block-image.is-style-custom-s-image-figcaption-card a:active + figcaption {
  background-color: var(--custom-s--color--bg-button-hover);
}

.wp-block-image.is-style-custom-s-image-figcaption-card a:hover + figcaption {
  background-color: var(--custom-s--color--bg-button-hover);
}

.wp-block-image.is-style-custom-s-image-figcaption-card a:focus:after {
  outline: solid .125em var(--custom-s--color--border-outline);
  outline-offset: .25em;
}

figure.is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="left"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="center"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="right"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="wide"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="full"] > .is-style-custom-s-image-figcaption-overlap, .is-style-custom-s-image-figcaption-overlap figure.alignleft, .is-style-custom-s-image-figcaption-overlap figure.aligncenter, .is-style-custom-s-image-figcaption-overlap figure.alignright {
  clear: both;
  float: none;
  grid-template-rows: auto 3em auto;
  grid-template-columns: 1fr;
  margin: 0 0 2em;
  display: grid;
}

@media screen and (min-width: 480px) {
  :is(figure.is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="left"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="center"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="right"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="wide"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="full"] > .is-style-custom-s-image-figcaption-overlap, .is-style-custom-s-image-figcaption-overlap figure.alignleft, .is-style-custom-s-image-figcaption-overlap figure.aligncenter, .is-style-custom-s-image-figcaption-overlap figure.alignright) {
    grid-template-rows: auto 4em auto;
  }
}

@media screen and (min-width: 768px) {
  :is(figure.is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="left"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="center"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="right"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="wide"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="full"] > .is-style-custom-s-image-figcaption-overlap, .is-style-custom-s-image-figcaption-overlap figure.alignleft, .is-style-custom-s-image-figcaption-overlap figure.aligncenter, .is-style-custom-s-image-figcaption-overlap figure.alignright) {
    grid-template-rows: auto 6em auto;
  }
}

@media screen and (min-width: 980px) {
  :is(figure.is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="left"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="center"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="right"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="wide"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="full"] > .is-style-custom-s-image-figcaption-overlap, .is-style-custom-s-image-figcaption-overlap figure.alignleft, .is-style-custom-s-image-figcaption-overlap figure.aligncenter, .is-style-custom-s-image-figcaption-overlap figure.alignright) {
    grid-template-rows: auto 8em auto;
  }
}

:is(figure.is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="left"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="center"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="right"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="wide"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="full"] > .is-style-custom-s-image-figcaption-overlap, .is-style-custom-s-image-figcaption-overlap figure.alignleft, .is-style-custom-s-image-figcaption-overlap figure.aligncenter, .is-style-custom-s-image-figcaption-overlap figure.alignright) > div {
  grid-area: 1 / 1 / 3 / -1;
}

:is(figure.is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="left"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="center"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="right"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="wide"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="full"] > .is-style-custom-s-image-figcaption-overlap, .is-style-custom-s-image-figcaption-overlap figure.alignleft, .is-style-custom-s-image-figcaption-overlap figure.aligncenter, .is-style-custom-s-image-figcaption-overlap figure.alignright) .components-resizable-box__container {
  grid-area: 1 / 1 / 3 / -1;
}

:is(figure.is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="left"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="center"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="right"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="wide"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="full"] > .is-style-custom-s-image-figcaption-overlap, .is-style-custom-s-image-figcaption-overlap figure.alignleft, .is-style-custom-s-image-figcaption-overlap figure.aligncenter, .is-style-custom-s-image-figcaption-overlap figure.alignright) img {
  grid-area: 1 / 1 / 3 / -1;
}

:is(figure.is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="left"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="center"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="right"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="wide"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="full"] > .is-style-custom-s-image-figcaption-overlap, .is-style-custom-s-image-figcaption-overlap figure.alignleft, .is-style-custom-s-image-figcaption-overlap figure.aligncenter, .is-style-custom-s-image-figcaption-overlap figure.alignright) figcaption {
  background-color: var(--custom-s--color--bg-body);
  border: solid 1px var(--custom-s--color--secondary);
  color: inherit;
  text-align: left;
  z-index: 2;
  grid-area: 2 / 1 / 4 / -1;
  max-width: 20em;
  margin: 0 0 0 2em;
  padding: 3em 2em 2em;
  font-size: 1rem;
  line-height: 1.875;
}

@media screen and (min-width: 512px) {
  :is(figure.is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="left"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="center"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="right"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="wide"] > .is-style-custom-s-image-figcaption-overlap, .wp-block[data-align="full"] > .is-style-custom-s-image-figcaption-overlap, .is-style-custom-s-image-figcaption-overlap figure.alignleft, .is-style-custom-s-image-figcaption-overlap figure.aligncenter, .is-style-custom-s-image-figcaption-overlap figure.alignright) figcaption {
    max-width: 20em;
  }
}

.wp-block[data-align="left"]:has(.is-style-custom-s-image-figcaption-overlap) {
  height: auto;
}

.wp-block[data-align="right"]:has(.is-style-custom-s-image-figcaption-overlap) {
  height: auto;
}

:is(.wp-block[data-align="left"] > .is-style-custom-s-image-figcaption-overlap, .is-style-custom-s-image-figcaption-overlap figure.alignleft, .is-style-custom-s-image-figcaption-overlap figure.aligncenter, .is-style-custom-s-image-figcaption-overlap figure.alignright) figcaption {
  max-width: 80%;
  margin: 0 0 0 10%;
}

@media screen and (min-width: 512px) {
  :is(.wp-block[data-align="left"] > .is-style-custom-s-image-figcaption-overlap, .is-style-custom-s-image-figcaption-overlap figure.alignleft, .is-style-custom-s-image-figcaption-overlap figure.aligncenter, .is-style-custom-s-image-figcaption-overlap figure.alignright) figcaption {
    max-width: 20em;
  }
}

@media screen and (min-width: 782px) {
  :is(.wp-block[data-align="left"] > .is-style-custom-s-image-figcaption-overlap, .is-style-custom-s-image-figcaption-overlap figure.alignleft, .is-style-custom-s-image-figcaption-overlap figure.aligncenter, .is-style-custom-s-image-figcaption-overlap figure.alignright) figcaption {
    font-size: 1.125rem;
  }
}

:is(.wp-block[data-align="center"] > .is-style-custom-s-image-figcaption-overlap, .is-style-custom-s-image-figcaption-overlap figure.aligncenter) figcaption {
  margin: 0 auto;
}

@media screen and (min-width: 512px) {
  :is(.wp-block[data-align="right"] > .is-style-custom-s-image-figcaption-overlap, .is-style-custom-s-image-figcaption-overlap figure.alignright) figcaption {
    margin: 0 0 0 calc(90% - 20em);
  }
}

@media screen and (min-width: 512px) {
  :is(.wp-block[data-align="wide"] > .is-style-custom-s-image-figcaption-overlap, figure.is-style-custom-s-image-figcaption-overlap.alignwide) figcaption {
    max-width: 80%;
  }
}

@media screen and (min-width: 782px) {
  :is(.wp-block[data-align="wide"] > .is-style-custom-s-image-figcaption-overlap, figure.is-style-custom-s-image-figcaption-overlap.alignwide) figcaption {
    max-width: 30em;
  }
}

@media screen and (min-width: 512px) {
  :is(.wp-block[data-align="full"] > .is-style-custom-s-image-figcaption-overlap, figure.is-style-custom-s-image-figcaption-overlap.alignfull) figcaption {
    max-width: 80%;
  }
}

.is-style-custom-s-image-figcaption-overlay {
  grid-template-areas: "image";
  display: grid;
}

.is-style-custom-s-image-figcaption-overlay .components-resizable-box__container {
  object-fit: cover;
  object-position: center;
  grid-area: image;
  width: 100%;
  height: 100%;
}

.is-style-custom-s-image-figcaption-overlay img {
  object-fit: cover;
  object-position: center;
  grid-area: image;
  width: 100%;
  height: 100%;
}

.is-style-custom-s-image-figcaption-overlay figcaption {
  color: var(--custom-s--color--text-light);
  text-align: center;
  z-index: 2;
  grid-area: image;
  justify-content: center;
  align-items: center;
  margin: 0;
  padding: 1em;
  font-size: 1rem;
  line-height: 1.4;
  display: flex;
  position: relative;
}

.is-style-custom-s-image-figcaption-overlay figcaption:before {
  content: "";
  background-color: var(--custom-s--color--primary);
  opacity: .5;
  z-index: -1;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.is-style-custom-s-image-figcaption-overlay.wp-block-image figcaption {
  color: var(--custom-s--color--text-light);
}

.is-style-custom-s-image-figcaption-overlay a {
  grid-area: image;
  position: relative;
}

.is-style-custom-s-image-figcaption-overlay a:before {
  content: "";
  background-color: var(--custom-s--color--primary);
  opacity: .5;
  z-index: 1;
  width: 100%;
  height: 100%;
  transition: background-color var(--custom-s--time--trans-dur) ease, opacity .3s ease;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.is-style-custom-s-image-figcaption-overlay a:active:before {
  background-color: var(--custom-s--color--highlight);
  opacity: 1;
}

.is-style-custom-s-image-figcaption-overlay a:hover:before {
  background-color: var(--custom-s--color--highlight);
  opacity: 1;
}

.is-style-custom-s-image-figcaption-overlay a:after {
  content: "";
  opacity: 0;
  z-index: 3;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.is-style-custom-s-image-figcaption-overlay a + figcaption:before {
  display: none;
}

.is-style-custom-s-image-round-corners img {
  border-top-left-radius: var(--custom-s--size--radius-lg);
  border-bottom-right-radius: var(--custom-s--size--radius-lg);
}

.is-style-custom-s-intro-text, .editor-styles-wrapper .is-style-custom-s-intro-text {
  font-size: 1.5em;
}

:is(.is-style-custom-s-intro-text, .editor-styles-wrapper .is-style-custom-s-intro-text).has-drop-cap {
  margin-top: 0;
  padding-top: 3em;
}

:is(.is-style-custom-s-intro-text, .editor-styles-wrapper .is-style-custom-s-intro-text).has-drop-cap:not(:focus):first-letter {
  margin: -.3em .175em 0;
}

@media screen and (min-width: 782px) {
  :is(.is-style-custom-s-intro-text, .editor-styles-wrapper .is-style-custom-s-intro-text) {
    font-size: 2em;
  }

  :is(.is-style-custom-s-intro-text, .editor-styles-wrapper .is-style-custom-s-intro-text).has-drop-cap {
    padding-top: 4em;
  }

  :is(.is-style-custom-s-intro-text, .editor-styles-wrapper .is-style-custom-s-intro-text).has-drop-cap:not(:focus):first-letter {
    margin: -.42em .05em 0 .175em;
  }
}

.is-style-custom-s-two-col-text {
  columns: 15em 2;
  column-gap: 1.5em;
  width: 100%;
}
