/*!
 * Part of the Accessido Accessibility Plugin
 * Author:       Accessido
 * Copyright:    (c) Accessido. All rights reserved.
 * License:      Commercial License – No redistribution permitted.
 * Website:      https://accessido.com
 */
body.tam-main-body.tam-high-contrast,
body.tam-main-body.tam-high-contrast * {
    background-color: #000 !important;
    color: #fff !important;
    border-color: #fff !important;
}

body.tam-main-body.tam-high-contrast a,
body.tam-main-body.tam-high-contrast button,
body.tam-main-body.tam-high-contrast label {
    color: #0ff !important;
    background-color: #111 !important;
    border-color: #fff !important;
}
body.tam-main-body.tam-high-contrast *:focus {
  outline: 2px dashed #00FFFF !important;
  outline-offset: 2px;
  background-color: #222 !important;
}

body.tam-main-body.tam-high-contrast svg,
body.tam-main-body.tam-high-contrast svg path,
body.tam-main-body.tam-high-contrast [role="presentation"] {
  color: #FFFFFF !important;
  fill: #FFFFFF !important;
  stroke: #FFFFFF !important;
}

body.tam-main-body.tam-large-text,
body.tam-main-body.tam-large-text * {
    font-size: 1.2em !important;
    line-height: 1.6 !important;
}
body.tam-no-animation [style*="transform"],
body.tam-profile-epilepsy-safe [style*="transform"],
body.tam-adhd-profile [style*="transform"] {
  transform: none !important;
  transition: none !important;
  animation: none !important;
}
body.tam-no-animation *,
body.tam-profile-epilepsy-safe *,
body.tam-adhd-profile * {
  animation: none !important;
  transition: none !important;
  transform: none !important;
  filter: none !important;
}


body.tam-no-animation .elementor-animated,
body.tam-no-animation .elementor-invisible,
body.tam-no-animation .elementor-widget-animated,
body.tam-no-animation .elementor-animation *,
body.tam-no-animation .elementor-zoom,
body.tam-no-animation .elementor-image,
body.tam-no-animation .elementor-img,
body.tam-no-animation .elementor-hover,
body.tam-no-animation .image-box-header,
body.tam-no-animation .zoom-effect,
body.tam-no-animation .hover-zoom,
body.tam-no-animation .fl-photo,
body.tam-no-animation .et_pb_animation,
body.tam-no-animation .fusion-animated,
body.tam-no-animation .uagb-animation,
body.tam-no-animation .bricks-animated,
body.tam-no-animation .oxyeffects *,
body.tam-no-animation img:hover,
body.tam-no-animation a:hover img,
body.tam-no-animation .wp-block-cover.has-parallax {
  animation: none !important;
  transition: none !important;
  transform: none !important;
  filter: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}
body.tam-profile-epilepsy-safe .elementor-animated,
body.tam-profile-epilepsy-safe .elementor-animation *,
body.tam-profile-epilepsy-safe .zoom-effect,
body.tam-profile-epilepsy-safe .hover-zoom,
body.tam-profile-epilepsy-safe img:hover,
body.tam-profile-epilepsy-safe a:hover img,
body.tam-adhd-profile .elementor-animated,
body.tam-adhd-profile .elementor-animation *,
body.tam-adhd-profile .zoom-effect,
body.tam-adhd-profile .hover-zoom {
  animation: none !important;
  transition: none !important;
  transform: none !important;
  filter: none !important;
}
body.tam-no-animation .elementor-headline-dynamic-text,
body.tam-profile-epilepsy-safe .elementor-headline-dynamic-text,
body.tam-adhd-profile .elementor-headline-dynamic-text {
  display: none !important;
  opacity: 0 !important;
  animation: none !important;
  transition: none !important;
}

