/* Minification failed. Returning unminified contents.
(883,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(884,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(885,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(886,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(887,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(888,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(889,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(890,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(891,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(923,28): run-time error CSS1039: Token not allowed after unary operator: '-color-green'
(930,17): run-time error CSS1039: Token not allowed after unary operator: '-color-transwhite'
(937,28): run-time error CSS1039: Token not allowed after unary operator: '-color-lightgrey'
(942,17): run-time error CSS1039: Token not allowed after unary operator: '-color-darkgrey'
(999,28): run-time error CSS1039: Token not allowed after unary operator: '-color-green'
(1000,17): run-time error CSS1039: Token not allowed after unary operator: '-color-transwhite'
(1015,28): run-time error CSS1039: Token not allowed after unary operator: '-color-lightgrey'
(1019,17): run-time error CSS1039: Token not allowed after unary operator: '-color-darkgrey'
(1024,31): run-time error CSS1039: Token not allowed after unary operator: '-color-lightgrey'
(1027,28): run-time error CSS1039: Token not allowed after unary operator: '-color-transred'
(1028,17): run-time error CSS1039: Token not allowed after unary operator: '-color-transwhite'
(1041,28): run-time error CSS1039: Token not allowed after unary operator: '-color-green'
(1050,17): run-time error CSS1039: Token not allowed after unary operator: '-color-darkgrey'
(1053,28): run-time error CSS1039: Token not allowed after unary operator: '-color-green'
(1063,17): run-time error CSS1039: Token not allowed after unary operator: '-color-greyblue'
(1067,17): run-time error CSS1039: Token not allowed after unary operator: '-color-transwhite'
(1090,33): run-time error CSS1039: Token not allowed after unary operator: '-color-green'
 */
