/**
 * @file
 * Styles for Accessibility Toolbar
*/
/*=== Access Toggle (update for theme) ===*/
button.access-toggle{
    position: fixed;
	bottom: var(--spacing-20);
	right: 0.5rem; /*var(--spacing-10)*/
    transition: var(--three-sec-trans);
}
button.access-toggle{
    z-index: 97; /*9995*/
    outline: none;

    transition: var(--three-sec-trans);
}
button.access-toggle .access-toggle-icon{
	background: var(--white); 
    height: 3.2rem;
    width: 3.2rem;
    border-radius: 100%;
}
button.access-toggle .access-toggle-icon svg{
	/*darker shade of ore embedded in Font Awesome*/
	width: 3.2rem;
	height: 3.2rem;
}
@media screen and (max-width: 800px){
    button.access-toggle{
        bottom: 15vh;
    }
}
button.access-toggle:hover button.access-toggle, button.access-toggle:active button.access-toggle, button.access-toggle:focus button.access-toggle{
    transform: scale(1.1);
}
button.access-toggle i.fa-universal-access{
	color: #fff;
	font-size: 2.4rem;
}
button.access-toggle:hover span.screen-reader-text, button.access-toggle:focus span.screen-reader-text{
	clip: unset;
	height: auto;
	overflow: visible;
	width: auto;
	clip-path: none;
	background: var(--red);
	color: var(--white);
	position: absolute !important;
    font-size: var(--xs-font-size);
	font-weight: var(--med-weight);
	top: 0;
	right: 4rem;
	padding: 0.3rem 1rem;
}
/* Close Modal Button */
button.close-toolbar.wp-element-button{
    background-color: var(--black);
    color: var(--white);
    border-radius: 0;
    border: var(--border-width) solid var(--black);
    padding: 0.5rem 1.5rem;
    transition: var(--three-sec-trans);
    font-weight: var(--reg-weight);
    font-size: var(--body-font-size);
    box-sizing: border-box;
}
button.close-toolbar.wp-element-button:hover, button.close-toolbar.wp-element-button:focus{
    background-color: transparent;
    color: var(--black);
}
/*=== DIALOG IS CONTROLLED IN THEME-STYLE.CSS ===*/
/*==== Custom Theme Styles ===*/
.access-toolbar-modal .access-modal-inner{
    padding: var(--spacing-20) 3vw var(--spacing-30);
	border-radius: 4px;
    max-width: 90%;
	max-height: 90%;
	overflow-y: scroll;
}
.access-modal-inner h3{
    margin-bottom: var(--spacing-20);
}
.has-border-color{
    border-radius: 4px;
}
.access-modal-inner > .wp-block-group, .access-modal-inner > .wp-block-columns{
    margin: var(--spacing-10) auto;
}
.access-modal-inner .wp-block-columns{
    gap: var(--spacing-10);
} 
.access-modal-inner .flex-col{
    flex-direction: column;
    align-items: flex-start;
}
.access-modal-inner .wp-block-group.alignwide{
    width: 100%;
}
/* Text Option Container */
.access-modal-inner #text{
    gap: var(--spacing-10);
}
.access-modal-inner #text > .wp-block-group.alignwide{
    margin-top: 0;
    margin-bottom: 0;
}
/* Column and groups padding in access-modal-inner */
.access-modal-inner .wp-block-group.has-background, .access-modal-inner .wp-block-columns.has-background{
    padding: var(--spacing-10) var(--spacing-20);
}
/**********************************************\
  ACCESSIBILITY TOOLBAR INPUTS
\**********************************************/
/* Add focus to all */
.access-modal-inner *:focus{
	outline: var(--focus-outline);
	outline-offset: var(--focus-outline-offset);
}
/* General */
.access-modal-inner .access-options{
    position: relative;
}
.access-modal-inner .access-options input{
    cursor: pointer;
	height: 100%;
}
.access-modal-inner .access-options input[type="radio"]{
    position: absolute;
    margin-bottom: 0;
    opacity: 0;
    width: 100%;
}
.access-modal-inner label{
    transition: var(--three-sec-trans);
    cursor: pointer;
}
.access-options input:hover ~ label{
    padding: 0.2rem;
    background: var(--black);
	color: var(--white);
	border-radius: 4px;
}
.access-options input:focus ~ label{
    outline: 2px dotted;
}
/* If text or contrast options are selected */
body[data-cookie-text=smallText] label.small-text,
body[data-cookie-text=defaultText] label.default-text,
body[data-cookie-text=largeText] label.large-text,
body[data-cookie-text=largestText] label.largest-text{
	padding: 0.2rem 0.5rem;
	background: var(--sage);
	color: var(--black);
	border-radius: 4px;
    font-weight: var(--semi-bold-weight);
}
body[data-cookie-contrast=low] label.low-contrast,
body[data-cookie-contrast=high] label.high-contrast,
body[data-cookie-contrast=standard] label.default-contrast{
	transform: scale(1.2);
    outline: 2px dashed;
    outline-offset: 2px;
}
/*=== ACCESS TOOLBAR: Text Sizing Options ===*/
label.small-text{
	font-size: var(--small-font-size) !important;
}
label.default-text{
	font-size: var(--body-font-size) !important;
}
label.large-text{
	font-size: var(--large-font-size) !important;
}
label.largest-text{
	font-size: var(--xxl-font-size) !important;
}
/* Text option icon */
.access-modal-inner span.access-icon.text-size span:first-child{
	font-size: 110%;
}
.access-modal-inner span.access-icon.text-size span:last-child{
	font-size: 80%;
}
/*=== ACCESS TOOLBAR: Contrast Options ===*/
ul.contrast-list{
	display: flex;
	justify-content: space-between;
    list-style: none;
    padding-left: 0;
}
ul.contrast-list li{
	width: 3rem;
	height: 3rem;
}
ul.contrast-list li:nth-child(2){
	margin: 0 1rem;
}
ul.contrast-list li label{
	font-size: var(--body-font-size);
}
/* Inputs */
.access-modal-inner .radio-label{
    display: block;
	border-width: 2px;
	border-style: solid;
	border-radius: 4px;
	padding: 0.2rem;
	text-align: center;
	font-weight: 600;
}
label.default-contrast{
	position: relative;
	overflow: hidden;
}
label.default-contrast:before{
	position: absolute;
  	content: "";
  	left: 0;
  	top: 50%;
  	right: 0;
  	border-top: 2px solid;
 	border-color: inherit;
  
  	-webkit-transform:rotate(5deg);
  	-moz-transform:rotate(5deg);
  	-ms-transform:rotate(5deg);
  	-o-transform:rotate(5deg);
  	transform:rotate(5deg);
}
label.low-contrast{
	color: #AAACAE;
	border-color: #AAACAE;
}
label.high-contrast{
	color: yellow;
	border: yellow;
	background-color: var(--black);
}
/*=== ACCESS TOOLBAR: Switch paddle Options (underline and motion) ===*/
.access-modal-inner .paddle-switch{
	position: relative;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	width: 100%; 
	height: 2.5rem; 
	border-radius: 50px;
	background: var(--pigeon);
	font-weight: 600;
	/*padding: 0.2rem 0.3rem 0.3rem; */
}
.access-modal-inner .paddle-switch .switch-item{
	position: relative;
	height: 2rem;
	padding: 0.2rem;
	font-size: 1rem;
    text-transform: uppercase;
    text-wrap: nowrap;
}
.access-modal-inner .paddle-switch input{
	position: absolute;
	margin-bottom: 0;
	opacity: 0;
	height: 100%;
	width: 100%;
	cursor: pointer;
}
.access-modal-inner .paddle-switch label{
	display: block;
	border-radius: 100%;
	height: 2rem;
	width: 2.2rem;
    padding-top: 0.2rem;
	text-align: center;
}
/*=== ACCESS TOOLBAR: Underline Options ===*/
/* Default input is selected or none */
body:not([data-cookie-underline=underline]) .access-modal-inner #underline .paddle-switch label.underline-on{
    background: var(--black);
	color: var(--white);
}
/* Underline option is active */
body[data-cookie-underline=underline] .access-modal-inner #underline .paddle-switch{
	background: var(--sage);
}
body[data-cookie-underline=underline] .access-modal-inner #underline .paddle-switch label.underline-off{
    background: var(--black);
    color: var(--white);
}
/*=== ACCESS TOOLBAR: Motion Options ===*/
/* Default input is selected or none */
body:not([data-cookie-motion=reduce]) .access-modal-inner #motion .paddle-switch label.motion-on{
    background: var(--black);
	color: var(--white);
}
/* Motion reduced option is active */
body[data-cookie-motion=reduce] .access-modal-inner #motion .paddle-switch{
	background: var(--sage);
}
body[data-cookie-motion=reduce] .access-modal-inner #motion .paddle-switch label.motion-off{
    background: var(--black);
}
/**********************************************\
1.  ACCESSIBILITY CHANGES: Contrast
\**********************************************
/*=== LOW CONTRAST ===*/
body[data-cookie-contrast=low] header section.uo-banner, body[data-cookie-contrast=low] header .region-header, 
body[data-cookie-contrast=low] header .region-primary-menu, body[data-cookie-contrast=low] header .region-modal-menu,
body[data-cookie-contrast=low] .node__content, body[data-cookie-contrast=low] main .layout-content,
body[data-cookie-contrast=low] footer{
	filter: grayscale(1) !important; 
} 
body[data-cookie-contrast=low] > *:not(#accessToolbar):not(.menu-modal):not(.alert-block-modal):not(.seopress-user-consent seopress-user-message){
	opacity: 0.8;
}
body[data-cookie-contrast=low] .seopress-user-consent .seopress-user-message{
	opacity: 1;
}
/*=== HIGH CONTRAST ===*/
body[data-cookie-contrast=high] *:not(.access-modal-inner *):not(.has-background.has-accent-2-background-color):not(.wp-block-button:not(.is-style-outline)):not(.has-background.has-accent-background-color):not(.wp-block-media-text__media):not(video):not(.vbbVideoOverlay):not(footer > .wp-block-group.has-contrast-background-color):not(footer > .wp-block-group.has-contrast-background-color *):not(.wp-block-cover__image-background):not(.wp-block-cover *:not(.has-background)){
	background: var(--black) !important;
	background-color: var(--black) !important;
	color: yellow !important;
}
/* Theme Specific */
body[data-cookie-contrast=high] .has-accent-2-background-color.has-background, 
body[data-cookie-contrast=high] .has-accent-background-color.has-background{
	background: yellow !important;
	color: var(--black) !important;
}
/* Access modal changes */
body[data-cookie-contrast=high] .access-modal-inner{
	background-color: var(--black) !important;
	color: yellow !important;
}
body[data-cookie-contrast=high] .has-pigeon-border-color{
	color: yellow !important;
}
body[data-cookie-contrast=high] .wp-block-button:not(.is-style-outline) .wp-block-button__link:not(:hover):not(:focus){
    background-color: yellow !important;
    color: var(--black) !important;
    border: var(--border-width) solid yellow !important;
}
body[data-cookie-contrast=high] .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
body[data-cookie-contrast=high] .wp-block-button:not(.is-style-outline) .wp-block-button__link:focus{
    background-color: var(--black) !important;
    color: yellow !important;
}
body[data-cookie-contrast=high] .search-block-form, body[data-cookie-contrast=high] .search-block-form form,
body[data-cookie-contrast=high] .search-block-form label, body[data-cookie-contrast=high] .search-block-form input{
    background: yellow !important;
}
body[data-cookie-contrast=high] .search-block-form .fa-magnifying-glass{
    background: yellow !important;
    color: var(--black) !important;
}
body[data-cookie-contrast=high] .exhibition-teaser:hover .node__content > .wp-block-group.has-smoke-background-color, 
body[data-cookie-contrast=high] .exhibition-teaser:focus .node__content > .wp-block-group.has-smoke-background-color,
body[data-cookie-contrast=high] .timed-rss:hover .node__content, body[data-cookie-contrast=high] .timed-rss:focus .node__content{
    outline: 4px solid yellow !important;
}
body[data-cookie-contrast=high] a:focus{
    outline-color: yellow;
}
body[data-cookie-contrast=high][data-cookie-text=smallText] label.small-text,
body[data-cookie-contrast=high][data-cookie-text=defaultText] label.default-text,
body[data-cookie-contrast=high][data-cookie-text=largeText] label.large-text,
body[data-cookie-contrast=high][data-cookie-text=largestText] label.largest-text{
	background: yellow !important;
	color: var(--black) !important;
}
body[data-cookie-contrast=high] .access-modal-inner button.close-toolbar{
background-color: yellow !important;
	color: var(--black) !important;
	border-color: yellow !important;
}
/* Default input is selected or none for underline and motion */
body[data-cookie-contrast=high]:not([data-cookie-underline=underline]) .access-modal-inner #access-underline-off ~ label.underline-off,
body[data-cookie-contrast=high]:not([data-cookie-motion=reduce]) .access-modal-inner #access-motion-standard ~ label.motion-off{
	color: var(--black);
}
/* Active states for motion or underline */
body[data-cookie-underline=underline] .access-modal-inner #underline .paddle-switch,
body[data-cookie-motion=reduce] .access-modal-inner #motion .paddle-switch{
	background: yellow !important;
}
/**********************************************\
 ACCESSIBILITY SETTINGS: TEXT SIZING
\**********************************************/
/*=== Smaller Font Size ===*/
body[data-cookie-text=smallText] .has-small-font-size{
	font-size: 0.9rem !important;
}
body[data-cookie-text=smallText]{
	--caption-font-size: clamp(0.85rem, 0.8105rem + 0.1263vw, 1rem);
    --xxs-font-size: clamp(0.85rem, 0.8105rem + 0.1263vw, 1rem);
    --xs-font-size: clamp(0.95rem, 0.9237rem + 0.0842vw, 1.05rem);  
    --small-font-size: clamp(1rem, 0.9737rem + 0.0842vw, 1.1rem);
    --body-font-size: clamp(1.1rem, 1.0737rem + 0.0842vw, 1.2rem);
    --med-font-size: clamp(1.25rem, 1.2105rem + 0.1263vw, 1.4rem); 
    --large-font-size: clamp(1.35rem, 1.2842rem + 0.2105vw, 1.6rem);
    --xl-font-size: clamp(1.6rem, 1.3895rem + 0.6737vw, 2.4rem); 
    --xxl-font-size: clamp(1.78rem, 1.5642rem + 0.6905vw, 2.6rem);
    --main-title-font-size: clamp(2.2rem, 1.7263rem + 1.5158vw, 4rem);
}
body[data-cookie-text=smallText] .has-caption-font-size, body[data-cookie-text=smallText] .has-xxs-font-size{ font-size: clamp(0.85rem, 0.8105rem + 0.1263vw, 1rem); }
body[data-cookie-text=smallText] .has-xs-font-size{ font-size: clamp(0.95rem, 0.9237rem + 0.0842vw, 1.05rem); }
body[data-cookie-text=smallText] .has-small-font-size{ font-size: clamp(1rem, 0.9737rem + 0.0842vw, 1.1rem); }
body[data-cookie-text=smallText] .has-body-font-size{ font-size: clamp(1.1rem, 1.0737rem + 0.0842vw, 1.2rem); }
body[data-cookie-text=smallText] .has-med-font-size{ font-size: clamp(1.25rem, 1.2105rem + 0.1263vw, 1.4rem); }
body[data-cookie-text=smallText] .has-large-font-size{ font-size: clamp(1.35rem, 1.2842rem + 0.2105vw, 1.6rem); }
body[data-cookie-text=smallText] .has-xl-font-size{ font-size: clamp(1.6rem, 1.3895rem + 0.6737vw, 2.4rem); }
body[data-cookie-text=smallText] .has-xxl-font-size{ font-size: clamp(1.78rem, 1.5642rem + 0.6905vw, 2.6rem); }
body[data-cookie-text=smallText] .has-main-title-font-size{ font-size: clamp(2.2rem, 1.7263rem + 1.5158vw, 4rem); }
/*=== larger Font Size ===*/
body[data-cookie-text=largeText]{
	--caption-font-size: clamp(1rem, 0.9737rem + 0.0842vw, 1.1rem);
    --xxs-font-size: clamp(1rem, 0.9737rem + 0.0842vw, 1.1rem);
    --xs-font-size: clamp(1.05rem, 1.0105rem + 0.1263vw, 1.2rem); 
    --small-font-size: clamp(1.25rem, 1.2105rem + 0.1263vw, 1.4rem); 
    --body-font-size: clamp(1.35rem, 1.2842rem + 0.2105vw, 1.6rem);
    --med-font-size: clamp(1.6rem, 1.5474rem + 0.1684vw, 1.8rem);
    --large-font-size: clamp(1.78rem, 1.5642rem + 0.6905vw, 2.6rem);
    --xl-font-size: clamp(1.9rem, 1.6632rem + 0.7579vw, 2.8rem);
    --xxl-font-size: clamp(2.3rem, 2.0895rem + 0.6737vw, 3.1rem);
    --main-title-font-size: clamp(2.8rem, 1.9579rem + 2.6947vw, 6rem);
}
body[data-cookie-text=largeText] .has-caption-font-size, body[data-cookie-text=smallText] .has-xxs-font-size{ font-size: clamp(1rem, 0.9737rem + 0.0842vw, 1.1rem); }
body[data-cookie-text=largeText] .has-xs-font-size{ font-size: clamp(1.05rem, 1.0105rem + 0.1263vw, 1.2rem); }
body[data-cookie-text=largeText] .has-small-font-size{ font-size: clamp(1.25rem, 1.2105rem + 0.1263vw, 1.4rem);  }
body[data-cookie-text=largeText] .has-body-font-size{ font-size: clamp(1.35rem, 1.2842rem + 0.2105vw, 1.6rem); }
body[data-cookie-text=largeText] .has-med-font-size{ font-size: clamp(1.6rem, 1.5474rem + 0.1684vw, 1.8rem); }
body[data-cookie-text=largeText] .has-large-font-size{ font-size: clamp(1.78rem, 1.5642rem + 0.6905vw, 2.6rem); }
body[data-cookie-text=largeText] .has-xl-font-size{ font-size: clamp(1.9rem, 1.6632rem + 0.7579vw, 2.8rem); }
body[data-cookie-text=largeText] .has-xxl-font-size{ font-size: clamp(2.3rem, 2.0895rem + 0.6737vw, 3.1rem); }
body[data-cookie-text=largeText] .has-main-title-font-size{ font-size: clamp(2.8rem, 1.9579rem + 2.6947vw, 6rem); }
/*=== Largest ===*/
body[data-cookie-text=largestText]{
    --caption-font-size: clamp(1.05rem, 1.0105rem + 0.1263vw, 1.2rem);
    --xxs-font-size: clamp(1.05rem, 1.0105rem + 0.1263vw, 1.2rem);
    --xs-font-size: clamp(1.25rem, 1.2105rem + 0.1263vw, 1.4rem); 
    --small-font-size: clamp(1.35rem, 1.2842rem + 0.2105vw, 1.6rem);
    --body-font-size: clamp(1.6rem, 1.5474rem + 0.1684vw, 1.8rem);
    --med-font-size: clamp(1.8rem, 1.7474rem + 0.1684vw, 2rem);
    --large-font-size: clamp(1.9rem, 1.6632rem + 0.7579vw, 2.8rem);
    --xl-font-size: clamp(2.3rem, 2.0895rem + 0.6737vw, 3.1rem);
    --xxl-font-size: clamp(2.6rem, 2.3895rem + 0.6737vw, 3.4rem);
    --main-title-font-size: clamp(3rem, 2.0789rem + 2.9474vw, 6.5rem);
}
body[data-cookie-text=largestText] .has-caption-font-size, body[data-cookie-text=smallText] .has-xxs-font-size{ font-size: clamp(1.05rem, 1.0105rem + 0.1263vw, 1.2rem); }
body[data-cookie-text=largestText] .has-xs-font-size{ font-size: clamp(1.25rem, 1.2105rem + 0.1263vw, 1.4rem);  }
body[data-cookie-text=largestText] .has-small-font-size{ font-size: clamp(1.35rem, 1.2842rem + 0.2105vw, 1.6rem); }
body[data-cookie-text=largestText] .has-body-font-size{ font-size: clamp(1.6rem, 1.5474rem + 0.1684vw, 1.8rem); }
body[data-cookie-text=largestText] .has-med-font-size{ font-size: clamp(1.8rem, 1.7474rem + 0.1684vw, 2rem); }
body[data-cookie-text=largestText] .has-large-font-size{ font-size: clamp(1.9rem, 1.6632rem + 0.7579vw, 2.8rem); }
body[data-cookie-text=largestText] .has-xl-font-size{ font-size: clamp(2.3rem, 2.0895rem + 0.6737vw, 3.1rem); }
body[data-cookie-text=largestText] .has-xxl-font-size{ font-size: clamp(2.6rem, 2.3895rem + 0.6737vw, 3.4rem); }
body[data-cookie-text=largestText] .has-main-title-font-size{ font-size: clamp(3rem, 2.0789rem + 2.9474vw, 6.5rem); }
/**********************************************\
 ACCESSIBILITY SETTINGS: UNDERLINE
\**********************************************/
body[data-cookie-underline=underline] a, body[data-cookie-underline=underline] button{
	text-decoration: underline !important;
}
/**********************************************\
 ACCESSIBILITY SETTINGS: MOTION
\**********************************************/
body[data-cookie-motion=reduce] *{
	transition: none !important;
	transform: none !important;
}
/* Theme specific */
body[data-cookie-motion=reduce] video.vbbVideoPlayer *{
	display: none;;
}