body.tam-adhd-profile *:not(.elementor-icon):not(.elementor-icon-box-icon):not(.elementor-widget-icon-box):not(.jkit-button-wrapper):not(i):not(svg):not(path):not(iframe):not(#tam-access-widget-panel):not(#tam-access-widget-panel *) {
  animation: none !important;
  transition: none !important;
  scroll-behavior: auto !important;
}
body.tam-profile-epilepsy-safe {
  --epilepsy-text: #444 !important;
  --epilepsy-bg: #f4f4f4 !important;
  --epilepsy-border: #999 !important;
  --epilepsy-link: #333 !important;
  --epilepsy-button: #e5e5e5 !important;
  --epilepsy-button-text: #111 !important;

  scroll-behavior: auto !important;
  font-family: Arial, sans-serif !important;
  font-size: 1.01em !important;
  letter-spacing: 0.3px !important;
  word-spacing: 1px !important;
  line-height: 1.65 !important;
}

body.tam-profile-epilepsy-safe p,
body.tam-profile-epilepsy-safe span,
body.tam-profile-epilepsy-safe li,
body.tam-profile-epilepsy-safe td,
body.tam-profile-epilepsy-safe th,
body.tam-profile-epilepsy-safe a,
body.tam-profile-epilepsy-safe label,
body.tam-profile-epilepsy-safe article,
body.tam-profile-epilepsy-safe section {
  color: var(--epilepsy-text) !important;
  background-color: var(--epilepsy-bg) !important;
  border-color: var(--epilepsy-border) !important;
  font-family: Arial, sans-serif !important;
  font-size: 1.01em !important;
  letter-spacing: 0.3px !important;
  word-spacing: 1px !important;
  line-height: 1.65 !important;
}


body.tam-profile-epilepsy-safe h1,
body.tam-profile-epilepsy-safe h2,
body.tam-profile-epilepsy-safe h3,
body.tam-profile-epilepsy-safe h4,
body.tam-profile-epilepsy-safe h5,
body.tam-profile-epilepsy-safe h6 {
  font-weight: 700 !important;
  color: var(--epilepsy-text) !important;
}

body.tam-profile-epilepsy-safe a:not(.elementor-button):not(button):not(.tam-toggle-master) {
  color: var(--epilepsy-link) !important;
  text-decoration: underline !important;
  font-weight: bold !important;
}

body.tam-profile-epilepsy-safe button,
body.tam-profile-epilepsy-safe .elementor-button,
body.tam-profile-epilepsy-safe .jkit-button-wrapper,
body.tam-profile-epilepsy-safe .wp-block-button__link,
body.tam-profile-epilepsy-safe input[type="submit"],
body.tam-profile-epilepsy-safe input[type="button"] {
  background-color: var(--epilepsy-button) !important;
  color: var(--epilepsy-button-text) !important;
  border: 2px solid var(--epilepsy-border) !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}

body.tam-profile-epilepsy-safe input,
body.tam-profile-epilepsy-safe select,
body.tam-profile-epilepsy-safe textarea,
body.tam-profile-epilepsy-safe label {
  background-color: var(--epilepsy-bg) !important;
  color: var(--epilepsy-text) !important;
  border: 1px solid var(--epilepsy-border) !important;
  font-weight: 500 !important;
}

body.tam-profile-epilepsy-safe img {
  opacity: 0.7 !important;
}

body.tam-profile-epilepsy-safe *:focus {
  outline: 2px dashed #444 !important;
  outline-offset: 2px;
  background-color: #eee !important;
}

body.tam-profile-epilepsy-safe *:not(img):not(svg):not(.logo):not(.icon) {
  background-image: none !important;
}
body.tam-profile-lowvision {
  font-size: 1.15em !important;
  line-height: 1.6 !important;
  letter-spacing: 0.05em !important;
  font-weight: 600 !important;
  text-shadow: none !important;
  color: #000000 !important;
}

body.tam-profile-lowvision main,
body.tam-profile-lowvision section,
body.tam-profile-lowvision .elementor-container,
body.tam-profile-lowvision .elementor-widget,
body.tam-profile-lowvision .elementor-widget-container {
  background-color: #ffffff !important;
  color: #000000 !important;
}

