body.debug{
	/* visibility: visible; */
}

/** =====
 * CSS RESET,NORMALIZE and TRAVELIZE TAG adjustments
 * =====
 *	Inspired by:
 *	* http://meyerweb.com/eric/tools/css/reset (v2.0 | 2011-01-26 | reset)
 *	* http://github.com/necolas/normalize.css (v4.0.0) 
 */

/**
 * --- RESET ---
 */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
/*hgroup,*/
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video{
	margin:0;
	padding:0;
	/*border:0;*/
	font-size:100%;
	font:inherit;
	vertical-align:baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
/*hgroup,*/
menu,
nav,
section{
	display:block;
}

body{
	line-height:1;
}

/*
ol,
ul{
	list-style:none;
}

*/

blockquote,
q{
	quotes:none;
}

blockquote:before,
blockquote:after,
q:before,
q:after{
	content:'';
	content:none;
}

/*
table{
	border-collapse:collapse;
	border-spacing:0;
}

*/


/** 
 * --- RESET - TRAVELIZE ---
 */
img,
fieldset,
legend{
	border:0;
}

/**
 *	--- NORMALIZE ---
 */

/**
 * original: normalize.css v4.0.0
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Prevent adjustments of font size after orientation changes in IE and iOS.
 */

html{
	font-family:sans-serif;
	/* 1. */
	-ms-text-size-adjust:100%;
	/* 2. */
	-webkit-text-size-adjust:100%;
	/* 2. */
}

/**
 * Remove the margin in all browsers (opinionated).
 */

body{
	margin:0;
}

/* HTML5 display definitions
   =========================================================================== */

/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge,IE,and Firefox.
 * 2. Add the correct display in IE.
 */

article,
aside,
details,/* 1. */
figcaption,
figure,
footer,
header,
main,/* 2. */
menu,
nav,
section,
summary{
	 /* 1. */
	display:block;
}

/**
 * Add the correct display in IE 9-.
 */

audio,
canvas,
progress,
video{
	display:inline-block;
	vertical-align:top;
}

/**
 * Add the correct display in iOS 4-7.
 */

audio:not([controls]){
	display:none;
	height:0;
}

/**
 * Add the correct vertical alignment in Chrome,Firefox,and Opera.
 */

progress{
	vertical-align:baseline;
}

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */

template,
[hidden]{
	/* 1. */
	display:none;
}

/* Links
   =========================================================================== */

/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */

a{
	background-color:transparent;
	/* 1. */
	-webkit-text-decoration-skip:objects;
	/* 2. */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */

a:active,
a:hover{
	outline-width:0;
}

/* Text-level semantics
   =========================================================================== */

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome,Edge,IE,Opera,and Safari.
 */

abbr[title]{
	border-bottom:none;
	/* 1. */
	text-decoration:underline;
	/* 2. */
	text-decoration:underline dotted;
	/* 2. */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */

b,
strong{
	font-weight:inherit;
}

/**
 * Add the correct font weight in Chrome,Edge,and Safari.
 */

b,
strong{
	font-weight:bolder;
}

/**
 * Add the correct font style in Android 4.3-.
 */

dfn{
	font-style:italic;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome,Firefox,and Safari.
 */

h1{
	font-size:2em;
	margin:0.67em 0;
}

/**
 * Add the correct background and color in IE 9-.
 */

mark{
	background-color:transparent;
}

/**
 * Add the correct font size in all browsers.
 */

small{
	font-size:80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup{
	font-size:75%;
	line-height:0;
	position:relative;
	vertical-align:baseline;
}

sub{
	bottom:-0.25em;
}

sup{
	top:-0.5em;
}

/* Embedded content
   =========================================================================== */

/**
 * Remove the border on images inside links in IE 10-.
 */

img{
	border-style:none;
}

/**
 * Hide the overflow in IE.
 */

svg:not(:root){
	overflow:hidden;
}

/* Grouping content
   =========================================================================== */

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
pre,
samp{
	font-family:monospace,monospace;
	/* 1. */
	font-size:1em;
	/* 2. */
}

/**
 * Add the correct margin in IE 8.
 */

figure{
	margin:1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr{
	box-sizing:content-box;
	/* 1. */
	height:0;
	/* 1. */
	overflow:visible;
	/* 2. */
}

/* Forms
   =========================================================================== */

/**
 * 1. Change font properties to `inherit` in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
select,
textarea{
	font:inherit;
	/* 1. */
	margin:0;
	/* 2. */
}

/**
 * Restore the font weight unset by the previous rule.
 */

optgroup{
	font-weight:bold;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input{
	 /* 1. */
	overflow:visible;
}

/**
 * Remove the inheritance of text transform in Edge,Firefox,and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select{
	 /* 1. */
	text-transform:none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *	controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */

button,
html [type="button"],/* 1. */
[type="reset"],
[type="submit"]{
	-webkit-appearance:button;
	/* 2. */
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner{
	border-style:none;
	padding:0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring{
	outline:1px dotted ButtonText;
}

/**
 * Change the border,margin,and padding in all browsers (opinionated).
 */

fieldset{
	border:1px solid silver;
	margin:0 2px;
	padding:0.35em 0.625em 0.75em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *	`fieldset` elements in all browsers.
 */

legend{
	box-sizing:border-box;
	/* 1. */
	color:inherit;
	/* 2. */
	display:table;
	/* 1. */
	max-width:100%;
	/* 1. */
	padding:0;
	/* 3. */
	white-space:normal;
	/* 1. */
}

/**
 * Remove the default vertical scrollbar in IE.
 */

textarea{
	overflow:auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */

[type="checkbox"],
[type="radio"]{
	box-sizing:border-box;
	/* 1. */
	padding:0;
	/* 2. */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button{
	height:auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"]{
	-webkit-appearance:textfield;
	/* 1. */
	outline-offset:-2px;
	/* 2. */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on OS X.
 */

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration{
	-webkit-appearance:none;
}

/**
 * Correct the text style of placeholders in Chrome,Edge,and Safari.
 */

::-webkit-input-placeholder{
	color:inherit;
	opacity:0.54;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button{
	-webkit-appearance:button;
	/* 1. */
	font:inherit;
	/* 2. */
}

/**
 *	-- TRAVELIZE TAG DEFAULTS - Not found in RESET or NORMALIZE ---
 */
html {
	scroll-behavior: smooth;
}


address{
	display:inline;
}

dt,
dd{
	display:inline-block;
	vertical-align:top;
}

dt{
	font-family:var(--font-family-body-bold);
	font-weight:var(--font-weight-body-bold);
}

dt:after,
dt::after{
	content:":";
}

a,
a:focus{
	outline:none;
}

i,
img,
object,
embed,
video{
	font-family: var(--font-family-body-italic);
	font-weight: var(--font-weight-body-italic);
	text-transform: var(--text-transform-body-italic);
	font-style: var(--font-style-body-italic);
	/* font-style:italic; */
}

em{
	font-family: var(--font-family-body-italic);
	font-weight: var(--font-weight-body-italic);
	text-transform: var(--text-transform-body-italic);
	font-style: var(--font-style-body-italic);
	/* font-style:italic; */
}

pre{
	white-space:pre;
	white-space:pre-wrap;
}

/* Sets consistent quote types.*/
q{
	quotes:'\201C' '\201D' '\2018' '\2019';
}

input,
textarea{
	font-family:inherit;
	font-size:100%;
	margin:0;
}

select{
	/* font-family:inherit; */
	/* font-size:100%; */
	/* margin:0; */
	background-color:var(--color-background-text);
}

/*
input[type="checkbox"],
input[type="radio"]{
	border:none!important;
}

*/

/* Browser default style reset for text input elements */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
textarea{
	-webkit-appearance:none;
	-moz-appearance:none;
	-ms-appearance:none;
	appearance:none;
	outline:0 none;
	box-shadow:none;
}

textarea{
	vertical-align:top;
	/*line-height:1.4;*/
}

img::selection{
	background:none transparent;
}

img::-moz-selection{
	background:none transparent;
}

/* Print styles that will break a table if it exceeds the print page height*/
table{
	page-break-inside:auto;
}

tr{
	page-break-inside:avoid;
	page-break-after:auto;
}

th{
	font-family:var(--font-family-body-bold);
	font-weight:var(--font-weight-body-bold);
	text-align:left;
	color:var(--color-text-heading);
	/* word-wrap:anywhere; */
	/* overflow-wrap:anywhere; */
	/* word-break:break-all; */
	/* -webkit-hyphens:auto; */
	/* -ms-hyphens:auto; */
	/* hyphens:auto; */
	/**/
	/*word-wrap:break-word;*/
	overflow-wrap:break-word;
	word-break:break-word;
	-webkit-hyphens:manual;
	-ms-hyphens:manual;
	hyphens:manual;
}

thead tr{
	background-color:transparent;
	border-bottom:1px solid rgba(var(--color-text-heading-rgb),0.25);
}

/** Table Header sticky */
thead th{
	/*position:-webkit-sticky;*/
	/*position:sticky;*/
	/*top: -1px;*/
	/*z-index:1;*/
	/*background-color:var(--color-background-text);*/
	/*box-shadow:0 1px 0 rgba(var(--color-text-heading-rgb),0.25);*/
}

blockquote{
	font-family:var(--font-family-quotation);
	font-weight:var(--font-weight-quotation);
	font-style:var(--font-style-quotation);
	text-transform:var(--text-transform-quotation);
	font-size:1.5em;
	line-height:1.333;
	margin:0 0.75em 0 0.75em;
	padding-top:0.333em;
	padding-bottom:0.333em;
}

ul,
ol,
dl{
	/*list-style-position:inside;*/
	list-style-position:outside;
	padding:0.375em 0;
	/*padding:0.187em 0;*/
	/*margin:0;*/
	margin:0 0 0 1.5em;
}

ul ul,
ul ol,
ol ol,
ol ul{
	/*padding:0.375em 0 0.375em 0.75em;*/
}

ul:last-child ul:last-child{
	/* padding-bottom:0; */
}

li{
	padding:0.375em 0;
	/*padding:0.187em 0;*/
	margin:0;
}

li p:last-child{
	padding-bottom:0;
	margin-bottom:0;
}

ul.no-bullets{
	list-style:none;
}

dl{
	list-style:none;
	padding-left:0;
	padding-right:0;
	margin-left:0;
	margin-right:0;
}

dt,
dd{
	display:block;
}

dt{
	margin-top:0.75em;
}

dt:first-child{
	margin-top:0;
}

/**/
img{
	max-width:100%;
	height:auto;
	-ms-interpolation-mode:bicubic;
	font-size:12px;
	font-size:1.2rem;
}

figure{
	position:relative;
}

figure img,
figure object,
figure embed,
figure video{
	max-width:100%;
	display:block;
}

a,
a span{
	cursor:pointer;
}

/** 
 * Remove cursor hand/pointer for everything except links, 
 * see article: https://adamsilver.io/articles/buttons-shouldnt-have-a-hand-cursor/ 
 */
label,
select,
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
tr[onclick]{
	/*cursor:pointer;*/
	cursor:default;
}

button[disabled],
input[disabled]{
	cursor:default;
}

abbr{
	cursor:help;
}

hr{
	height:0;
	padding:0;
	margin:1em 0;
	border:none;
	border-top:1px solid silver;
	border-bottom:1px solid rgba(255,255,255,0.75);
	width:100%;
	display:block;
	overflow:hidden;
}

a{
	text-decoration:none;
}

a:hover{
	text-decoration:underline;
}

h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover{
	text-decoration:none;
}

a,
input[type="text"],
input[type="password"],
textarea,
select{
	outline:0 none;
}

textarea{
	box-sizing:border-box;
	max-width:100%;
}

/*
input.radio,
input.checkbox{
	border:none!important;
}

*/

.ie9 img{
	width:auto;
}

.lte8 img{
	width:inherit;
	max-width:none;
}

picture{
	display: block;
	line-height:0;
}

/**/

label,
select{
	-webkit-user-select:none;
	-moz-user-select:none;
	-ms-user-select:none;
	user-select:none;
}

/** 
 * Cursor hand/pointer should only be for links, 
 * see article: https://adamsilver.io/articles/buttons-shouldnt-have-a-hand-cursor/ 
 */
[onclick*="location.href"]{	
	cursor:pointer!important;
}

*[disabled],
*:disabled{
	cursor:default!important;
	text-decoration:none!important;
	opacity:0.65;
}

/** ===== / END - CSS RESET,NORMALIZE and TRAVELIZE TAG adjustments ===== */

/** CORE - TAGS */
hr{
	border-top-color:var(--color-lightgray-dark);
}

small{
	/*font-size:13px;*/
	/*font-size:0.917em;*/
	/*font-size:0.75em;*/
	font-size:0.875em;
}

big{
	/*font-size:16px;*/
	/*font-size:1.167em;*/
	/*font-size:1.125em;*/
	font-size:1.25em;
}

q{
	font-family:var(--font-family-quotation);
	font-weight:var(--font-weight-quotation);
	font-style:var(--font-style-quotation);
	text-transform:var(--text-transform-quotation);
	font-size:1.166em;
	opacity:0.85;
}

mark{
	font-family:var(--font-family-body);
	font-weight:var(--font-weight-body);
	font-style:normal;
	border-radius:1px;
	/* background-color:#ff0;*/
	/* color:#000 */
	color:var(--color-base);
}

/** CORE - TYPOGRAPHY */

html{
	font-size:62.5%;
}

body{
	font-family:var(--font-family-body);
	font-weight:var(--font-weight-body);
	font-size: var(--font-size-body);
	line-height: var(--line-height-body);
	letter-spacing: var(--letter-spacing-body);
	color:var(--color-text-body);
	background-color:var(--color-lightgray);
}

h1,
h2,
h3,
h4,
h5,
h6{
	/*word-wrap: break-word;*/
	overflow-wrap: break-word;
	word-break: break-word;
	-webkit-hyphens:manual;
	-ms-hyphens:manual;
	hyphens:manual;	
}

h1{
	color:var(--color-text-heading);
}

h2,
h3,
h4,
h5,
h6,
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a{
	color:var(--color-text-heading);
}

a,
h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover{
	color:var(--color-link);
}

h4,
h5{
	font-family:var(--font-family-body);
	font-weight:var(--font-weight-body);
}

h6{
	font-family:var(--font-family-body);
	font-family:var(--font-family-body-bold);
	font-weight:var(--font-weight-body-bold);
}

h1{
	font-family:var(--font-family-h1);
	font-weight:var(--font-weight-h1);
	text-transform:var(--text-transform-h1);
	font-size: var(--font-size-h1);
	line-height: var(--line-height-h1);
	letter-spacing: var(--letter-spacing-h1);
	margin-top: var(--margin-top-h1);
	padding-top: var(--padding-top-h1);
	padding-bottom: var(--padding-bottom-h1);
	margin-bottom: var(--margin-bottom-h1);
}

* + h1{
	/* margin-top:0.75em; */
}

h2{
	font-family:var(--font-family-h2);
	font-weight:var(--font-weight-h2);
	text-transform:var(--text-transform-h2);
	font-size: var(--font-size-h2);
	line-height: var(--line-height-h2);
	letter-spacing: var(--letter-spacing-h2);
	margin-top: var(--margin-top-h2);
	padding-top: var(--padding-top-h2);
	padding-bottom: var(--padding-bottom-h2);
	margin-bottom: var(--margin-bottom-h2);
}

* + h2{
	/* margin-top:0; */
	/* padding-top:1.042em; */
}

h3{
	font-family:var(--font-family-h3);
	font-weight:var(--font-weight-h3);
	text-transform:var(--text-transform-h3);
	font-size: var(--font-size-h3);
	line-height: var(--line-height-h3);
	letter-spacing: var(--letter-spacing-h3);
	margin-top: var(--margin-top-h3);
	padding-top: var(--padding-top-h3);
	padding-bottom: var(--padding-bottom-h3);
	margin-bottom: var(--margin-bottom-h3);
}

* + h3{	
	/* margin-top:-0.223em; */
	/* padding-top:0.5em; */
}

h4{
	font-size:1.167em;
	line-height:1.286;
	letter-spacing:0;
	margin-top:0;
	padding-top:0;
	padding-bottom:0;
	margin-bottom:0;
}

* + h4{
	margin-top:-0.571em;
	padding-top:2.571em;
}

h5{
	font-size:1em;
	line-height:1.5;
	letter-spacing:0;
	margin-top:0;
	padding-top:0;
	padding-bottom:0;
	margin-bottom:0;
}

* + h5{
	margin-top:-0.667em;
	padding-top:3em;
}

h6{
	font-size:0.834em;
	line-height:1.8;
	letter-spacing:0;
	margin-top:0;
	padding-top:0;
	padding-bottom:0;
	margin-bottom:0;
}

* + h6{
	margin-top:-1em;
	padding-top:3.6em;
}

h1 + h2,
h1 + h3,
h2 + h3{
	margin-top:0!important;
}

/** Can be used for word breaking points: */
h1 span,
h2 span,
h3 span{
	display:inline-block;
	vertical-align:baseline;
}

h1 + h1{
	margin-top:1.2em;
}

p{
	margin-top:0;
	padding-top:0;
	/*padding-bottom:18px;*/
	padding-bottom:1.5em;
	margin-bottom:0;
}

p + ul,
p + ol,
p + dl{
	padding-top:0;
}

ul h1,
ul h2,
ul h3,
ul h4,
ul h5,
ul h6{
	margin:0;
	padding:0;
}

b,
strong{
	font-family:var(--font-family-body-bold);
	font-weight:var(--font-weight-body-bold);
}

/** 
 * Readability 12px open serif:(~450px), center content for readability, but not in admin editor ('cke_editable')
 */

h1,
h2,
h3,
h4,
h5,
h6,
/*
table,
form,
ul,
ol,
dl,
*/
p{
	/*max-width:600px;*/
	/*max-width:60rem;*/
	max-width:800px;
	max-width:80rem;
	/* margin-left:auto; */
	/* margin-right:auto; */
	margin-left:0;
	margin-right:0;
}

/** CORE - FORMS */

input:not([type=checkbox]):not([type=radio]):not([type=range]):not(.button),
textarea,
select{
	border-width:1px;
	border-style:solid;
	/*border-color:var(--color-lightgray-dark);*/
}
 
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not(.button),
textarea,
select,
input:not(.button)[disabled]:hover,
textarea[disabled]:hover,
select[disabled]:hover {
   	text-shadow:none;
	box-shadow:none;
	background-image:none;
	/* color:var(--color-text-body); */
	/* color:inherit; */
	/* background-color:var(--color-background-text); */
	/* background-color:transparent; */
	border-color:var(--color-lightgray-dark);
	border-color:rgba(var(--color-darkgray-dark-rgb),0.15);
	/* border-color:rgba(0,0,0,0.12); */
}

input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not(.button):hover,
textarea:hover,
select:hover {
   	text-shadow:none;
	box-shadow:none;
	background-image:none;
	/* color:var(--color-text-body); */
	/* color:inherit; */
	/* background-color:var(--color-background-text); */
	/* background-color:transparent; */
    border-color:var(--color-lightgray-dark);
	border-color:rgba(var(--color-darkgray-dark-rgb),0.20);
    /*border-color:rgba(0,0,0,0.24);*/
} 
 
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not(.button):focus,
textarea:focus,
select:focus{
   	text-shadow:none;
	box-shadow:none;
	background-image:none;
	/* color:var(--color-text-body); */
	/* color:inherit; */
	/* background-color:var(--color-background-text); */
	/* background-color:transparent; */
    border-color:var(--color-lightgray-dark);
	border-color:rgba(var(--color-darkgray-dark-rgb),0.30);
	/* border-color:rgba(0,0,0,0.36); */
}



/** Validation State: Required */

input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not(.button):required,
textarea:required,
select:required{
   	text-shadow:none;
	box-shadow:none;
	background-image:none;
	/* color:var(--color-text-body); */
	/* color:inherit; */
	/* background-color:var(--color-background-text); */
	/* background-color:transparent; */
    border-color:var(--color-lightgray-dark);
	border-color:rgba(var(--color-darkgray-dark-rgb),0.30);
	/* border-color:rgba(0,0,0,0.36); */
} 
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not(.button):required:focus,
textarea:required:focus,
select:required:focus{
   	text-shadow:none;
	box-shadow:none;
	background-image:none;
	/* color:var(--color-text-body); */
	/* color:inherit; */
	/* background-color:var(--color-background-text); */
	/* background-color:transparent; */
    border-color:var(--color-darkgray-dark);
}

/** Validation State: Valid */
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not(.button):valid:focus,
textarea:valid:focus,
select:valid:focus{
	/* border-color:var(--color-base) !important; */
	/* border-color:var(--color-accent) !important; */
	/* border-color:var(--color-alert); !important */
	/* border-color:var(--color-success); !important */
}


/** Validation State: Invalid */
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not(.button):invalid:focus,
textarea:invalid:focus,
select:invalid:focus{
	color: var(--color-error)!important;
	/* color:var(--color-warning)!important; */
	/* color:var(--color-alert)!important; */
	/* border-color:var(--color-warning)!important; */
	/* border-color:var(--color-alert)!important; */
}
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not(.button):invalid:required:focus,
textarea:invalid:required:focus,
select:invalid:required:focus{
	color: var(--color-error)!important;
	background-color: var(--color-background-text)!important;
	border-color: var(--color-error)!important;
}

/** State: Disabled */
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not(.button)[disabled],
textarea[disabled],
select[disabled],
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not(.button)[disabled]:hover,
textarea[disabled]:hover,
select[disabled]:hover{
	background-color:rgba(var(--color-midgray-rgb),0.075)!important;
	text-shadow:none;
	box-shadow:none;
	background-image:none;
	border-color:var(--color-lightgray-dark);
	border-color:rgba(var(--color-darkgray-dark-rgb),0.15);
}


/** State: Readonly */
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not(.button):not(.picker__input)[readonly],
textarea[readonly],
select[readonly]{
	background-color:rgba(var(--color-midgray-rgb),0.075)!important;
}

/**
 * remove browser default style (:focus)
 */
input,
textarea,
select{
	outline:0 none;
}

input:not(.button),
textarea,
select{
	padding:0.333em;
	/* border-radius:2px; */
	border-radius:var(--border-radius-input);
	
}

select{
	height:2.333em;
	padding-top:0;
	padding-bottom:0;
}

/** iOS Issue - Huge Checkbox Fix */
input[type=checkbox]{
	padding: 0;
}