a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align:baseline
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display:block
}

body {
    line-height:1
}

ol, ul {
    list-style:none
}

blockquote, q {
    quotes:none
}

blockquote:after, blockquote:before, q:after, q:before {
    content: '';
    content:none
}

table {
    border-collapse: collapse;
    border-spacing:0
}

code[class * =language-], pre[class * =language-] {
    color: #000;
    text-shadow: 0 1px #fff;
    font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
    direction: ltr;
    text-align: left;
    white-space: pre;
    word-spacing: normal;
    word-break: normal;
    word-wrap: normal;
    line-height: 1.5;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4;
    -webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens:none
}

code[class * =language-] ::-moz-selection, code[class * =language-]::-moz-selection, pre[class * =language-] ::-moz-selection, pre[class * =language-]::-moz-selection {
    text-shadow: none;
    background:#b3d4fc
}

code[class * =language-] ::selection, code[class * =language-]::selection, pre[class * =language-] ::selection, pre[class * =language-]::selection {
    text-shadow: none;
    background:#b3d4fc
}

@media print {
    code[class * =language-], pre[class * =language-] {
        text-shadow:none
    }
}

pre[class * =language-] {
    padding: 1em;
    margin: .5em 0;
    overflow:auto
}

:not(pre) > code[class * =language-], pre[class * =language-] {
    background:#f5f2f0
}

:not(pre) > code[class * =language-] {
    padding: .1em;
    border-radius: .3em;
    white-space:normal
}

.token.cdata, .token.comment, .token.doctype, .token.prolog {
    color:#708090
}

.token.punctuation {
    color:#999
}

.namespace {
    opacity:.7
}

.token.boolean, .token.constant, .token.deleted, .token.number, .token.property, .token.symbol, .token.tag {
    color:#905
}

.token.attr-name, .token.builtin, .token.char, .token.inserted, .token.selector, .token.string {
    color:#690
}

.language-css .token.string, .style .token.string, .token.entity, .token.operator, .token.url {
    color: #a67f59;
    background:rgba(255, 255, 255, .5)
}

.token.atrule, .token.attr-value, .token.keyword {
    color:#07a
}

.token.function {
    color:#DD4A68
}

.token.important, .token.regex, .token.variable {
    color:#e90
}

.token.bold, .token.important {
    font-weight:700
}

.token.italic {
    font-style:italic
}

.token.entity {
    cursor:help
}

body {
    background-color: #fff;
    color: #464640;
    font-family: ff-dagny-web-pro, "Helvetica Neue", Verdana, Geneva, Arial, Helvetica, sans-serif;
    font-size: 19px;
    font-weight: 100;
    line-height: 28px;
    padding-top:56px
}

a {
    color: #38d;
    text-decoration:none
}

a:hover {
    border-bottom:1px solid #38d
}

