Created
November 22, 2015 18:52
-
-
Save scrooloose/b6f6c37192ba8e7817b7 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ | |
/** | |
* 1. Set default font family to sans-serif. | |
* 2. Prevent iOS and IE text size adjust after device orientation change, | |
* without disabling user zoom. | |
*/ | |
html { | |
font-family: sans-serif; /* 1 */ | |
-ms-text-size-adjust: 100%; /* 2 */ | |
-webkit-text-size-adjust: 100%; /* 2 */ | |
} | |
/** | |
* Remove default margin. | |
*/ | |
body { | |
margin: 0; | |
} | |
/* HTML5 display definitions | |
========================================================================== */ | |
/** | |
* Correct `block` display not defined for any HTML5 element in IE 8/9. | |
* Correct `block` display not defined for `details` or `summary` in IE 10/11 | |
* and Firefox. | |
* Correct `block` display not defined for `main` in IE 11. | |
*/ | |
article, | |
aside, | |
details, | |
figcaption, | |
figure, | |
footer, | |
header, | |
hgroup, | |
main, | |
menu, | |
nav, | |
section, | |
summary { | |
display: block; | |
} | |
/** | |
* 1. Correct `inline-block` display not defined in IE 8/9. | |
* 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. | |
*/ | |
audio, | |
canvas, | |
progress, | |
video { | |
display: inline-block; /* 1 */ | |
vertical-align: baseline; /* 2 */ | |
} | |
/** | |
* Prevent modern browsers from displaying `audio` without controls. | |
* Remove excess height in iOS 5 devices. | |
*/ | |
audio:not([controls]) { | |
display: none; | |
height: 0; | |
} | |
/** | |
* Address `[hidden]` styling not present in IE 8/9/10. | |
* Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22. | |
*/ | |
[hidden], | |
template { | |
display: none; | |
} | |
/* Links | |
========================================================================== */ | |
/** | |
* Remove the gray background color from active links in IE 10. | |
*/ | |
a { | |
background-color: transparent; | |
} | |
/** | |
* Improve readability of focused elements when they are also in an | |
* active/hover state. | |
*/ | |
a:active, | |
a:hover { | |
outline: 0; | |
} | |
/* Text-level semantics | |
========================================================================== */ | |
/** | |
* Address styling not present in IE 8/9/10/11, Safari, and Chrome. | |
*/ | |
abbr[title] { | |
border-bottom: 1px dotted; | |
} | |
/** | |
* Address style set to `bolder` in Firefox 4+, Safari, and Chrome. | |
*/ | |
b, | |
strong { | |
font-weight: bold; | |
} | |
/** | |
* Address styling not present in Safari and Chrome. | |
*/ | |
dfn { | |
font-style: italic; | |
} | |
/** | |
* Address variable `h1` font-size and margin within `section` and `article` | |
* contexts in Firefox 4+, Safari, and Chrome. | |
*/ | |
h1 { | |
font-size: 2em; | |
margin: .67em 0; | |
} | |
/** | |
* Address styling not present in IE 8/9. | |
*/ | |
mark { | |
background: #ff0; | |
color: #000; | |
} | |
/** | |
* Address inconsistent and variable font size in all browsers. | |
*/ | |
small { | |
font-size: 80%; | |
} | |
/** | |
* Prevent `sub` and `sup` affecting `line-height` in all browsers. | |
*/ | |
sub, | |
sup { | |
font-size: 75%; | |
line-height: 0; | |
position: relative; | |
vertical-align: baseline; | |
} | |
sup { | |
top: -.5em; | |
} | |
sub { | |
bottom: -.25em; | |
} | |
/* Embedded content | |
========================================================================== */ | |
/** | |
* Remove border when inside `a` element in IE 8/9/10. | |
*/ | |
img { | |
border: 0; | |
} | |
/** | |
* Correct overflow not hidden in IE 9/10/11. | |
*/ | |
svg:not(:root) { | |
overflow: hidden; | |
} | |
/* Grouping content | |
========================================================================== */ | |
/** | |
* Address margin not present in IE 8/9 and Safari. | |
*/ | |
figure { | |
margin: 1em 40px; | |
} | |
/** | |
* Address differences between Firefox and other browsers. | |
*/ | |
hr { | |
box-sizing: content-box; | |
height: 0; | |
} | |
/** | |
* Contain overflow in all browsers. | |
*/ | |
pre { | |
overflow: auto; | |
} | |
/** | |
* Address odd `em`-unit font size rendering in all browsers. | |
*/ | |
code, | |
kbd, | |
pre, | |
samp { | |
font-family: monospace, monospace; | |
font-size: 1em; | |
} | |
/* Forms | |
========================================================================== */ | |
/** | |
* Known limitation: by default, Chrome and Safari on OS X allow very limited | |
* styling of `select`, unless a `border` property is set. | |
*/ | |
/** | |
* 1. Correct color not being inherited. | |
* Known issue: affects color of disabled elements. | |
* 2. Correct font properties not being inherited. | |
* 3. Address margins set differently in Firefox 4+, Safari, and Chrome. | |
*/ | |
button, | |
input, | |
optgroup, | |
select, | |
textarea { | |
color: inherit; /* 1 */ | |
font: inherit; /* 2 */ | |
margin: 0; /* 3 */ | |
} | |
/** | |
* Address `overflow` set to `hidden` in IE 8/9/10/11. | |
*/ | |
button { | |
overflow: visible; | |
} | |
/** | |
* Address inconsistent `text-transform` inheritance for `button` and `select`. | |
* All other form control elements do not inherit `text-transform` values. | |
* Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. | |
* Correct `select` style inheritance in Firefox. | |
*/ | |
button, | |
select { | |
text-transform: none; | |
} | |
/** | |
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` | |
* and `video` controls. | |
* 2. Correct inability to style clickable `input` types in iOS. | |
* 3. Improve usability and consistency of cursor style between image-type | |
* `input` and others. | |
*/ | |
button, | |
html input[type="button"], | |
input[type="reset"], | |
input[type="submit"] { | |
-webkit-appearance: button; /* 2 */ | |
cursor: pointer; /* 3 */ | |
} | |
/** | |
* Re-set default cursor for disabled elements. | |
*/ | |
button[disabled], | |
html input[disabled] { | |
cursor: default; | |
} | |
/** | |
* Remove inner padding and border in Firefox 4+. | |
*/ | |
button::-moz-focus-inner, | |
input::-moz-focus-inner { | |
border: 0; | |
padding: 0; | |
} | |
/** | |
* Address Firefox 4+ setting `line-height` on `input` using `!important` in | |
* the UA stylesheet. | |
*/ | |
input { | |
line-height: normal; | |
} | |
/** | |
* It's recommended that you don't attempt to style these elements. | |
* Firefox's implementation doesn't respect box-sizing, padding, or width. | |
* | |
* 1. Address box sizing set to `content-box` in IE 8/9/10. | |
* 2. Remove excess padding in IE 8/9/10. | |
*/ | |
input[type="checkbox"], | |
input[type="radio"] { | |
box-sizing: border-box; /* 1 */ | |
padding: 0; /* 2 */ | |
} | |
/** | |
* Fix the cursor style for Chrome's increment/decrement buttons. For certain | |
* `font-size` values of the `input`, it causes the cursor style of the | |
* decrement button to change from `default` to `text`. | |
*/ | |
input[type="number"]::-webkit-inner-spin-button, | |
input[type="number"]::-webkit-outer-spin-button { | |
height: auto; | |
} | |
/** | |
* 1. Address `appearance` set to `searchfield` in Safari and Chrome. | |
* 2. Address `box-sizing` set to `border-box` in Safari and Chrome. | |
*/ | |
input[type="search"] { | |
-webkit-appearance: textfield; /* 1 */ | |
box-sizing: content-box; /* 2 */ | |
} | |
/** | |
* Remove inner padding and search cancel button in Safari and Chrome on OS X. | |
* Safari (but not Chrome) clips the cancel button when the search input has | |
* padding (and `textfield` appearance). | |
*/ | |
input[type="search"]::-webkit-search-cancel-button, | |
input[type="search"]::-webkit-search-decoration { | |
-webkit-appearance: none; | |
} | |
/** | |
* Define consistent border, margin, and padding. | |
*/ | |
fieldset { | |
border: 1px solid #c0c0c0; | |
margin: 0 2px; | |
padding: .35em .625em .75em; | |
} | |
/** | |
* 1. Correct `color` not being inherited in IE 8/9/10/11. | |
* 2. Remove padding so people aren't caught out if they zero out fieldsets. | |
*/ | |
legend { | |
border: 0; /* 1 */ | |
padding: 0; /* 2 */ | |
} | |
/** | |
* Remove default vertical scrollbar in IE 8/9/10/11. | |
*/ | |
textarea { | |
overflow: auto; | |
} | |
/** | |
* Don't inherit the `font-weight` (applied by a rule above). | |
* NOTE: the default cannot safely be changed in Chrome and Safari on OS X. | |
*/ | |
optgroup { | |
font-weight: bold; | |
} | |
/* Tables | |
========================================================================== */ | |
/** | |
* Remove most spacing between table cells. | |
*/ | |
table { | |
border-collapse: collapse; | |
border-spacing: 0; | |
} | |
td, | |
th { | |
padding: 0; | |
} | |
.three-col .col .contact-list, | |
.social-networks, | |
.nav { | |
margin: 0; | |
padding: 0; | |
list-style: none; | |
} | |
.clearfix:after { | |
content: ""; | |
display: block; | |
clear: both; | |
} | |
.ellipsis { | |
white-space: nowrap; /* 1 */ | |
text-overflow: ellipsis; /* 2 */ | |
overflow: hidden; | |
} | |
html { | |
box-sizing: border-box; | |
} | |
*, | |
*:before, | |
*:after { | |
box-sizing: inherit; | |
} | |
* { | |
max-height: 1000000px; | |
} | |
body { | |
color: #1b307e; | |
background: #fff; | |
font: 14px / 1.2 "Source Sans Pro", "Arial", "Helvetica Neue", "Helvetica", sans-serif; | |
min-width: 320px; | |
-webkit-font-smoothing: antialiased; | |
-moz-osx-font-smoothing: grayscale; | |
} | |
img { | |
max-width: 100%; | |
height: auto; | |
} | |
.gm-style img { | |
max-width: none; | |
} | |
h1, | |
.h1, | |
h2, | |
.h2, | |
h3, | |
.h3, | |
h4, | |
.h4, | |
h5, | |
.h5, | |
h6, | |
.h6, | |
.h { | |
font-family: inherit; | |
font-weight: bold; | |
margin: 0 0 .5em; | |
color: inherit; | |
} | |
h1, | |
.h1 { | |
font-size: 30px; | |
} | |
h2, | |
.h2 { | |
font-size: 27px; | |
} | |
h3, | |
.h3 { | |
font-size: 24px; | |
} | |
h4, | |
.h4 { | |
font-size: 21px; | |
} | |
h5, | |
.h5 { | |
font-size: 17px; | |
} | |
h6, | |
.h6 { | |
font-size: 15px; | |
} | |
p { | |
margin: 0 0 1em; | |
} | |
a { | |
color: #39f; | |
} | |
a:hover, | |
a:focus { | |
text-decoration: none; | |
} | |
form, | |
fieldset { | |
margin: 0; | |
padding: 0; | |
border-style: none; | |
} | |
input[type="text"], | |
input[type="tel"], | |
input[type="email"], | |
input[type="search"], | |
input[type="password"], | |
textarea { | |
-webkit-appearance: none; | |
-webkit-border-radius: 0; | |
border: 1px solid #999; | |
padding: .4em .7em; | |
} | |
input[type="text"]:focus, | |
input[type="tel"]:focus, | |
input[type="email"]:focus, | |
input[type="search"]:focus, | |
input[type="password"]:focus, | |
textarea:focus { | |
border-color: #333; | |
} | |
input[type="text"]::-webkit-input-placeholder, | |
input[type="tel"]::-webkit-input-placeholder, | |
input[type="email"]::-webkit-input-placeholder, | |
input[type="search"]::-webkit-input-placeholder, | |
input[type="password"]::-webkit-input-placeholder, | |
textarea::-webkit-input-placeholder { | |
color: #999; | |
} | |
input[type="text"]::-moz-placeholder, | |
input[type="tel"]::-moz-placeholder, | |
input[type="email"]::-moz-placeholder, | |
input[type="search"]::-moz-placeholder, | |
input[type="password"]::-moz-placeholder, | |
textarea::-moz-placeholder { | |
opacity: 1; | |
color: #999; | |
} | |
input[type="text"]:-moz-placeholder, | |
input[type="tel"]:-moz-placeholder, | |
input[type="email"]:-moz-placeholder, | |
input[type="search"]:-moz-placeholder, | |
input[type="password"]:-moz-placeholder, | |
textarea:-moz-placeholder { | |
color: #999; | |
} | |
input[type="text"]:-ms-input-placeholder, | |
input[type="tel"]:-ms-input-placeholder, | |
input[type="email"]:-ms-input-placeholder, | |
input[type="search"]:-ms-input-placeholder, | |
input[type="password"]:-ms-input-placeholder, | |
textarea:-ms-input-placeholder { | |
color: #999; | |
} | |
input[type="text"].placeholder, | |
input[type="tel"].placeholder, | |
input[type="email"].placeholder, | |
input[type="search"].placeholder, | |
input[type="password"].placeholder, | |
textarea.placeholder { | |
color: #999; | |
} | |
select { | |
-webkit-border-radius: 0; | |
} | |
textarea { | |
resize: vertical; | |
vertical-align: top; | |
} | |
button, | |
input[type="button"], | |
input[type="reset"], | |
input[type="file"], | |
input[type="submit"] { | |
-webkit-appearance: none; | |
-webkit-border-radius: 0; | |
cursor: pointer; | |
} | |
@font-face { | |
font-family: "icomoon"; | |
src: url("../fonts/icomoon.eot?2c54ro"); | |
src: url("../fonts/icomoon.eot?2c54ro#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf?2c54ro") format("truetype"), url("../fonts/icomoon.woff?2c54ro") format("woff"), url("../fonts/icomoon.svg?2c54ro#icomoon") format("svg"); | |
font-weight: normal; | |
font-style: normal; | |
} | |
[class^="icon-"], | |
[class*=" icon-"] { | |
font-family: "icomoon"; | |
speak: none; | |
font-style: normal; | |
font-weight: normal; | |
font-variant: normal; | |
text-transform: none; | |
line-height: 1; /* Better Font Rendering =========== */ | |
-webkit-font-smoothing: antialiased; | |
-moz-osx-font-smoothing: grayscale; | |
} | |
.icon-downarrow:before { | |
content: "\e900"; | |
} | |
.icon-facebook a:before { | |
content: "\e901"; | |
} | |
.icon-instagram a:before { | |
content: "\e902"; | |
} | |
.icon-left:before { | |
content: "\e903"; | |
} | |
.icon-right:before { | |
content: "\e904"; | |
} | |
.icon-twitter a:before { | |
content: "\e905"; | |
} | |
#wrapper { | |
overflow: hidden; | |
position: relative; | |
width: 100%; | |
} | |
#header { | |
padding: 136px 0 50px; | |
text-align: center; | |
} | |
.header { | |
height: 100%; | |
width: 100%; | |
white-space: nowrap; | |
position: relative; | |
z-index: 99; | |
min-height: 536px; | |
} | |
.header:after { | |
content: ""; | |
display: inline-block; | |
height: 100%; | |
width: 1px; | |
overflow: hidden; | |
margin: 0 0 0 -5px; | |
vertical-align: middle; | |
} | |
.header .frame { | |
display: inline-block; | |
vertical-align: middle; | |
white-space: normal; | |
} | |
.logo { | |
margin: 0 auto 57px; | |
width: 532px; | |
} | |
.logo img { | |
display: block; | |
} | |
.bottom-btn { | |
color: #105ea3; | |
text-decoration: none; | |
font-size: 58px; | |
position: relative; | |
top: 0; | |
-webkit-transition: top .7s, opacity .3s; | |
transition: top .7s, opacity .3s; | |
-webkit-animation-name: btn-anim; | |
animation-name: btn-anim; | |
-webkit-animation-duration: 1s; | |
animation-duration: 1s; | |
-webkit-animation-timing-function: ease-in-out; | |
animation-timing-function: ease-in-out; | |
-webkit-animation-iteration-count: infinite; | |
animation-iteration-count: infinite; | |
} | |
.bottom-btn:hover { | |
opacity: .8; | |
} | |
.top-block { | |
font-size: 35px; | |
line-height: 1.43; | |
width: 100%; | |
position: relative; | |
text-align: center; | |
color: #fff; | |
} | |
.top-block .description { | |
max-width: 880px; | |
margin: 0 auto; | |
display: block; | |
padding: 40px 20px 77px; | |
color: #fff; | |
display: inline-block; | |
vertical-align: bottom; | |
white-space: normal; | |
position: relative; | |
z-index: 99; | |
} | |
.top-block .text-holder { | |
position: relative; | |
height: 100%; | |
width: 100%; | |
white-space: nowrap; | |
} | |
.top-block .text-holder:after { | |
content: ""; | |
display: inline-block; | |
height: 100%; | |
width: 1px; | |
overflow: hidden; | |
margin: 0 0 0 -5px; | |
vertical-align: middle; | |
} | |
.top-block .bg-stretch { | |
position: absolute; | |
bottom: -350px; | |
left: 0; | |
} | |
.top-block .bg-stretch img { | |
width: 100%; | |
max-width: none; | |
vertical-align: top; | |
} | |
.carousel-holder { | |
vertical-align: middle; | |
display: inline-block; | |
white-space: normal; | |
width: 100%; | |
overflow: hidden; | |
} | |
.cycle-gallery { | |
position: relative; | |
overflow: hidden; | |
width: 100%; | |
margin: 0 auto; | |
} | |
.cycle-gallery .mask { | |
width: 100%; | |
position: relative; | |
overflow: hidden; | |
} | |
.cycle-gallery .mask .slideset { | |
width: 9999px; | |
float: left; | |
} | |
.cycle-gallery .mask .slideset .slide { | |
padding: 20px 0; | |
width: 100%; | |
float: left; | |
} | |
.cycle-gallery .mask .slideset .slide .image-hold { | |
padding: 0 20%; | |
} | |
.cycle-gallery .mask img { | |
max-width: none; | |
display: block; | |
width: 100%; | |
height: auto; | |
} | |
.cycle-gallery .btn-prev, | |
.cycle-gallery .btn-next { | |
position: absolute; | |
top: 50%; | |
margin: -25px 0 0; | |
left: 26px; | |
color: #fff; | |
font-size: 49px; | |
text-decoration: none; | |
-webkit-transition: opacity .3s; | |
transition: opacity .3s; | |
z-index: 99; | |
} | |
.cycle-gallery .btn-prev:hover, | |
.cycle-gallery .btn-next:hover { | |
opacity: .8; | |
} | |
.cycle-gallery .btn-next { | |
right: 26px; | |
left: auto; | |
} | |
.carousel .mask { | |
position: relative; | |
overflow: hidden; | |
} | |
.carousel .mask .slideset { | |
width: 99999px; | |
float: left; | |
} | |
.carousel .mask .slide { | |
text-align: center; | |
float: left; | |
padding: 0 100px; | |
} | |
.carousel .mask .slide img { | |
vertical-align: top; | |
} | |
.cycle-gallery .mask .slide.active { | |
z-index: 1; /*@include media("<widescreen"){ | |
img{ | |
width: 60%; | |
} | |
} | |
@include media("<tablet"){ | |
img{ | |
width: 50%; | |
} | |
} | |
@include media("<phone"){ | |
img{ | |
width: 70%; | |
} | |
} | |
*/ | |
} | |
.two-col { | |
background: url(../images/bg-02.jpg); | |
background-size: 100% auto; | |
font-size: 0; | |
line-height: 0; | |
position: relative; | |
z-index: 2; | |
} | |
.two-col .col { | |
background: rgba(255, 255, 255, .6); | |
width: 50%; | |
display: inline-block; | |
vertical-align: top; | |
font-size: 30px; | |
line-height: 1.17; | |
color: #1b307e; | |
font-weight: 600; | |
padding: 20px 0; /*height: 478px;*/ | |
text-align: center; | |
} | |
.two-col .col:first-child { | |
background: rgba(255, 255, 255, .32) url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzYxZDFkOSIgc3RvcC1vcGFjaXR5PSIwLjYiLz4KICAgIDxzdG9wIG9mZnNldD0iOCUiIHN0b3AtY29sb3I9IiM1ZGNiZDYiIHN0b3Atb3BhY2l0eT0iMC42Ii8+CiAgICA8c3RvcCBvZmZzZXQ9IjIzJSIgc3RvcC1jb2xvcj0iIzUxYmFjZSIgc3RvcC1vcGFjaXR5PSIwLjYiLz4KICAgIDxzdG9wIG9mZnNldD0iNzUlIiBzdG9wLWNvbG9yPSIjMWE2Y2E5IiBzdG9wLW9wYWNpdHk9IjAuNiIvPgogICAgPHN0b3Agb2Zmc2V0PSI5MCUiIHN0b3AtY29sb3I9IiMwZTViYTEiIHN0b3Atb3BhY2l0eT0iMC42Ii8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwOTU0OWUiIHN0b3Atb3BhY2l0eT0iMC42Ii8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=); | |
background: -webkit-linear-gradient(top, rgba(97, 209, 217, .6) 0%, rgba(93, 203, 214, .6) 8%, rgba(81, 186, 206, .6) 23%, rgba(26, 108, 169, .6) 75%, rgba(14, 91, 161, .6) 90%, rgba(9, 84, 158, .6) 100%); | |
background: linear-gradient(to bottom, rgba(97, 209, 217, .6) 0%, rgba(93, 203, 214, .6) 8%, rgba(81, 186, 206, .6) 23%, rgba(26, 108, 169, .6) 75%, rgba(14, 91, 161, .6) 90%, rgba(9, 84, 158, .6) 100%); | |
} | |
.two-col .text-holder { | |
height: 100%; | |
width: 100%; | |
white-space: nowrap; | |
padding: 0 150px; | |
} | |
.two-col .text-holder:after { | |
content: ""; | |
display: inline-block; | |
height: 100%; | |
width: 1px; | |
overflow: hidden; | |
margin: 0 0 0 -5px; | |
vertical-align: middle; | |
} | |
.two-col .description { | |
vertical-align: middle; | |
display: inline-block; | |
white-space: normal; | |
font-weight: 600; | |
} | |
.two-col .centered-holder { | |
height: 100%; | |
width: 100%; | |
white-space: nowrap; | |
} | |
.two-col .centered-holder:after { | |
content: ""; | |
display: inline-block; | |
height: 100%; | |
width: 1px; | |
overflow: hidden; | |
margin: 0 0 0 -5px; | |
vertical-align: middle; | |
} | |
.three-col { | |
background: url(../images/bg-02.jpg) no-repeat; | |
background-size: 100% auto; | |
display: table; | |
width: 100%; | |
font-size: 14px; | |
line-height: 24px; | |
} | |
.three-col .left-block { | |
float: left; | |
width: 33.33%; | |
} | |
.three-col .left-block .col { | |
width: 100%; | |
} | |
.three-col .right-block { | |
float: right; | |
width: 66.66%; | |
} | |
.three-col .right-block .col { | |
float: left; | |
width: 50%; | |
background: url(../images/bg-06.jpg) no-repeat; | |
background-size: cover; | |
} | |
.three-col .right-block .col:first-child { | |
float: right; | |
background: url(../images/bg-07.jpg) no-repeat; | |
background-size: cover; | |
} | |
.three-col .col { | |
text-align: center; | |
color: #f2f2f2; | |
padding: 35px 50px; | |
background: url(../images/bg-05.jpg) no-repeat; | |
background-size: cover; | |
} | |
.three-col .col:nth-child(2) { | |
vertical-align: middle; | |
background: url(../images/bg-06.jpg) no-repeat; | |
background-size: cover; | |
} | |
.three-col .col .img-holder { | |
margin: 0 0 28px; | |
} | |
.three-col .col .img-holder img { | |
width: 110px; | |
overflow: hidden; | |
vertical-align: top; | |
} | |
.three-col .col .centered-holder { | |
white-space: nowrap; | |
height: 100%; | |
} | |
.three-col .col .centered-holder:after { | |
content: ""; | |
display: inline-block; | |
height: 100%; | |
width: 1px; | |
overflow: hidden; | |
margin: 0 0 0 -5px; | |
vertical-align: middle; | |
} | |
.three-col .col .title { | |
font-size: 20px; | |
display: block; | |
margin: 0 0 2px; | |
} | |
.three-col .col p { | |
margin: 0 0 30px; | |
} | |
.three-col .col .contact-list { | |
font-size: 0; | |
line-height: 0; | |
} | |
.three-col .col .contact-list li { | |
display: inline-block; | |
vertical-align: top; | |
font-size: 14px; | |
line-height: 1.2; | |
color: #1b307e; | |
font-weight: bold; | |
} | |
.three-col .col .contact-list li:before { | |
content: "|"; | |
padding: 0 4px; | |
} | |
.three-col .col .contact-list li:first-child:before { | |
display: none; | |
} | |
.three-col .col .contact-list li a { | |
color: #1b307e; | |
text-decoration: none; | |
-webkit-transition: opacity .3s; | |
transition: opacity .3s; | |
} | |
.three-col .col .contact-list li a:hover { | |
opacity: .8; | |
} | |
.social-networks { | |
vertical-align: middle; | |
display: inline-block; | |
white-space: normal; | |
font-size: 0; | |
line-height: 0; | |
text-align: center; | |
} | |
.social-networks li { | |
display: inline-block; | |
vertical-align: top; | |
font-size: 79px; | |
color: #fff; | |
padding: 0 7px; | |
} | |
.social-networks a { | |
color: #fff; | |
text-decoration: none; | |
-webkit-transition: opacity .3s; | |
transition: opacity .3s; | |
} | |
.social-networks a:hover { | |
opacity: .8; | |
} | |
#footer { | |
background: #1b307e; | |
padding: 60px 30px; | |
} | |
#footer .logo { | |
margin: 0 auto 30px; | |
width: 114px; | |
} | |
#footer .logo img { | |
display: block; | |
} | |
.footer-row { | |
text-align: center; | |
color: #fff; | |
font-size: 0; | |
line-height: 0; | |
} | |
.footer-row .copy { | |
display: inline-block; | |
vertical-align: top; | |
font-size: 14px; | |
line-height: 1.2; | |
} | |
.footer-row .copy a { | |
text-decoration: none; | |
color: #fff; | |
} | |
.footer-row .copy a:hover { | |
text-decoration: underline; | |
} | |
.nav { | |
font-size: 0; | |
line-height: 0; | |
display: inline-block; | |
vertical-align: top; | |
} | |
.nav li { | |
display: inline-block; | |
vertical-align: top; | |
font-size: 14px; | |
line-height: 1.2; | |
padding: 0; | |
} | |
.nav li:before { | |
content: "|"; | |
padding: 0 6px; | |
} | |
.nav a { | |
color: #fff; | |
text-decoration: none; | |
} | |
.nav a:hover { | |
text-decoration: underline; | |
} | |
.animated-text, | |
.animate-box, | |
.animated { | |
opacity: 0; | |
} | |
@media only screen and (orientation: landscape) { | |
.touch-device .top-block .bg-stretch { | |
bottom: -300px; | |
} | |
} | |
@media only screen and (min-width: 1025px) { | |
a[href^=tel], | |
a[href^=skype], | |
a[href^=sms] { | |
cursor: default; | |
pointer-events: none; | |
} | |
} | |
@media (max-width: 1599px) { | |
.top-block .bg-stretch { | |
bottom: -150px; | |
} | |
} | |
@media (max-width: 1299px) { | |
#header { | |
padding: 70px 0 50px; | |
} | |
.top-block .bg-stretch { | |
bottom: -50px; | |
} | |
} | |
@media (max-width: 1279px) { | |
.top-block { | |
font-size: 30px; | |
} | |
.carousel .mask .slide img { | |
width: 60%; | |
} | |
.two-col .col { | |
font-size: 22px; /*height: 378px;*/ | |
} | |
.two-col .text-holder { | |
padding: 0 50px; | |
} | |
} | |
@media (max-width: 1199px) { | |
.social-networks li { | |
font-size: 50px; | |
} | |
} | |
@media (max-width: 1023px) { | |
.header { | |
min-height: auto; | |
} | |
.logo { | |
width: 300px; | |
} | |
.bottom-btn { | |
font-size: 50px; | |
} | |
.top-block { | |
font-size: 22px; | |
} | |
.top-block .description { | |
padding: 20px 20px 20px; | |
} | |
.cycle-gallery .btn-prev, | |
.cycle-gallery .btn-next { | |
left: 15px; | |
font-size: 35px; | |
} | |
.cycle-gallery .btn-next { | |
right: 15px; | |
left: auto; | |
} | |
.three-col .col { | |
padding: 30px 20px; | |
} | |
} | |
@media (max-width: 767px) { | |
#header { | |
padding: 35px 0 10px; | |
} | |
.header { | |
height: auto !important; | |
} | |
.logo { | |
width: 200px; | |
} | |
.top-block { | |
background: url(../images/bg-08.jpg) center top no-repeat; | |
background-size: cover; | |
font-size: 20px; | |
} | |
.top-block .description { | |
padding: 209px 20px 20px; | |
} | |
.top-block .bg-stretch { | |
bottom: 0; | |
} | |
.top-block { | |
height: auto !important; | |
} | |
.cycle-gallery .mask .slideset .slide .image-hold { | |
padding: 0 25%; | |
} | |
.cycle-gallery .btn-prev, | |
.cycle-gallery .btn-next { | |
left: 0; | |
font-size: 20px; | |
} | |
.cycle-gallery .btn-next { | |
right: 0; | |
left: auto; | |
} | |
.carousel .mask .slide { | |
padding: 0 20px; | |
} | |
.carousel .mask .slide img { | |
width: 50%; | |
} | |
.two-col .col { | |
width: 100%; | |
display: block; | |
height: auto !important; | |
padding: 30px 20px; | |
} | |
.two-col .text-holder { | |
padding: 0 20px; | |
} | |
.three-col { | |
display: block; | |
} | |
.three-col .left-block { | |
width: 100%; | |
float: none; | |
display: block; | |
} | |
.three-col .left-block .col { | |
height: auto !important; | |
} | |
.three-col .right-block .col { | |
height: auto !important; | |
width: 100%; | |
float: none; | |
display: block; | |
} | |
.three-col .right-block .col:first-child { | |
float: none; | |
display: block; | |
} | |
.three-col .right-block { | |
width: 100%; | |
float: none; | |
display: block; | |
} | |
.three-col .col { | |
width: 100%; | |
display: block; | |
} | |
.footer-row .copy { | |
display: block; | |
margin: 0 0 10px; | |
} | |
.nav li:first-child:before { | |
display: none; | |
} | |
} | |
@media (max-width: 479px) { | |
.touch-device .header { | |
height: auto; | |
min-height: auto; | |
} | |
.touch-device .top-block .bg-stretch img { | |
position: absolute; | |
bottom: 0; | |
left: 0; | |
} | |
.cycle-gallery .mask .slideset .slide .image-hold { | |
padding: 0 15%; | |
} | |
.carousel .mask .slide img { | |
width: 70%; | |
} | |
} | |
@-webkit-keyframes btn-anim { | |
0% { | |
top: 0; | |
} | |
50% { | |
top: 5px; | |
} | |
100% { | |
top: 0; | |
} | |
} | |
@keyframes btn-anim { | |
0% { | |
top: 0; | |
} | |
50% { | |
top: 5px; | |
} | |
100% { | |
top: 0; | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// page init | |
jQuery(function() { | |
initAnchors(); | |
initCycleCarousel(); | |
initSameHeight(); | |
}); | |
jQuery(window).on('load', function() { | |
initAnimatedBlock(); | |
initAnimatedLogo(); | |
initAnimatedText(); | |
initParallax(); | |
}); | |
function initParallax() { | |
var touchDeviceClass = 'touch-device'; | |
var isTouchDevice = /Windows Phone/.test(navigator.userAgent) || ('ontouchstart' in window) || window.DocumentTouch && document instanceof DocumentTouch; | |
if (!isTouchDevice){ | |
skrollr.init({ | |
forceHeight: false, | |
smoothScrolling: false | |
}); | |
} else { | |
jQuery('body').addClass(touchDeviceClass); | |
} | |
} | |
function initAnimatedText() { | |
var win = jQuery(window); | |
var animClass = 'slideInUp'; | |
var animEndClass = 'animated-end'; | |
var items = jQuery('.animated-text'); | |
var animSpeed = 1000; | |
imagesLoaded(items.find('img'), function() { | |
items.each(function() { | |
var animBox = jQuery(this); | |
var offsetBox = animBox.data('offset'); | |
var startOffset = '100%'; | |
if (offsetBox !== undefined) { | |
startOffset = offsetBox; | |
} | |
var onScroll = function() { | |
if (animBox.offset().top + animBox.height() / 3 < win.scrollTop() + win.height() && !animBox.hasClass(animClass)) { | |
animBox.addClass(animClass); | |
animBox.velocity({ | |
opacity: 1 | |
}, { | |
duration: animSpeed, | |
complete: function(elements) { | |
animBox.addClass(animEndClass); | |
} | |
}); | |
} | |
}; | |
setTimeout(function() { | |
onScroll(); | |
}, 200); | |
win.on('scroll resize orientationchange', onScroll); | |
}); | |
}); | |
} | |
function initAnimatedLogo() { | |
var animSpeed = 1500; | |
jQuery('.animate-box').each(function() { | |
var logo = jQuery(this); | |
logo.stop().animate({ | |
opacity: 1 | |
}, animSpeed); | |
}); | |
} | |
function initAnimatedBlock() { | |
var win = jQuery(window); | |
var animClass = 'slideInUp'; | |
var animEndClass = 'animated-end'; | |
var items = jQuery('.animated'); | |
var animSpeed = 1000; | |
imagesLoaded(items.find('img'), function() { | |
initSameHeight(); | |
items.each(function() { | |
var animBox = jQuery(this); | |
var offsetBox = animBox.data('offset'); | |
var delay = animBox.data('delay'); | |
var startOffset = '100%'; | |
if (offsetBox !== undefined) { | |
startOffset = offsetBox; | |
} | |
var onScroll = function() { | |
if (animBox.offset().top + animBox.height() / 3 < win.scrollTop() + win.height() && !animBox.hasClass(animClass)) { | |
animBox.addClass(animClass); | |
animBox.velocity({ | |
translateY: startOffset | |
}, 0); | |
setTimeout(function() { | |
animBox.velocity({ | |
opacity: 1, | |
translateY: 0 | |
}, { | |
duration: animSpeed, | |
complete: function(elements) { | |
animBox.addClass(animEndClass); | |
} | |
}); | |
}, delay); | |
} | |
}; | |
setTimeout(function() { | |
onScroll(); | |
}, 200); | |
win.on('scroll resize orientationchange', onScroll); | |
}); | |
}); | |
} | |
function imagesLoaded(imgs, callback) { | |
var counter = imgs.length; | |
imgs.each(function() { | |
if (this.complete){ | |
counter--; | |
} else { | |
this.onload = function() { | |
counter--; | |
if (counter === 0 && typeof callback === 'function') callback(); | |
}; | |
} | |
}); | |
if (counter === 0 && typeof callback === 'function') callback(); | |
} | |
// cycle scroll gallery init | |
function initCycleCarousel() { | |
jQuery('.cycle-gallery').scrollAbsoluteGallery({ | |
mask: '.mask', | |
slider: '.slideset', | |
slides: '.slide', | |
btnPrev: 'a.btn-prev', | |
btnNext: 'a.btn-next', | |
stretchSlideToMask: true, | |
pauseOnHover: true, | |
maskAutoSize: true, | |
autoRotation: false, | |
switchTime: 3000, | |
animSpeed: 500 | |
}); | |
} | |
// initialize smooth anchor links | |
function initAnchors() { | |
new SmoothScroll({ | |
anchorLinks: '.bottom-btn' | |
}); | |
} | |
// align blocks height | |
function initSameHeight() { | |
jQuery('.two-col').sameHeight({ | |
elements: '.col', | |
flexible: true | |
}); | |
jQuery('.three-col').sameHeight({ | |
elements: '.col', | |
flexible: true | |
}); | |
} | |
/* | |
* jQuery Cycle Carousel plugin | |
*/ | |
;(function($){ | |
function ScrollAbsoluteGallery(options) { | |
this.options = $.extend({ | |
activeClass: 'active', | |
mask: 'div.slides-mask', | |
slider: '>ul', | |
slides: '>li', | |
btnPrev: '.btn-prev', | |
btnNext: '.btn-next', | |
pagerLinks: 'ul.pager > li', | |
generatePagination: false, | |
pagerList: '<ul>', | |
pagerListItem: '<li><a href="#"></a></li>', | |
pagerListItemText: 'a', | |
galleryReadyClass: 'gallery-js-ready', | |
currentNumber: 'span.current-num', | |
totalNumber: 'span.total-num', | |
maskAutoSize: false, | |
autoRotation: false, | |
pauseOnHover: false, | |
stretchSlideToMask: false, | |
switchTime: 3000, | |
animSpeed: 500, | |
handleTouch: true, | |
swipeThreshold: 15, | |
vertical: false | |
}, options); | |
this.init(); | |
} | |
ScrollAbsoluteGallery.prototype = { | |
init: function() { | |
if(this.options.holder) { | |
this.findElements(); | |
this.attachEvents(); | |
this.makeCallback('onInit', this); | |
} | |
}, | |
findElements: function() { | |
// find structure elements | |
this.holder = $(this.options.holder).addClass(this.options.galleryReadyClass); | |
this.mask = this.holder.find(this.options.mask); | |
this.slider = this.mask.find(this.options.slider); | |
this.slides = this.slider.find(this.options.slides); | |
this.btnPrev = this.holder.find(this.options.btnPrev); | |
this.btnNext = this.holder.find(this.options.btnNext); | |
// slide count display | |
this.currentNumber = this.holder.find(this.options.currentNumber); | |
this.totalNumber = this.holder.find(this.options.totalNumber); | |
// create gallery pagination | |
if(typeof this.options.generatePagination === 'string') { | |
this.pagerLinks = this.buildPagination(); | |
} else { | |
this.pagerLinks = this.holder.find(this.options.pagerLinks); | |
} | |
// define index variables | |
this.sizeProperty = this.options.vertical ? 'height' : 'width'; | |
this.positionProperty = this.options.vertical ? 'top' : 'left'; | |
this.animProperty = this.options.vertical ? 'marginTop' : 'marginLeft'; | |
this.slideSize = this.slides[this.sizeProperty](); | |
this.currentIndex = 0; | |
this.prevIndex = 0; | |
// reposition elements | |
this.options.maskAutoSize = this.options.vertical ? false : this.options.maskAutoSize; | |
if(this.options.vertical) { | |
this.mask.css({ | |
height: this.slides.innerHeight() | |
}); | |
} | |
if(this.options.maskAutoSize){ | |
this.mask.css({ | |
height: this.slider.height() | |
}); | |
} | |
this.slider.css({ | |
position: 'relative', | |
height: this.options.vertical ? this.slideSize * this.slides.length : '100%' | |
}); | |
this.slides.css({ | |
position: 'absolute' | |
}).css(this.positionProperty, -9999).eq(this.currentIndex).css(this.positionProperty, 0); | |
this.refreshState(); | |
}, | |
buildPagination: function() { | |
var pagerLinks = $(); | |
if(!this.pagerHolder) { | |
this.pagerHolder = this.holder.find(this.options.generatePagination); | |
} | |
if(this.pagerHolder.length) { | |
this.pagerHolder.empty(); | |
this.pagerList = $(this.options.pagerList).appendTo(this.pagerHolder); | |
for(var i = 0; i < this.slides.length; i++) { | |
$(this.options.pagerListItem).appendTo(this.pagerList).find(this.options.pagerListItemText).text(i+1); | |
} | |
pagerLinks = this.pagerList.children(); | |
} | |
return pagerLinks; | |
}, | |
attachEvents: function() { | |
// attach handlers | |
var self = this; | |
if(this.btnPrev.length) { | |
this.btnPrevHandler = function(e) { | |
e.preventDefault(); | |
self.prevSlide(); | |
}; | |
this.btnPrev.click(this.btnPrevHandler); | |
} | |
if(this.btnNext.length) { | |
this.btnNextHandler = function(e) { | |
e.preventDefault(); | |
self.nextSlide(); | |
}; | |
this.btnNext.click(this.btnNextHandler); | |
} | |
if(this.pagerLinks.length) { | |
this.pagerLinksHandler = function(e) { | |
e.preventDefault(); | |
self.numSlide(self.pagerLinks.index(e.currentTarget)); | |
}; | |
this.pagerLinks.click(this.pagerLinksHandler); | |
} | |
// handle autorotation pause on hover | |
if(this.options.pauseOnHover) { | |
this.hoverHandler = function() { | |
clearTimeout(self.timer); | |
}; | |
this.leaveHandler = function() { | |
self.autoRotate(); | |
}; | |
this.holder.bind({mouseenter: this.hoverHandler, mouseleave: this.leaveHandler}); | |
} | |
// handle holder and slides dimensions | |
this.resizeHandler = function() { | |
if(!self.animating) { | |
if(self.options.stretchSlideToMask) { | |
self.resizeSlides(); | |
} | |
self.resizeHolder(); | |
self.setSlidesPosition(self.currentIndex); | |
} | |
}; | |
$(window).bind('load resize orientationchange', this.resizeHandler); | |
if(self.options.stretchSlideToMask) { | |
self.resizeSlides(); | |
} | |
// handle swipe on mobile devices | |
if(this.options.handleTouch && window.Hammer && this.mask.length && this.slides.length > 1 && isTouchDevice) { | |
this.swipeHandler = new Hammer.Manager(this.mask[0]); | |
this.swipeHandler.add(new Hammer.Pan({ | |
direction: self.options.vertical ? Hammer.DIRECTION_VERTICAL : Hammer.DIRECTION_HORIZONTAL, | |
threshold: self.options.swipeThreshold | |
})); | |
this.swipeHandler.on('panstart', function() { | |
if(self.animating) { | |
self.swipeHandler.stop(); | |
} else { | |
clearTimeout(self.timer); | |
} | |
}).on('panmove', function(e) { | |
self.swipeOffset = -self.slideSize + e[self.options.vertical ? 'deltaY' : 'deltaX']; | |
self.slider.css(self.animProperty, self.swipeOffset); | |
clearTimeout(self.timer); | |
}).on('panend', function(e) { | |
if(e.distance > self.options.swipeThreshold) { | |
if(e.offsetDirection === Hammer.DIRECTION_RIGHT || e.offsetDirection === Hammer.DIRECTION_DOWN) { | |
self.nextSlide(); | |
} else { | |
self.prevSlide(); | |
} | |
} else { | |
var tmpObj = {}; | |
tmpObj[self.animProperty] = -self.slideSize; | |
self.slider.animate(tmpObj, {duration: self.options.animSpeed}); | |
self.autoRotate(); | |
} | |
self.swipeOffset = 0; | |
}); | |
} | |
// start autorotation | |
this.autoRotate(); | |
this.resizeHolder(); | |
this.setSlidesPosition(this.currentIndex); | |
}, | |
resizeSlides: function() { | |
this.slideSize = this.mask[this.options.vertical ? 'height' : 'width'](); | |
this.slides.css(this.sizeProperty, this.slideSize); | |
}, | |
resizeHolder: function() { | |
if(this.options.maskAutoSize) { | |
this.mask.css({ | |
height: this.slides.eq(this.currentIndex).outerHeight(true) | |
}); | |
} | |
}, | |
prevSlide: function() { | |
if(!this.animating && this.slides.length > 1) { | |
this.direction = -1; | |
this.prevIndex = this.currentIndex; | |
if(this.currentIndex > 0) this.currentIndex--; | |
else this.currentIndex = this.slides.length - 1; | |
this.switchSlide(); | |
} | |
}, | |
nextSlide: function(fromAutoRotation) { | |
if(!this.animating && this.slides.length > 1) { | |
this.direction = 1; | |
this.prevIndex = this.currentIndex; | |
if(this.currentIndex < this.slides.length - 1) this.currentIndex++; | |
else this.currentIndex = 0; | |
this.switchSlide(); | |
} | |
}, | |
numSlide: function(c) { | |
if(!this.animating && this.currentIndex !== c && this.slides.length > 1) { | |
this.direction = c > this.currentIndex ? 1 : -1; | |
this.prevIndex = this.currentIndex; | |
this.currentIndex = c; | |
this.switchSlide(); | |
} | |
}, | |
preparePosition: function() { | |
// prepare slides position before animation | |
this.setSlidesPosition(this.prevIndex, this.direction < 0 ? this.currentIndex : null, this.direction > 0 ? this.currentIndex : null, this.direction); | |
}, | |
setSlidesPosition: function(index, slideLeft, slideRight, direction) { | |
// reposition holder and nearest slides | |
if(this.slides.length > 1) { | |
var prevIndex = (typeof slideLeft === 'number' ? slideLeft : index > 0 ? index - 1 : this.slides.length - 1); | |
var nextIndex = (typeof slideRight === 'number' ? slideRight : index < this.slides.length - 1 ? index + 1 : 0); | |
this.slider.css(this.animProperty, this.swipeOffset ? this.swipeOffset : -this.slideSize); | |
this.slides.css(this.positionProperty, -9999).eq(index).css(this.positionProperty, this.slideSize); | |
if(prevIndex === nextIndex && typeof direction === 'number') { | |
var calcOffset = direction > 0 ? this.slideSize*2 : 0; | |
this.slides.eq(nextIndex).css(this.positionProperty, calcOffset); | |
} else { | |
this.slides.eq(prevIndex).css(this.positionProperty, 0); | |
this.slides.eq(nextIndex).css(this.positionProperty, this.slideSize*2); | |
} | |
} | |
}, | |
switchSlide: function() { | |
// prepare positions and calculate offset | |
var self = this; | |
var oldSlide = this.slides.eq(this.prevIndex); | |
var newSlide = this.slides.eq(this.currentIndex); | |
this.animating = true; | |
// resize mask to fit slide | |
if(this.options.maskAutoSize) { | |
this.mask.animate({ | |
height: newSlide.outerHeight(true) | |
}, { | |
duration: this.options.animSpeed | |
}); | |
} | |
// start animation | |
var animProps = {}; | |
animProps[this.animProperty] = this.direction > 0 ? -this.slideSize*2 : 0; | |
this.preparePosition(); | |
this.slider.animate(animProps,{duration:this.options.animSpeed, complete:function() { | |
self.setSlidesPosition(self.currentIndex); | |
// start autorotation | |
self.animating = false; | |
self.autoRotate(); | |
// onchange callback | |
self.makeCallback('onChange', self); | |
}}); | |
// refresh classes | |
this.refreshState(); | |
// onchange callback | |
this.makeCallback('onBeforeChange', this); | |
}, | |
refreshState: function(initial) { | |
// slide change function | |
this.slides.removeClass(this.options.activeClass).eq(this.currentIndex).addClass(this.options.activeClass); | |
this.pagerLinks.removeClass(this.options.activeClass).eq(this.currentIndex).addClass(this.options.activeClass); | |
// display current slide number | |
this.currentNumber.html(this.currentIndex + 1); | |
this.totalNumber.html(this.slides.length); | |
// add class if not enough slides | |
this.holder.toggleClass('not-enough-slides', this.slides.length === 1); | |
}, | |
autoRotate: function() { | |
var self = this; | |
clearTimeout(this.timer); | |
if(this.options.autoRotation) { | |
this.timer = setTimeout(function() { | |
self.nextSlide(); | |
}, this.options.switchTime); | |
} | |
}, | |
makeCallback: function(name) { | |
if(typeof this.options[name] === 'function') { | |
var args = Array.prototype.slice.call(arguments); | |
args.shift(); | |
this.options[name].apply(this, args); | |
} | |
}, | |
destroy: function() { | |
// destroy handler | |
this.btnPrev.unbind('click', this.btnPrevHandler); | |
this.btnNext.unbind('click', this.btnNextHandler); | |
this.pagerLinks.unbind('click', this.pagerLinksHandler); | |
this.holder.unbind('mouseenter', this.hoverHandler); | |
this.holder.unbind('mouseleave', this.leaveHandler); | |
$(window).unbind('load resize orientationchange', this.resizeHandler); | |
clearTimeout(this.timer); | |
// destroy swipe handler | |
if(this.swipeHandler) { | |
this.swipeHandler.destroy(); | |
} | |
// remove inline styles, classes and pagination | |
this.holder.removeClass(this.options.galleryReadyClass); | |
this.slider.add(this.slides).removeAttr('style'); | |
if(typeof this.options.generatePagination === 'string') { | |
this.pagerHolder.empty(); | |
} | |
} | |
}; | |
// detect device type | |
var isTouchDevice = /Windows Phone/.test(navigator.userAgent) || ('ontouchstart' in window) || window.DocumentTouch && document instanceof DocumentTouch; | |
// jquery plugin | |
$.fn.scrollAbsoluteGallery = function(opt){ | |
return this.each(function(){ | |
$(this).data('ScrollAbsoluteGallery', new ScrollAbsoluteGallery($.extend(opt,{holder:this}))); | |
}); | |
}; | |
}(jQuery)); | |
/*! | |
* SmoothScroll module | |
*/ | |
;(function($, exports) { | |
// private variables | |
var page, | |
win = $(window), | |
activeBlock, activeWheelHandler, | |
wheelEvents = ('onwheel' in document || document.documentMode >= 9 ? 'wheel' : 'mousewheel DOMMouseScroll'); | |
// animation handlers | |
function scrollTo(offset, options, callback) { | |
// initialize variables | |
var scrollBlock; | |
if (document.body) { | |
if (typeof options === 'number') { | |
options = { duration: options }; | |
} else { | |
options = options || {}; | |
} | |
page = page || $('html, body'); | |
scrollBlock = options.container || page; | |
} else { | |
return; | |
} | |
// treat single number as scrollTop | |
if (typeof offset === 'number') { | |
offset = { top: offset }; | |
} | |
// handle mousewheel/trackpad while animation is active | |
if (activeBlock && activeWheelHandler) { | |
activeBlock.off(wheelEvents, activeWheelHandler); | |
} | |
if (options.wheelBehavior && options.wheelBehavior !== 'none') { | |
activeWheelHandler = function(e) { | |
if (options.wheelBehavior === 'stop') { | |
scrollBlock.off(wheelEvents, activeWheelHandler); | |
scrollBlock.stop(); | |
} else if (options.wheelBehavior === 'ignore') { | |
e.preventDefault(); | |
} | |
}; | |
activeBlock = scrollBlock.on(wheelEvents, activeWheelHandler); | |
} | |
// start scrolling animation | |
scrollBlock.stop().animate({ | |
scrollLeft: offset.left, | |
scrollTop: offset.top | |
}, options.duration, function() { | |
if (activeWheelHandler) { | |
scrollBlock.off(wheelEvents, activeWheelHandler); | |
} | |
if ($.isFunction(callback)) { | |
callback(); | |
} | |
}); | |
} | |
// smooth scroll contstructor | |
function SmoothScroll(options) { | |
this.options = $.extend({ | |
anchorLinks: 'a[href^="#"]', // selector or jQuery object | |
container: null, // specify container for scrolling (default - whole page) | |
extraOffset: null, // function or fixed number | |
activeClasses: null, // null, "link", "parent" | |
easing: 'swing', // easing of scrolling | |
animMode: 'duration', // or "speed" mode | |
animDuration: 800, // total duration for scroll (any distance) | |
animSpeed: 1500, // pixels per second | |
anchorActiveClass: 'anchor-active', | |
sectionActiveClass: 'section-active', | |
wheelBehavior: 'stop', // "stop", "ignore" or "none" | |
useNativeAnchorScrolling: false // do not handle click in devices with native smooth scrolling | |
}, options); | |
this.init(); | |
} | |
SmoothScroll.prototype = { | |
init: function() { | |
this.initStructure(); | |
this.attachEvents(); | |
}, | |
initStructure: function() { | |
this.container = this.options.container ? $(this.options.container) : $('html,body'); | |
this.scrollContainer = this.options.container ? this.container : win; | |
this.anchorLinks = $(this.options.anchorLinks); | |
}, | |
getAnchorTarget: function(link) { | |
// get target block from link href | |
var targetId = $(link).attr('href'); | |
return $(targetId.length > 1 ? targetId : 'html'); | |
}, | |
getTargetOffset: function(block) { | |
// get target offset | |
var blockOffset = block.offset().top; | |
if (this.options.container) { | |
blockOffset -= this.container.offset().top - this.container.prop('scrollTop'); | |
} | |
// handle extra offset | |
if (typeof this.options.extraOffset === 'number') { | |
blockOffset -= this.options.extraOffset; | |
} else if (typeof this.options.extraOffset === 'function') { | |
blockOffset -= this.options.extraOffset(block); | |
} | |
return { top: blockOffset }; | |
}, | |
attachEvents: function() { | |
var self = this; | |
// handle active classes | |
if (this.options.activeClasses) { | |
// cache structure | |
this.anchorData = []; | |
this.anchorLinks.each(function() { | |
var link = jQuery(this), | |
targetBlock = self.getAnchorTarget(link), | |
anchorDataItem; | |
$.each(self.anchorData, function(index, item) { | |
if (item.block[0] === targetBlock[0]) { | |
anchorDataItem = item; | |
} | |
}); | |
if (anchorDataItem) { | |
anchorDataItem.link = anchorDataItem.link.add(link); | |
} else { | |
self.anchorData.push({ | |
link: link, | |
block: targetBlock | |
}); | |
} | |
}); | |
// add additional event handlers | |
this.resizeHandler = function() { | |
self.recalculateOffsets(); | |
}; | |
this.scrollHandler = function() { | |
self.refreshActiveClass(); | |
}; | |
this.recalculateOffsets(); | |
this.scrollContainer.on('scroll', this.scrollHandler); | |
win.on('resize', this.resizeHandler); | |
} | |
// handle click event | |
this.clickHandler = function(e) { | |
self.onClick(e); | |
}; | |
if (!this.options.useNativeAnchorScrolling) { | |
this.anchorLinks.on('click', this.clickHandler); | |
} | |
}, | |
recalculateOffsets: function() { | |
var self = this; | |
$.each(this.anchorData, function(index, data) { | |
data.offset = self.getTargetOffset(data.block); | |
data.height = data.block.outerHeight(); | |
}); | |
this.refreshActiveClass(); | |
}, | |
refreshActiveClass: function() { | |
var self = this, | |
foundFlag = false, | |
containerHeight = this.container.prop('scrollHeight'), | |
viewPortHeight = this.scrollContainer.height(), | |
scrollTop = this.options.container ? this.container.prop('scrollTop') : win.scrollTop(); | |
// user function instead of default handler | |
if (this.options.customScrollHandler) { | |
this.options.customScrollHandler.call(this, scrollTop, this.anchorData); | |
return; | |
} | |
// sort anchor data by offsets | |
this.anchorData.sort(function(a, b) { | |
return a.offset.top - b.offset.top; | |
}); | |
function toggleActiveClass(anchor, block, state) { | |
anchor.toggleClass(self.options.anchorActiveClass, state); | |
block.toggleClass(self.options.sectionActiveClass, state); | |
} | |
// default active class handler | |
$.each(this.anchorData, function(index) { | |
var reverseIndex = self.anchorData.length - index - 1, | |
data = self.anchorData[reverseIndex], | |
anchorElement = (self.options.activeClasses === 'parent' ? data.link.parent() : data.link); | |
if (scrollTop >= containerHeight - viewPortHeight) { | |
// handle last section | |
if (reverseIndex === self.anchorData.length - 1) { | |
toggleActiveClass(anchorElement, data.block, true); | |
} else { | |
toggleActiveClass(anchorElement, data.block, false); | |
} | |
} else { | |
// handle other sections | |
if (!foundFlag && (scrollTop >= data.offset.top - 1 || reverseIndex === 0)) { | |
foundFlag = true; | |
toggleActiveClass(anchorElement, data.block, true); | |
} else { | |
toggleActiveClass(anchorElement, data.block, false); | |
} | |
} | |
}); | |
}, | |
calculateScrollDuration: function(offset) { | |
var distance; | |
if (this.options.animMode === 'speed') { | |
distance = Math.abs(this.scrollContainer.scrollTop() - offset.top); | |
return (distance / this.options.animSpeed) * 1000; | |
} else { | |
return this.options.animDuration; | |
} | |
}, | |
onClick: function(e) { | |
var targetBlock = this.getAnchorTarget(e.currentTarget), | |
targetOffset = this.getTargetOffset(targetBlock); | |
e.preventDefault(); | |
scrollTo(targetOffset, { | |
container: this.container, | |
wheelBehavior: this.options.wheelBehavior, | |
duration: this.calculateScrollDuration(targetOffset) | |
}); | |
}, | |
destroy: function() { | |
if (this.options.activeClasses) { | |
win.off('resize', this.resizeHandler); | |
this.scrollContainer.off('scroll', this.scrollHandler); | |
} | |
this.anchorLinks.off('click', this.clickHandler); | |
} | |
}; | |
// public API | |
$.extend(SmoothScroll, { | |
scrollTo: function(blockOrOffset, durationOrOptions, callback) { | |
scrollTo(blockOrOffset, durationOrOptions, callback); | |
} | |
}); | |
// export module | |
exports.SmoothScroll = SmoothScroll; | |
}(jQuery, this)); | |
/* | |
* jQuery SameHeight plugin | |
*/ | |
;(function($){ | |
$.fn.sameHeight = function(opt) { | |
var options = $.extend({ | |
skipClass: 'same-height-ignore', | |
leftEdgeClass: 'same-height-left', | |
rightEdgeClass: 'same-height-right', | |
elements: '>*', | |
flexible: false, | |
multiLine: false, | |
useMinHeight: false, | |
biggestHeight: false | |
},opt); | |
return this.each(function(){ | |
var holder = $(this), postResizeTimer, ignoreResize; | |
var elements = holder.find(options.elements).not('.' + options.skipClass); | |
if(!elements.length) return; | |
// resize handler | |
function doResize() { | |
elements.css(options.useMinHeight && supportMinHeight ? 'minHeight' : 'height', ''); | |
if(options.multiLine) { | |
// resize elements row by row | |
resizeElementsByRows(elements, options); | |
} else { | |
// resize elements by holder | |
resizeElements(elements, holder, options); | |
} | |
} | |
doResize(); | |
// handle flexible layout / font resize | |
var delayedResizeHandler = function() { | |
if(!ignoreResize) { | |
ignoreResize = true; | |
doResize(); | |
clearTimeout(postResizeTimer); | |
postResizeTimer = setTimeout(function() { | |
doResize(); | |
setTimeout(function(){ | |
ignoreResize = false; | |
}, 10); | |
}, 100); | |
} | |
}; | |
// handle flexible/responsive layout | |
if(options.flexible) { | |
$(window).bind('resize orientationchange fontresize', delayedResizeHandler); | |
} | |
// handle complete page load including images and fonts | |
$(window).bind('load', delayedResizeHandler); | |
}); | |
}; | |
// detect css min-height support | |
var supportMinHeight = typeof document.documentElement.style.maxHeight !== 'undefined'; | |
// get elements by rows | |
function resizeElementsByRows(boxes, options) { | |
var currentRow = $(), maxHeight, maxCalcHeight = 0, firstOffset = boxes.eq(0).offset().top; | |
boxes.each(function(ind){ | |
var curItem = $(this); | |
if(curItem.offset().top === firstOffset) { | |
currentRow = currentRow.add(this); | |
} else { | |
maxHeight = getMaxHeight(currentRow); | |
maxCalcHeight = Math.max(maxCalcHeight, resizeElements(currentRow, maxHeight, options)); | |
currentRow = curItem; | |
firstOffset = curItem.offset().top; | |
} | |
}); | |
if(currentRow.length) { | |
maxHeight = getMaxHeight(currentRow); | |
maxCalcHeight = Math.max(maxCalcHeight, resizeElements(currentRow, maxHeight, options)); | |
} | |
if(options.biggestHeight) { | |
boxes.css(options.useMinHeight && supportMinHeight ? 'minHeight' : 'height', maxCalcHeight); | |
} | |
} | |
// calculate max element height | |
function getMaxHeight(boxes) { | |
var maxHeight = 0; | |
boxes.each(function(){ | |
maxHeight = Math.max(maxHeight, $(this).outerHeight()); | |
}); | |
return maxHeight; | |
} | |
// resize helper function | |
function resizeElements(boxes, parent, options) { | |
var calcHeight; | |
var parentHeight = typeof parent === 'number' ? parent : parent.height(); | |
boxes.removeClass(options.leftEdgeClass).removeClass(options.rightEdgeClass).each(function(i){ | |
var element = $(this); | |
var depthDiffHeight = 0; | |
var isBorderBox = element.css('boxSizing') === 'border-box' || element.css('-moz-box-sizing') === 'border-box' || element.css('-webkit-box-sizing') === 'border-box'; | |
if(typeof parent !== 'number') { | |
element.parents().each(function(){ | |
var tmpParent = $(this); | |
if(parent.is(this)) { | |
return false; | |
} else { | |
depthDiffHeight += tmpParent.outerHeight() - tmpParent.height(); | |
} | |
}); | |
} | |
calcHeight = parentHeight - depthDiffHeight; | |
calcHeight -= isBorderBox ? 0 : element.outerHeight() - element.height(); | |
if(calcHeight > 0) { | |
element.css(options.useMinHeight && supportMinHeight ? 'minHeight' : 'height', calcHeight); | |
} | |
}); | |
boxes.filter(':first').addClass(options.leftEdgeClass); | |
boxes.filter(':last').addClass(options.rightEdgeClass); | |
return calcHeight; | |
} | |
}(jQuery)); | |
/* | |
* jQuery FontResize Event | |
*/ | |
jQuery.onFontResize = (function($) { | |
$(function() { | |
var randomID = 'font-resize-frame-' + Math.floor(Math.random() * 1000); | |
var resizeFrame = $('<iframe>').attr('id', randomID).addClass('font-resize-helper'); | |
// required styles | |
resizeFrame.css({ | |
width: '100em', | |
height: '10px', | |
position: 'absolute', | |
borderWidth: 0, | |
top: '-9999px', | |
left: '-9999px' | |
}).appendTo('body'); | |
// use native IE resize event if possible | |
if (window.attachEvent && !window.addEventListener) { | |
resizeFrame.bind('resize', function () { | |
$.onFontResize.trigger(resizeFrame[0].offsetWidth / 100); | |
}); | |
} | |
// use script inside the iframe to detect resize for other browsers | |
else { | |
var doc = resizeFrame[0].contentWindow.document; | |
doc.open(); | |
doc.write('<scri' + 'pt>window.onload = function(){var em = parent.jQuery("#' + randomID + '")[0];window.onresize = function(){if(parent.jQuery.onFontResize){parent.jQuery.onFontResize.trigger(em.offsetWidth / 100);}}};</scri' + 'pt>'); | |
doc.close(); | |
} | |
jQuery.onFontResize.initialSize = resizeFrame[0].offsetWidth / 100; | |
}); | |
return { | |
// public method, so it can be called from within the iframe | |
trigger: function (em) { | |
$(window).trigger("fontresize", [em]); | |
} | |
}; | |
}(jQuery)); | |
/* | |
* Window Height CSS rules | |
*/ | |
;(function() { | |
var styleSheet; | |
var getWindowHeight = function() { | |
return window.innerHeight || document.documentElement.clientHeight; | |
}; | |
var createStyleTag = function() { | |
// create style tag | |
var styleTag = jQuery('<style>').appendTo('head'); | |
styleSheet = styleTag.prop('sheet') || styleTag.prop('styleSheet'); | |
// crossbrowser style handling | |
var addCSSRule = function(selector, rules, index) { | |
if(styleSheet.insertRule) { | |
styleSheet.insertRule(selector + '{' + rules + '}', index); | |
} else { | |
styleSheet.addRule(selector, rules, index); | |
} | |
}; | |
// create style rules | |
addCSSRule('.win-min-height', 'min-height:0'); | |
addCSSRule('.win-height', 'height:auto'); | |
addCSSRule('.win-max-height', 'max-height:100%'); | |
resizeHandler(); | |
}; | |
var resizeHandler = function() { | |
// handle changes in style rules | |
var currentWindowHeight = getWindowHeight(), | |
styleRules = styleSheet.cssRules || styleSheet.rules; | |
jQuery.each(styleRules, function(index, currentRule) { | |
var currentProperty = currentRule.selectorText.toLowerCase().replace('.win-', '').replace('-h','H'); | |
currentRule.style[currentProperty] = currentWindowHeight + 'px'; | |
}); | |
}; | |
createStyleTag(); | |
jQuery(window).on('resize orientationchange', resizeHandler); | |
}()); | |
/*! Hammer.JS - v2.0.4 - 2014-09-28 | |
* http://hammerjs.github.io/ | |
* | |
* Copyright (c) 2014 Jorik Tangelder; | |
* Licensed under the MIT license */ | |
if(Object.create){!function(a,b,c,d){"use strict";function e(a,b,c){return setTimeout(k(a,c),b)}function f(a,b,c){return Array.isArray(a)?(g(a,c[b],c),!0):!1}function g(a,b,c){var e;if(a)if(a.forEach)a.forEach(b,c);else if(a.length!==d)for(e=0;e<a.length;)b.call(c,a[e],e,a),e++;else for(e in a)a.hasOwnProperty(e)&&b.call(c,a[e],e,a)}function h(a,b,c){for(var e=Object.keys(b),f=0;f<e.length;)(!c||c&&a[e[f]]===d)&&(a[e[f]]=b[e[f]]),f++;return a}function i(a,b){return h(a,b,!0)}function j(a,b,c){var d,e=b.prototype;d=a.prototype=Object.create(e),d.constructor=a,d._super=e,c&&h(d,c)}function k(a,b){return function(){return a.apply(b,arguments)}}function l(a,b){return typeof a==kb?a.apply(b?b[0]||d:d,b):a}function m(a,b){return a===d?b:a}function n(a,b,c){g(r(b),function(b){a.addEventListener(b,c,!1)})}function o(a,b,c){g(r(b),function(b){a.removeEventListener(b,c,!1)})}function p(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1}function q(a,b){return a.indexOf(b)>-1}function r(a){return a.trim().split(/\s+/g)}function s(a,b,c){if(a.indexOf&&!c)return a.indexOf(b);for(var d=0;d<a.length;){if(c&&a[d][c]==b||!c&&a[d]===b)return d;d++}return-1}function t(a){return Array.prototype.slice.call(a,0)}function u(a,b,c){for(var d=[],e=[],f=0;f<a.length;){var g=b?a[f][b]:a[f];s(e,g)<0&&d.push(a[f]),e[f]=g,f++}return c&&(d=b?d.sort(function(a,c){return a[b]>c[b]}):d.sort()),d}function v(a,b){for(var c,e,f=b[0].toUpperCase()+b.slice(1),g=0;g<ib.length;){if(c=ib[g],e=c?c+f:b,e in a)return e;g++}return d}function w(){return ob++}function x(a){var b=a.ownerDocument;return b.defaultView||b.parentWindow}function y(a,b){var c=this;this.manager=a,this.callback=b,this.element=a.element,this.target=a.options.inputTarget,this.domHandler=function(b){l(a.options.enable,[a])&&c.handler(b)},this.init()}function z(a){var b,c=a.options.inputClass;return new(b=c?c:rb?N:sb?Q:qb?S:M)(a,A)}function A(a,b,c){var d=c.pointers.length,e=c.changedPointers.length,f=b&yb&&d-e===0,g=b&(Ab|Bb)&&d-e===0;c.isFirst=!!f,c.isFinal=!!g,f&&(a.session={}),c.eventType=b,B(a,c),a.emit("hammer.input",c),a.recognize(c),a.session.prevInput=c}function B(a,b){var c=a.session,d=b.pointers,e=d.length;c.firstInput||(c.firstInput=E(b)),e>1&&!c.firstMultiple?c.firstMultiple=E(b):1===e&&(c.firstMultiple=!1);var f=c.firstInput,g=c.firstMultiple,h=g?g.center:f.center,i=b.center=F(d);b.timeStamp=nb(),b.deltaTime=b.timeStamp-f.timeStamp,b.angle=J(h,i),b.distance=I(h,i),C(c,b),b.offsetDirection=H(b.deltaX,b.deltaY),b.scale=g?L(g.pointers,d):1,b.rotation=g?K(g.pointers,d):0,D(c,b);var j=a.element;p(b.srcEvent.target,j)&&(j=b.srcEvent.target),b.target=j}function C(a,b){var c=b.center,d=a.offsetDelta||{},e=a.prevDelta||{},f=a.prevInput||{};(b.eventType===yb||f.eventType===Ab)&&(e=a.prevDelta={x:f.deltaX||0,y:f.deltaY||0},d=a.offsetDelta={x:c.x,y:c.y}),b.deltaX=e.x+(c.x-d.x),b.deltaY=e.y+(c.y-d.y)}function D(a,b){var c,e,f,g,h=a.lastInterval||b,i=b.timeStamp-h.timeStamp;if(b.eventType!=Bb&&(i>xb||h.velocity===d)){var j=h.deltaX-b.deltaX,k=h.deltaY-b.deltaY,l=G(i,j,k);e=l.x,f=l.y,c=mb(l.x)>mb(l.y)?l.x:l.y,g=H(j,k),a.lastInterval=b}else c=h.velocity,e=h.velocityX,f=h.velocityY,g=h.direction;b.velocity=c,b.velocityX=e,b.velocityY=f,b.direction=g}function E(a){for(var b=[],c=0;c<a.pointers.length;)b[c]={clientX:lb(a.pointers[c].clientX),clientY:lb(a.pointers[c].clientY)},c++;return{timeStamp:nb(),pointers:b,center:F(b),deltaX:a.deltaX,deltaY:a.deltaY}}function F(a){var b=a.length;if(1===b)return{x:lb(a[0].clientX),y:lb(a[0].clientY)};for(var c=0,d=0,e=0;b>e;)c+=a[e].clientX,d+=a[e].clientY,e++;return{x:lb(c/b),y:lb(d/b)}}function G(a,b,c){return{x:b/a||0,y:c/a||0}}function H(a,b){return a===b?Cb:mb(a)>=mb(b)?a>0?Db:Eb:b>0?Fb:Gb}function I(a,b,c){c||(c=Kb);var d=b[c[0]]-a[c[0]],e=b[c[1]]-a[c[1]];return Math.sqrt(d*d+e*e)}function J(a,b,c){c||(c=Kb);var d=b[c[0]]-a[c[0]],e=b[c[1]]-a[c[1]];return 180*Math.atan2(e,d)/Math.PI}function K(a,b){return J(b[1],b[0],Lb)-J(a[1],a[0],Lb)}function L(a,b){return I(b[0],b[1],Lb)/I(a[0],a[1],Lb)}function M(){this.evEl=Nb,this.evWin=Ob,this.allow=!0,this.pressed=!1,y.apply(this,arguments)}function N(){this.evEl=Rb,this.evWin=Sb,y.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function O(){this.evTarget=Ub,this.evWin=Vb,this.started=!1,y.apply(this,arguments)}function P(a,b){var c=t(a.touches),d=t(a.changedTouches);return b&(Ab|Bb)&&(c=u(c.concat(d),"identifier",!0)),[c,d]}function Q(){this.evTarget=Xb,this.targetIds={},y.apply(this,arguments)}function R(a,b){var c=t(a.touches),d=this.targetIds;if(b&(yb|zb)&&1===c.length)return d[c[0].identifier]=!0,[c,c];var e,f,g=t(a.changedTouches),h=[],i=this.target;if(f=c.filter(function(a){return p(a.target,i)}),b===yb)for(e=0;e<f.length;)d[f[e].identifier]=!0,e++;for(e=0;e<g.length;)d[g[e].identifier]&&h.push(g[e]),b&(Ab|Bb)&&delete d[g[e].identifier],e++;return h.length?[u(f.concat(h),"identifier",!0),h]:void 0}function S(){y.apply(this,arguments);var a=k(this.handler,this);this.touch=new Q(this.manager,a),this.mouse=new M(this.manager,a)}function T(a,b){this.manager=a,this.set(b)}function U(a){if(q(a,bc))return bc;var b=q(a,cc),c=q(a,dc);return b&&c?cc+" "+dc:b||c?b?cc:dc:q(a,ac)?ac:_b}function V(a){this.id=w(),this.manager=null,this.options=i(a||{},this.defaults),this.options.enable=m(this.options.enable,!0),this.state=ec,this.simultaneous={},this.requireFail=[]}function W(a){return a&jc?"cancel":a&hc?"end":a&gc?"move":a&fc?"start":""}function X(a){return a==Gb?"down":a==Fb?"up":a==Db?"left":a==Eb?"right":""}function Y(a,b){var c=b.manager;return c?c.get(a):a}function Z(){V.apply(this,arguments)}function $(){Z.apply(this,arguments),this.pX=null,this.pY=null}function _(){Z.apply(this,arguments)}function ab(){V.apply(this,arguments),this._timer=null,this._input=null}function bb(){Z.apply(this,arguments)}function cb(){Z.apply(this,arguments)}function db(){V.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function eb(a,b){return b=b||{},b.recognizers=m(b.recognizers,eb.defaults.preset),new fb(a,b)}function fb(a,b){b=b||{},this.options=i(b,eb.defaults),this.options.inputTarget=this.options.inputTarget||a,this.handlers={},this.session={},this.recognizers=[],this.element=a,this.input=z(this),this.touchAction=new T(this,this.options.touchAction),gb(this,!0),g(b.recognizers,function(a){var b=this.add(new a[0](a[1]));a[2]&&b.recognizeWith(a[2]),a[3]&&b.requireFailure(a[3])},this)}function gb(a,b){var c=a.element;g(a.options.cssProps,function(a,d){c.style[v(c.style,d)]=b?a:""})}function hb(a,c){var d=b.createEvent("Event");d.initEvent(a,!0,!0),d.gesture=c,c.target.dispatchEvent(d)}var ib=["","webkit","moz","MS","ms","o"],jb=b.createElement("div"),kb="function",lb=Math.round,mb=Math.abs,nb=Date.now,ob=1,pb=/mobile|tablet|ip(ad|hone|od)|android/i,qb="ontouchstart"in a,rb=v(a,"PointerEvent")!==d,sb=qb&&pb.test(navigator.userAgent),tb="touch",ub="pen",vb="mouse",wb="kinect",xb=25,yb=1,zb=2,Ab=4,Bb=8,Cb=1,Db=2,Eb=4,Fb=8,Gb=16,Hb=Db|Eb,Ib=Fb|Gb,Jb=Hb|Ib,Kb=["x","y"],Lb=["clientX","clientY"];y.prototype={handler:function(){},init:function(){this.evEl&&n(this.element,this.evEl,this.domHandler),this.evTarget&&n(this.target,this.evTarget,this.domHandler),this.evWin&&n(x(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&o(this.element,this.evEl,this.domHandler),this.evTarget&&o(this.target,this.evTarget,this.domHandler),this.evWin&&o(x(this.element),this.evWin,this.domHandler)}};var Mb={mousedown:yb,mousemove:zb,mouseup:Ab},Nb="mousedown",Ob="mousemove mouseup";j(M,y,{handler:function(a){var b=Mb[a.type];b&yb&&0===a.button&&(this.pressed=!0),b&zb&&1!==a.which&&(b=Ab),this.pressed&&this.allow&&(b&Ab&&(this.pressed=!1),this.callback(this.manager,b,{pointers:[a],changedPointers:[a],pointerType:vb,srcEvent:a}))}});var Pb={pointerdown:yb,pointermove:zb,pointerup:Ab,pointercancel:Bb,pointerout:Bb},Qb={2:tb,3:ub,4:vb,5:wb},Rb="pointerdown",Sb="pointermove pointerup pointercancel";a.MSPointerEvent&&(Rb="MSPointerDown",Sb="MSPointerMove MSPointerUp MSPointerCancel"),j(N,y,{handler:function(a){var b=this.store,c=!1,d=a.type.toLowerCase().replace("ms",""),e=Pb[d],f=Qb[a.pointerType]||a.pointerType,g=f==tb,h=s(b,a.pointerId,"pointerId");e&yb&&(0===a.button||g)?0>h&&(b.push(a),h=b.length-1):e&(Ab|Bb)&&(c=!0),0>h||(b[h]=a,this.callback(this.manager,e,{pointers:b,changedPointers:[a],pointerType:f,srcEvent:a}),c&&b.splice(h,1))}});var Tb={touchstart:yb,touchmove:zb,touchend:Ab,touchcancel:Bb},Ub="touchstart",Vb="touchstart touchmove touchend touchcancel";j(O,y,{handler:function(a){var b=Tb[a.type];if(b===yb&&(this.started=!0),this.started){var c=P.call(this,a,b);b&(Ab|Bb)&&c[0].length-c[1].length===0&&(this.started=!1),this.callback(this.manager,b,{pointers:c[0],changedPointers:c[1],pointerType:tb,srcEvent:a})}}});var Wb={touchstart:yb,touchmove:zb,touchend:Ab,touchcancel:Bb},Xb="touchstart touchmove touchend touchcancel";j(Q,y,{handler:function(a){var b=Wb[a.type],c=R.call(this,a,b);c&&this.callback(this.manager,b,{pointers:c[0],changedPointers:c[1],pointerType:tb,srcEvent:a})}}),j(S,y,{handler:function(a,b,c){var d=c.pointerType==tb,e=c.pointerType==vb;if(d)this.mouse.allow=!1;else if(e&&!this.mouse.allow)return;b&(Ab|Bb)&&(this.mouse.allow=!0),this.callback(a,b,c)},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var Yb=v(jb.style,"touchAction"),Zb=Yb!==d,$b="compute",_b="auto",ac="manipulation",bc="none",cc="pan-x",dc="pan-y";T.prototype={set:function(a){a==$b&&(a=this.compute()),Zb&&(this.manager.element.style[Yb]=a),this.actions=a.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var a=[];return g(this.manager.recognizers,function(b){l(b.options.enable,[b])&&(a=a.concat(b.getTouchAction()))}),U(a.join(" "))},preventDefaults:function(a){if(!Zb){var b=a.srcEvent,c=a.offsetDirection;if(this.manager.session.prevented)return void b.preventDefault();var d=this.actions,e=q(d,bc),f=q(d,dc),g=q(d,cc);return e||f&&c&Hb||g&&c&Ib?this.preventSrc(b):void 0}},preventSrc:function(a){this.manager.session.prevented=!0,a.preventDefault()}};var ec=1,fc=2,gc=4,hc=8,ic=hc,jc=16,kc=32;V.prototype={defaults:{},set:function(a){return h(this.options,a),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(a){if(f(a,"recognizeWith",this))return this;var b=this.simultaneous;return a=Y(a,this),b[a.id]||(b[a.id]=a,a.recognizeWith(this)),this},dropRecognizeWith:function(a){return f(a,"dropRecognizeWith",this)?this:(a=Y(a,this),delete this.simultaneous[a.id],this)},requireFailure:function(a){if(f(a,"requireFailure",this))return this;var b=this.requireFail;return a=Y(a,this),-1===s(b,a)&&(b.push(a),a.requireFailure(this)),this},dropRequireFailure:function(a){if(f(a,"dropRequireFailure",this))return this;a=Y(a,this);var b=s(this.requireFail,a);return b>-1&&this.requireFail.splice(b,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(a){return!!this.simultaneous[a.id]},emit:function(a){function b(b){c.manager.emit(c.options.event+(b?W(d):""),a)}var c=this,d=this.state;hc>d&&b(!0),b(),d>=hc&&b(!0)},tryEmit:function(a){return this.canEmit()?this.emit(a):void(this.state=kc)},canEmit:function(){for(var a=0;a<this.requireFail.length;){if(!(this.requireFail[a].state&(kc|ec)))return!1;a++}return!0},recognize:function(a){var b=h({},a);return l(this.options.enable,[this,b])?(this.state&(ic|jc|kc)&&(this.state=ec),this.state=this.process(b),void(this.state&(fc|gc|hc|jc)&&this.tryEmit(b))):(this.reset(),void(this.state=kc))},process:function(){},getTouchAction:function(){},reset:function(){}},j(Z,V,{defaults:{pointers:1},attrTest:function(a){var b=this.options.pointers;return 0===b||a.pointers.length===b},process:function(a){var b=this.state,c=a.eventType,d=b&(fc|gc),e=this.attrTest(a);return d&&(c&Bb||!e)?b|jc:d||e?c&Ab?b|hc:b&fc?b|gc:fc:kc}}),j($,Z,{defaults:{event:"pan",threshold:10,pointers:1,direction:Jb},getTouchAction:function(){var a=this.options.direction,b=[];return a&Hb&&b.push(dc),a&Ib&&b.push(cc),b},directionTest:function(a){var b=this.options,c=!0,d=a.distance,e=a.direction,f=a.deltaX,g=a.deltaY;return e&b.direction||(b.direction&Hb?(e=0===f?Cb:0>f?Db:Eb,c=f!=this.pX,d=Math.abs(a.deltaX)):(e=0===g?Cb:0>g?Fb:Gb,c=g!=this.pY,d=Math.abs(a.deltaY))),a.direction=e,c&&d>b.threshold&&e&b.direction},attrTest:function(a){return Z.prototype.attrTest.call(this,a)&&(this.state&fc||!(this.state&fc)&&this.directionTest(a))},emit:function(a){this.pX=a.deltaX,this.pY=a.deltaY;var b=X(a.direction);b&&this.manager.emit(this.options.event+b,a),this._super.emit.call(this,a)}}),j(_,Z,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[bc]},attrTest:function(a){return this._super.attrTest.call(this,a)&&(Math.abs(a.scale-1)>this.options.threshold||this.state&fc)},emit:function(a){if(this._super.emit.call(this,a),1!==a.scale){var b=a.scale<1?"in":"out";this.manager.emit(this.options.event+b,a)}}}),j(ab,V,{defaults:{event:"press",pointers:1,time:500,threshold:5},getTouchAction:function(){return[_b]},process:function(a){var b=this.options,c=a.pointers.length===b.pointers,d=a.distance<b.threshold,f=a.deltaTime>b.time;if(this._input=a,!d||!c||a.eventType&(Ab|Bb)&&!f)this.reset();else if(a.eventType&yb)this.reset(),this._timer=e(function(){this.state=ic,this.tryEmit()},b.time,this);else if(a.eventType&Ab)return ic;return kc},reset:function(){clearTimeout(this._timer)},emit:function(a){this.state===ic&&(a&&a.eventType&Ab?this.manager.emit(this.options.event+"up",a):(this._input.timeStamp=nb(),this.manager.emit(this.options.event,this._input)))}}),j(bb,Z,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[bc]},attrTest:function(a){return this._super.attrTest.call(this,a)&&(Math.abs(a.rotation)>this.options.threshold||this.state&fc)}}),j(cb,Z,{defaults:{event:"swipe",threshold:10,velocity:.65,direction:Hb|Ib,pointers:1},getTouchAction:function(){return $.prototype.getTouchAction.call(this)},attrTest:function(a){var b,c=this.options.direction;return c&(Hb|Ib)?b=a.velocity:c&Hb?b=a.velocityX:c&Ib&&(b=a.velocityY),this._super.attrTest.call(this,a)&&c&a.direction&&a.distance>this.options.threshold&&mb(b)>this.options.velocity&&a.eventType&Ab},emit:function(a){var b=X(a.direction);b&&this.manager.emit(this.options.event+b,a),this.manager.emit(this.options.event,a)}}),j(db,V,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:2,posThreshold:10},getTouchAction:function(){return[ac]},process:function(a){var b=this.options,c=a.pointers.length===b.pointers,d=a.distance<b.threshold,f=a.deltaTime<b.time;if(this.reset(),a.eventType&yb&&0===this.count)return this.failTimeout();if(d&&f&&c){if(a.eventType!=Ab)return this.failTimeout();var g=this.pTime?a.timeStamp-this.pTime<b.interval:!0,h=!this.pCenter||I(this.pCenter,a.center)<b.posThreshold;this.pTime=a.timeStamp,this.pCenter=a.center,h&&g?this.count+=1:this.count=1,this._input=a;var i=this.count%b.taps;if(0===i)return this.hasRequireFailures()?(this._timer=e(function(){this.state=ic,this.tryEmit()},b.interval,this),fc):ic}return kc},failTimeout:function(){return this._timer=e(function(){this.state=kc},this.options.interval,this),kc},reset:function(){clearTimeout(this._timer)},emit:function(){this.state==ic&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),eb.VERSION="2.0.4",eb.defaults={domEvents:!1,touchAction:$b,enable:!0,inputTarget:null,inputClass:null,preset:[[bb,{enable:!1}],[_,{enable:!1},["rotate"]],[cb,{direction:Hb}],[$,{direction:Hb},["swipe"]],[db],[db,{event:"doubletap",taps:2},["tap"]],[ab]],cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}};var lc=1,mc=2;fb.prototype={set:function(a){return h(this.options,a),a.touchAction&&this.touchAction.update(),a.inputTarget&&(this.input.destroy(),this.input.target=a.inputTarget,this.input.init()),this},stop:function(a){this.session.stopped=a?mc:lc},recognize:function(a){var b=this.session;if(!b.stopped){this.touchAction.preventDefaults(a);var c,d=this.recognizers,e=b.curRecognizer;(!e||e&&e.state&ic)&&(e=b.curRecognizer=null);for(var f=0;f<d.length;)c=d[f],b.stopped===mc||e&&c!=e&&!c.canRecognizeWith(e)?c.reset():c.recognize(a),!e&&c.state&(fc|gc|hc)&&(e=b.curRecognizer=c),f++}},get:function(a){if(a instanceof V)return a;for(var b=this.recognizers,c=0;c<b.length;c++)if(b[c].options.event==a)return b[c];return null},add:function(a){if(f(a,"add",this))return this;var b=this.get(a.options.event);return b&&this.remove(b),this.recognizers.push(a),a.manager=this,this.touchAction.update(),a},remove:function(a){if(f(a,"remove",this))return this;var b=this.recognizers;return a=this.get(a),b.splice(s(b,a),1),this.touchAction.update(),this},on:function(a,b){var c=this.handlers;return g(r(a),function(a){c[a]=c[a]||[],c[a].push(b)}),this},off:function(a,b){var c=this.handlers;return g(r(a),function(a){b?c[a].splice(s(c[a],b),1):delete c[a]}),this},emit:function(a,b){this.options.domEvents&&hb(a,b);var c=this.handlers[a]&&this.handlers[a].slice();if(c&&c.length){b.type=a,b.preventDefault=function(){b.srcEvent.preventDefault()};for(var d=0;d<c.length;)c[d](b),d++}},destroy:function(){this.element&&gb(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},h(eb,{INPUT_START:yb,INPUT_MOVE:zb,INPUT_END:Ab,INPUT_CANCEL:Bb,STATE_POSSIBLE:ec,STATE_BEGAN:fc,STATE_CHANGED:gc,STATE_ENDED:hc,STATE_RECOGNIZED:ic,STATE_CANCELLED:jc,STATE_FAILED:kc,DIRECTION_NONE:Cb,DIRECTION_LEFT:Db,DIRECTION_RIGHT:Eb,DIRECTION_UP:Fb,DIRECTION_DOWN:Gb,DIRECTION_HORIZONTAL:Hb,DIRECTION_VERTICAL:Ib,DIRECTION_ALL:Jb,Manager:fb,Input:y,TouchAction:T,TouchInput:Q,MouseInput:M,PointerEventInput:N,TouchMouseInput:S,SingleTouchInput:O,Recognizer:V,AttrRecognizer:Z,Tap:db,Pan:$,Swipe:cb,Pinch:_,Rotate:bb,Press:ab,on:n,off:o,each:g,merge:i,extend:h,inherit:j,bindFn:k,prefixed:v}),typeof define==kb&&define.amd?define(function(){return eb}):"undefined"!=typeof module&&module.exports?module.exports=eb:a[c]=eb}(window,document,"Hammer");} | |
/*! VelocityJS.org (1.2.3). (C) 2014 Julian Shapiro. MIT @license: en.wikipedia.org/wiki/MIT_License */ | |
/*! VelocityJS.org jQuery Shim (1.0.1). (C) 2014 The jQuery Foundation. MIT @license: en.wikipedia.org/wiki/MIT_License. */ | |
!function(a){function b(a){var b=a.length,d=c.type(a);return"function"===d||c.isWindow(a)?!1:1===a.nodeType&&b?!0:"array"===d||0===b||"number"==typeof b&&b>0&&b-1 in a}if(!a.jQuery){var c=function(a,b){return new c.fn.init(a,b)};c.isWindow=function(a){return null!=a&&a==a.window},c.type=function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?e[g.call(a)]||"object":typeof a},c.isArray=Array.isArray||function(a){return"array"===c.type(a)},c.isPlainObject=function(a){var b;if(!a||"object"!==c.type(a)||a.nodeType||c.isWindow(a))return!1;try{if(a.constructor&&!f.call(a,"constructor")&&!f.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(d){return!1}for(b in a);return void 0===b||f.call(a,b)},c.each=function(a,c,d){var e,f=0,g=a.length,h=b(a);if(d){if(h)for(;g>f&&(e=c.apply(a[f],d),e!==!1);f++);else for(f in a)if(e=c.apply(a[f],d),e===!1)break}else if(h)for(;g>f&&(e=c.call(a[f],f,a[f]),e!==!1);f++);else for(f in a)if(e=c.call(a[f],f,a[f]),e===!1)break;return a},c.data=function(a,b,e){if(void 0===e){var f=a[c.expando],g=f&&d[f];if(void 0===b)return g;if(g&&b in g)return g[b]}else if(void 0!==b){var f=a[c.expando]||(a[c.expando]=++c.uuid);return d[f]=d[f]||{},d[f][b]=e,e}},c.removeData=function(a,b){var e=a[c.expando],f=e&&d[e];f&&c.each(b,function(a,b){delete f[b]})},c.extend=function(){var a,b,d,e,f,g,h=arguments[0]||{},i=1,j=arguments.length,k=!1;for("boolean"==typeof h&&(k=h,h=arguments[i]||{},i++),"object"!=typeof h&&"function"!==c.type(h)&&(h={}),i===j&&(h=this,i--);j>i;i++)if(null!=(f=arguments[i]))for(e in f)a=h[e],d=f[e],h!==d&&(k&&d&&(c.isPlainObject(d)||(b=c.isArray(d)))?(b?(b=!1,g=a&&c.isArray(a)?a:[]):g=a&&c.isPlainObject(a)?a:{},h[e]=c.extend(k,g,d)):void 0!==d&&(h[e]=d));return h},c.queue=function(a,d,e){function f(a,c){var d=c||[];return null!=a&&(b(Object(a))?!function(a,b){for(var c=+b.length,d=0,e=a.length;c>d;)a[e++]=b[d++];if(c!==c)for(;void 0!==b[d];)a[e++]=b[d++];return a.length=e,a}(d,"string"==typeof a?[a]:a):[].push.call(d,a)),d}if(a){d=(d||"fx")+"queue";var g=c.data(a,d);return e?(!g||c.isArray(e)?g=c.data(a,d,f(e)):g.push(e),g):g||[]}},c.dequeue=function(a,b){c.each(a.nodeType?[a]:a,function(a,d){b=b||"fx";var e=c.queue(d,b),f=e.shift();"inprogress"===f&&(f=e.shift()),f&&("fx"===b&&e.unshift("inprogress"),f.call(d,function(){c.dequeue(d,b)}))})},c.fn=c.prototype={init:function(a){if(a.nodeType)return this[0]=a,this;throw new Error("Not a DOM node.")},offset:function(){var b=this[0].getBoundingClientRect?this[0].getBoundingClientRect():{top:0,left:0};return{top:b.top+(a.pageYOffset||document.scrollTop||0)-(document.clientTop||0),left:b.left+(a.pageXOffset||document.scrollLeft||0)-(document.clientLeft||0)}},position:function(){function a(){for(var a=this.offsetParent||document;a&&"html"===!a.nodeType.toLowerCase&&"static"===a.style.position;)a=a.offsetParent;return a||document}var b=this[0],a=a.apply(b),d=this.offset(),e=/^(?:body|html)$/i.test(a.nodeName)?{top:0,left:0}:c(a).offset();return d.top-=parseFloat(b.style.marginTop)||0,d.left-=parseFloat(b.style.marginLeft)||0,a.style&&(e.top+=parseFloat(a.style.borderTopWidth)||0,e.left+=parseFloat(a.style.borderLeftWidth)||0),{top:d.top-e.top,left:d.left-e.left}}};var d={};c.expando="velocity"+(new Date).getTime(),c.uuid=0;for(var e={},f=e.hasOwnProperty,g=e.toString,h="Boolean Number String Function Array Date RegExp Object Error".split(" "),i=0;i<h.length;i++)e["[object "+h[i]+"]"]=h[i].toLowerCase();c.fn.init.prototype=c.fn,a.Velocity={Utilities:c}}}(window),function(a){"object"==typeof module&&"object"==typeof module.exports?module.exports=a():"function"==typeof define&&define.amd?define(a):a()}(function(){return function(a,b,c,d){function e(a){for(var b=-1,c=a?a.length:0,d=[];++b<c;){var e=a[b];e&&d.push(e)}return d}function f(a){return p.isWrapped(a)?a=[].slice.call(a):p.isNode(a)&&(a=[a]),a}function g(a){var b=m.data(a,"velocity");return null===b?d:b}function h(a){return function(b){return Math.round(b*a)*(1/a)}}function i(a,c,d,e){function f(a,b){return 1-3*b+3*a}function g(a,b){return 3*b-6*a}function h(a){return 3*a}function i(a,b,c){return((f(b,c)*a+g(b,c))*a+h(b))*a}function j(a,b,c){return 3*f(b,c)*a*a+2*g(b,c)*a+h(b)}function k(b,c){for(var e=0;p>e;++e){var f=j(c,a,d);if(0===f)return c;var g=i(c,a,d)-b;c-=g/f}return c}function l(){for(var b=0;t>b;++b)x[b]=i(b*u,a,d)}function m(b,c,e){var f,g,h=0;do g=c+(e-c)/2,f=i(g,a,d)-b,f>0?e=g:c=g;while(Math.abs(f)>r&&++h<s);return g}function n(b){for(var c=0,e=1,f=t-1;e!=f&&x[e]<=b;++e)c+=u;--e;var g=(b-x[e])/(x[e+1]-x[e]),h=c+g*u,i=j(h,a,d);return i>=q?k(b,h):0==i?h:m(b,c,c+u)}function o(){y=!0,(a!=c||d!=e)&&l()}var p=4,q=.001,r=1e-7,s=10,t=11,u=1/(t-1),v="Float32Array"in b;if(4!==arguments.length)return!1;for(var w=0;4>w;++w)if("number"!=typeof arguments[w]||isNaN(arguments[w])||!isFinite(arguments[w]))return!1;a=Math.min(a,1),d=Math.min(d,1),a=Math.max(a,0),d=Math.max(d,0);var x=v?new Float32Array(t):new Array(t),y=!1,z=function(b){return y||o(),a===c&&d===e?b:0===b?0:1===b?1:i(n(b),c,e)};z.getControlPoints=function(){return[{x:a,y:c},{x:d,y:e}]};var A="generateBezier("+[a,c,d,e]+")";return z.toString=function(){return A},z}function j(a,b){var c=a;return p.isString(a)?t.Easings[a]||(c=!1):c=p.isArray(a)&&1===a.length?h.apply(null,a):p.isArray(a)&&2===a.length?u.apply(null,a.concat([b])):p.isArray(a)&&4===a.length?i.apply(null,a):!1,c===!1&&(c=t.Easings[t.defaults.easing]?t.defaults.easing:s),c}function k(a){if(a){var b=(new Date).getTime(),c=t.State.calls.length;c>1e4&&(t.State.calls=e(t.State.calls));for(var f=0;c>f;f++)if(t.State.calls[f]){var h=t.State.calls[f],i=h[0],j=h[2],n=h[3],o=!!n,q=null;n||(n=t.State.calls[f][3]=b-16);for(var r=Math.min((b-n)/j.duration,1),s=0,u=i.length;u>s;s++){var w=i[s],y=w.element;if(g(y)){var z=!1;if(j.display!==d&&null!==j.display&&"none"!==j.display){if("flex"===j.display){var A=["-webkit-box","-moz-box","-ms-flexbox","-webkit-flex"];m.each(A,function(a,b){v.setPropertyValue(y,"display",b)})}v.setPropertyValue(y,"display",j.display)}j.visibility!==d&&"hidden"!==j.visibility&&v.setPropertyValue(y,"visibility",j.visibility);for(var B in w)if("element"!==B){var C,D=w[B],E=p.isString(D.easing)?t.Easings[D.easing]:D.easing;if(1===r)C=D.endValue;else{var F=D.endValue-D.startValue;if(C=D.startValue+F*E(r,j,F),!o&&C===D.currentValue)continue}if(D.currentValue=C,"tween"===B)q=C;else{if(v.Hooks.registered[B]){var G=v.Hooks.getRoot(B),H=g(y).rootPropertyValueCache[G];H&&(D.rootPropertyValue=H)}var I=v.setPropertyValue(y,B,D.currentValue+(0===parseFloat(C)?"":D.unitType),D.rootPropertyValue,D.scrollData);v.Hooks.registered[B]&&(g(y).rootPropertyValueCache[G]=v.Normalizations.registered[G]?v.Normalizations.registered[G]("extract",null,I[1]):I[1]),"transform"===I[0]&&(z=!0)}}j.mobileHA&&g(y).transformCache.translate3d===d&&(g(y).transformCache.translate3d="(0px, 0px, 0px)",z=!0),z&&v.flushTransformCache(y)}}j.display!==d&&"none"!==j.display&&(t.State.calls[f][2].display=!1),j.visibility!==d&&"hidden"!==j.visibility&&(t.State.calls[f][2].visibility=!1),j.progress&&j.progress.call(h[1],h[1],r,Math.max(0,n+j.duration-b),n,q),1===r&&l(f)}}t.State.isTicking&&x(k)}function l(a,b){if(!t.State.calls[a])return!1;for(var c=t.State.calls[a][0],e=t.State.calls[a][1],f=t.State.calls[a][2],h=t.State.calls[a][4],i=!1,j=0,k=c.length;k>j;j++){var l=c[j].element;if(b||f.loop||("none"===f.display&&v.setPropertyValue(l,"display",f.display),"hidden"===f.visibility&&v.setPropertyValue(l,"visibility",f.visibility)),f.loop!==!0&&(m.queue(l)[1]===d||!/\.velocityQueueEntryFlag/i.test(m.queue(l)[1]))&&g(l)){g(l).isAnimating=!1,g(l).rootPropertyValueCache={};var n=!1;m.each(v.Lists.transforms3D,function(a,b){var c=/^scale/.test(b)?1:0,e=g(l).transformCache[b];g(l).transformCache[b]!==d&&new RegExp("^\\("+c+"[^.]").test(e)&&(n=!0,delete g(l).transformCache[b])}),f.mobileHA&&(n=!0,delete g(l).transformCache.translate3d),n&&v.flushTransformCache(l),v.Values.removeClass(l,"velocity-animating")}if(!b&&f.complete&&!f.loop&&j===k-1)try{f.complete.call(e,e)}catch(o){setTimeout(function(){throw o},1)}h&&f.loop!==!0&&h(e),g(l)&&f.loop===!0&&!b&&(m.each(g(l).tweensContainer,function(a,b){/^rotate/.test(a)&&360===parseFloat(b.endValue)&&(b.endValue=0,b.startValue=360),/^backgroundPosition/.test(a)&&100===parseFloat(b.endValue)&&"%"===b.unitType&&(b.endValue=0,b.startValue=100)}),t(l,"reverse",{loop:!0,delay:f.delay})),f.queue!==!1&&m.dequeue(l,f.queue)}t.State.calls[a]=!1;for(var p=0,q=t.State.calls.length;q>p;p++)if(t.State.calls[p]!==!1){i=!0;break}i===!1&&(t.State.isTicking=!1,delete t.State.calls,t.State.calls=[])}var m,n=function(){if(c.documentMode)return c.documentMode;for(var a=7;a>4;a--){var b=c.createElement("div");if(b.innerHTML="<!--[if IE "+a+"]><span></span><![endif]-->",b.getElementsByTagName("span").length)return b=null,a}return d}(),o=function(){var a=0;return b.webkitRequestAnimationFrame||b.mozRequestAnimationFrame||function(b){var c,d=(new Date).getTime();return c=Math.max(0,16-(d-a)),a=d+c,setTimeout(function(){b(d+c)},c)}}(),p={isString:function(a){return"string"==typeof a},isArray:Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)},isFunction:function(a){return"[object Function]"===Object.prototype.toString.call(a)},isNode:function(a){return a&&a.nodeType},isNodeList:function(a){return"object"==typeof a&&/^\[object (HTMLCollection|NodeList|Object)\]$/.test(Object.prototype.toString.call(a))&&a.length!==d&&(0===a.length||"object"==typeof a[0]&&a[0].nodeType>0)},isWrapped:function(a){return a&&(a.jquery||b.Zepto&&b.Zepto.zepto.isZ(a))},isSVG:function(a){return b.SVGElement&&a instanceof b.SVGElement},isEmptyObject:function(a){for(var b in a)return!1;return!0}},q=!1;if(a.fn&&a.fn.jquery?(m=a,q=!0):m=b.Velocity.Utilities,8>=n&&!q)throw new Error("Velocity: IE8 and below require jQuery to be loaded before Velocity.");if(7>=n)return void(jQuery.fn.velocity=jQuery.fn.animate);var r=400,s="swing",t={State:{isMobile:/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),isAndroid:/Android/i.test(navigator.userAgent),isGingerbread:/Android 2\.3\.[3-7]/i.test(navigator.userAgent),isChrome:b.chrome,isFirefox:/Firefox/i.test(navigator.userAgent),prefixElement:c.createElement("div"),prefixMatches:{},scrollAnchor:null,scrollPropertyLeft:null,scrollPropertyTop:null,isTicking:!1,calls:[]},CSS:{},Utilities:m,Redirects:{},Easings:{},Promise:b.Promise,defaults:{queue:"",duration:r,easing:s,begin:d,complete:d,progress:d,display:d,visibility:d,loop:!1,delay:!1,mobileHA:!0,_cacheValues:!0},init:function(a){m.data(a,"velocity",{isSVG:p.isSVG(a),isAnimating:!1,computedStyle:null,tweensContainer:null,rootPropertyValueCache:{},transformCache:{}})},hook:null,mock:!1,version:{major:1,minor:2,patch:2},debug:!1};b.pageYOffset!==d?(t.State.scrollAnchor=b,t.State.scrollPropertyLeft="pageXOffset",t.State.scrollPropertyTop="pageYOffset"):(t.State.scrollAnchor=c.documentElement||c.body.parentNode||c.body,t.State.scrollPropertyLeft="scrollLeft",t.State.scrollPropertyTop="scrollTop");var u=function(){function a(a){return-a.tension*a.x-a.friction*a.v}function b(b,c,d){var e={x:b.x+d.dx*c,v:b.v+d.dv*c,tension:b.tension,friction:b.friction};return{dx:e.v,dv:a(e)}}function c(c,d){var e={dx:c.v,dv:a(c)},f=b(c,.5*d,e),g=b(c,.5*d,f),h=b(c,d,g),i=1/6*(e.dx+2*(f.dx+g.dx)+h.dx),j=1/6*(e.dv+2*(f.dv+g.dv)+h.dv);return c.x=c.x+i*d,c.v=c.v+j*d,c}return function d(a,b,e){var f,g,h,i={x:-1,v:0,tension:null,friction:null},j=[0],k=0,l=1e-4,m=.016;for(a=parseFloat(a)||500,b=parseFloat(b)||20,e=e||null,i.tension=a,i.friction=b,f=null!==e,f?(k=d(a,b),g=k/e*m):g=m;;)if(h=c(h||i,g),j.push(1+h.x),k+=16,!(Math.abs(h.x)>l&&Math.abs(h.v)>l))break;return f?function(a){return j[a*(j.length-1)|0]}:k}}();t.Easings={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2},spring:function(a){return 1-Math.cos(4.5*a*Math.PI)*Math.exp(6*-a)}},m.each([["ease",[.25,.1,.25,1]],["ease-in",[.42,0,1,1]],["ease-out",[0,0,.58,1]],["ease-in-out",[.42,0,.58,1]],["easeInSine",[.47,0,.745,.715]],["easeOutSine",[.39,.575,.565,1]],["easeInOutSine",[.445,.05,.55,.95]],["easeInQuad",[.55,.085,.68,.53]],["easeOutQuad",[.25,.46,.45,.94]],["easeInOutQuad",[.455,.03,.515,.955]],["easeInCubic",[.55,.055,.675,.19]],["easeOutCubic",[.215,.61,.355,1]],["easeInOutCubic",[.645,.045,.355,1]],["easeInQuart",[.895,.03,.685,.22]],["easeOutQuart",[.165,.84,.44,1]],["easeInOutQuart",[.77,0,.175,1]],["easeInQuint",[.755,.05,.855,.06]],["easeOutQuint",[.23,1,.32,1]],["easeInOutQuint",[.86,0,.07,1]],["easeInExpo",[.95,.05,.795,.035]],["easeOutExpo",[.19,1,.22,1]],["easeInOutExpo",[1,0,0,1]],["easeInCirc",[.6,.04,.98,.335]],["easeOutCirc",[.075,.82,.165,1]],["easeInOutCirc",[.785,.135,.15,.86]]],function(a,b){t.Easings[b[0]]=i.apply(null,b[1])});var v=t.CSS={RegEx:{isHex:/^#([A-f\d]{3}){1,2}$/i,valueUnwrap:/^[A-z]+\((.*)\)$/i,wrappedValueAlreadyExtracted:/[0-9.]+ [0-9.]+ [0-9.]+( [0-9.]+)?/,valueSplit:/([A-z]+\(.+\))|(([A-z0-9#-.]+?)(?=\s|$))/gi},Lists:{colors:["fill","stroke","stopColor","color","backgroundColor","borderColor","borderTopColor","borderRightColor","borderBottomColor","borderLeftColor","outlineColor"],transformsBase:["translateX","translateY","scale","scaleX","scaleY","skewX","skewY","rotateZ"],transforms3D:["transformPerspective","translateZ","scaleZ","rotateX","rotateY"]},Hooks:{templates:{textShadow:["Color X Y Blur","black 0px 0px 0px"],boxShadow:["Color X Y Blur Spread","black 0px 0px 0px 0px"],clip:["Top Right Bottom Left","0px 0px 0px 0px"],backgroundPosition:["X Y","0% 0%"],transformOrigin:["X Y Z","50% 50% 0px"],perspectiveOrigin:["X Y","50% 50%"]},registered:{},register:function(){for(var a=0;a<v.Lists.colors.length;a++){var b="color"===v.Lists.colors[a]?"0 0 0 1":"255 255 255 1";v.Hooks.templates[v.Lists.colors[a]]=["Red Green Blue Alpha",b]}var c,d,e;if(n)for(c in v.Hooks.templates){d=v.Hooks.templates[c],e=d[0].split(" ");var f=d[1].match(v.RegEx.valueSplit);"Color"===e[0]&&(e.push(e.shift()),f.push(f.shift()),v.Hooks.templates[c]=[e.join(" "),f.join(" ")])}for(c in v.Hooks.templates){d=v.Hooks.templates[c],e=d[0].split(" ");for(var a in e){var g=c+e[a],h=a;v.Hooks.registered[g]=[c,h]}}},getRoot:function(a){var b=v.Hooks.registered[a];return b?b[0]:a},cleanRootPropertyValue:function(a,b){return v.RegEx.valueUnwrap.test(b)&&(b=b.match(v.RegEx.valueUnwrap)[1]),v.Values.isCSSNullValue(b)&&(b=v.Hooks.templates[a][1]),b},extractValue:function(a,b){var c=v.Hooks.registered[a];if(c){var d=c[0],e=c[1];return b=v.Hooks.cleanRootPropertyValue(d,b),b.toString().match(v.RegEx.valueSplit)[e]}return b},injectValue:function(a,b,c){var d=v.Hooks.registered[a];if(d){var e,f,g=d[0],h=d[1];return c=v.Hooks.cleanRootPropertyValue(g,c),e=c.toString().match(v.RegEx.valueSplit),e[h]=b,f=e.join(" ")}return c}},Normalizations:{registered:{clip:function(a,b,c){switch(a){case"name":return"clip";case"extract":var d;return v.RegEx.wrappedValueAlreadyExtracted.test(c)?d=c:(d=c.toString().match(v.RegEx.valueUnwrap),d=d?d[1].replace(/,(\s+)?/g," "):c),d;case"inject":return"rect("+c+")"}},blur:function(a,b,c){switch(a){case"name":return t.State.isFirefox?"filter":"-webkit-filter";case"extract":var d=parseFloat(c);if(!d&&0!==d){var e=c.toString().match(/blur\(([0-9]+[A-z]+)\)/i);d=e?e[1]:0}return d;case"inject":return parseFloat(c)?"blur("+c+")":"none"}},opacity:function(a,b,c){if(8>=n)switch(a){case"name":return"filter";case"extract":var d=c.toString().match(/alpha\(opacity=(.*)\)/i);return c=d?d[1]/100:1;case"inject":return b.style.zoom=1,parseFloat(c)>=1?"":"alpha(opacity="+parseInt(100*parseFloat(c),10)+")"}else switch(a){case"name":return"opacity";case"extract":return c;case"inject":return c}}},register:function(){9>=n||t.State.isGingerbread||(v.Lists.transformsBase=v.Lists.transformsBase.concat(v.Lists.transforms3D));for(var a=0;a<v.Lists.transformsBase.length;a++)!function(){var b=v.Lists.transformsBase[a];v.Normalizations.registered[b]=function(a,c,e){switch(a){case"name":return"transform";case"extract":return g(c)===d||g(c).transformCache[b]===d?/^scale/i.test(b)?1:0:g(c).transformCache[b].replace(/[()]/g,"");case"inject":var f=!1;switch(b.substr(0,b.length-1)){case"translate":f=!/(%|px|em|rem|vw|vh|\d)$/i.test(e);break;case"scal":case"scale":t.State.isAndroid&&g(c).transformCache[b]===d&&1>e&&(e=1),f=!/(\d)$/i.test(e);break;case"skew":f=!/(deg|\d)$/i.test(e);break;case"rotate":f=!/(deg|\d)$/i.test(e)}return f||(g(c).transformCache[b]="("+e+")"),g(c).transformCache[b]}}}();for(var a=0;a<v.Lists.colors.length;a++)!function(){var b=v.Lists.colors[a];v.Normalizations.registered[b]=function(a,c,e){switch(a){case"name":return b;case"extract":var f;if(v.RegEx.wrappedValueAlreadyExtracted.test(e))f=e;else{var g,h={black:"rgb(0, 0, 0)",blue:"rgb(0, 0, 255)",gray:"rgb(128, 128, 128)",green:"rgb(0, 128, 0)",red:"rgb(255, 0, 0)",white:"rgb(255, 255, 255)"};/^[A-z]+$/i.test(e)?g=h[e]!==d?h[e]:h.black:v.RegEx.isHex.test(e)?g="rgb("+v.Values.hexToRgb(e).join(" ")+")":/^rgba?\(/i.test(e)||(g=h.black),f=(g||e).toString().match(v.RegEx.valueUnwrap)[1].replace(/,(\s+)?/g," ")}return 8>=n||3!==f.split(" ").length||(f+=" 1"),f;case"inject":return 8>=n?4===e.split(" ").length&&(e=e.split(/\s+/).slice(0,3).join(" ")):3===e.split(" ").length&&(e+=" 1"),(8>=n?"rgb":"rgba")+"("+e.replace(/\s+/g,",").replace(/\.(\d)+(?=,)/g,"")+")"}}}()}},Names:{camelCase:function(a){return a.replace(/-(\w)/g,function(a,b){return b.toUpperCase()})},SVGAttribute:function(a){var b="width|height|x|y|cx|cy|r|rx|ry|x1|x2|y1|y2";return(n||t.State.isAndroid&&!t.State.isChrome)&&(b+="|transform"),new RegExp("^("+b+")$","i").test(a)},prefixCheck:function(a){if(t.State.prefixMatches[a])return[t.State.prefixMatches[a],!0];for(var b=["","Webkit","Moz","ms","O"],c=0,d=b.length;d>c;c++){var e;if(e=0===c?a:b[c]+a.replace(/^\w/,function(a){return a.toUpperCase()}),p.isString(t.State.prefixElement.style[e]))return t.State.prefixMatches[a]=e,[e,!0]}return[a,!1]}},Values:{hexToRgb:function(a){var b,c=/^#?([a-f\d])([a-f\d])([a-f\d])$/i,d=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i;return a=a.replace(c,function(a,b,c,d){return b+b+c+c+d+d}),b=d.exec(a),b?[parseInt(b[1],16),parseInt(b[2],16),parseInt(b[3],16)]:[0,0,0]},isCSSNullValue:function(a){return 0==a||/^(none|auto|transparent|(rgba\(0, ?0, ?0, ?0\)))$/i.test(a)},getUnitType:function(a){return/^(rotate|skew)/i.test(a)?"deg":/(^(scale|scaleX|scaleY|scaleZ|alpha|flexGrow|flexHeight|zIndex|fontWeight)$)|((opacity|red|green|blue|alpha)$)/i.test(a)?"":"px"},getDisplayType:function(a){var b=a&&a.tagName.toString().toLowerCase();return/^(b|big|i|small|tt|abbr|acronym|cite|code|dfn|em|kbd|strong|samp|var|a|bdo|br|img|map|object|q|script|span|sub|sup|button|input|label|select|textarea)$/i.test(b)?"inline":/^(li)$/i.test(b)?"list-item":/^(tr)$/i.test(b)?"table-row":/^(table)$/i.test(b)?"table":/^(tbody)$/i.test(b)?"table-row-group":"block"},addClass:function(a,b){a.classList?a.classList.add(b):a.className+=(a.className.length?" ":"")+b},removeClass:function(a,b){a.classList?a.classList.remove(b):a.className=a.className.toString().replace(new RegExp("(^|\\s)"+b.split(" ").join("|")+"(\\s|$)","gi")," ")}},getPropertyValue:function(a,c,e,f){function h(a,c){function e(){j&&v.setPropertyValue(a,"display","none")}var i=0;if(8>=n)i=m.css(a,c);else{var j=!1;if(/^(width|height)$/.test(c)&&0===v.getPropertyValue(a,"display")&&(j=!0,v.setPropertyValue(a,"display",v.Values.getDisplayType(a))),!f){if("height"===c&&"border-box"!==v.getPropertyValue(a,"boxSizing").toString().toLowerCase()){var k=a.offsetHeight-(parseFloat(v.getPropertyValue(a,"borderTopWidth"))||0)-(parseFloat(v.getPropertyValue(a,"borderBottomWidth"))||0)-(parseFloat(v.getPropertyValue(a,"paddingTop"))||0)-(parseFloat(v.getPropertyValue(a,"paddingBottom"))||0);return e(),k}if("width"===c&&"border-box"!==v.getPropertyValue(a,"boxSizing").toString().toLowerCase()){var l=a.offsetWidth-(parseFloat(v.getPropertyValue(a,"borderLeftWidth"))||0)-(parseFloat(v.getPropertyValue(a,"borderRightWidth"))||0)-(parseFloat(v.getPropertyValue(a,"paddingLeft"))||0)-(parseFloat(v.getPropertyValue(a,"paddingRight"))||0);return e(),l}}var o;o=g(a)===d?b.getComputedStyle(a,null):g(a).computedStyle?g(a).computedStyle:g(a).computedStyle=b.getComputedStyle(a,null),"borderColor"===c&&(c="borderTopColor"),i=9===n&&"filter"===c?o.getPropertyValue(c):o[c],(""===i||null===i)&&(i=a.style[c]),e()}if("auto"===i&&/^(top|right|bottom|left)$/i.test(c)){var p=h(a,"position");("fixed"===p||"absolute"===p&&/top|left/i.test(c))&&(i=m(a).position()[c]+"px")}return i}var i;if(v.Hooks.registered[c]){var j=c,k=v.Hooks.getRoot(j);e===d&&(e=v.getPropertyValue(a,v.Names.prefixCheck(k)[0])),v.Normalizations.registered[k]&&(e=v.Normalizations.registered[k]("extract",a,e)),i=v.Hooks.extractValue(j,e)}else if(v.Normalizations.registered[c]){var l,o;l=v.Normalizations.registered[c]("name",a),"transform"!==l&&(o=h(a,v.Names.prefixCheck(l)[0]),v.Values.isCSSNullValue(o)&&v.Hooks.templates[c]&&(o=v.Hooks.templates[c][1])),i=v.Normalizations.registered[c]("extract",a,o)}if(!/^[\d-]/.test(i))if(g(a)&&g(a).isSVG&&v.Names.SVGAttribute(c))if(/^(height|width)$/i.test(c))try{i=a.getBBox()[c]}catch(p){i=0}else i=a.getAttribute(c);else i=h(a,v.Names.prefixCheck(c)[0]);return v.Values.isCSSNullValue(i)&&(i=0),t.debug>=2&&console.log("Get "+c+": "+i),i},setPropertyValue:function(a,c,d,e,f){var h=c;if("scroll"===c)f.container?f.container["scroll"+f.direction]=d:"Left"===f.direction?b.scrollTo(d,f.alternateValue):b.scrollTo(f.alternateValue,d);else if(v.Normalizations.registered[c]&&"transform"===v.Normalizations.registered[c]("name",a))v.Normalizations.registered[c]("inject",a,d),h="transform",d=g(a).transformCache[c];else{if(v.Hooks.registered[c]){var i=c,j=v.Hooks.getRoot(c);e=e||v.getPropertyValue(a,j),d=v.Hooks.injectValue(i,d,e),c=j}if(v.Normalizations.registered[c]&&(d=v.Normalizations.registered[c]("inject",a,d),c=v.Normalizations.registered[c]("name",a)),h=v.Names.prefixCheck(c)[0],8>=n)try{a.style[h]=d}catch(k){t.debug&&console.log("Browser does not support ["+d+"] for ["+h+"]")}else g(a)&&g(a).isSVG&&v.Names.SVGAttribute(c)?a.setAttribute(c,d):a.style[h]=d;t.debug>=2&&console.log("Set "+c+" ("+h+"): "+d)}return[h,d]},flushTransformCache:function(a){function b(b){return parseFloat(v.getPropertyValue(a,b))}var c="";if((n||t.State.isAndroid&&!t.State.isChrome)&&g(a).isSVG){var d={translate:[b("translateX"),b("translateY")],skewX:[b("skewX")],skewY:[b("skewY")],scale:1!==b("scale")?[b("scale"),b("scale")]:[b("scaleX"),b("scaleY")],rotate:[b("rotateZ"),0,0]};m.each(g(a).transformCache,function(a){/^translate/i.test(a)?a="translate":/^scale/i.test(a)?a="scale":/^rotate/i.test(a)&&(a="rotate"),d[a]&&(c+=a+"("+d[a].join(" ")+") ",delete d[a])})}else{var e,f;m.each(g(a).transformCache,function(b){return e=g(a).transformCache[b],"transformPerspective"===b?(f=e,!0):(9===n&&"rotateZ"===b&&(b="rotate"),void(c+=b+e+" "))}),f&&(c="perspective"+f+" "+c)}v.setPropertyValue(a,"transform",c)}};v.Hooks.register(),v.Normalizations.register(),t.hook=function(a,b,c){var e=d;return a=f(a),m.each(a,function(a,f){if(g(f)===d&&t.init(f),c===d)e===d&&(e=t.CSS.getPropertyValue(f,b));else{var h=t.CSS.setPropertyValue(f,b,c);"transform"===h[0]&&t.CSS.flushTransformCache(f),e=h}}),e};var w=function(){function a(){return h?B.promise||null:i}function e(){function a(){function a(a,b){var c=d,e=d,g=d;return p.isArray(a)?(c=a[0],!p.isArray(a[1])&&/^[\d-]/.test(a[1])||p.isFunction(a[1])||v.RegEx.isHex.test(a[1])?g=a[1]:(p.isString(a[1])&&!v.RegEx.isHex.test(a[1])||p.isArray(a[1]))&&(e=b?a[1]:j(a[1],h.duration),a[2]!==d&&(g=a[2]))):c=a,b||(e=e||h.easing),p.isFunction(c)&&(c=c.call(f,y,x)),p.isFunction(g)&&(g=g.call(f,y,x)),[c||0,e,g]}function l(a,b){var c,d;return d=(b||"0").toString().toLowerCase().replace(/[%A-z]+$/,function(a){return c=a,""}),c||(c=v.Values.getUnitType(a)),[d,c]}function n(){var a={myParent:f.parentNode||c.body,position:v.getPropertyValue(f,"position"),fontSize:v.getPropertyValue(f,"fontSize")},d=a.position===I.lastPosition&&a.myParent===I.lastParent,e=a.fontSize===I.lastFontSize;I.lastParent=a.myParent,I.lastPosition=a.position,I.lastFontSize=a.fontSize;var h=100,i={};if(e&&d)i.emToPx=I.lastEmToPx,i.percentToPxWidth=I.lastPercentToPxWidth,i.percentToPxHeight=I.lastPercentToPxHeight;else{var j=g(f).isSVG?c.createElementNS("http://www.w3.org/2000/svg","rect"):c.createElement("div");t.init(j),a.myParent.appendChild(j),m.each(["overflow","overflowX","overflowY"],function(a,b){t.CSS.setPropertyValue(j,b,"hidden")}),t.CSS.setPropertyValue(j,"position",a.position),t.CSS.setPropertyValue(j,"fontSize",a.fontSize),t.CSS.setPropertyValue(j,"boxSizing","content-box"),m.each(["minWidth","maxWidth","width","minHeight","maxHeight","height"],function(a,b){t.CSS.setPropertyValue(j,b,h+"%")}),t.CSS.setPropertyValue(j,"paddingLeft",h+"em"),i.percentToPxWidth=I.lastPercentToPxWidth=(parseFloat(v.getPropertyValue(j,"width",null,!0))||1)/h,i.percentToPxHeight=I.lastPercentToPxHeight=(parseFloat(v.getPropertyValue(j,"height",null,!0))||1)/h,i.emToPx=I.lastEmToPx=(parseFloat(v.getPropertyValue(j,"paddingLeft"))||1)/h,a.myParent.removeChild(j)}return null===I.remToPx&&(I.remToPx=parseFloat(v.getPropertyValue(c.body,"fontSize"))||16),null===I.vwToPx&&(I.vwToPx=parseFloat(b.innerWidth)/100,I.vhToPx=parseFloat(b.innerHeight)/100),i.remToPx=I.remToPx,i.vwToPx=I.vwToPx,i.vhToPx=I.vhToPx,t.debug>=1&&console.log("Unit ratios: "+JSON.stringify(i),f),i}if(h.begin&&0===y)try{h.begin.call(o,o)}catch(r){setTimeout(function(){throw r},1)}if("scroll"===C){var u,w,z,A=/^x$/i.test(h.axis)?"Left":"Top",D=parseFloat(h.offset)||0;h.container?p.isWrapped(h.container)||p.isNode(h.container)?(h.container=h.container[0]||h.container,u=h.container["scroll"+A],z=u+m(f).position()[A.toLowerCase()]+D):h.container=null:(u=t.State.scrollAnchor[t.State["scrollProperty"+A]],w=t.State.scrollAnchor[t.State["scrollProperty"+("Left"===A?"Top":"Left")]],z=m(f).offset()[A.toLowerCase()]+D),i={scroll:{rootPropertyValue:!1,startValue:u,currentValue:u,endValue:z,unitType:"",easing:h.easing,scrollData:{container:h.container,direction:A,alternateValue:w}},element:f},t.debug&&console.log("tweensContainer (scroll): ",i.scroll,f)}else if("reverse"===C){if(!g(f).tweensContainer)return void m.dequeue(f,h.queue);"none"===g(f).opts.display&&(g(f).opts.display="auto"),"hidden"===g(f).opts.visibility&&(g(f).opts.visibility="visible"),g(f).opts.loop=!1,g(f).opts.begin=null,g(f).opts.complete=null,s.easing||delete h.easing,s.duration||delete h.duration,h=m.extend({},g(f).opts,h);var E=m.extend(!0,{},g(f).tweensContainer);for(var F in E)if("element"!==F){var G=E[F].startValue;E[F].startValue=E[F].currentValue=E[F].endValue,E[F].endValue=G,p.isEmptyObject(s)||(E[F].easing=h.easing),t.debug&&console.log("reverse tweensContainer ("+F+"): "+JSON.stringify(E[F]),f)}i=E}else if("start"===C){var E;g(f).tweensContainer&&g(f).isAnimating===!0&&(E=g(f).tweensContainer),m.each(q,function(b,c){if(RegExp("^"+v.Lists.colors.join("$|^")+"$").test(b)){var e=a(c,!0),f=e[0],g=e[1],h=e[2];if(v.RegEx.isHex.test(f)){for(var i=["Red","Green","Blue"],j=v.Values.hexToRgb(f),k=h?v.Values.hexToRgb(h):d,l=0;l<i.length;l++){var m=[j[l]];g&&m.push(g),k!==d&&m.push(k[l]),q[b+i[l]]=m}delete q[b]}}});for(var H in q){var K=a(q[H]),L=K[0],M=K[1],N=K[2];H=v.Names.camelCase(H);var O=v.Hooks.getRoot(H),P=!1;if(g(f).isSVG||"tween"===O||v.Names.prefixCheck(O)[1]!==!1||v.Normalizations.registered[O]!==d){(h.display!==d&&null!==h.display&&"none"!==h.display||h.visibility!==d&&"hidden"!==h.visibility)&&/opacity|filter/.test(H)&&!N&&0!==L&&(N=0),h._cacheValues&&E&&E[H]?(N===d&&(N=E[H].endValue+E[H].unitType),P=g(f).rootPropertyValueCache[O]):v.Hooks.registered[H]?N===d?(P=v.getPropertyValue(f,O),N=v.getPropertyValue(f,H,P)):P=v.Hooks.templates[O][1]:N===d&&(N=v.getPropertyValue(f,H));var Q,R,S,T=!1;if(Q=l(H,N),N=Q[0],S=Q[1],Q=l(H,L),L=Q[0].replace(/^([+-\/*])=/,function(a,b){return T=b,""}),R=Q[1],N=parseFloat(N)||0,L=parseFloat(L)||0,"%"===R&&(/^(fontSize|lineHeight)$/.test(H)?(L/=100,R="em"):/^scale/.test(H)?(L/=100,R=""):/(Red|Green|Blue)$/i.test(H)&&(L=L/100*255,R="")),/[\/*]/.test(T))R=S;else if(S!==R&&0!==N)if(0===L)R=S;else{e=e||n();var U=/margin|padding|left|right|width|text|word|letter/i.test(H)||/X$/.test(H)||"x"===H?"x":"y";switch(S){case"%":N*="x"===U?e.percentToPxWidth:e.percentToPxHeight;break;case"px":break;default:N*=e[S+"ToPx"]}switch(R){case"%":N*=1/("x"===U?e.percentToPxWidth:e.percentToPxHeight);break;case"px":break;default:N*=1/e[R+"ToPx"]}}switch(T){case"+":L=N+L;break;case"-":L=N-L;break;case"*":L=N*L;break;case"/":L=N/L}i[H]={rootPropertyValue:P,startValue:N,currentValue:N,endValue:L,unitType:R,easing:M},t.debug&&console.log("tweensContainer ("+H+"): "+JSON.stringify(i[H]),f)}else t.debug&&console.log("Skipping ["+O+"] due to a lack of browser support.")}i.element=f}i.element&&(v.Values.addClass(f,"velocity-animating"),J.push(i),""===h.queue&&(g(f).tweensContainer=i,g(f).opts=h),g(f).isAnimating=!0,y===x-1?(t.State.calls.push([J,o,h,null,B.resolver]),t.State.isTicking===!1&&(t.State.isTicking=!0,k())):y++)}var e,f=this,h=m.extend({},t.defaults,s),i={};switch(g(f)===d&&t.init(f),parseFloat(h.delay)&&h.queue!==!1&&m.queue(f,h.queue,function(a){t.velocityQueueEntryFlag=!0,g(f).delayTimer={setTimeout:setTimeout(a,parseFloat(h.delay)),next:a}}),h.duration.toString().toLowerCase()){case"fast":h.duration=200;break;case"normal":h.duration=r;break;case"slow":h.duration=600;break;default:h.duration=parseFloat(h.duration)||1}t.mock!==!1&&(t.mock===!0?h.duration=h.delay=1:(h.duration*=parseFloat(t.mock)||1,h.delay*=parseFloat(t.mock)||1)),h.easing=j(h.easing,h.duration),h.begin&&!p.isFunction(h.begin)&&(h.begin=null),h.progress&&!p.isFunction(h.progress)&&(h.progress=null),h.complete&&!p.isFunction(h.complete)&&(h.complete=null),h.display!==d&&null!==h.display&&(h.display=h.display.toString().toLowerCase(),"auto"===h.display&&(h.display=t.CSS.Values.getDisplayType(f))),h.visibility!==d&&null!==h.visibility&&(h.visibility=h.visibility.toString().toLowerCase()),h.mobileHA=h.mobileHA&&t.State.isMobile&&!t.State.isGingerbread,h.queue===!1?h.delay?setTimeout(a,h.delay):a():m.queue(f,h.queue,function(b,c){return c===!0?(B.promise&&B.resolver(o),!0):(t.velocityQueueEntryFlag=!0,void a(b))}),""!==h.queue&&"fx"!==h.queue||"inprogress"===m.queue(f)[0]||m.dequeue(f)}var h,i,n,o,q,s,u=arguments[0]&&(arguments[0].p||m.isPlainObject(arguments[0].properties)&&!arguments[0].properties.names||p.isString(arguments[0].properties));if(p.isWrapped(this)?(h=!1,n=0,o=this,i=this):(h=!0,n=1,o=u?arguments[0].elements||arguments[0].e:arguments[0]),o=f(o)){u?(q=arguments[0].properties||arguments[0].p,s=arguments[0].options||arguments[0].o):(q=arguments[n],s=arguments[n+1]);var x=o.length,y=0;if(!/^(stop|finish|finishAll)$/i.test(q)&&!m.isPlainObject(s)){var z=n+1;s={};for(var A=z;A<arguments.length;A++)p.isArray(arguments[A])||!/^(fast|normal|slow)$/i.test(arguments[A])&&!/^\d/.test(arguments[A])?p.isString(arguments[A])||p.isArray(arguments[A])?s.easing=arguments[A]:p.isFunction(arguments[A])&&(s.complete=arguments[A]):s.duration=arguments[A]}var B={promise:null,resolver:null,rejecter:null};h&&t.Promise&&(B.promise=new t.Promise(function(a,b){B.resolver=a,B.rejecter=b}));var C;switch(q){case"scroll":C="scroll";break;case"reverse":C="reverse";break;case"finish":case"finishAll":case"stop":m.each(o,function(a,b){g(b)&&g(b).delayTimer&&(clearTimeout(g(b).delayTimer.setTimeout),g(b).delayTimer.next&&g(b).delayTimer.next(),delete g(b).delayTimer),"finishAll"!==q||s!==!0&&!p.isString(s)||(m.each(m.queue(b,p.isString(s)?s:""),function(a,b){p.isFunction(b)&&b()}),m.queue(b,p.isString(s)?s:"",[]))});var D=[];return m.each(t.State.calls,function(a,b){b&&m.each(b[1],function(c,e){var f=s===d?"":s;return f===!0||b[2].queue===f||s===d&&b[2].queue===!1?void m.each(o,function(c,d){d===e&&((s===!0||p.isString(s))&&(m.each(m.queue(d,p.isString(s)?s:""),function(a,b){p.isFunction(b)&&b(null,!0) | |
}),m.queue(d,p.isString(s)?s:"",[])),"stop"===q?(g(d)&&g(d).tweensContainer&&f!==!1&&m.each(g(d).tweensContainer,function(a,b){b.endValue=b.currentValue}),D.push(a)):("finish"===q||"finishAll"===q)&&(b[2].duration=1))}):!0})}),"stop"===q&&(m.each(D,function(a,b){l(b,!0)}),B.promise&&B.resolver(o)),a();default:if(!m.isPlainObject(q)||p.isEmptyObject(q)){if(p.isString(q)&&t.Redirects[q]){var E=m.extend({},s),F=E.duration,G=E.delay||0;return E.backwards===!0&&(o=m.extend(!0,[],o).reverse()),m.each(o,function(a,b){parseFloat(E.stagger)?E.delay=G+parseFloat(E.stagger)*a:p.isFunction(E.stagger)&&(E.delay=G+E.stagger.call(b,a,x)),E.drag&&(E.duration=parseFloat(F)||(/^(callout|transition)/.test(q)?1e3:r),E.duration=Math.max(E.duration*(E.backwards?1-a/x:(a+1)/x),.75*E.duration,200)),t.Redirects[q].call(b,b,E||{},a,x,o,B.promise?B:d)}),a()}var H="Velocity: First argument ("+q+") was not a property map, a known action, or a registered redirect. Aborting.";return B.promise?B.rejecter(new Error(H)):console.log(H),a()}C="start"}var I={lastParent:null,lastPosition:null,lastFontSize:null,lastPercentToPxWidth:null,lastPercentToPxHeight:null,lastEmToPx:null,remToPx:null,vwToPx:null,vhToPx:null},J=[];m.each(o,function(a,b){p.isNode(b)&&e.call(b)});var K,E=m.extend({},t.defaults,s);if(E.loop=parseInt(E.loop),K=2*E.loop-1,E.loop)for(var L=0;K>L;L++){var M={delay:E.delay,progress:E.progress};L===K-1&&(M.display=E.display,M.visibility=E.visibility,M.complete=E.complete),w(o,"reverse",M)}return a()}};t=m.extend(w,t),t.animate=w;var x=b.requestAnimationFrame||o;return t.State.isMobile||c.hidden===d||c.addEventListener("visibilitychange",function(){c.hidden?(x=function(a){return setTimeout(function(){a(!0)},16)},k()):x=b.requestAnimationFrame||o}),a.Velocity=t,a!==b&&(a.fn.velocity=w,a.fn.velocity.defaults=t.defaults),m.each(["Down","Up"],function(a,b){t.Redirects["slide"+b]=function(a,c,e,f,g,h){var i=m.extend({},c),j=i.begin,k=i.complete,l={height:"",marginTop:"",marginBottom:"",paddingTop:"",paddingBottom:""},n={};i.display===d&&(i.display="Down"===b?"inline"===t.CSS.Values.getDisplayType(a)?"inline-block":"block":"none"),i.begin=function(){j&&j.call(g,g);for(var c in l){n[c]=a.style[c];var d=t.CSS.getPropertyValue(a,c);l[c]="Down"===b?[d,0]:[0,d]}n.overflow=a.style.overflow,a.style.overflow="hidden"},i.complete=function(){for(var b in n)a.style[b]=n[b];k&&k.call(g,g),h&&h.resolver(g)},t(a,l,i)}}),m.each(["In","Out"],function(a,b){t.Redirects["fade"+b]=function(a,c,e,f,g,h){var i=m.extend({},c),j={opacity:"In"===b?1:0},k=i.complete;i.complete=e!==f-1?i.begin=null:function(){k&&k.call(g,g),h&&h.resolver(g)},i.display===d&&(i.display="In"===b?"auto":"none"),t(this,j,i)}}),t}(window.jQuery||window.Zepto||window,window,document)}); | |
/*! skrollr 0.6.29 (2014-11-17) | Alexander Prinzhorn - https://github.com/Prinzhorn/skrollr | Free to use under terms of MIT license */ | |
;(function(e,t,r){"use strict";function n(r){if(o=t.documentElement,a=t.body,Y(),lt=this,r=r||{},mt=r.constants||{},r.easing)for(var n in r.easing)X[n]=r.easing[n];Tt=r.edgeStrategy||"set",ft={beforerender:r.beforerender,render:r.render,keyframe:r.keyframe},ut=r.forceHeight!==!1,ut&&(zt=r.scale||1),pt=r.mobileDeceleration||x,gt=r.smoothScrolling!==!1,vt=r.smoothScrollingDuration||A,ht={targetTop:lt.getScrollTop()},Kt=(r.mobileCheck||function(){return/Android|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent||navigator.vendor||e.opera)})(),Kt?(ct=t.getElementById(r.skrollrBody||E),ct&&it(),j(),Dt(o,[y,S],[T])):Dt(o,[y,b],[T]),lt.refresh(),kt(e,"resize orientationchange",function(){var e=o.clientWidth,t=o.clientHeight;(t!==Bt||e!==$t)&&(Bt=t,$t=e,_t=!0)});var i=R();return function l(){J(),St=i(l)}(),lt}var o,a,i={get:function(){return lt},init:function(e){return lt||new n(e)},VERSION:"0.6.29"},l=Object.prototype.hasOwnProperty,s=e.Math,c=e.getComputedStyle,f="touchstart",u="touchmove",m="touchcancel",p="touchend",d="skrollable",g=d+"-before",v=d+"-between",h=d+"-after",y="skrollr",T="no-"+y,b=y+"-desktop",S=y+"-mobile",k="linear",w=1e3,x=.004,E="skrollr-body",A=200,F="start",C="end",H="center",D="bottom",I="___skrollable_id",P=/^(?:input|textarea|button|select)$/i,N=/^\s+|\s+$/g,O=/^data(?:-(_\w+))?(?:-?(-?\d*\.?\d+p?))?(?:-?(start|end|top|center|bottom))?(?:-?(top|center|bottom))?$/,V=/\s*(@?[\w\-\[\]]+)\s*:\s*(.+?)\s*(?:;|$)/gi,z=/^(@?[a-z\-]+)\[(\w+)\]$/,q=/-([a-z0-9_])/g,L=function(e,t){return t.toUpperCase()},M=/[\-+]?[\d]*\.?[\d]+/g,$=/\{\?\}/g,B=/rgba?\(\s*-?\d+\s*,\s*-?\d+\s*,\s*-?\d+/g,_=/[a-z\-]+-gradient/g,G="",K="",Y=function(){var e=/^(?:O|Moz|webkit|ms)|(?:-(?:o|moz|webkit|ms)-)/;if(c){var t=c(a,null);for(var n in t)if(G=n.match(e)||+n==n&&t[n].match(e))break;if(!G)return G=K="",r;G=G[0],"-"===G.slice(0,1)?(K=G,G={"-webkit-":"webkit","-moz-":"Moz","-ms-":"ms","-o-":"O"}[G]):K="-"+G.toLowerCase()+"-"}},R=function(){var t=e.requestAnimationFrame||e[G.toLowerCase()+"RequestAnimationFrame"],r=Nt();return(Kt||!t)&&(t=function(t){var n=Nt()-r,o=s.max(0,1e3/60-n);return e.setTimeout(function(){r=Nt(),t()},o)}),t},U=function(){var t=e.cancelAnimationFrame||e[G.toLowerCase()+"CancelAnimationFrame"];return(Kt||!t)&&(t=function(t){return e.clearTimeout(t)}),t},X={begin:function(){return 0},end:function(){return 1},linear:function(e){return e},quadratic:function(e){return e*e},cubic:function(e){return e*e*e},swing:function(e){return-s.cos(e*s.PI)/2+.5},sqrt:function(e){return s.sqrt(e)},outCubic:function(e){return s.pow(e-1,3)+1},bounce:function(e){var t;if(.5083>=e)t=3;else if(.8489>=e)t=9;else if(.96208>=e)t=27;else{if(!(.99981>=e))return 1;t=91}return 1-s.abs(3*s.cos(1.028*e*t)/t)}};n.prototype.refresh=function(e){var n,o,a=!1;for(e===r?(a=!0,st=[],Gt=0,e=t.getElementsByTagName("*")):e.length===r&&(e=[e]),n=0,o=e.length;o>n;n++){var i=e[n],l=i,s=[],c=gt,f=Tt,u=!1;if(a&&I in i&&delete i[I],i.attributes){for(var m=0,p=i.attributes.length;p>m;m++){var g=i.attributes[m];if("data-anchor-target"!==g.name)if("data-smooth-scrolling"!==g.name)if("data-edge-strategy"!==g.name)if("data-emit-events"!==g.name){var v=g.name.match(O);if(null!==v){var h={props:g.value,element:i,eventType:g.name.replace(q,L)};s.push(h);var y=v[1];y&&(h.constant=y.substr(1));var T=v[2];/p$/.test(T)?(h.isPercentage=!0,h.offset=(0|T.slice(0,-1))/100):h.offset=0|T;var b=v[3],S=v[4]||b;b&&b!==F&&b!==C?(h.mode="relative",h.anchors=[b,S]):(h.mode="absolute",b===C?h.isEnd=!0:h.isPercentage||(h.offset=h.offset*zt))}}else u=!0;else f=g.value;else c="off"!==g.value;else if(l=t.querySelector(g.value),null===l)throw'Unable to find anchor target "'+g.value+'"'}if(s.length){var k,w,x;!a&&I in i?(x=i[I],k=st[x].styleAttr,w=st[x].classAttr):(x=i[I]=Gt++,k=i.style.cssText,w=Ht(i)),st[x]={element:i,styleAttr:k,classAttr:w,anchorTarget:l,keyFrames:s,smoothScrolling:c,edgeStrategy:f,emitEvents:u,lastFrameIndex:-1},Dt(i,[d],[])}}}for(At(),n=0,o=e.length;o>n;n++){var E=st[e[n][I]];E!==r&&(Q(E),tt(E))}return lt},n.prototype.relativeToAbsolute=function(e,t,r){var n=o.clientHeight,a=e.getBoundingClientRect(),i=a.top,l=a.bottom-a.top;return t===D?i-=n:t===H&&(i-=n/2),r===D?i+=l:r===H&&(i+=l/2),i+=lt.getScrollTop(),0|i+.5},n.prototype.animateTo=function(e,t){t=t||{};var n=Nt(),o=lt.getScrollTop();return dt={startTop:o,topDiff:e-o,targetTop:e,duration:t.duration||w,startTime:n,endTime:n+(t.duration||w),easing:X[t.easing||k],done:t.done},dt.topDiff||(dt.done&&dt.done.call(lt,!1),dt=r),lt},n.prototype.stopAnimateTo=function(){dt&&dt.done&&dt.done.call(lt,!0),dt=r},n.prototype.isAnimatingTo=function(){return!!dt},n.prototype.isMobile=function(){return Kt},n.prototype.setScrollTop=function(t,r){return yt=r===!0,Kt?Yt=s.min(s.max(t,0),Vt):e.scrollTo(0,t),lt},n.prototype.getScrollTop=function(){return Kt?Yt:e.pageYOffset||o.scrollTop||a.scrollTop||0},n.prototype.getMaxScrollTop=function(){return Vt},n.prototype.on=function(e,t){return ft[e]=t,lt},n.prototype.off=function(e){return delete ft[e],lt},n.prototype.destroy=function(){var e=U();e(St),xt(),Dt(o,[T],[y,b,S]);for(var t=0,n=st.length;n>t;t++)at(st[t].element);o.style.overflow=a.style.overflow="",o.style.height=a.style.height="",ct&&i.setStyle(ct,"transform","none"),lt=r,ct=r,ft=r,ut=r,Vt=0,zt=1,mt=r,pt=r,qt="down",Lt=-1,$t=0,Bt=0,_t=!1,dt=r,gt=r,vt=r,ht=r,yt=r,Gt=0,Tt=r,Kt=!1,Yt=0,bt=r};var j=function(){var n,i,l,c,d,g,v,h,y,T,b,S;kt(o,[f,u,m,p].join(" "),function(e){var o=e.changedTouches[0];for(c=e.target;3===c.nodeType;)c=c.parentNode;switch(d=o.clientY,g=o.clientX,T=e.timeStamp,P.test(c.tagName)||e.preventDefault(),e.type){case f:n&&n.blur(),lt.stopAnimateTo(),n=c,i=v=d,l=g,y=T;break;case u:P.test(c.tagName)&&t.activeElement!==c&&e.preventDefault(),h=d-v,S=T-b,lt.setScrollTop(Yt-h,!0),v=d,b=T;break;default:case m:case p:var a=i-d,k=l-g,w=k*k+a*a;if(49>w){if(!P.test(n.tagName)){n.focus();var x=t.createEvent("MouseEvents");x.initMouseEvent("click",!0,!0,e.view,1,o.screenX,o.screenY,o.clientX,o.clientY,e.ctrlKey,e.altKey,e.shiftKey,e.metaKey,0,null),n.dispatchEvent(x)}return}n=r;var E=h/S;E=s.max(s.min(E,3),-3);var A=s.abs(E/pt),F=E*A+.5*pt*A*A,C=lt.getScrollTop()-F,H=0;C>Vt?(H=(Vt-C)/F,C=Vt):0>C&&(H=-C/F,C=0),A*=1-H,lt.animateTo(0|C+.5,{easing:"outCubic",duration:A})}}),e.scrollTo(0,0),o.style.overflow=a.style.overflow="hidden"},W=function(){var e,t,r,n,a,i,l,c,f,u,m,p=o.clientHeight,d=Ft();for(c=0,f=st.length;f>c;c++)for(e=st[c],t=e.element,r=e.anchorTarget,n=e.keyFrames,a=0,i=n.length;i>a;a++)l=n[a],u=l.offset,m=d[l.constant]||0,l.frame=u,l.isPercentage&&(u*=p,l.frame=u),"relative"===l.mode&&(at(t),l.frame=lt.relativeToAbsolute(r,l.anchors[0],l.anchors[1])-u,at(t,!0)),l.frame+=m,ut&&!l.isEnd&&l.frame>Vt&&(Vt=l.frame);for(Vt=s.max(Vt,Ct()),c=0,f=st.length;f>c;c++){for(e=st[c],n=e.keyFrames,a=0,i=n.length;i>a;a++)l=n[a],m=d[l.constant]||0,l.isEnd&&(l.frame=Vt-l.offset+m);e.keyFrames.sort(Ot)}},Z=function(e,t){for(var r=0,n=st.length;n>r;r++){var o,a,s=st[r],c=s.element,f=s.smoothScrolling?e:t,u=s.keyFrames,m=u.length,p=u[0],y=u[u.length-1],T=p.frame>f,b=f>y.frame,S=T?p:y,k=s.emitEvents,w=s.lastFrameIndex;if(T||b){if(T&&-1===s.edge||b&&1===s.edge)continue;switch(T?(Dt(c,[g],[h,v]),k&&w>-1&&(Et(c,p.eventType,qt),s.lastFrameIndex=-1)):(Dt(c,[h],[g,v]),k&&m>w&&(Et(c,y.eventType,qt),s.lastFrameIndex=m)),s.edge=T?-1:1,s.edgeStrategy){case"reset":at(c);continue;case"ease":f=S.frame;break;default:case"set":var x=S.props;for(o in x)l.call(x,o)&&(a=ot(x[o].value),0===o.indexOf("@")?c.setAttribute(o.substr(1),a):i.setStyle(c,o,a));continue}}else 0!==s.edge&&(Dt(c,[d,v],[g,h]),s.edge=0);for(var E=0;m-1>E;E++)if(f>=u[E].frame&&u[E+1].frame>=f){var A=u[E],F=u[E+1];for(o in A.props)if(l.call(A.props,o)){var C=(f-A.frame)/(F.frame-A.frame);C=A.props[o].easing(C),a=nt(A.props[o].value,F.props[o].value,C),a=ot(a),0===o.indexOf("@")?c.setAttribute(o.substr(1),a):i.setStyle(c,o,a)}k&&w!==E&&("down"===qt?Et(c,A.eventType,qt):Et(c,F.eventType,qt),s.lastFrameIndex=E);break}}},J=function(){_t&&(_t=!1,At());var e,t,n=lt.getScrollTop(),o=Nt();if(dt)o>=dt.endTime?(n=dt.targetTop,e=dt.done,dt=r):(t=dt.easing((o-dt.startTime)/dt.duration),n=0|dt.startTop+t*dt.topDiff),lt.setScrollTop(n,!0);else if(!yt){var a=ht.targetTop-n;a&&(ht={startTop:Lt,topDiff:n-Lt,targetTop:n,startTime:Mt,endTime:Mt+vt}),ht.endTime>=o&&(t=X.sqrt((o-ht.startTime)/vt),n=0|ht.startTop+t*ht.topDiff)}if(Kt&&ct&&i.setStyle(ct,"transform","translate(0, "+-Yt+"px) "+bt),yt||Lt!==n){qt=n>Lt?"down":Lt>n?"up":qt,yt=!1;var l={curTop:n,lastTop:Lt,maxTop:Vt,direction:qt},s=ft.beforerender&&ft.beforerender.call(lt,l);s!==!1&&(Z(n,lt.getScrollTop()),Lt=n,ft.render&&ft.render.call(lt,l)),e&&e.call(lt,!1)}Mt=o},Q=function(e){for(var t=0,r=e.keyFrames.length;r>t;t++){for(var n,o,a,i,l=e.keyFrames[t],s={};null!==(i=V.exec(l.props));)a=i[1],o=i[2],n=a.match(z),null!==n?(a=n[1],n=n[2]):n=k,o=o.indexOf("!")?et(o):[o.slice(1)],s[a]={value:o,easing:X[n]};l.props=s}},et=function(e){var t=[];return B.lastIndex=0,e=e.replace(B,function(e){return e.replace(M,function(e){return 100*(e/255)+"%"})}),K&&(_.lastIndex=0,e=e.replace(_,function(e){return K+e})),e=e.replace(M,function(e){return t.push(+e),"{?}"}),t.unshift(e),t},tt=function(e){var t,r,n={};for(t=0,r=e.keyFrames.length;r>t;t++)rt(e.keyFrames[t],n);for(n={},t=e.keyFrames.length-1;t>=0;t--)rt(e.keyFrames[t],n)},rt=function(e,t){var r;for(r in t)l.call(e.props,r)||(e.props[r]=t[r]);for(r in e.props)t[r]=e.props[r]},nt=function(e,t,r){var n,o=e.length;if(o!==t.length)throw"Can't interpolate between \""+e[0]+'" and "'+t[0]+'"';var a=[e[0]];for(n=1;o>n;n++)a[n]=e[n]+(t[n]-e[n])*r;return a},ot=function(e){var t=1;return $.lastIndex=0,e[0].replace($,function(){return e[t++]})},at=function(e,t){e=[].concat(e);for(var r,n,o=0,a=e.length;a>o;o++)n=e[o],r=st[n[I]],r&&(t?(n.style.cssText=r.dirtyStyleAttr,Dt(n,r.dirtyClassAttr)):(r.dirtyStyleAttr=n.style.cssText,r.dirtyClassAttr=Ht(n),n.style.cssText=r.styleAttr,Dt(n,r.classAttr)))},it=function(){bt="translateZ(0)",i.setStyle(ct,"transform",bt);var e=c(ct),t=e.getPropertyValue("transform"),r=e.getPropertyValue(K+"transform"),n=t&&"none"!==t||r&&"none"!==r;n||(bt="")};i.setStyle=function(e,t,r){var n=e.style;if(t=t.replace(q,L).replace("-",""),"zIndex"===t)n[t]=isNaN(r)?r:""+(0|r);else if("float"===t)n.styleFloat=n.cssFloat=r;else try{G&&(n[G+t.slice(0,1).toUpperCase()+t.slice(1)]=r),n[t]=r}catch(o){}};var lt,st,ct,ft,ut,mt,pt,dt,gt,vt,ht,yt,Tt,bt,St,kt=i.addEvent=function(t,r,n){var o=function(t){return t=t||e.event,t.target||(t.target=t.srcElement),t.preventDefault||(t.preventDefault=function(){t.returnValue=!1,t.defaultPrevented=!0}),n.call(this,t)};r=r.split(" ");for(var a,i=0,l=r.length;l>i;i++)a=r[i],t.addEventListener?t.addEventListener(a,n,!1):t.attachEvent("on"+a,o),Rt.push({element:t,name:a,listener:n})},wt=i.removeEvent=function(e,t,r){t=t.split(" ");for(var n=0,o=t.length;o>n;n++)e.removeEventListener?e.removeEventListener(t[n],r,!1):e.detachEvent("on"+t[n],r)},xt=function(){for(var e,t=0,r=Rt.length;r>t;t++)e=Rt[t],wt(e.element,e.name,e.listener);Rt=[]},Et=function(e,t,r){ft.keyframe&&ft.keyframe.call(lt,e,t,r)},At=function(){var e=lt.getScrollTop();Vt=0,ut&&!Kt&&(a.style.height=""),W(),ut&&!Kt&&(a.style.height=Vt+o.clientHeight+"px"),Kt?lt.setScrollTop(s.min(lt.getScrollTop(),Vt)):lt.setScrollTop(e,!0),yt=!0},Ft=function(){var e,t,r=o.clientHeight,n={};for(e in mt)t=mt[e],"function"==typeof t?t=t.call(lt):/p$/.test(t)&&(t=t.slice(0,-1)/100*r),n[e]=t;return n},Ct=function(){var e,t=0;return ct&&(t=s.max(ct.offsetHeight,ct.scrollHeight)),e=s.max(t,a.scrollHeight,a.offsetHeight,o.scrollHeight,o.offsetHeight,o.clientHeight),e-o.clientHeight},Ht=function(t){var r="className";return e.SVGElement&&t instanceof e.SVGElement&&(t=t[r],r="baseVal"),t[r]},Dt=function(t,n,o){var a="className";if(e.SVGElement&&t instanceof e.SVGElement&&(t=t[a],a="baseVal"),o===r)return t[a]=n,r;for(var i=t[a],l=0,s=o.length;s>l;l++)i=Pt(i).replace(Pt(o[l])," ");i=It(i);for(var c=0,f=n.length;f>c;c++)-1===Pt(i).indexOf(Pt(n[c]))&&(i+=" "+n[c]);t[a]=It(i)},It=function(e){return e.replace(N,"")},Pt=function(e){return" "+e+" "},Nt=Date.now||function(){return+new Date},Ot=function(e,t){return e.frame-t.frame},Vt=0,zt=1,qt="down",Lt=-1,Mt=Nt(),$t=0,Bt=0,_t=!1,Gt=0,Kt=!1,Yt=0,Rt=[];"function"==typeof define&&define.amd?define([],function(){return i}):"undefined"!=typeof module&&module.exports?module.exports=i:e.skrollr=i})(window,document); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html> | |
<head> | |
<meta charset="utf-8"> | |
<meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
<title>It's About Water</title> | |
<link media="all" rel="stylesheet" href="css/main.css"> | |
<link href='https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,900italic,900,700italic,700,600italic,600,400italic,300italic,300,200italic,200' rel='stylesheet' type='text/css'> | |
</head> | |
<body> | |
<div id="wrapper"> | |
<header id="header" class="header win-min-height"> | |
<div class="frame animate-box"> | |
<div class="logo"><a href="#"><img src="images/logo-01.png" alt="it's about water"></a></div> | |
<div class="bottom-btn-holder"> | |
<a class="bottom-btn icon-downarrow" href="#top-block"></a> | |
</div> | |
</div> | |
</header> | |
<div id="top-block" class="top-block"> | |
<div class="bg-stretch"> | |
<img data-start="transform:translate3d(0px,20%,0px)" data-end="transform:translate3d(0px,0,0px)" src="images/bg-09.jpg" alt=""> | |
</div> | |
<div class="text-holder"> | |
<strong class="description animated-text">We are creating a multi-platform, global initiative for 7-11 year old children that explores the very nature of life - WATER. After 16 months of research, we are now developing the storyworld and characters that will flood children’s imaginations. Think Fraggle Rock meets The Magic School Bus.</strong> | |
</div> | |
</div> | |
<div id="two-col" class="two-col"> | |
<div class="col animated" data-delay="0"> | |
<div class="centered-holder"> | |
<div class="carousel-holder"> | |
<div class="cycle-gallery"> | |
<div class="mask"> | |
<div class="slideset"> | |
<div class="slide"> | |
<div class="image-hold"> | |
<img src="images/img-slide-01.png" width="481" alt="Somewhere between 70-75% of the earth's surface is covered with weather"> | |
</div> | |
</div> | |
<div class="slide"> | |
<div class="image-hold"> | |
<img src="images/img-slide-02.png" width="481" alt="60% of your body weight 70% of your brain is water"> | |
</div> | |
</div> | |
<div class="slide"> | |
<div class="image-hold"> | |
<img src="images/img-slide-03.png" width="481" alt="Water is the basis of all life in the universe."> | |
</div> | |
</div> | |
<div class="slide"> | |
<div class="image-hold"> | |
<img src="images/img-slide-04.png" width="481" alt="18l - 3 teaspoons | If all the world's water were put into a 18 litre (5 gallon) water-cooler bottle, the fresh water that is available would equal only about three teaspoons"> | |
</div> | |
</div> | |
</div> | |
</div> | |
<a class="btn-prev icon-left" href="#"></a> | |
<a class="btn-next icon-right" href="#"></a> | |
</div> | |
</div> | |
</div> | |
</div> | |
<div class="col animated" data-delay="200"> | |
<div class="text-holder"> | |
<strong class="description"> | |
There is the same amount of water on the earth now as there was when the earth was formed. Water cannot be manufactured; it can only be moved around. | |
</strong> | |
</div> | |
</div> | |
</div> | |
<div class="three-col"> | |
<div class="left-block"> | |
<div class="col animated" data-delay="0"> | |
<div class="img-holder"> | |
<img src="images/img-01.png" alt="image description"> | |
</div> | |
<strong class="title">Jocelyn Stevenson</strong> | |
<p> | |
Jocelyn Stevenson has worked in children’s television for over 40 years as a writer, creator, producer, executive producer. Her credits include Sesame Street, Fraggle Rock, Charlie Chalk, Jim Henson’s Ghost of Faffner Hall, The Animal Show with Stinky and Jake, Jim Henson’s Secret Life of Toys, The Magic Schoolbus, Faeries, Mopatop’s Shop, The Hoobs, Bob the Builder, Thomas & Friends, Barney & Friends, Rubbadubbers, Pingu, What’s Your News? and Moshi Monsters: The Movie. | |
</p> | |
<ul class="contact-list"> | |
<li><a href="mailto:jocelyn.steveson@itsaboutwater.co.uk">Email</a></li> | |
<li><a href="https://uk.linkedin.com/in/jocelyn-stevenson-0937111">Linkedin</a></li> | |
</ul> | |
</div> | |
</div> | |
<div class="right-block"> | |
<div class="col animated" data-delay="400"> | |
<div class="img-holder"> | |
<img src="images/img-02.png" alt="image description"> | |
</div> | |
<strong class="title">Katie Bell</strong> | |
<p> | |
Katie Bell has worked in digital for over 15 years. She is an innovator, marketeer and creative growth strategist. She helps brands tell stories that build loyalty and enjoys finding simple solutions to complicated challenges. Her credits include - growing a Sequoia backed child platform (Stardoll.com) from 12 million to 300 million registered users. Launching Stardoll TV, Starstruck (Music Event) and inspiring 200 million girls to get into coding. Most recently postioning Playmob.com as the global gaming partner for Richard Curtis’s Project Everyone, highlighting the United Nations Global Goals initiative. The week long campaign reached over 110 million gamers via 24 titles. | |
</p> | |
<ul class="contact-list"> | |
<li><a href="mailto:katie.bell@itsaboutwater.co.uk">Email</a></li> | |
<li><a href="https://uk.linkedin.com/in/katiebell2">Linkedin</a></li> | |
</ul> | |
</div> | |
<div class="col animated" data-delay="200"> | |
<div class="centered-holder"> | |
<ul class="social-networks"> | |
<li class="icon-facebook"><a href="https://www.facebook.com/Its-About-Water-175624079450651/?ref=hl"></a></li> | |
<li class="icon-twitter"><a href="https://twitter.com/@itsaboutwater"></a></li> | |
<li class="icon-instagram"><a href="https://instagram.com/itsaboutwater/"></a></li> | |
</ul> | |
</div> | |
</div> | |
</div> | |
</div> | |
<footer id="footer"> | |
<div class="logo"><a href="#"><img src="images/logo-footer.png" alt="it's about water"></a></div> | |
<div class="footer-row"> | |
<span class="copy"><a href="#">it's about water</a> copywrite 2015 ©</span> | |
<ul class="nav"> | |
<li><a href="#">email</a></li> | |
<li><a href="https://www.facebook.com/Its-About-Water-175624079450651/?ref=hl">Facebook</a></li> | |
<li><a href="https://twitter.com/@itsaboutwater">Twitter</a></li> | |
<li><a href="https://instagram.com/itsaboutwater/">Instagram</a></li> | |
</ul> | |
</div> | |
</footer> | |
</div> | |
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> | |
<script type="text/javascript">window.jQuery || document.write('<script src="js/jquery-1.11.2.min.js"><\/script>')</script> | |
<script type="text/javascript" src="js/jquery.main.js"></script> | |
</body> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
how to set the starting slider index to desired one?