#content-full {
  margin-bottom: 0;
}
p {
  font-size: 18px;
  font-weight: 300;
}
h3 {
  text-transform: uppercase;
  font-size: 22px;
}
.mapWrapper {
  position: relative;
  margin-left: 40px;
  width: 70% !important;
}
.mapWrapper #map svg text {
  pointer-events: none;
}
#logo img {
  max-width: 95.5%;
  padding-top: 3px;
  margin-left: -10px;
  vertical-align: middle;
}
.button.button-full {
  display: block !important;
  white-space: normal;
  margin: 0;
  height: auto;
  line-height: 1.6;
  padding: 30px 0;
  font-size: 30px;
  font-weight: 300;
  text-transform: none;
  border-radius: 0;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
  background-color: #48c0db;
  color: #FFF;
  position: relative;
  cursor: pointer;
  outline: none;
}
.button.button-full:hover {
  text-decoration: none;
}
.lefthalf {
  width: 560px;
  float: left;
  padding: 0 ;
  margin: 0;
}
.righthalf {
  /*margin:0 0 0 570px;
	width: 560px;*/
}
#header-inner {
  padding: 4px 0 4px;
  background-color: #00578E;
  background-image: none;
}
#topnavigation {
  display: none;
}
label {
  font-size: 13px;
  color: #575757;
}
input[type="email"] {
  width: 100%;
  padding: 6px;
}
address {
  color: #555555;
  font-size: 13px;
  margin-top: 16px;
}
a:link.cta_button {
  -moz-user-select: none;
  background-color: #f4a62a;
  text-shadow: 1px 1px 0px #969696;
  box-shadow: 0 3px 0 #e67e22;
  border-radius: 5px;
  border-width: 0;
  color: #FFF;
  cursor: pointer;
  display: inline-block;
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  font-weight: normal;
  height: 40px;
  line-height: 40px;
  text-align: center;
  text-decoration: none;
  margin-top: 10px;
  padding: 0 25px;
}
a:visited.cta_button {
  -moz-user-select: none;
  background-color: #f4a62a;
  text-shadow: 1px 1px 0px #969696;
  box-shadow: 0 3px 0 #e67e22;
  border-radius: 5px;
  border-width: 0;
  color: #FFF;
  cursor: pointer;
  display: inline-block;
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  font-weight: normal;
  height: 40px;
  line-height: 40px;
  text-align: center;
  text-decoration: none;
  margin-top: 10px;
  padding: 0 25px;
}
a:hover.cta_button {
  -moz-user-select: none;
  background-color: #f59600;
  text-shadow: 1px 1px 0px #969696;
  box-shadow: 0 3px 0 #e67e22;
  border-radius: 5px;
  border-width: 0;
  color: #FFF;
  cursor: pointer;
  display: inline-block;
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  font-weight: normal;
  height: 40px;
  line-height: 40px;
  text-align: center;
  text-decoration: none;
  margin-top: 10px;
  padding: 0 25px;
}
a:active.cta_button {
  -moz-user-select: none;
  background-color: #f4a62a;
  text-shadow: 1px 1px 0px #969696;
  box-shadow: 0 3px 0 #e67e22;
  border-radius: 5px;
  border-width: 0;
  color: #FFF;
  cursor: pointer;
  display: inline-block;
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  font-weight: normal;
  height: 40px;
  line-height: 40px;
  text-align: center;
  text-decoration: none;
  margin-top: 10px;
  padding: 0 25px;
}
input[type="submit"] {
  -moz-user-select: none !important;
  background: none repeat scroll 0 0 #FCCC51 !important;
  border-radius: 5px !important;
  border-width: 0 !important;
  color: #333333 !important;
  cursor: pointer !important;
  display: inline-block !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 12px !important;
  font-weight: normal !important;
  height: 40px !important;
  line-height: 27px !important;
  margin-top: 10px !important;
  padding: 5px 14px !important;
  text-align: center !important;
  text-decoration: none !important;
  width: 100% !important;
  text-shadow: none !important;
}
.hs-form.stacked .actions {
  margin: 0;
  padding: 0;
}
#footer {
  padding: 20px 0;
  display: none;
}
#footer-disclaimer {
  background: none repeat scroll 0 0 #EEEEEE;
  border-top: 1px solid #DDDDDD;
  margin: 0;
  padding: 40px 0;
  display: none;
}
#footer-disclaimer p {
  font-size: 10px;
  line-height: 18px;
  color: #555;
  margin: 0;
  padding: 0;
}
#footer-disclaimer ul {
  display: inline-block;
}
#footer-disclaimer ul li {
  float: left;
  list-style: none;
}
#footer-disclaimer ul li a {
  padding: 10px;
  font-size: 10px;
  color: #777;
  line-height: 14px;
}
@media only screen and (min-device-width: 320px) and (max-device-width: 480px) {
  .page-center {
    width: 100% !important;
  }
  #mainmenu a {
    padding: 40px 12px 0 12px;
  }
  #counties {
    height: 50px !important;
  }
  #logo img {
    width: 200px;
    height: 87px;
    margin: 10px 0 0 0;
  }
}

.jqueryslidemenu{
text-align:left;
    display:block;
}

.jqueryslidemenu ul{
margin: 0;
padding: 0;
list-style-type: none;
}

/*Top level list items*/
.jqueryslidemenu ul li{
position: relative;
display: inline;
float: left;
z-index:100;
font-size:12px;
}

/*Top level menu link items style*/
.jqueryslidemenu ul li a{
display: block;
padding: 7px 15px 6px 15px;
text-decoration: none;
}


.jqueryslidemenu ul li.active a{
padding: 4px 15px 6px 15px; 
}

.jqueryslidemenu ul li.home a{
padding-left:0px;
}

* html .jqueryslidemenu ul li a{ /*IE6 hack to get sub menu links to behave correctly*/
display: inline-block;
}

.jqueryslidemenu ul li a:link, .jqueryslidemenu ul li a:visited{
color: Black;
}

.jqueryslidemenu ul li a:hover{

}
	
/*1st sub level menu*/
.jqueryslidemenu ul li ul{
position: absolute;
left: 0px;
top:28px !important;
display: block;
visibility: hidden;
padding:0px !important;
padding-top:6px !important;
}


/*Sub level menu list items (undo style from Top level List Items)*/
.jqueryslidemenu ul li ul li{
display: list-item;
float:none;
}

/*All subsequent sub menu levels vertical offset after 1st level sub menu */
.jqueryslidemenu ul li ul li ul{
left: 191px !important;
top: -1px !important;
padding-top:0px !important;
border-top:solid 1px #888888;
}