a.button {
    background: -webkit-gradient(linear, left top, left bottom, from(#529ae2), to(#38d));
    background: -webkit-linear-gradient(#529ae2, #38d);
    background: -moz-linear-gradient(#529ae2, #38d);
    background: -ms-linear-gradient(#529ae2, #38d);
    background: -o-linear-gradient(#529ae2, #38d);
    background: linear-gradient(#529ae2, #38d);
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    background-color: #237bd3;
    color: #fff;
    display: inline-block;
    font-size: 24px;
    font-weight: 300;
    line-height: 56px;
    padding: 0 30px;
    text-align:center
}

a.button:hover {
    background: -webkit-gradient(linear, left top, left bottom, from(#5fa1e4), to(#4090df));
    background: -webkit-linear-gradient(#5fa1e4, #4090df);
    background: -moz-linear-gradient(#5fa1e4, #4090df);
    background: -ms-linear-gradient(#5fa1e4, #4090df);
    background: -o-linear-gradient(#5fa1e4, #4090df);
    background: linear-gradient(#5fa1e4, #4090df);
    border: none;
    color:#fff
}

a.button:active {
    -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .4);
    -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .4);
    box-shadow:inset 0 1px 2px rgba(0, 0, 0, .4)
}

a.button small {
    font-size:13px
}

em {
    color: #202020;
    font-style:italic
}

.wrapper {
    margin: 0 auto;
    padding:0 10px
}

li small {
    font-size: 12px;
    font-style:italic
}

h3 {
    font-size: 36px;
    line-height: 56px;
    margin:0 0 28px 0
}

#content h4 {
    color: #999;
    font-size: 28px;
    font-weight: 400;
    margin:56px 0 28px 0
}

p {
    color: #767670;
    margin-bottom:28px
}

p:last-child {
    margin-bottom:0
}

.list {
    color: #767670;
    font-size: 16px;
    list-style: disc;
    margin-bottom: 28px;
    margin-left:25px
}

.list .list {
    margin-bottom:0
}

aside {
    background-color: #f2f8fa;
    border: 1px solid #e0eef3;
    border-left: 4px solid #e0eef3;
    font-size: 16px;
    font-style: italic;
    margin: 14px 0 28px;
    padding:13px 27px 13px 24px
}

aside p {
    color:#789
}

code[class * =language-] {
    color: #565650;
    font-size:14px
}

:not(pre) > code {
    background-color: #f6f6f0;
    border: 1px solid #e6e6e0;
    padding:0 3px
}

pre[class * =language-] {
    background-color: #f6f6f0;
    border: 1px solid #e6e6e0;
    line-height: 20px;
    margin: 14px 0 28px;
    overflow: scroll;
    padding:12px 20px
}

pre[class * =language-] code {
    display:block
}

.columns {
    overflow:hidden
}

.columns .column {
    margin-bottom:56px
}

.columns .column:last-child {
    margin-right:0
}

header {
    background: #fafaf5;
    border-bottom: 1px solid #eee;
    position: fixed;
    top: 0;
    width: 100%;
    z-index:99
}

header a {
    color:#464640
}

header a:hover {
    color:#38d
}

header .wrapper {
    border: 1px solid #f8f8f8;
    border-width: 0 1px 0 1px;
    padding:0
}

header ul {
    border-left: 1px solid #f0f0f0;
    height:56px
}

header ul li {
    border-right: 1px solid #f0f0f0;
    float:left
}

header ul li.secondary {
    float: right;
    border:none
}

header ul a, header ul h1 {
    display: block;
    padding:14px 19px 14px 20px
}

header ul a:hover, header ul h1:hover {
    border-bottom:none
}

header ul a em, header ul h1 em {
    color: #38d;
    font-size:.75em
}

header ul a.button {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius:0
}

header ul a:hover + nav {
    display:block
}

header ul img {
    display: block;
    margin-top: 1px;
    margin-bottom:3px
}

#banner {
    -webkit-box-shadow: 0 1px 2px -1px rgba(0, 0, 0, .2);
    -moz-box-shadow: 0 1px 2px -1px rgba(0, 0, 0, .2);
    box-shadow: 0 1px 2px -1px rgba(0, 0, 0, .2);
    background:#f6f6f0
}

#banner .wrapper {
    overflow: hidden;
    padding:28px 10px 84px
}

.intro {
    margin-bottom: 112px;
    padding: 0 20px;
    text-align:center
}

.intro h2 {
    color: #565650;
    font-size: 64px;
    font-weight: 100;
    line-height: 56px;
    margin-bottom: 28px;
    margin-top:28px
}

.intro p {
    font-size: 21px;
    color: #868680;
    margin-bottom:56px
}

.intro .download {
    margin:0
}

.intro .download a, .intro .download span {
    display: inline-block;
    min-width: 51%;
    margin:0 0 56px 0
}

.intro .download span {
    font-size: 18px;
    font-weight:400
}

.demo {
    height: 476px;
    margin: 0 auto 56px;
    position: relative;
    width:327px
}

.demo h3 {
    background: url(../images/images.png) top no-repeat;
    background-size: 120px 361px;
    text-indent:-9999px
}

.demo .numbers {
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, .5);
    -moz-box-shadow: 0 0 20px rgba(0, 0, 0, .5);
    box-shadow: 0 0 20px rgba(0, 0, 0, .5);
    background-color: #fff;
    border: 1px solid #bbc;
    left: 80px;
    margin-bottom: 28px;
    padding: 14px 20px;
    position: absolute;
    top: 156px;
    z-index:10
}

.demo .numbers p {
    margin-bottom:0
}

.demo .numbers .list {
    margin-bottom:0
}

#content {
    background-color: #fff;
    margin-bottom: 140px;
    padding:0 20px
}

.native-ad {
    clear: both;
    margin: 0 auto;
    visibility: hidden;
    transition: all .25s ease-in-out;
    max-width: 800px;
    opacity:0
}

.native-show {
    visibility: visible;
    opacity:1
}

.native-img {
    margin-right: 20px;
    max-height: 50px;
    border-radius:3px
}

.native-flex {
    display: flex;
    padding: 20px 20px;
    text-decoration: none;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items:center
}

.native-flex:hover {
    border-bottom:none
}

.native-main {
    display: flex;
    flex-flow: row nowrap;
    align-items:center
}

.native-details {
    display: flex;
    margin-right: 10px;
    flex-flow:column nowrap
}

.native-company {
    margin-bottom: 4px;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size:10px
}

.native-desc {
    letter-spacing: 1px;
    font-weight: 300;
    line-height:1.4
}

.native-cta {
    padding: 10px 14px;
    border-radius: 3px;
    box-shadow: 0 6px 13px 0 rgba(0, 0, 0, .15);
    text-transform: uppercase;
    white-space: nowrap;
    letter-spacing: 1px;
    font-weight: 400;
    font-size: 12px;
    transition: all .3s ease-in-out;
    transform:translateY(-1px)
}

.native-cta:hover {
    box-shadow: none;
    transform:translateY(1px)
}

#features {
    border-bottom: 1px solid #f0f0f0;
    margin-bottom: 84px;
    padding-bottom:83px
}

#features h3 {
    line-height: 28px;
    padding:14px 0
}

#open-source h3 {
    background: url(../images/images-2.png) -1566px center no-repeat;
    background-size: 1633px 56px;
    padding-left:88px
}

#major-cards-recognised h3 {
    background: url(../images/images-2.png) 0 center no-repeat;
    background-size: 1633px 56px;
    padding-left:102px
}

#always-free h3 {
    background: url(../images/images-2.png) -782px center no-repeat;
    background-size: 1633px 56px;
    padding-left:104px
}

#manual {
    margin:0 auto
}

#manual div {
    margin-bottom:112px
}

