/*============= CONTENTS ===========*/
/*
1. Normalize CSS
2. Foundational CSS + classes
3. Slick Slider base
4. Youtube lazy load
5. Video Embeds/Grid
6. Modals
7. Safety Page
8. Fixed Footer Buttons
9. Styled Appt Form
10. Anchor Header Height & IE Fixes 
11. Miscelaneous
Last. Animations
*/


/*========== 1. reset styles to normal ========*/
.progress{vertical-align:baseline}article,figcaption,figure,footer,header,hr,main,nav,section{display:block}hr{position:relative}body,figure{margin:0}button,hr,input,select{overflow:visible}[type=checkbox],[type=radio],legend{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;-webkit-box-sizing:border-box;box-sizing:border-box; font-size: 100%;}progress,video{display:inline-block}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline-width:0}b,strong{font-weight:700}h1{font-size:2em;margin:0 0 .67em}small{font-size:80%}img{border-style:none}svg:not(:root){overflow:hidden}code{font-family:monospace,monospace;font-size:1em}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;border:0}button,input,select,textarea{font:inherit;line-height:initial;margin:0}optgroup{font-weight:700}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{cursor:pointer}[disabled]{cursor:default}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button;border:0}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}button:-moz-focusring,input:-moz-focusring{outline:ButtonText dotted 1px}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}address {font-style: normal}img {max-width:100%; display: block; margin: 0 auto}*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing: grayscale;}
*::before, *::after, a {-webkit-transition:all .4s;  transition: all .4s;} i::before {-webkit-transition:none;transition: none}button {background-color: transparent;}
.clearfix:before, .clearfix:after{display:table;content:" "; clear: both}
a[name]{display: block; cursor: auto!important} p.has_target {margin: 0}


/*========= 2. Foundational CSS + classes ========*/
/* --- flexbox --- */
[class*="flex-"] {display: -webkit-box;display: -ms-flexbox; display: flex;}
[class*="-row"] {-webkit-box-orient: horizontal;-webkit-box-direction: normal; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-pack: distribute; justify-content: space-around; }
[class*="-wrap"] {-ms-flex-wrap: wrap;flex-wrap: wrap;}
.elem {max-width: 45%;}
.elem-left {float:left; margin-top: 8px; margin-right: 30px; margin-bottom: 20px;}
.elem-right {float:right; margin-top: 8px; margin-left: 30px; margin-bottom: 20px;}