/* Sub level menu links style */
.jqueryslidemenu ul li ul li a{
width: 160px; /*width of sub menus*/
padding: 6px 15px;
margin: 0;
border: 1px solid #888888;
border-top-width:0px;
background: #fff; /*background of tabs (default state)*/
}

.jqueryslidemenu ul li ul li li a{
border-width:0px 1px 1px 1px;
}

.jqueryslidemenu ul li ul li a:hover{ /*sub menus hover style*/
background-color:white;
}

/* ######### CSS classes applied to down and right arrow images  ######### */

.downarrowclass{
position: absolute;
top: 14px;
right: 16px;
}

.rightarrowclass{
position: absolute;
top: 10px;
right: 5px;
}

/* ######### CSS classes applied to META area  ######### */

.jqueryslidemenutop{
	position:relative;
	float:right

}

.jqueryslidemenutop ul{
margin: 0;
padding: 0;
list-style-type: none;
}

/*Top level list items*/
.jqueryslidemenutop ul li{
position: relative;
display: inline;
float: left;
z-index:100;
font-size:12px;
}

/*Top level menu link items style*/
.jqueryslidemenutop ul li a{
display: block;
padding: 7px 15px 6px 15px;
text-decoration: none;
}


.jqueryslidemenutop ul li.active a{
padding: 4px 15px 6px 15px; 
}

.jqueryslidemenutop ul li.home a{
padding-left:0px;
}

* html .jqueryslidemenutop ul li a{ /*IE6 hack to get sub menu links to behave correctly*/
display: inline-block;
}

.jqueryslidemenutop ul li a:link, .jqueryslidemenutop ul li a:visited{
color: Black;
}

.jqueryslidemenutop ul li a:hover{

}
	
/*1st sub level menu*/
.jqueryslidemenutop ul li ul{
position: absolute;
left: 0px;
top:28px !important;
display: block;
visibility: hidden;
padding:0px !important;
padding-top:6px !important;
}


/*Sub level menu list items (undo style from Top level List Items)*/
.jqueryslidemenutop ul li ul li{
display: list-item;
float:none;
}

/*All subsequent sub menu levels vertical offset after 1st level sub menu */
.jqueryslidemenutop ul li ul li ul{
left: 191px !important;
top: -1px !important;
padding-top:0px !important;
border-top:solid 1px #888888;
}

/* Sub level menu links style */
.jqueryslidemenutop ul li ul li a{
width: 100px; /*width of sub menus*/
padding: 6px 15px;
margin: 0;
border: 1px solid #888888;
border-top-width:0px;
background: #fff; /*background of tabs (default state)*/
}

.jqueryslidemenutop ul li ul li li a{
border-width:0px 1px 1px 1px;
}

.jqueryslidemenutop ul li ul li a:hover{ /*sub menus hover style*/
background-color:#fff;
}

/* 

Minibuzz - CSS File For s3Slider JQuery

*/
#s3slider { 
   width: 625px; /* important to be same as image width */ 
   height: 250px; /* important to be same as image height */
   position: relative; /* important */
   overflow: hidden; /* important */
}

#s3slider a.but, #s3slider a.but:visited{color:#fff; padding:4px 4px; background-color:#444; filter: alpha(opacity=90); opacity: 0.9; border:solid 2px #363637;}

#s3sliderContent {
   width: 940px; /* important to be same as image width or wider */
   position: absolute; /* important */
   top: 0; /* important */
   margin:0px ;/* important */
   list-style-type:none !important;
   
}

.s3sliderImage {
   float: left; /* important */
   position: relative; /* important */
   display: none; /* important */
   llist-style-type:none !important;
}