#manual h3 {
    font-size: 52px;
    margin-bottom: 56px;
    text-align:center
}

form {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, .3);
    -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, .3);
    box-shadow: 0 1px 3px rgba(0, 0, 0, .3);
    background-color: #f9f9f7;
    border: 1px solid #fff;
    margin: 0 auto 0;
    left: 0;
    padding: 13px 20px;
    position: absolute;
    width:287px
}

form h2 {
    color: #555;
    font-family: ff-dagny-web-pro, "Helvetica Neue", Verdana, Geneva, Arial, Helvetica, sans-serif;
    font-size: 16px;
    font-style: normal;
    margin-bottom: 0;
    text-align:left
}

form li {
    margin:8px 0
}

form li .help {
    color: #aaa;
    display: block;
    font-size: 11px;
    font-weight: 400;
    line-height: 14px;
    padding-top:14px
}

form li .help a {
    color:#76a1cd
}

form label {
    color: #555;
    display: block;
    font-size: 14px;
    font-weight:400
}

form input {
    background-color: #fff;
    border: 1px solid #e5e5e5;
    color: #333;
    display: block;
    font-size: 18px;
    height: 32px;
    padding: 0 5px;
    width: 275px;
    -moz-box-sizing: content-box;
    -webkit-box-sizing:content-box
}