body.tam-profile-lowvision h1,
body.tam-profile-lowvision h2,
body.tam-profile-lowvision h3,
body.tam-profile-lowvision h4,
body.tam-profile-lowvision h5,
body.tam-profile-lowvision h6 {
  color: #000000 !important;
  font-weight: 700 !important;
}
body.tam-profile-lowvision a:not(.elementor-button):not(.jkit-button-wrapper):not(button a):not(.elementor-button a) {
  color: #000000 !important;
  text-decoration: underline !important;
  font-weight: bold !important;
}
body.tam-profile-lowvision input,
body.tam-profile-lowvision select,
body.tam-profile-lowvision textarea,
body.tam-profile-lowvision label {
  background-color: #ffffff !important;
  color: #000000 !important;
  border: 2px solid #000000 !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}
body.tam-profile-lowvision button,
body.tam-profile-lowvision .elementor-button,
body.tam-profile-lowvision .jkit-button-wrapper {
  border: 2px solid #000000 !important;
  font-weight: 600 !important;
}
body.tam-profile-lowvision img {
  filter: contrast(150%) saturate(180%) !important;
  max-width: 100% !important;
  height: auto !important;
}
body.tam-profile-lowvision *:focus {
  outline: 2px dashed #0000ff !important;
  outline-offset: 2px;
  background-color: #f0f0f0 !important;
}
body.tam-profile-lowvision *:not(#tam-access-widget-panel):not(#tam-widget-iframe) {
  background-color: #ffffff !important;
  color: #000000 !important;
}

body.tam-main-body.tam-readability,
body.tam-main-body.tam-readability * {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 1.1em !important;
  letter-spacing: 0.03em !important;
  word-spacing: 2px !important;
  line-height: 1.8 !important;
  background-color: #fdfdfd !important;
  color: #111111 !important;
}
body.tam-main-body.tam-readability p,
body.tam-main-body.tam-readability li {
  margin-bottom: 1em !important;
}
body.tam-main-body.tam-readability h1,
body.tam-main-body.tam-readability h2,
body.tam-main-body.tam-readability h3 {
  margin-top: 1.5em !important;
  margin-bottom: 0.75em !important;
  font-weight: bold !important;
  line-height: 1.5 !important;
}
body.tam-main-body.tam-readability a {
  color: #0645AD !important;
  text-decoration: underline !important;
  font-weight: bold;
}

body.tam-main-body.tam-dyslexia p,
body.tam-main-body.tam-dyslexia li,
body.tam-main-body.tam-dyslexia td,
body.tam-main-body.tam-dyslexia th,
body.tam-main-body.tam-dyslexia span,
body.tam-main-body.tam-dyslexia article,
body.tam-main-body.tam-dyslexia section,
body.tam-main-body.tam-dyslexia .elementor-widget-text-editor,
body.tam-main-body.tam-dyslexia .elementor-text-editor,
body.tam-main-body.tam-dyslexia .elementor-widget-text-editor p,
body.tam-main-body.tam-dyslexia .elementor-text-editor p,
body.tam-main-body.tam-dyslexia .elementor-widget-text-editor span,
body.tam-main-body.tam-dyslexia .elementor-text-editor span {
    font-family: "OpenDyslexic", Arial, sans-serif !important;
    font-size: 1.3em !important;
    letter-spacing: 0.03em !important;
    word-spacing: 0.15em !important;
    line-height: 1.6 !important;
}


body.tam-main-body.tam-dyslexia button,
body.tam-main-body.tam-dyslexia label {
    font-size: 1.25em !important;
}

body.tam-main-body.tam-dyslexia h1,
body.tam-main-body.tam-dyslexia h2,
body.tam-main-body.tam-dyslexia h3,
body.tam-main-body.tam-dyslexia h4,
body.tam-main-body.tam-dyslexia h5,
body.tam-main-body.tam-dyslexia h6,
body.tam-main-body.tam-dyslexia .elementor-widget-text-editor h1,
body.tam-main-body.tam-dyslexia .elementor-widget-text-editor h2,
body.tam-main-body.tam-dyslexia .elementor-widget-text-editor h3,
body.tam-main-body.tam-dyslexia .elementor-widget-text-editor h4,
body.tam-main-body.tam-dyslexia .elementor-widget-text-editor h5,
body.tam-main-body.tam-dyslexia .elementor-widget-text-editor h6 {
    font-family: "OpenDyslexic", Arial, sans-serif !important;
    letter-spacing: normal !important;
    word-spacing: normal !important;
}

body.tam-main-body.tam-dyslexia header,
body.tam-main-body.tam-dyslexia nav,
body.tam-main-body.tam-dyslexia footer {
    font-family: inherit !important;
    letter-spacing: normal !important;
    word-spacing: normal !important;
}


body.tam-main-body.tam-adhd-profile {
    animation: none !important;
    transition: none !important;
    font-family: Arial, sans-serif !important;
    background-color: #fcfcfc !important;
    color: #111 !important;

    font-size: 1em !important;     
    line-height: 1.5 !important;        
    letter-spacing: 0.15px !important; 
    word-spacing: 0.3px !important;   
}

body.tam-text-scale-90 p,
body.tam-text-scale-90 span,
body.tam-text-scale-90 li,
body.tam-text-scale-90 label,
body.tam-text-scale-90 a,
body.tam-text-scale-90 button,
body.tam-text-scale-90 .elementor-widget-text-editor,
body.tam-text-scale-90 .elementor-text-editor {
  font-size: 0.9em !important;
}

body.tam-text-scale-100 p,
body.tam-text-scale-100 span,
body.tam-text-scale-100 li,
body.tam-text-scale-100 label,
body.tam-text-scale-100 a,
body.tam-text-scale-100 button,
body.tam-text-scale-100 .elementor-widget-text-editor,
body.tam-text-scale-100 .elementor-text-editor {
  font-size: 1em !important;
}

body.tam-text-scale-110 p,
body.tam-text-scale-110 span,
body.tam-text-scale-110 li,
body.tam-text-scale-110 label,
body.tam-text-scale-110 a,
body.tam-text-scale-110 button,
body.tam-text-scale-110 .elementor-widget-text-editor,
body.tam-text-scale-110 .elementor-text-editor {
  font-size: 1.2em !important;
}

body.tam-text-scale-120 p,
body.tam-text-scale-120 span,
body.tam-text-scale-120 li,
body.tam-text-scale-120 label,
body.tam-text-scale-120 a,
body.tam-text-scale-120 button,
body.tam-text-scale-120 .elementor-widget-text-editor,
body.tam-text-scale-120 .elementor-text-editor {
  font-size: 1.4em !important;
}

body.tam-text-scale-130 p,
body.tam-text-scale-130 span,
body.tam-text-scale-130 li,
body.tam-text-scale-130 label,
body.tam-text-scale-130 a,
body.tam-text-scale-130 button,
body.tam-text-scale-130 .elementor-widget-text-editor,
body.tam-text-scale-130 .elementor-text-editor {
  font-size: 1.5em !important;
}

body.tam-text-scale-140 p,
body.tam-text-scale-140 span,
body.tam-text-scale-140 li,
body.tam-text-scale-140 label,
body.tam-text-scale-140 a,
body.tam-text-scale-140 button,
body.tam-text-scale-140 .elementor-widget-text-editor,
body.tam-text-scale-140 .elementor-text-editor {
  font-size: 1.6em !important;
}

body.tam-text-scale-150 p,
body.tam-text-scale-150 span,
body.tam-text-scale-150 li,
body.tam-text-scale-150 label,
body.tam-text-scale-150 a,
body.tam-text-scale-150 button,
body.tam-text-scale-150 .elementor-widget-text-editor,
body.tam-text-scale-150 .elementor-text-editor {
  font-size: 1.7em !important;
}

body.tam-main-body.tam-hide-images img,
body.tam-main-body.tam-hide-images figure,
body.tam-main-body.tam-hide-images [class*="wp-block-image"],
body.tam-main-body.tam-hide-images [class*="wp-post-image"] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  width: 0 !important;
  overflow: hidden !important;
  background: none !important;
}