.s3sliderImage div {
   position: absolute; /* important */
   right:0;
   top:0;
   font-size: 12px;
   padding:0;
   width: 300px;
   height:340px;
   padding:20px 30px 20px 30px;
   background-color: #000;
   filter: alpha(opacity=80); /* here you can set the opacity of box with text */
   opacity: 0.8; /* here you can set the opacity of box with text */
   color: white;
   display: none; /* important */
   bottom: 0px;

   /*
       if you put
       top: 0; -> the box with text will be shown at the top of the image 
       if you put
       bottom: 0; -> the box with text will be shown at the bottom of the image
   */
}
.s3sliderImage div h1{font-size:24px; color:#fff;}

.clear {
   clear: both;
} 

/*! fancyBox v2.1.0 fancyapps.com | fancyapps.com/fancybox/#license */
.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp
{
	padding: 0;
	margin: 0;
	border: 0;
	outline: none;
	vertical-align: top;
}

.fancybox-wrap {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 8020;
}

.fancybox-skin {
	position: relative;
	background: #fff;
	color: #444;
	text-shadow: none;
	-webkit-border-radius: 4px;
	   -moz-border-radius: 4px;
	        border-radius: 4px;
}

.fancybox-opened {
	z-index: 8030;
}

.fancybox-opened .fancybox-skin {
	-webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	   -moz-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

.fancybox-outer, .fancybox-inner {
	position: relative;
}

.fancybox-inner {
	overflow: hidden;
}

.fancybox-type-iframe .fancybox-inner {
	-webkit-overflow-scrolling: touch;
}

.fancybox-error {
	color: #444;
	font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
	margin: 0;
	padding: 15px;
	white-space: nowrap;
}

.fancybox-image, .fancybox-iframe {
	display: block;
	width: 100%;
	height: 100%;
}

.fancybox-image {
	max-width: 100%;
	max-height: 100%;
}

#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
	background-image: url('/Content/Images/fancyapp/fancybox_sprite.png');
}

#fancybox-loading {
	position: fixed;
	top: 50%;
	left: 50%;
	margin-top: -22px;
	margin-left: -22px;
	background-position: 0 -108px;
	opacity: 0.8;
	cursor: pointer;
	z-index: 8060;
}

#fancybox-loading div {
	width: 44px;
	height: 44px;
	background: url('/Content/Images/fancyapp/fancybox_loading.gif') center center no-repeat;
}

.fancybox-close {
	position: absolute;
	top: -18px;
	right: -18px;
	width: 36px;
	height: 36px;
	cursor: pointer;
	z-index: 8040;
}

.fancybox-nav {
	position: absolute;
	top: 0;
	width: 40%;
	height: 100%;
	cursor: pointer;
	text-decoration: none;
	background: transparent url('/Content/Images/fancyapp/blank.gif'); /* helps IE */
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	z-index: 8040;
}

.fancybox-prev {
	left: 0;
}

.fancybox-next {
	right: 0;
}

.fancybox-nav span {
	position: absolute;
	top: 50%;
	width: 36px;
	height: 34px;
	margin-top: -18px;
	cursor: pointer;
	z-index: 8040;
	visibility: hidden;
}

.fancybox-prev span {
	left: 10px;
	background-position: 0 -36px;
}

.fancybox-next span {
	right: 10px;
	background-position: 0 -72px;
}

.fancybox-nav:hover span {
	visibility: visible;
}

.fancybox-tmp {
	position: absolute;
	top: -9999px;
	left: -9999px;
	visibility: hidden;
}

/* Overlay helper */

.fancybox-lock {
	overflow: hidden;
}

.fancybox-overlay {
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	display: none;
	z-index: 8010;
	background: url('/Content/Images/fancyapp/fancybox_overlay.png');
}

.fancybox-overlay-fixed {
	position: fixed;
	bottom: 0;
	right: -18px;
}

.fancybox-lock .fancybox-overlay {
	overflow: auto;
	overflow-y: scroll;
}

/* Title helper */

.fancybox-title {
	visibility: hidden;
	font: normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
	position: relative;
	text-shadow: none;
	z-index: 8050;
}

.fancybox-opened .fancybox-title {
	visibility: visible;
}

.fancybox-title-float-wrap {
	position: absolute;
	bottom: 0;
	right: 50%;
	margin-bottom: -35px;
	z-index: 8050;
	text-align: center;
}

.fancybox-title-float-wrap .child {
	display: inline-block;
	margin-right: -100%;
	padding: 2px 20px;
	background: transparent; /* Fallback for web browsers that doesn't support RGBa */
	background: rgba(0, 0, 0, 0.8);
	-webkit-border-radius: 15px;
	   -moz-border-radius: 15px;
	        border-radius: 15px;
	text-shadow: 0 1px 2px #222;
	color: #FFF;
	font-weight: bold;
	line-height: 24px;
	white-space: nowrap;
}

.fancybox-title-outside-wrap {
	position: relative;
	margin-top: 10px;
	color: #fff;
}