form input::-webkit-input-placeholder {
    color:#ddd
}

form input:-moz-placeholder {
    color: #ddd;
    opacity:1
}

form input::-moz-placeholder {
    color: #ddd;
    opacity:1
}

form input:-ms-input-placeholder {
    color:#ddd
}

form input:focus {
    outline:1px solid #38d
}

form #card_number {
    background-image: url(../images/images.png), url(../images/images.png);
    background-position: 2px -121px, 260px -61px;
    background-size: 120px 361px, 120px 361px;
    background-repeat: no-repeat;
    padding-left: 54px;
    width:225px
}

form #card_number.visa {
    background-position:2px -163px, 260px -61px
}

form #card_number.visa_electron {
    background-position:2px -205px, 260px -61px
}

form #card_number.mastercard {
    background-position:2px -247px, 260px -61px
}

form #card_number.maestro {
    background-position:2px -289px, 260px -61px
}

form #card_number.discover {
    background-position:2px -331px, 260px -61px
}

form #card_number.valid.visa {
    background-position:2px -163px, 260px -87px
}

form #card_number.valid.visa_electron {
    background-position:2px -205px, 260px -87px
}

form #card_number.valid.mastercard {
    background-position:2px -247px, 260px -87px
}

form #card_number.valid.maestro {
    background-position:2px -289px, 260px -87px
}

form #card_number.valid.discover {
    background-position:2px -331px, 260px -87px
}

.vertical {
    overflow:hidden
}

.vertical li {
    float: left;
    width:140px
}

.vertical li .or {
    color: #aaa;
    float: left;
    font-size: 12px;
    margin-left: -8px;
    margin-top:32px
}

.vertical li:last-child {
    float: right;
    text-align:right
}

.vertical li:last-child input {
    float:right
}

.vertical input {
    width:68px
}

ins {
    overflow: hidden;
    width:100%
}

footer {
    background: #232323;
    padding:56px 10px
}

footer .column {
    overflow:hidden
}

footer a {
    color:#b6b6b0
}

footer a:hover {
    border-bottom-color:#b6b6b0
}

footer h3 {
    color: #c6c6c0;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 2px;
    line-height: 28px;
    text-transform:uppercase
}

footer ul {
    border-right: 1px dotted #404046;
    float: left;
    font-size: 14px;
    margin-right: 20px;
    width:219.33px
}

footer ul:last-child {
    border-right: none;
    margin-right:0
}

footer ul small {
    color: #777;
    font-size: 11px;
    font-weight:400
}

footer .wrapper > p {
    font-size: 14px;
    line-height: 28px;
    text-align:center
}

footer .wrapper > p img {
    margin-bottom: 2px;
    vertical-align:middle
}

#newsletter {
    background-color: #22222a;
    margin-bottom: 112px;
    padding:112px 20px
}

#newsletter h2 {
    color: #fff;
    font-size: 48px;
    font-weight: 200;
    line-height: 56px;
    margin-bottom: 56px;
    text-align:center
}

#newsletter form {
    background-color: transparent;
    border: none;
    box-shadow: none;
    display: flex;
    position:static
}

#newsletter input {
    border: none;
    border-radius: 4px;
    height: 42px;
    line-height: 42px;
    padding:0 10px
}

#newsletter input:focus {
    box-shadow: 0 0 0 3px #529ae2;
    outline:0
}

#newsletter label {
    color:#99999f
}