body.tam-main-body.tam-hide-images [style*="background-image"] {
  background-image: none !important;
}

body.tam-main-body.tam-hide-images *:not(#tam-reading-mask) {
  background-image: none !important;
}
body.tam-no-anim-only *,
body.tam-no-anim-only *::before,
body.tam-no-anim-only *::after {
  animation: none !important;
  transition: none !important;
}
body.tam-hide-iframe iframe {
  display: none !important;
}

body.tam-main-body.tam-mask-active #tam-reading-mask {
  display: block !important;
}

#tam-link-popup {
  position: fixed;
  right: 10px;
  bottom: 80px;
  background: #fff;
  padding: 1em;
  border: 1px solid #ccc;
  max-height: 300px;
  overflow-y: auto;
  z-index: 10000;
}

#tam-reading-mask {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    background: linear-gradient(
        to bottom,
        rgba(0,0,0,0.8) 0%,
        rgba(0,0,0,0.8) calc(var(--mask-y, 50%) - 100px),
        rgba(0,0,0,0) calc(var(--mask-y, 50%) - 100px),
        rgba(0,0,0,0) calc(var(--mask-y, 50%) + 100px),
        rgba(0,0,0,0.8) calc(var(--mask-y, 50%) + 100px),
        rgba(0,0,0,0.8) 100%
    );
    z-index: 100000;
}