.fancybox-title-inside-wrap {
	padding-top: 10px;
}

.fancybox-title-over-wrap {
	position: absolute;
	bottom: 0;
	left: 0;
	color: #fff;
	padding: 10px;
	background: #000;
	background: rgba(0, 0, 0, .8);
}


/* Styles of TABs for Create Customer & Edit Customer
----------------------------------------------------------*/

#content-customer
{    
  /* background-color: #f2f2f2;
   padding: 10px 0px 0px 0px;   */
   width: 100%;
}
#tab-container-customer
{
    float: left;
    margin: 30px 0px 0px 0px;   
   

}
#tab-container-customer ul
{
    list-style: none;
    text-align: left;   
    margin: 0px 0px 0px 0px; 
    padding: 0px 0px 0px 0px;
}

#tab-container-customer ul li ul
{
    list-style: none;
    text-align: left;   
    margin: 0px 0px 0px 0px; 
    padding: 0px 0px 0px 45px;
}

#tab-container-customer ul li
{
    border-top: 1px solid #666;
    border-right: 1px solid #666;
    border-bottom: 1px solid #666;
    border-left: 1px solid #666;
    background-color: #ddd;
    margin: 8px 0;
    height: 30px;
    width: 200px;
    padding: 0px 0px 0px 3px;
   
}

#tab-container-customer ul li ul li
{
    border-top: 1px solid #666;
    border-right: 1px solid #666;
    border-bottom: 1px solid #666;
    border-left: 1px solid #666;
    background-color: #ddd;
    margin: 8px 0;
    height: 30px;
    width: 150px;
    padding: 0px 0px 0px 3px;
   
}

#tab-container-customer ul li a, #tab-container-customer ul li a:visited
{
    text-decoration: none;
    color: #333;
    display: block;
    padding: 8px 5px;
    font-weight: bold;
}

/*#tab-container-customer ul li:hover 
{
    border-left: 1px solid #333;
    background-color: #fff;
}

#tab-container-customer ul li a:hover
{
    color: #000;
}*/
#tab-container-customer ul li.defaultProduct
{
    border-right: none;
    background-color: #fff;
    border-left: 1px solid #006699;
    width: 212px;
}

#tab-container-customer ul li ul li.defaultProduct
{
    border-right: none;
    background-color: #fff;
    border-left: 1px solid #006699;
    width: 163px;
}

#tab-container-customer ul li span
{
    text-decoration: none;
    color: #333;
    display: block;
    padding: 8px 5px;
    font-weight: bold;
}

#main-container-customer
{
    margin: 0 0 0 215px;
    padding: 30px;
    background-color: #fff;
    border: 1px solid #888;    
}
    
.tableToggleRightSmall
{
    border: #bbb solid 1px;
    background: url("/Content/images/toggle-bg.png") repeat-x scroll #e5e5e5;
}
.tableToggleRightSmall img
{
    float: left;
    right: 10px;
    position: relative;
}
    
.tableToggleWrongSmall
{
    border: #bbb solid 1px;
    background: url("/Content/images/toggle-bg-disabled.png") repeat-x scroll transparent;
}
.tableToggleWrongSmall img
{
    float: left;
    right: 10px;
    position: relative;
}

.circle { 
width: 20px; 
height: 20px; 
-moz-border-radius: 20px; 
-webkit-border-radius: 20px; 
border-radius: 20px; 
} 

:root {
    --color-darkgrey: #5f5d5d;
    --color-lightgrey: #ebebeb;
    --color-transgrey: #5f5d5d23;
    --color-red: #ff4550;
    --color-green: #49ce7a;
    --color-brightblue: #0a76ff;
    --color-greyblue: #a5bddc;
    --color-transwhite: rgba(255, 255, 255, 0.97);
    --color-transred: rgba(255, 69, 80, 0.85);
}


.chat-context {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    padding: 1em;
    box-sizing: border-box;
    font-family: 'Avenir',helvetica,arial,sans-serif;
    padding-top: 0em;
}