.hide, .page_index .internal, .page_index #page {display: none!important}
.youtube:after, star:before, main ul li:before  {font-family:'fontello'; font-weight: 400; margin:0; font-style: normal;}
/* --- icons ---- */
star:before {content: '\e80f \e80f \e80f \e80f \e80f'; color: #f4bd17;}
.youtube:after {content: '\e80e';}
/*=========== 3. Slick Slider Base ==========*/
.slick-slider {position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; } 
.slick-list {position: relative; display: block; overflow: hidden; margin: 0; padding: 0; outline: none; } 
.slick-list:focus {outline: none; } 
.slick-list.dragging {cursor: pointer; cursor: hand; } 
.slick-slider .slick-track, .slick-slider .slick-list {-webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } 
.slick-track {position: relative; top: 0; left: 0; display: block; margin-left: auto; margin-right: auto; } 
.slick-track:before, .slick-track:after {display: table; content: ''; } 
.slick-track:after {clear: both; } 
.slick-loading .slick-track {visibility: hidden; } 
.slick-slide {display: none; float: left; height: 100%; min-height: 1px; } 
[dir='rtl'] .slick-slide {float: right; } 
.slick-slide {right: 0;}
.slick-slide img {display: block; margin: 0 auto;} 
.slick-initialized .slick-slide {height: 100%; display: flex !important; flex-direction: column; justify-content: center;}

.slick-slide.slick-loading img {display: none; } 
.slick-slide.dragging img {pointer-events: none; } 
.slick-initialized .slick-slide {display: block; } 
.slick-loading .slick-slide {visibility: hidden; } 
.slick-vertical .slick-slide {display: block; height: auto; border: 1px solid transparent; } 
.slick-arrow.slick-hidden {display: none; }
.slick-dots { margin:0px; padding:0px; list-style: none; text-align: center; }
.slick-dots li { padding:0px!important; display: inline-block; margin: 0 5px;}
.slick-dots li:before { display:none; }

/*========= 4. Youtube LazyLoad ==========*/
.youtube { position: relative; cursor: pointer; width: 100%; font-size: 0; }
.youtube[class*="elem-"] { width: 440px; }
.youtube:before, .youtube:after { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
.youtube:before { content: ""; background-color: #fff; width: 40px; height: 40px; }
.youtube:after { font-size: 70px; color: #4d4d4d; font-family: "fontello"; font-weight: 400; margin: 0; font-style: normal; content: "\e80e"; }
.youtube:hover:after { color: #ff0000; }
.youtube.active:before, .youtube.active:after { display: none; }

[data-player],[data-vimeo], [data-embed] { position: relative; }
[data-player] video,[data-vimeo] video, [data-embed] video {width: 100%;}
[data-player][class^="elem"]{position: relative; min-width: 460px;}
/*for internal videos with close buttons */
.yt-play {cursor: pointer; position: absolute; top: 42%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); font-size: 70px; color: #4d4d4d; font-family: "fontello"; font-weight: 400; margin: 0; font-style: normal; content: "\e80e"; }
.yt-play:hover { color: #ff0000; }


/*============= 5. Video Embeds ============*/
.videoWrapper{position:relative;padding-bottom:56.25%;height:0}
.videoWrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%}

.vid {width: 100%; max-width: 400px}
.video-grid {clear: both; margin: 30px auto}
.video-grid {text-align: center; display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display: flex; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center}
.video-grid h3 {margin-bottom: 8px; font-size: 20px;}
.video-grid > * {width: 100%; max-width: 50%; padding: 5px}
.video-grid > div p {margin: 0;}
.video-middle {width: 100%; max-width: 800px;}
@media (max-width:750px) {
    .vid {display: table; float:none; margin:15px auto!important; max-width:100%!important;} 
    .video-grid {display: block} 
    .video-grid > * {max-width: 600px; margin: 10px auto;}
}


/*==================== 6. Modals ================*/
/* #lean_overlay {padding: 10px; position: fixed; z-index:1100; top: 0; left: 0; height:100%; width:100%; background: rgba(0,0,0,.7); display: none; -webkit-box-pack:center; -ms-flex-pack:center; justify-content:center; -webkit-box-align:center; -webkit-align-items:center; -ms-flex-align:center; -ms-grid-row-align:center; align-items:center; } */
#lean_overlay { position: fixed; z-index:100;top: 0px;left: 0px;height:100%;width:100%; background: rgba(0,0,0,.7);  display: none; overflow: scroll;}
.modal-content { display: none; -webkit-box-flex: 0;-ms-flex: 0 1 97%;flex: 0 1 97%; background: rgb(237, 237, 237); max-width: 800px;-webkit-box-sizing: border-box; box-sizing: border-box; padding:20px; position: relative;text-align: center;  width: 95%;}
.modal-close { position: absolute; right:-15px; top:-15px; z-index:1002; cursor:pointer; width: 40px; height: 40px; border-radius: 50%; background-color: #12aaee; -webkit-box-shadow:0 0 4px 2px rgba(0,0,0,.3); box-shadow:0 0 4px 2px rgba(0,0,0,.3); border: 2px solid #fff; }
.modal-close i { position: relative; color:#fff; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; font-style: normal;}
.modal-close i:before { font-size: 40px; line-height: 35px; content: '\00d7'}
.modal-close span {display: none;}
.modal-close:hover {background-color: #555; }
.modal-content form {margin: 20px auto;}
.modal-content input, .modal-content textarea { display: block; width: 100%; -webkit-box-sizing: border-box; box-sizing: border-box;border: none; padding: 12px 10px; font-size: 17px; margin-bottom: 10px; color: inherit;line-height: 1em; -webkit-transition:.3s ease all; transition: .3s ease all;    -webkit-box-shadow: 1.5px 2.6px 7px rgba(24, 23, 24, 0.25);    box-shadow: 1.5px 2.6px 7px rgba(24, 23, 24, 0.25); }
.modal-content textarea {height: 120px;}
.modal-content .btn {display: table; margin: 20px auto;}
.modal-content ::-webkit-input-placeholder {color: #363636}
.modal-content :-moz-placeholder {color: #363636}
.modal-content ::-moz-placeholder {color: #363636}
.modal-content :-ms-input-placeholder {color: #363636}

@media (max-height: 700px){
  .modal-content{top: 20px !important; bottom: 20px !important; overflow: scroll; }.modal-close{right: 10px; top: 5px;}
}


/*=============== 7. Safety Page ===============*/
#safety { max-width: 1030px; margin: 40px auto 0; padding: 20px 10px; position: relative;  }
/* #safety:before {background-color: #efefef; content: ''; position: absolute; left: -1000px; right: -1000px; top: 0; bottom: 0;  z-index: -1; } */
#safety .flex-ed {margin: 40px auto; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; justify-content: space-around; flex-wrap: nowrap;}
#safety article {-webkit-box-flex: 0;-ms-flex: 0 1 800px;flex: 0 1 800px; padding: 0 10px;}
#safety p {font-size: 18px; line-height: 1.6;}
#safety h3 { font-size: 35px; margin: 5px auto; font-weight: 400; line-height: 1.2;text-align: left; letter-spacing: 0;}
#safety h3:after {background-color: tomato; content: ''; display: block; height: 2px; width: 57px;  margin: 10px 0;}

.covid-icon {  box-shadow: 0 0 0 10px #fff; border: 3px solid tomato;  margin: 10px; height: 140px; width: 140px;-webkit-box-flex: 0;-ms-flex: 0 0 140px;flex: 0 0 140px;  background-color: #fff; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center;margin-right: 20px; }
.cls-1,  cls-1.per {stroke:#252525;stroke-miterlimit:10; stroke-width: .75px !important; fill: #fff; }
.cls-2, .cls-3 {fill: #fff;}
.cls-2, .cls-3, .cls-4 {stroke: tomato; } 
.filler.cls-2, .filler.cls-1 {fill: #fff !important;}
.thinner .cls-1 {stroke-width: .1px !important; fill: #252525;}
.thinner .cls-2 {stroke-width: .1px !important; fill: tomato;}
.thinner .cls-2, .thinner .cls-3 {stroke-width: .5px;}
.stroker .cls-2, .stroker .cls-3  {stroke-width: .4px !important;}

@media(max-width: 750px) {
  .safe-page {letter-spacing: 0;}
  #safety .flex-ed {display: block;text-align: center;}
  .covid-icon {margin: 20px auto;}
  #safety h3 {text-align: center}
  #safety h3:after {margin: 10px auto;}
}

@media(max-width: 590px) {
   #safety h3 {font-size: 28px;}
}


/*============ 8. Fixed Footer Buttons ===========*/


/*============ 9. Styled Appt Form ===============*/
/* ------------- APPT FORM -------------- */
.styled-form { margin: 30px auto; font-size: 16px; text-align: left; }
.styled-form [class^="btn"] { margin-left: 0; }
.styled-form .drei { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; }
.styled-form .drei + .drei { margin-top: 5px; }
.styled-form .input-content, .styled-form .inline { width: calc(100% / 3 - 5px); min-height: 60px; }
.styled-form .inline, .input-content { background-color: #000; }
.input__label-content strong, .input__label-content strong a { color: #000; }
.input-content, .styled-form .inline label, .styled-form .inline, .input--filled .input__label .input__label-content strong, .input--filled .input__label .input__label-content a { color: #fff !important; }
.styled-form .drei:first-of-type { line-height: 1 !important; }
.styled-form .inline { box-sizing: border-box; padding: 8px 16px; }
.styled-form .inline span input { margin-right: 4px; }
.styled-form .inline span { display: block; line-height: 1.4; }
.styled-form .hear { margin: 5px 0; }
.styled-form .hear label { display: inline-block; margin-right: 8px; }
.styled-form .inline.wide { width: calc(100% / 1.5 - 3px); }
.input-content { position: relative; z-index: 1; overflow: hidden; }
.input__field { -webkit-appearance: none; position: absolute; z-index: 2; display: block; float: right; border: none; border-radius: 0; padding: 0 14px; margin-top: 1.2em; height: 40px; width: 100%; background: transparent; color: #fff; }
.input__field { outline: none; }
.styled-form *:focus { outline-color: #ff9; outline-style: ridge; outline-width: thin; }
.input__label { display: inline-block; padding: 0; width: 100%; background: transparent; text-align: left; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -webkit-touch-callout: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.input__label::before { content: ''; box-sizing: border-box; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0px solid transparent; -webkit-transition: border-width 0.3s, border-color 0.3s; transition: border-width 0.3s, border-color 0.3s; }
.input__label-content { box-sizing: border-box; position: relative; display: block; width: 100%; padding: 1.1em 1em; text-rendering: geometricPrecision; -webkit-transform-origin: 0% 50%; transform-origin: 0% 50%; -webkit-transition: -webkit-transform 0.3s, color 0.3s; -webkit-transition: color 0.3s, -webkit-transform 0.3s; transition: color 0.3s, -webkit-transform 0.3s; transition: transform 0.3s, color 0.3s; transition: transform 0.3s, color 0.3s, -webkit-transform 0.3s; }
.input__label-content strong { float: right; font-weight: 300; }
.input__field + .input__label::before, .input--filled .input__label::before { border-width: .2em 0 0; border-color: #ff9; border-top-width: 1.5em; }
.input__field + .input__label .input__label-content, .input--filled .input__label .input__label-content { color: #000; font-size: 16px; padding: .85em .5em; -webkit-transform: translate3d(0, -0.65em, 0); transform: translate3d(0, -0.65em, 0); }
input:-webkit-autofill, textarea:-webkit-autofill, select:-webkit-autofill { background-color: transparent !important; }
.styled-form .inline textarea { padding: 5px; display: block; width: 100%; height: 80px; font-size: 16px; margin-top: 5px; }
.styled-form .inline textarea { color: #000; padding: 5px; display: block; width: 100%; height: 120px; font-size: 16px; margin-top: 5px; }
.styled-form .inline.wide { width: calc(100% / 1.5 - 3px); }
@media (max-width:800px) {
  .styled-form .input-content, .styled-form .inline { width: 100%; display: block; border-bottom: 1px solid rgba(206, 206, 206, 0.22); }
  .styled-form .input-content + .input-content { margin-top: 5px; }
  .styled-form .inline.wide { width: 100%; margin-top: 5px; }
}
.styled-form select { border: 1px solid #000; padding: 5px; }
.options label { display: block; margin-bottom: 5px; }
.options [type=checkbox], .options [type=radio] { -webkit-appearance: none; position: relative; background-color: #fff; padding: 9px; border-radius: 3px; vertical-align: middle; }
.options [type=radio] { border-radius: 50%; }
.options [type=checkbox]:active, .options [type=checkbox]:checked:active, .options [type=checkbox]:checked, .options [type=radio]:active, .options [type=radio]:checked:active, .options [type=radio]:checked { background-color: #fff; }
.options [type=checkbox]:checked:after, .options [type=radio]:checked:after { font-family: fontello; content: '\e832'; font-size: 13px; position: absolute; top: 2px; left: 2px; color: #ff9; }
.options [type=radio]:checked:after { content: ''; width: 14px; height: 14px; background-color: #ff9; border-radius: 50%; }


/*========== 10. Anchor Header Height & IE Fixes ========*/
/*   Media Queries   */
@media (min-width:950px) {a[name]:before {height: 150px; margin-top: -150px; display: block; content: ""; visibility: hidden;}}
@media (max-width:950px) {a[name]:before {height: 120px; margin-top: -120px; display: block; content: ""; visibility: hidden;}}
@media (max-width:590px) {a[name]:before {height: 90px; margin-top: -90px; display: block; content: ""; visibility: hidden;}}
/*   Firefox  Only */
@-moz-document url-prefix() {  }
/*   Safari  Only */
@media not all and (min-resolution:.001dpcm)
{ @supports (-webkit-appearance:none) {
  /*   */
}}
/*   IE Explorer  Only */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {  }


/*============== 11. Select2 ================*/
.select2-container{box-sizing:border-box;display:inline-block;margin:0;position:relative;vertical-align:middle}.select2-container .select2-selection--single{box-sizing:border-box;cursor:pointer;display:block;height:28px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--single .select2-selection__rendered{display:block;padding-left:8px;padding-right:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select2-container .select2-selection--single .select2-selection__clear{background-color:transparent;border:none;font-size:1em}.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered{padding-right:8px;padding-left:20px}.select2-container .select2-selection--multiple{box-sizing:border-box;cursor:pointer;display:block;min-height:32px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--multiple .select2-selection__rendered{display:inline;list-style:none;padding:0}.select2-container .select2-selection--multiple .select2-selection__clear{background-color:transparent;border:none;font-size:1em}.select2-container .select2-search--inline .select2-search__field{box-sizing:border-box;border:none;font-size:100%;margin-top:5px;margin-left:5px;padding:0;max-width:100%;resize:none;height:18px;vertical-align:bottom;font-family:sans-serif;overflow:hidden;word-break:keep-all}.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-dropdown{background-color:white;border:1px solid #aaa;border-radius:4px;box-sizing:border-box;display:block;position:absolute;left:-100000px;width:100%;z-index:1051}.select2-results{display:block}.select2-results__options{list-style:none;margin:0;padding:0}.select2-results__option{padding:6px;user-select:none;-webkit-user-select:none}.select2-results__option--selectable{cursor:pointer}.select2-container--open .select2-dropdown{left:0}.select2-container--open .select2-dropdown--above{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--open .select2-dropdown--below{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-search--dropdown{display:block;padding:4px}.select2-search--dropdown .select2-search__field{padding:4px;width:100%;box-sizing:border-box}.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-search--dropdown.select2-search--hide{display:none}.select2-close-mask{border:0;margin:0;padding:0;display:block;position:fixed;left:0;top:0;min-height:100%;min-width:100%;height:auto;width:auto;opacity:0;z-index:99;background-color:#fff;filter:alpha(opacity=0)}.select2-hidden-accessible{border:0 !important;clip:rect(0 0 0 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;height:1px !important;overflow:hidden !important;padding:0 !important;position:absolute !important;width:1px !important;white-space:nowrap !important}.select2-container--default .select2-selection--single{background-color:#fff;border:1px solid #aaa;border-radius:4px}.select2-container--default .select2-selection--single .select2-selection__rendered{color:#444;line-height:28px}.select2-container--default .select2-selection--single .select2-selection__clear{cursor:pointer;float:right;font-weight:bold;height:26px;margin-right:20px;padding-right:0px}.select2-container--default .select2-selection--single .select2-selection__placeholder{color:#999}.select2-container--default .select2-selection--single .select2-selection__arrow{height:26px;position:absolute;top:1px;right:1px;width:20px}.select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:#888 transparent transparent transparent;border-style:solid;border-width:5px 4px 0 4px;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear{float:left}.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow{left:1px;right:auto}.select2-container--default.select2-container--disabled .select2-selection--single{background-color:#eee;cursor:default}.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear{display:none}.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:transparent transparent #888 transparent;border-width:0 4px 5px 4px}.select2-container--default .select2-selection--multiple{background-color:white;border:1px solid #aaa;border-radius:4px;cursor:text;padding-bottom:5px;padding-right:5px;position:relative}.select2-container--default .select2-selection--multiple.select2-selection--clearable{padding-right:25px}.select2-container--default .select2-selection--multiple .select2-selection__clear{cursor:pointer;font-weight:bold;height:20px;margin-right:10px;margin-top:5px;position:absolute;right:0;padding:1px}.select2-container--default .select2-selection--multiple .select2-selection__choice{background-color:#e4e4e4;border:1px solid #aaa;border-radius:4px;box-sizing:border-box;display:inline-block;margin-left:5px;margin-top:5px;padding:0;padding-left:20px;position:relative;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;white-space:nowrap}.select2-container--default .select2-selection--multiple .select2-selection__choice__display{cursor:default;padding-left:2px;padding-right:5px}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{background-color:transparent;border:none;border-right:1px solid #aaa;border-top-left-radius:4px;border-bottom-left-radius:4px;color:#999;cursor:pointer;font-size:1em;font-weight:bold;padding:0 4px;position:absolute;left:0;top:0}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover,.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:focus{background-color:#f1f1f1;color:#333;outline:none}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice{margin-left:5px;margin-right:auto}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__display{padding-left:5px;padding-right:2px}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove{border-left:1px solid #aaa;border-right:none;border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:4px;border-bottom-right-radius:4px}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__clear{float:left;margin-left:10px;margin-right:auto}.select2-container--default.select2-container--focus .select2-selection--multiple{border:solid black 1px;outline:0}.select2-container--default.select2-container--disabled .select2-selection--multiple{background-color:#eee;cursor:default}.select2-container--default.select2-container--disabled .select2-selection__choice__remove{display:none}.select2-container--default.select2-container--open.select2-container--above .select2-selection--single,.select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple{border-top-left-radius:0;border-top-right-radius:0}.select2-container--default.select2-container--open.select2-container--below .select2-selection--single,.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple{border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--default .select2-search--dropdown .select2-search__field{border:1px solid #aaa}.select2-container--default .select2-search--inline .select2-search__field{background:transparent;border:none;outline:0;box-shadow:none;-webkit-appearance:textfield}.select2-container--default .select2-results>.select2-results__options{max-height:200px;overflow-y:auto}.select2-container--default .select2-results__option .select2-results__option{padding-left:1em}.select2-container--default .select2-results__option .select2-results__option .select2-results__group{padding-left:0}.select2-container--default .select2-results__option .select2-results__option .select2-results__option{margin-left:-1em;padding-left:2em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-2em;padding-left:3em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-3em;padding-left:4em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-4em;padding-left:5em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-5em;padding-left:6em}.select2-container--default .select2-results__option--group{padding:0}.select2-container--default .select2-results__option--disabled{color:#999}.select2-container--default .select2-results__option--selected{background-color:#ddd}.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background-color:#5897fb;color:white}.select2-container--default .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--classic .select2-selection--single{background-color:#f7f7f7;border:1px solid #aaa;border-radius:4px;outline:0;background-image:-webkit-linear-gradient(top, #fff 50%, #eee 100%);background-image:-o-linear-gradient(top, #fff 50%, #eee 100%);background-image:linear-gradient(to bottom, #fff 50%, #eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0)}.select2-container--classic .select2-selection--single:focus{border:1px solid #5897fb}.select2-container--classic .select2-selection--single .select2-selection__rendered{color:#444;line-height:28px}.select2-container--classic .select2-selection--single .select2-selection__clear{cursor:pointer;float:right;font-weight:bold;height:26px;margin-right:20px}.select2-container--classic .select2-selection--single .select2-selection__placeholder{color:#999}.select2-container--classic .select2-selection--single .select2-selection__arrow{background-color:#ddd;border:none;border-left:1px solid #aaa;border-top-right-radius:4px;border-bottom-right-radius:4px;height:26px;position:absolute;top:1px;right:1px;width:20px;background-image:-webkit-linear-gradient(top, #eee 50%, #ccc 100%);background-image:-o-linear-gradient(top, #eee 50%, #ccc 100%);background-image:linear-gradient(to bottom, #eee 50%, #ccc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0)}.select2-container--classic .select2-selection--single .select2-selection__arrow b{border-color:#888 transparent transparent transparent;border-style:solid;border-width:5px 4px 0 4px;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear{float:left}.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow{border:none;border-right:1px solid #aaa;border-radius:0;border-top-left-radius:4px;border-bottom-left-radius:4px;left:1px;right:auto}.select2-container--classic.select2-container--open .select2-selection--single{border:1px solid #5897fb}.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow{background:transparent;border:none}.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:transparent transparent #888 transparent;border-width:0 4px 5px 4px}.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single{border-top:none;border-top-left-radius:0;border-top-right-radius:0;background-image:-webkit-linear-gradient(top, #fff 0%, #eee 50%);background-image:-o-linear-gradient(top, #fff 0%, #eee 50%);background-image:linear-gradient(to bottom, #fff 0%, #eee 50%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0)}.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0;background-image:-webkit-linear-gradient(top, #eee 50%, #fff 100%);background-image:-o-linear-gradient(top, #eee 50%, #fff 100%);background-image:linear-gradient(to bottom, #eee 50%, #fff 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0)}.select2-container--classic .select2-selection--multiple{background-color:white;border:1px solid #aaa;border-radius:4px;cursor:text;outline:0;padding-bottom:5px;padding-right:5px}.select2-container--classic .select2-selection--multiple:focus{border:1px solid #5897fb}.select2-container--classic .select2-selection--multiple .select2-selection__clear{display:none}.select2-container--classic .select2-selection--multiple .select2-selection__choice{background-color:#e4e4e4;border:1px solid #aaa;border-radius:4px;display:inline-block;margin-left:5px;margin-top:5px;padding:0}.select2-container--classic .select2-selection--multiple .select2-selection__choice__display{cursor:default;padding-left:2px;padding-right:5px}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove{background-color:transparent;border:none;border-top-left-radius:4px;border-bottom-left-radius:4px;color:#888;cursor:pointer;font-size:1em;font-weight:bold;padding:0 4px}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover{color:#555;outline:none}.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice{margin-left:5px;margin-right:auto}.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__display{padding-left:5px;padding-right:2px}.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove{border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:4px;border-bottom-right-radius:4px}.select2-container--classic.select2-container--open .select2-selection--multiple{border:1px solid #5897fb}.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--classic .select2-search--dropdown .select2-search__field{border:1px solid #aaa;outline:0}.select2-container--classic .select2-search--inline .select2-search__field{outline:0;box-shadow:none}.select2-container--classic .select2-dropdown{background-color:#fff;border:1px solid transparent}.select2-container--classic .select2-dropdown--above{border-bottom:none}.select2-container--classic .select2-dropdown--below{border-top:none}.select2-container--classic .select2-results>.select2-results__options{max-height:200px;overflow-y:auto}.select2-container--classic .select2-results__option--group{padding:0}.select2-container--classic .select2-results__option--disabled{color:grey}.select2-container--classic .select2-results__option--highlighted.select2-results__option--selectable{background-color:#3875d7;color:#fff}.select2-container--classic .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--classic.select2-container--open .select2-dropdown{border-color:#5897fb}
/*============== 12. Miscelaneous================*/
/* ---------------- Insurance Checker ---------------- */
.block #insure-form { margin: 10px auto; }
#insure-form { z-index: 5; position: relative; max-width: 800px; margin: 50px auto; background-color: #000; padding: 60px 40px; text-align: center; }
#insure-form .h2 { line-height: 1.2; margin: 10px auto 30px; }
#insure-form .h1 small, #insure-form .h2, #insure-form p, #insure-form .group label { color: #fff; }
#insure-form input, #insure-form select { display: table; width: 100%; margin: 10px auto; height: 50px; padding: 5px; border: none; border-bottom: 1px solid #fff; background-color: transparent; color: #fff; }
#insure-form::-webkit-input-placeholder { color: #fff; }
#insure-form:-ms-input-placeholder { color: #fff; }
#insure-form::placeholder { color: #fff; }
#insure-form .select2-container { width: 100% !important; max-width: 620px; }
#insure-form .select2-container--default .select2-selection--single { background-color: transparent; color: #fff; border-radius: 0; border: none; border-bottom: 1px solid #fff; outline: none; }
#insure-form .select2-container--default .select2-selection--single .select2-selection__rendered { color: #fff; text-align: left; }
#insure-form .select2-container--default .select2-selection--single .select2-selection__arrow b { border-color: #fff transparent transparent transparent; }
#insure-form .select2-container .select2-selection--single { height: 36px; }
#insure-form button#submit { border: 1px solid #fff; padding: 20px; border-radius: 30px; text-transform: uppercase; min-width: 250px; margin: 20px auto; background-color: transparent; color: #fff; }
#insure-form button#submit:hover { background-color: #ff9; color: #000; }
#in, #out { display: none; }
.insure-modal { background-color: #000; }
.insure-modal p { margin: 20px auto; max-width: 600px; }
.insure-modal .btn { margin: 20px auto 10px; }
.open-in { position: absolute; top: 0; left: 50%; width: 98%; transform: translateX(-50%); display: flex !important; flex-direction: column; justify-content: center; align-items: center; height: 100%; transition: 3s all; }
.close-ins { background-color: transparent; border: 2px solid #fff; border-radius: 50%; color: #fff; font-size: 30px; position: absolute; top: 0; right: 0; z-index: 3; flex: 0 0 40px; width: 40px; height: 40px; background-color: black; top: -20px; right: -20px; display: flex; justify-content: center; align-items: center; cursor: pointer; }
.close-ins span { transform: rotate(45deg); padding: 0 0 4px 2px; }
.close-ins:before { content: "Try another insurance"; font-size: 12px; position: absolute; left: -130px; color: #333; top: 0; opacity: 0.35; }
.close-ins:hover { background-color: #ff9; }
.close-ins:hover:before { opacity: 1; }
.yep { width: 80px; height: 80px; border: 2px solid #fff; border-radius: 50%; color: #fff; font-size: 42px; display: flex; justify-content: center; align-items: center; margin: 10px auto; }
.yep i { margin-top: 5px; }

/* ---------------- Appointment Form ---------------- */
#appt-form { display: none; padding: 40px 10px; text-align: left; max-width: 800px; margin: 10px auto; }
#appt-form h2, #appt-form h3 { text-align: center; margin: 20px auto 50px; }
#appt-form .flex-row-input { display: flex; justify-content: space-around; align-items: flex-start; }
#appt-form .flex-row-input article { flex: 1; margin: 10px; }
#appt-form .options { color: #333; margin: 0 10px 0; }
#appt-form .options label { display: block; font-size: 18px; position: relative; margin-bottom: 10px; text-align: left; }
#appt-form .flex-checks { display: flex; flex-wrap: wrap; }
#appt-form .flex-checks span { flex: 0 1 30%; margin: 10px 5px 10px 0; display: flex; align-items: center; font-size: 16px; }
#appt-form .flex-checks span [type=checkbox], #appt-form .flex-checks span [type=radio] { margin-right: 8px; }
#appt-form button.btn { display: table; margin: 20px auto !important; }
#appt-form::-webkit-input-placeholder { color: #333; }
#appt-form:-moz-placeholder { color: #333; }
#appt-form::-moz-placeholder { color: #333; }
#appt-form:-ms-input-placeholder { color: #333; }
#appt-form .input-content, #appt-form .styled-form .inline label, #appt-form .styled-form .inline, #appt-form .input--filled .input__label .input__label-content strong, #appt-form .input--filled .input__label .input__label-content a { color: #333; }
#appt-form .input-content { position: relative; z-index: 1; border-bottom: 1px solid #000; display: block; width: 100%; min-height: 65px; background: none; }
#appt-form .input-content.txt { height: 150px; }
#appt-form .input-content textarea { padding: 5px; display: block; width: 100%; height: 130px; display: table; font-family: "Lato", sans-serif; }
#appt-form .input__field { position: absolute; z-index: 2; display: block; border: none; border-radius: 0; padding: 0 10px; margin-top: 20px; height: 40px; width: 100%; background: transparent; color: #333; }
#appt-form .input__label { display: inline-block; padding: 0; width: 100%; height: 100%; position: absolute; background: transparent; text-align: left; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -webkit-touch-callout: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
#appt-form .input__label::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0 solid transparent; -webkit-transition: border-width 0.3s, border-color 0.3s; transition: border-width 0.3s, border-color 0.3s; }
#appt-form .input__label-content { position: relative; display: block; width: 100%; padding: 40px 10px 10px; text-rendering: geometricPrecision; transform-origin: 0% 50%; transition: color 0.3s, -webkit-transform 0.3s; transition: transform 0.3s, color 0.3s; transition: transform 0.3s, color 0.3s; color: #333; }
#appt-form .input__field:focus + .input__label .input__label-content, #appt-form .input--filled .input__label .input__label-content { color: #333; -webkit-transform: translate3d(0, -0.8em, 0); transform: translate3d(0, -0.8em, 0); padding: 15px 5px 5px; font-size: 0.75em; }
#appt-form input:-webkit-autofill, #appt-form textarea:-webkit-autofill, #appt-form select:-webkit-autofill { background-color: transparent !important; }
.options [type=checkbox], .options [type=radio] { -webkit-appearance: none; position: relative; border-radius: 3px; vertical-align: middle; height: 25px; width: 25px; border: 1px solid #333; }
.options [type=radio] { border-radius: 50%; }
.options [type=checkbox]:active, .options [type=checkbox]:checked:active, .options [type=checkbox]:checked, .options [type=radio]:active, .options [type=radio]:checked:active, .options [type=radio]:checked { background-color: #fff; border: 1px solid #000; }
.options [type=checkbox]:checked:after, .options [type=radio]:checked:after { font-family: fontello; content: '\e832'; font-size: 13px; position: absolute; top: 4px; left: 4px; color: #000; }
.options [type=radio]:checked:after { content: ""; width: 14px; height: 14px; background-color: #000; border-radius: 50%; }
.dwn { position: relative; }
.dwn:after { position: absolute; content: '\e935'; font-family: fontello; font-size: 1.2em; line-height: 1.5; color: #000; bottom: 5px; right: 10px; z-index: 8; pointer-events: none; }
#other-int {display: none; margin: 10px auto; }

#int-list.oth {
  #other-int {display: block;}
}
.group { position: relative; margin-bottom: 20px; }
.group input, .group select, .group textarea { font-size: 18px; padding: 10px 10px 10px 5px; display: block; width: 100%; border: none; border-bottom: 1px solid #000; background: none; color: #333; height: 45px; -webkit-appearance: none; position: relative; }
.group select:after { position: absolute; right: 5px; top: 5px; content: '\e825'; font-family: fontello; z-index: 5; color: #fff; }
.group textarea { height: 160px; }
.group input:focus, .group textarea:focus, .group select:focus { outline: none; background-color: rgba(0, 0, 0, 0.03); }

/* BOTTOM BARS ================================= */
.bar { position: relative; display: block; max-width: 100%; position: absolute; bottom: -1px; left: 0; right: 0; }
.bar:before, .bar:after { content: ""; height: 2px; width: 0; bottom: 1px; position: absolute; background: #000; transition: 0.2s ease all; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all; }
.bar:before { left: 50%; }
.bar:after { right: 50%; }

/* active state */
input:focus ~ .bar:before, input:focus ~ .bar:after, textarea:focus ~ .bar:before, textarea:focus ~ .bar:after, select:focus ~ .bar:before, select:focus ~ .bar:after { width: 50%; }

/* HIGHLIGHTER ================================== */
.highlight { position: absolute; height: 60%; width: 100px; top: 25%; left: 0; pointer-events: none; opacity: 0.5; }

/* active state */
input:focus ~ .highlight, textarea:focus ~ .highlight, select:focus ~ .highlight { -webkit-animation: inputHighlighter 0.3s ease; -moz-animation: inputHighlighter 0.3s ease; animation: inputHighlighter 0.3s ease; }

/* ANIMATIONS ================ */
@-webkit-keyframes inputHighlighter {
  from { background: #000; }
  to { width: 0; background: transparent; }
}
@-moz-keyframes inputHighlighter {
  from { background: #000; }
  to { width: 0; background: transparent; }
}
@keyframes inputHighlighter {
  from { background: #000; }
  to { width: 0; background: transparent; }
}
#insure-help { text-align: center; margin: 60px auto; }
#no-insure .h2, #no-insure h3 { text-align: center; }
/* ---------------- Media Queries ---------------- */
@media(max-width:1000px) {
  #plan { flex-flow: wrap; justify-content: space-around; 
     > * { margin-bottom:20px; flex: 0 1 350px; }
  }
    
}

@media(max-width:750px) {
  #appt-form .flex-row-input {display: block;}
  #appt-form .options {margin: 10px auto 20px;}

}

@media(max-width:480px) {
  #appt-form {padding: 40px 0;
    .flex-row-input article {margin: 10px auto;}
    .flex-checks span {flex: 0 1 48%;}
  }

}
@media(max-width:400px) {
  .group input, .group select, .group textarea {font-size: 16px}
}


/*============== 13. Tailwind ================*/.border{border-width:1px}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.table{display:table}.hidden{display:none}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.clearfix:after{content:"";display:table;clear:both}.h-1{height:.25rem}.my-16{margin-top:4rem;margin-bottom:4rem}.mx-auto{margin-left:auto;margin-right:auto}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.resize{resize:both}.text-center{text-align:center}.text-white{color:#fff}.visible{visibility:visible}.transform{--transform-translate-x:0;--transform-translate-y:0;--transform-rotate:0;--transform-skew-x:0;--transform-skew-y:0;--transform-scale-x:1;--transform-scale-y:1;transform:translateX(var(--transform-translate-x)) translateY(var(--transform-translate-y)) rotate(var(--transform-rotate)) skewX(var(--transform-skew-x)) skewY(var(--transform-skew-y)) scaleX(var(--transform-scale-x)) scaleY(var(--transform-scale-y))}.transition{transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform}@media (min-width:768px){.md\:flex{display:flex}}@media (min-width:1024px){.lg\:block{display:block}}

/*============= Last. Animations ================*/
/*!
 * Animate.css -http://daneden.me/animate
 * Version - 3.4.0
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2015 Daniel Eden
 */
.animated { -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-fill-mode: both; animation-fill-mode: both; }
.animated.infinite { -webkit-animation-iteration-count: infinite; animation-iteration-count: infinite; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes pulse {
  from { -webkit-transform: scale3d(1, 1, 1); transform: scale3d(1, 1, 1); }
  to { -webkit-transform: scale3d(1, 1, 1); transform: scale3d(1, 1, 1); }
}
@keyframes pulse {
  from { -webkit-transform: scale3d(1, 1, 1); transform: scale3d(1, 1, 1); }
  50% { -webkit-transform: scale3d(1.05, 1.05, 1.05); transform: scale3d(1.05, 1.05, 1.05); }
  to { -webkit-transform: scale3d(1, 1, 1); transform: scale3d(1, 1, 1); }
}
@-webkit-keyframes bounceInDown {
  from, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); }
  to { -webkit-transform: none; transform: none; }
}
@keyframes bounceInDown {
  from, 60%, 75%, 90%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); }
  0% { opacity: 0; -webkit-transform: translate3d(0, -3000px, 0); transform: translate3d(0, -3000px, 0); }
  60% { opacity: 1; -webkit-transform: translate3d(0, 25px, 0); transform: translate3d(0, 25px, 0); }
  75% { -webkit-transform: translate3d(0, -10px, 0); transform: translate3d(0, -10px, 0); }
  90% { -webkit-transform: translate3d(0, 5px, 0); transform: translate3d(0, 5px, 0); }
  to { -webkit-transform: none; transform: none; }
}
@-webkit-keyframes bounceInLeft {
  from, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); }
  to { -webkit-transform: none; transform: none; }
}
@keyframes bounceInLeft {
  from, 60%, 75%, 90%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); }
  0% { opacity: 0; -webkit-transform: translate3d(-3000px, 0, 0); transform: translate3d(-3000px, 0, 0); }
  60% { opacity: 1; -webkit-transform: translate3d(25px, 0, 0); transform: translate3d(25px, 0, 0); }
  75% { -webkit-transform: translate3d(-10px, 0, 0); transform: translate3d(-10px, 0, 0); }
  90% { -webkit-transform: translate3d(5px, 0, 0); transform: translate3d(5px, 0, 0); }
  to { -webkit-transform: none; transform: none; }
}
@-webkit-keyframes bounceInRight {
  from, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); }
  from { opacity: 0; -webkit-transform: translate3d(3000px, 0, 0); transform: translate3d(3000px, 0, 0); }
  to { -webkit-transform: none; transform: none; }
}
@keyframes bounceInRight {
  from, 60%, 75%, 90%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); }
  from { opacity: 0; -webkit-transform: translate3d(3000px, 0, 0); transform: translate3d(3000px, 0, 0); }
  60% { opacity: 1; -webkit-transform: translate3d(-25px, 0, 0); transform: translate3d(-25px, 0, 0); }
  75% { -webkit-transform: translate3d(10px, 0, 0); transform: translate3d(10px, 0, 0); }
  90% { -webkit-transform: translate3d(-5px, 0, 0); transform: translate3d(-5px, 0, 0); }
  to { -webkit-transform: none; transform: none; }
}
@-webkit-keyframes bounceInUp {
  from, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); }
  from { opacity: 0; -webkit-transform: translate3d(0, 3000px, 0); transform: translate3d(0, 3000px, 0); }
  to { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
}
@keyframes bounceInUp {
  from, 60%, 75%, 90%, to { -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); }
  from { opacity: 0; -webkit-transform: translate3d(0, 3000px, 0); transform: translate3d(0, 3000px, 0); }
  60% { opacity: 1; -webkit-transform: translate3d(0, -20px, 0); transform: translate3d(0, -20px, 0); }
  75% { -webkit-transform: translate3d(0, 10px, 0); transform: translate3d(0, 10px, 0); }
  90% { -webkit-transform: translate3d(0, -5px, 0); transform: translate3d(0, -5px, 0); }
  to { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
}
@-webkit-keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
.fadeIn { -webkit-animation-name: fadeIn; animation-name: fadeIn; }
@-webkit-keyframes fadeInDown {
  from { opacity: 0; -webkit-transform: translate3d(0, -100%, 0); transform: translate3d(0, -100%, 0); }
  to { opacity: 1; -webkit-transform: none; transform: none; }
}
@keyframes fadeInDown {
  from { opacity: 0; -webkit-transform: translate3d(0, -100%, 0); transform: translate3d(0, -100%, 0); }
  to { opacity: 1; -webkit-transform: none; transform: none; }
}
@-webkit-keyframes fadeInLeft {
  from { opacity: 0; -webkit-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); }
  to { opacity: 1; -webkit-transform: none; transform: none; }
}
@keyframes fadeInLeft {
  from { opacity: 0; -webkit-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); }
  to { opacity: 1; -webkit-transform: none; transform: none; }
}
.fadeInLeft { -webkit-animation-name: fadeInLeft; animation-name: fadeInLeft; }
@-webkit-keyframes fadeInRight {
  from { opacity: 0; -webkit-transform: translate3d(100%, 0, 0); transform: translate3d(100%, 0, 0); }
  to { opacity: 1; -webkit-transform: none; transform: none; }
}
@keyframes fadeInRight {
  from { opacity: 0; -webkit-transform: translate3d(100%, 0, 0); transform: translate3d(100%, 0, 0); }
  to { opacity: 1; -webkit-transform: none; transform: none; }
}
.fadeInRight { -webkit-animation-name: fadeInRight; animation-name: fadeInRight; }
@-webkit-keyframes fadeInUp {
  from { opacity: 0; -webkit-transform: translate3d(0, 100%, 0); transform: translate3d(0, 100%, 0); }
  to { opacity: 1; -webkit-transform: none; transform: none; }
}
@keyframes fadeInUp {
  from { opacity: 0; -webkit-transform: translate3d(0, 100%, 0); transform: translate3d(0, 100%, 0); }
  to { opacity: 1; -webkit-transform: none; transform: none; }
}
.fadeInUp { -webkit-animation-name: fadeInUp; animation-name: fadeInUp; }
@-webkit-keyframes flipInX {
  from { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg); transform: perspective(400px) rotate3d(1, 0, 0, 90deg); -webkit-animation-timing-function: ease-in; animation-timing-function: ease-in; opacity: 0; }
  to { -webkit-transform: perspective(400px); transform: perspective(400px); }
}
@keyframes flipInX {
  from { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg); transform: perspective(400px) rotate3d(1, 0, 0, 90deg); -webkit-animation-timing-function: ease-in; animation-timing-function: ease-in; opacity: 0; }
  40% { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg); transform: perspective(400px) rotate3d(1, 0, 0, -20deg); -webkit-animation-timing-function: ease-in; animation-timing-function: ease-in; }
  60% { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg); transform: perspective(400px) rotate3d(1, 0, 0, 10deg); opacity: 1; }
  80% { -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg); transform: perspective(400px) rotate3d(1, 0, 0, -5deg); }
  to { -webkit-transform: perspective(400px); transform: perspective(400px); }
}
@-webkit-keyframes rotateIn {
  from { -webkit-transform-origin: center; transform-origin: center; -webkit-transform: rotate3d(0, 0, 1, -200deg); transform: rotate3d(0, 0, 1, -200deg); opacity: 0; }
  to { -webkit-transform-origin: center; transform-origin: center; -webkit-transform: none; transform: none; opacity: 1; }
}
@keyframes rotateIn {
  from { -webkit-transform-origin: center; transform-origin: center; -webkit-transform: rotate3d(0, 0, 1, -200deg); transform: rotate3d(0, 0, 1, -200deg); opacity: 0; }
  to { -webkit-transform-origin: center; transform-origin: center; -webkit-transform: none; transform: none; opacity: 1; }
}
@-webkit-keyframes rotateInDownLeft {
  from { -webkit-transform-origin: left bottom; transform-origin: left bottom; -webkit-transform: rotate3d(0, 0, 1, -45deg); transform: rotate3d(0, 0, 1, -45deg); opacity: 0; }
  to { -webkit-transform-origin: left bottom; transform-origin: left bottom; -webkit-transform: none; transform: none; opacity: 1; }
}
@-webkit-keyframes slideInDown {
  from { -webkit-transform: translate3d(0, -100%, 0); transform: translate3d(0, -100%, 0); visibility: visible; }
  to { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
}
@keyframes slideInDown {
  from { -webkit-transform: translate3d(0, -100%, 0); transform: translate3d(0, -100%, 0); visibility: visible; }
  to { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
}
.slideInDown { -webkit-animation-name: slideInDown; animation-name: slideInDown; }
@-webkit-keyframes slideInLeft {
  from { -webkit-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); visibility: visible; }
  to { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
}
@keyframes slideInLeft {
  from { -webkit-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); visibility: visible; }
  to { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
}
@-webkit-keyframes slideInRight {
  from { -webkit-transform: translate3d(100%, 0, 0); transform: translate3d(100%, 0, 0); visibility: visible; }
  to { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
}
@keyframes slideInRight {
  from { -webkit-transform: translate3d(100%, 0, 0); transform: translate3d(100%, 0, 0); visibility: visible; }
  to { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
}
@-webkit-keyframes slideInUp {
  from { -webkit-transform: translate3d(0, 100%, 0); transform: translate3d(0, 100%, 0); visibility: visible; }
  to { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
}
@keyframes slideInUp {
  from { -webkit-transform: translate3d(0, 100%, 0); transform: translate3d(0, 100%, 0); visibility: visible; }
  to { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
}
@-webkit-keyframes slideOutDown {
  from { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
  to { visibility: hidden; -webkit-transform: translate3d(0, 100%, 0); transform: translate3d(0, 100%, 0); }
}