button:focus,
input:focus {
  outline: 2px solid #0047ab;
  outline-offset: 2px;
}

body.tam-main-body.tam-light-contrast {
  background-color: #ffffff !important;
  color: #000000 !important;
  font-weight: 500 !important;
  line-height: 1.6 !important;
}

body.tam-main-body.tam-light-contrast main,
body.tam-main-body.tam-light-contrast section,
body.tam-main-body.tam-light-contrast .elementor-container,
body.tam-main-body.tam-light-contrast .elementor-widget-container {
  background-color: #ffffff !important;
  color: #000000 !important;
}

body.tam-main-body.tam-light-contrast *,
body.tam-main-body.tam-light-contrast p,
body.tam-main-body.tam-light-contrast span,
body.tam-main-body.tam-light-contrast li,
body.tam-main-body.tam-light-contrast label {
  color: #000000 !important;
  background-color: transparent !important;
}

body.tam-main-body.tam-light-contrast h1,
body.tam-main-body.tam-light-contrast h2,
body.tam-main-body.tam-light-contrast h3,
body.tam-main-body.tam-light-contrast h4,
body.tam-main-body.tam-light-contrast h5,
body.tam-main-body.tam-light-contrast h6 {
  color: #000000 !important;
  font-weight: 700 !important;
}

body.tam-main-body.tam-light-contrast a:not(.elementor-button):not(.jkit-button-wrapper) {
  color: #003366 !important;
  font-weight: bold !important;
}