#chat {
    flex: 1 1 0;
    overflow-y: scroll;
    padding-left: 2.5em;
    padding-right: 2.5em;
    box-sizing: border-box;
}
#chat::-webkit-scrollbar, #ui-options::-webkit-scrollbar {
    width: 0 !important;
}
.button {
    cursor: pointer;
}
.chat-response {
    max-width: 80%;
    opacity: 0;
    padding: 1em;
    border-radius: 15px 15px 0px 15px;
    background-color: var(--color-green);
    text-align: right;
    margin-right: 0;
    margin-left: auto;
    margin-top: 1em;
    margin-bottom: 1em;
    position: relative;
    color: var(--color-transwhite);
    width: fit-content;
}
.chat-response p {
    margin: 0;
}
.chat-response.robot {
    background-color: var(--color-lightgrey);
    border-radius: 15px 15px 15px 0px;
    text-align: left;
    margin-right: auto;
    margin-left: 0;
    color: var(--color-darkgrey);
}
.chat-response:after {
    content: "";
    width: 2em;
    height: 2em;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    position: absolute;
    bottom: -1.5em;
    left: -2.5em;
    font-size: 1em;
}
.chat-response.user:after {
    content: "";
    left: auto;
    right: -2.5em;
}

#ui-response {
    height: 60px;
    max-height: 60px;
    position: relative;
    transition: all .5s ease-out;
    -webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
}
#ui-response.full-submit #response-text {
    display: none;
}
#ui-response.full-submit #ui-submit {
    width: 100%;
}
#ui-response.hide {
    overflow: hidden;
    animation: hide .5s forwards;
    -webkit-animation: hide .5s forwards;
    -moz-animation: hide .5s forwards;
}
@keyframes hide {
    0% {
        opacity: 1;
    }
    99.9999% {
        opacity: 0;
        max-height: 60px;
    }
    100% {
        max-height: 0em;
    }
}

#ui-submit {
    width: 60px;
    height: 60px;
    background-color: var(--color-green);
    color: var(--color-transwhite);
    position: absolute;
    bottom: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    cursor: pointer;
}
#response-text {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding-left: 1em;
    border: 1px solid var(--color-lightgrey);
    transition: all .5s ease-in;
    -webkit-transition: all .5s ease-in;
    -moz-transition: all .5s ease-in;
    color: var(--color-darkgrey);
    font-size: 16px;
}
#response-text:focus {
    outline: none;
    box-shadow: 0 0 15px var(--color-lightgrey);
}
#response-text.invalid {
    background-color: var(--color-transred);
    color: var(--color-transwhite);
}
#ui-options {
    display: flex;
    justify-content: flex-start;
    padding: 1em;    
    overflow-x: scroll;
}
#ui-options:empty {
    padding: 0em;
}
.ui-option {
    border-radius: 3px;
    border: 1px solid var(--color-green);
    padding: 1em;
    margin-right: 1em;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    transition: background-color .2s ease-in;
    color: var(--color-darkgrey);
}
.ui-option:hover, .ui-option.selected {
    background-color: var(--color-green);
    color: #FFF;
}
.ui-option:last-child {
    margin: 0;
}
.ui-option p {
    margin: 0;
}
.ui-option .subtext {
    color: var(--color-greyblue);
    font-size: .85em;
}
.ui-option:hover .subtext, .ui-option.selected .subtext {
    color: var(--color-transwhite);
}
.ui-option.filtered-out {
    display: none;
}
#ui-control > * {
    opacity: 1;
    transition: opacity 1s ease-in-out, max-height 1s ease-in-out;
    -moz-transition: opacity 1s ease-in-out, max-height 1s ease-in-out;
    -webkit-transition: opacity 1s ease-in-out, max-height 1s ease-in-out;
}
#ui-control .hidden {
    opacity: 0;
    -webkit-transition: background 0s;
    -moz-transition: background 0s;
    -ms-transition: background 0s;
    -o-transition: background 0s;
    transition: background 0s;
}


.loader {
    border: 16px solid #f3f3f3;
    border-top: 16px solid var(--color-green);
    border-radius: 50%;
    width: 80px;
    height: 80px;
    margin: auto;
    animation: spin 2s linear infinite;
}
@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}


@media (max-width: 600px) {
    .chat-context {
        padding: 0em;
    }
    #chat {
        padding: 1.25em;
        padding-bottom: 0em;
    }
    .chat-response.user:after {
        right: -1em;
    }
    .chat-response:after {
        left: -1em;
        bottom: -1em;
    }
}