#newsletter button {
    background: #f44;
    border: none;
    border-radius: 4px;
    color: rgba(255, 255, 255, .8);
    cursor: pointer;
    font-family: ff-dagny-web-pro, "Helvetica Neue", Verdana, Geneva, Arial, Helvetica, sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 42px;
    padding: 0 30px;
    text-shadow: 0 0 2px rgba(0, 0, 0, .33);
    width:100%
}

#newsletter button:hover {
    background-color:#f55
}

@media screen and (max-width: 699px) {
    header {
        font-size:14px
    }

    header .secondary {
        display:none
    }

    footer ul {
        border-bottom: 1px dotted #404046;
        border-right: none;
        float: none;
        margin-bottom: 13px;
        padding-bottom: 11.2px;
        width:100%
    }

    footer ul:last-child {
        border-bottom:none
    }

    #newsletter button {
        margin-top:14px
    }
}

@media screen and (min-width: 768px) {
    .columns {
        margin: 0 auto 56px;
        width:700px
    }

    .columns.three .column {
        width:auto
    }

    #banner .wrapper {
        padding:84px 10px 84px
    }

    .intro .download span {
        margin: 0 40px;
        min-width:0
    }

    .intro .download a {
        margin: 0;
        min-width:0
    }

    #content {
        width:700px
    }

    #manual {
        width:700px
    }

    ins {
        width:728px
    }

    #newsletter button {
        margin-top:14px
    }
}

@media screen and (min-width: 1080px) {
    .wrapper {
        width:940px
    }

    .columns {
        overflow: hidden;
        width:auto
    }

    .columns .column {
        float: left;
        margin-right:80px
    }

    .columns .column:last-child {
        margin-right:0
    }

    .columns.three .column {
        width:260px
    }

    .intro {
        float: left;
        margin-bottom: 0;
        margin-top: 28px;
        padding: 0;
        text-align: left;
        width:480px
    }

    .demo {
        float:right
    }

    #content {
        width:940px
    }

    footer ul {
        border-bottom: 1px dotted #404046;
        border-right: none;
        float: none;
        margin-bottom: 13px;
        padding-bottom: 11.2px;
        width:100%
    }

    footer ul:last-child {
        border-bottom:none
    }

    #newsletter form {
        margin: 0 auto;
        max-width:600px
    }

    #newsletter ul {
        display: flex;
        justify-content: space-between;
        width:100%
    }

    #newsletter li:first-child {
        width:65%
    }

    #newsletter li:last-child {
        width:30%
    }

    #newsletter button, #newsletter input {
        width:100%
    }

    #newsletter button {
        margin-top:28px
    }
}

@media screen and (min-width: 1200px) {
    .wrapper {
        width:1060px
    }

    .columns.three .column {
        width:300px
    }

    .intro {
        margin-top: 56px;
        width:570px
    }

    form {
        float:none
    }

    #content {
        width:1060px
    }
}

.estipad-ad {
    background-color: #00bcff;
    background-image: linear-gradient(-15deg, #00bcff, #7100ff);
    clear: both;
    color: rgba(255, 255, 255, .85);
    font-size: 18px;
    letter-spacing: .5px;
    margin: 0 auto;
    max-width: 740px;
    padding:20px 30px
}

.estipad-ad a {
    color: inherit;
    display: flex;
    justify-content: space-between;
    align-items:center
}

.estipad-ad a:hover {
    border-bottom:none
}

.estipad-ad-details {
    margin:0 40px
}

.estipad-ad-details__header {
    display: block;
    font-weight:400
}

.estipad-ad-details__description {
    display: block;
    line-height:24px
}

.estipad-ad__cta {
    background-color: #e7188e;
    border-radius: 3px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .2);
    color: #fff;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 1px;
    padding: 7px 20px;
    text-transform: uppercase;
    white-space: nowrap;
    transition:all .2s
}

.estipad-ad:hover {
    cursor:pointer
}

.estipad-ad:hover .estipad-ad__cta {
    box-shadow: none;
    background-color: #d01580;
    transform: translateY(3px)
}