body.tam-main-body.tam-light-contrast a.elementor-button,
body.tam-main-body.tam-light-contrast a.jkit-button-wrapper,
body.tam-main-body.tam-light-contrast .elementor-button,
body.tam-main-body.tam-light-contrast .jkit-button-wrapper {
  background-color: #fff !important;
  color: #111 !important;
  border: 2px solid #222 !important;
  box-shadow: none !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

body.tam-main-body.tam-light-contrast button a,
body.tam-main-body.tam-light-contrast .elementor-button a,
body.tam-main-body.tam-light-contrast .jkit-button-wrapper a {
  color: #ffffff !important;
  text-decoration: none !important;
  font-weight: 700 !important;
}

body.tam-main-body.tam-light-contrast button,
body.tam-main-body.tam-light-contrast input,
body.tam-main-body.tam-light-contrast select,
body.tam-main-body.tam-light-contrast textarea {
  background-color: #ffffff !important;
  color: #000000 !important;
  border: 2px solid #000000 !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}
body.tam-main-body.tam-light-contrast img,
body.tam-main-body.tam-light-contrast svg,
body.tam-main-body.tam-light-contrast path {
  opacity: 0.88 !important;
  mix-blend-mode: normal !important;
}
body.tam-main-body.tam-light-contrast *:focus {
  outline: 2px dashed #003366 !important;
  outline-offset: 2px;
  background-color: #e6f0ff !important;
}
.tam-monochrome * {
  color: #000 !important;
  background: #fff !important;
  border-color: #999 !important;
  box-shadow: none !important;
  text-shadow: none !important;
}
.tam-monochrome img,
.tam-monochrome figure,
.tam-monochrome picture,
.tam-monochrome .wp-block-image,
.tam-monochrome .wp-image,
.tam-monochrome [class*="wp-image-"] {
  filter: grayscale(100%) contrast(120%) !important;
}
.tam-monochrome canvas,
.tam-monochrome .elementor-widget-canvas canvas,
.tam-monochrome .canvas-wrapper canvas {
  filter: grayscale(100%) contrast(120%) !important;
}
.tam-monochrome video,
.tam-monochrome .video-container video {
  filter: grayscale(100%) contrast(120%) !important;
}

.tam-monochrome [style*="background-image"],
.tam-monochrome .has-background,
.tam-monochrome .background-overlay,
.tam-monochrome .elementor-background-overlay {
  filter: grayscale(100%) contrast(120%) !important;
  background-blend-mode: luminosity !important;
}
.tam-monochrome svg,
.tam-monochrome svg path,
.tam-monochrome svg use,
.tam-monochrome [role="presentation"],
.tam-monochrome [class*="eicon"],
.tam-monochrome [class*="star"],
.tam-monochrome i[class*="icon"],
.tam-monochrome i[class*="fa-"] {
  filter: grayscale(100%) contrast(120%) !important;
  color: #000 !important;
  fill: #000 !important;
  stroke: #000 !important;
}
.tam-monochrome iframe,
.tam-monochrome #tam-link-popup,
.tam-monochrome #tam-access-widget-panel,
.tam-monochrome #tam-access-widget-panel *,
.tam-monochrome #tam-access-widget {
  filter: none !important;
  color: inherit !important;
  background: inherit !important;
  border-color: inherit !important;
}


#tam-link-popup a:focus {
  outline: 3px solid #0047ab;
  outline-offset: 4px;
  border-radius: 6px;
  background-color: #d6e4f9; 
  color: #002a5c; 
  transition: background-color 0.2s ease, outline-color 0.2s ease;
}
#tam-link-popup {
  position: fixed;
  right: 10px;
  bottom: 80px;
  background: #fff;
  border: 1px solid #ccc;
  padding: 1em;
  max-width: 250px;
  max-height: 300px;
  overflow-y: auto;
  z-index: 10000;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  border-radius: 8px;
}
#tam-link-popup h4 {
  margin-top: 0;
  font-size: 1.1em;
  border-bottom: 1px solid #eee;
  padding-bottom: 5px;
}
#tam-link-popup a {
  text-decoration: none;
  color: #0047ab;
  font-size: 0.95em;
}
#tam-link-popup a:hover {
  text-decoration: underline;
}

#tam-widget-iframe:focus,
#tam-access-widget-panel:focus {
  outline: 3px solid #0047ab;
  outline-offset: 4px;
  border-radius: 8px;
}

#tam-custom-cursor {
  pointer-events: none !important;
  z-index: 2147483647 !important;
}
html.tam-large-cursor,
html.tam-large-cursor * {
  cursor: url("../includes/xp_arrow_xl.cur"), auto !important;
}
body.tam-main-body.tam-dyslexia a:hover,
body.tam-main-body.tam-profile-lowvision a:hover,
body.tam-main-body.tam-profile-epilepsy-safe a:hover,
body.tam-main-body.tam-adhd-profile a:hover {
  outline: 3px solid #0047ab !important;
  outline-offset: 2px;
  border-radius: 4px;
  text-decoration: none !important; 
}

.elementor-menu-cart__toggle_button svg {
    width: 1.6em !important;
    height: 1.6em !important;
    transform: none !important;
    scale: 1 !important;
    filter: none !important;
}

