/*

TABLE OF CONTENTS:

    1. General items
    2. Top bar
    3. Freebies
    4. Best deals
    5. Chat merchant
    6. Biiz partners
    7. Biiz Piip
    8. Become user
    9. Rewards
    10. Footer
    11. Modals
    12. Responsive

*/

/* ---------------- */
/* 1. GENERAL ITEMS */
/* ---------------- */

body {
    text-align: center;
    font-size: 10px;
    font-family: 'Lato', sans-serif;
}

h1, h2, h3, h4, h5, h6, p {
    margin: 0;
    font-weight: 500;
}

img {
    max-width: 100%;
    vertical-align: top;
}

section {
    padding-left: 15px !important;
    padding-right: 15px !important;
}

.relative {
    position: relative;
}

.fixed {
    position: fixed;
}

.vertical-align {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.center-align {
    position: relative;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

a.button-big {
    display: inline-block;
    padding: 20px 45px;
    border-radius: 4px;
    font-size: 1.9rem;
    line-height: 0.8;
    text-decoration: none;
    outline: none;
}

.title {
    color: #6b6c6f;
    line-height: 1.27;
}

.subtitle {
    color: #6b6c6f;
}

body.modal-open {
    padding-right: 0 !important;
}

body.modal-open .fixed-section {
    padding-right: 17px;
}

body.modal-open .content {
    -webkit-filter: blur(5px);
    filter: blur(5px);
}

/* ---------- */
/* 2. TOP BAR */
/* ---------- */

.fixed-section {
    width: 100%;
}

.top-bar {
    position: relative;
    padding-left: 5px !important;
    padding-right: 5px !important;
    margin: 0 auto;
    max-width: 1500px;
}

.logo {
    margin: 9px 0;
    float: left;
}

.top-bar-link {
    float: right;
    position: relative;
}

.top-bar-link a {
    display: inline-block;
    width: 100%;
    height: 70px;
    line-height: 70px;
    padding: 0 15px;
    font-size: 15px;
    color: #4d4a4a;
    letter-spacing: 0.01em;
    text-decoration: none;
    transition: background-color 0.3s;
}

.top-bar-link a:hover {
    background-color: #f2f2f2;
}

.top-bar-link a span {
    margin-left: 15px;
}

.top-bar-link .hover-menu {
    padding-top: 8px;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    width: 210px;
    z-index: 1;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0.3s, opacity 0.3s;
}

.top-bar-link:hover .hover-menu, .top-bar-link.open-menu .hover-menu {
    visibility: visible;
    opacity: 1;
}

.top-bar-link .triangle {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 11px 8px 11px;
    border-color: transparent transparent #ffffff transparent;
    margin: 0 auto;
}

.top-bar-link .hover-menu-inner {
    background-color: #fff;
    padding: 15px 0;
    border-radius: 5px;
}

.top-bar-link .hover-menu-inner a {
    text-align: left;
    height: 50px;
    line-height: 50px;
    padding: 0 20px;
}

/* ----------- */
/* 3. FREEBIES */
/* ----------- */

.freebies {
    background: url('../img/hero-bg.jpg') center center no-repeat;
    background-size: 1920px 650px;
    height: 650px;
    position: relative;
}

@media all and (-webkit-min-device-pixel-ratio: 1.5),
       all and (-o-min-device-pixel-ratio: 3 / 2),
       all and (min--moz-device-pixel-ratio: 1.5),
       all and (min-device-pixel-ratio: 1.5) {
  .freebies {
    background: url('../img/hero-bg@2x.jpg') center center no-repeat;
    background-size: 1920px 650px;
  }
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .freebies {
    background: url('../img/hero-bg@2x.jpg') center center no-repeat;
    background-size: 1920px 650px;
  }
}

/*@media (-webkit-min-device-pixel-ratio: 3), (min-resolution: 288dpi) {
  .freebies {
    background: url('../img/hero-bg@3x.jpg') center center no-repeat;
    background-size: 1920px 650px;
  }
}*/

.freebies .transparent-frame {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(48, 56, 42, 0.24);
}

.download-app-wrapper {
    position: relative;
}

.download-app-wrapper .title {
    font-size: 5rem;
    line-height: 1;
    font-weight: 700;
    color: #fff;
    margin-bottom: 20px;
}

.download-app-wrapper .piip-name {
    color: #34b73a;
}

.download-app-wrapper .subtitle {
    font-size: 2.2rem;
    line-height: 1;
    font-weight: 500;
    color: #fff;
    margin-bottom: 60px;
}

.download-app-wrapper .play-button {
    background: rgba(35, 34, 34, 0.8);
    width: 105px;
    height: 105px;
    border-radius: 50%;
    margin: 0 auto 65px;
    display: block;
    outline: none;
}

.download-app-wrapper .play-button img {
    left: 5px;
}

a.download-button {
    box-shadow: 0px 3px 0 0 #228727;
    color: #fff;
    text-transform: uppercase;
    background-color: #34b73a;
    font-weight: 900;
    padding: 25px 45px;
    border-radius: 8px;
}

/* ------------- */
/* 4. BEST DEALS */
/* ------------- */

.scrollable-section {
    position: relative;
}

.best-deals {
    padding-top: 65px;
    overflow: hidden;
    background-color: #fff;
}

.best-deals .title {
    font-size: 2.5rem;
}

.mock {
    position: relative;
}

.mock-offer {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%) scale(0.8);
    transform: translateX(-50%) scale(0.8);
    top: 48%;
    transition: all 0.4s cubic-bezier(0, 2, 0.8, 1);
}

.mock-offer.transition {
    -webkit-transform: translateX(-50%) scale(1);
    transform: translateX(-50%) scale(1);
}

/* ---------------- */
/* 5. CHAT MERCHANT */
/* ---------------- */

.chat-merchant {
    background: #f7f7f7 url('../img/pattern.png') center center;
    padding-top: 65px;
    background-position: 0 -400px;
    background-size: 1920px 1570px;
}

@media all and (-webkit-min-device-pixel-ratio: 1.5),
       all and (-o-min-device-pixel-ratio: 3 / 2),
       all and (min--moz-device-pixel-ratio: 1.5),
       all and (min-device-pixel-ratio: 1.5) {
  .chat-merchant {
    background: #f7f7f7 url('../img/pattern@2x.png') center center;
    background-size: 1920px 1570px;
  }
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .chat-merchant {
    background: #f7f7f7 url('../img/pattern@2x.png') center center;
    background-size: 1920px 1570px;
  }
}

/*@media (-webkit-min-device-pixel-ratio: 3), (min-resolution: 288dpi) {
  .chat-merchant {
    background: #f7f7f7 url('../img/pattern@3x.png') center center;
    background-size: 1920px 1570px;
  }
}*/

.chat-merchant .title {
    font-size: 2.5rem;
    line-height: 1.52;
}

.iphone-illustration {
    position: relative;
    display: inline-block;
}

.iphone-bubble {
    position: absolute;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    opacity: 0;
    transition: opacity 0.5s;
}

.iphone-illustration .bubble-1 {
    left: 41%;
    top: 50%;
}

.iphone-illustration .bubble-2 {
    left: 59%;
    top: 62%;
    transition-delay: 0.2s;
}

.iphone-illustration .bubble-3 {
    left: 45%;
    top: 74%;
    transition-delay: 0.4s;
}

.iphone-illustration .bubble-4 {
    left: 56%;
    top: 90%;
    transition-delay: 0.6s;
}

.iphone-illustration.transition .iphone-bubble {
    opacity: 1;
}

/* ---------------- */
/* 6. BIIZ PARTNERS */
/* ---------------- */

.biiz-partners {
    background-color: #9b529e;
    padding-top: 57px;
}

.biiz-partners .title {
    font-size: 3.2em;
    line-height: 1.19;
    color: #fff;
    margin-bottom: 24px;
}

.biiz-partners .subtitle {
    font-size: 2rem;
    line-height: 1.5;
    color: #fff;
    margin-bottom: 54px;
}

.partners-columns {
    display: inline-block;
    padding-bottom: 50px;
}

.partners-columns .column {
    float: left;
    width: 270px;
}

.partners-columns .column:not(:last-child) {
    margin-right: 120px;
}

.partners-columns .circle {
    width: 270px;
    height: 270px;
    background-color: #b062b3;
    margin-bottom: 38px;
}

.partners-columns .text {
    font-size: 1.8rem;
    line-height: 1.4;
    color: #fff;
}

.partners-footer {
    background-color: #b35fb7;
    padding: 24px 15px 33px;
    margin-left: -15px;
    margin-right: -15px;
}

.partners-footer p {
    font-size: 2rem;
    color: #fcbdff;
}

.partners-footer a {
    color: #fff;
    text-decoration: none;
}

/* ------------ */
/* 7. BIIZ PIIP */
/* ------------ */

.biiz-piip {
    background: url('../img/biiz-piip-bg.svg') center center;
    background-size: cover;
    padding: 40px 0 50px;
}

.biiz-piip .title {
    font-size: 3rem;
    color: #fff;
    margin-bottom: 10px;
}

.biiz-piip .subtitle {
    font-size: 1.8rem;
    color: #fff;
    line-height: 1.33;
    margin-bottom: 35px;
}

.biiz-piip a.lets-go-button {
    background: linear-gradient(#ec9fed, #e953c9);
    display: inline-block;
    border-radius: 100px;
    width: 180px;
    height: 50px;
    font-weight: 700;
    font-size: 2rem;
    line-height: 50px;
    color: #fff;
    box-shadow: 0 5px 14px 0 #ab4fac;
    text-decoration: none;
    position: relative;
    margin-bottom: 55px;
}

.biiz-piip a.lets-go-button .arrow-right {
    position: absolute;
    right: 20px;
    margin-top: 1px;
}

/* -------------- */
/* 8. BECOME USER */
/* -------------- */

.become-user {
    background-color: #f7f7f7;
    padding-top: 78px;
}

.become-user .section-inner {
    display: inline-block;
}

.become-user .iphone-illustration {
    float: left;
    display: block;
}

.become-user .iphone-illustration .iphone-bubble {
    left: 50%;
    -webkit-transform: translateX(-50%) scale(0.99);
    transform: translateX(-50%) scale(0.99);
}

.become-user .iphone-illustration .bubble-1 {
    top: 36%;
}

.become-user .iphone-illustration .bubble-2 {
    top: 52.2%;
}

.become-user .iphone-illustration .bubble-3 {
    top: 68.5%;
}

.become-user .iphone-illustration .bubble-4 {
    top: 84.9%;
}

.become-user-columns {
    margin-left: 80px;
    padding-top: 40px;
    float: right;
}

.become-user-columns .title {
    font-size: 3.2rem;
    line-height: 1.41;
}

.become-user-columns .point-section {
    padding-top: 50px;
}

.become-user-columns .column {
    width: 225px;
    padding: 0 20px;
    float: left;
}

.become-user-columns .column:last-child {
    float: right;
}

.become-user-columns .point {
    position: relative;
}

.become-user-columns .point img {
    margin-bottom: 91px;
}

.become-user-columns .point p {
    font-size: 1.6rem;
    line-height: 1.27;
    color: #6b6c6f;
    position: absolute;
    top: 80px;
    width: 100%;
}

/* ---------- */
/* 9. REWARDS */
/* ---------- */

.rewards {
    padding: 65px 0;
    background-color: #fff;
}

.rewards .title {
    font-size: 3rem;
    line-height: 1.27;
    margin-bottom: 20px;
}

.rewards .subtitle {
    font-size: 2rem;
    line-height: 1.9;
    margin-bottom: 75px;
}

.rewards-columns {
    display: inline-block;
}

.rewards-row {
    float: left;
}

.rewards-row:not(:last-child) {
    margin-right: 55px;
}

.rewards-columns .column {
    width: 220px;
    float: left;
}

.rewards-columns .column:not(:last-child) {
    margin-right: 55px;
}

.circle {
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background-color: #48cd4e;
    margin-bottom: 30px;
    text-align: left;
    transition: all 0.3s;
    -webkit-transform: scale(1.25);
    transform: scale(1.25);
}

.circle img {
    transition: all 0.5s;
    -webkit-transform: translate(-50%, -50%) scale(0.6);
    transform: translate(-50%, -50%) scale(0.6);
}

.transition .circle {
    -webkit-transform: scale(1);
    transform: scale(1);
}

.transition .circle img {
    -webkit-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
}

.transition .circle:hover {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

.rewards-columns .number {
    font-size: 2rem;
    line-height: 1.15;
    color: #6b6c6f;
    margin-bottom: 25px;
    display: inline-block;
    font-weight: 700;
}

.rewards-columns .text {
    font-size: 1.4rem;
    line-height: 1.64;
    color: #6b6c6f;
    font-weight: 700;
}

/* --------- */
/* 10. FOOTER */
/* --------- */

.footer {
    padding: 65px 0;
    background-color: #48cd4e;
}

.piip-logo {
    margin-bottom: 25px;
}

.footer .text {
    font-size: 1.7rem;
    line-height: 1.88;
    color: #fff;
    max-width: 835px;
    margin: 0 auto 52px;
}

.footer .text.copyright-text {
    margin: 45px auto 0;
    font-size: 1.5rem;
    line-height: 1;
    letter-spacing: 0.03em;
}

.footer .text.copyright-text a {
    color: #fff;
    text-decoration: underline;
}

a.contact-button {
    background-color: #ffffff;
    box-shadow: 0px 3px 0 0 #32a036;
    color: #25942a;
}

/* ---------- */
/* 11. MODALS */
/* ---------- */

.modal.in .modal-dialog {
    transform: translate(0, -50%);
}

.modal {
    padding-right: 0 !important;
    height: 100vh;
}

.modal-dialog {
    padding: 0 20px;
}

.modal-content {
    position: relative;
}

.modal-close {
    display: inline-block;
    cursor: pointer;
    width: 30px;
    height: 30px;
    position: absolute;
    right: -15px;
    top: -15px;
    z-index: 10;
    opacity: 0.5;
}

#download-modal .modal-content {
    width: 600px;
    height: 400px;
    background: transparent url('../img/download-modal-bg.png') center center no-repeat;
    background-size: 600px 400px;
    margin: 0 auto;
    max-width: 100%;
    text-align: center;
}

@media all and (-webkit-min-device-pixel-ratio: 1.5),
       all and (-o-min-device-pixel-ratio: 3 / 2),
       all and (min--moz-device-pixel-ratio: 1.5),
       all and (min-device-pixel-ratio: 1.5) {
    #download-modal .modal-content {
        background: url('../img/download-modal-bg@2x.png') center center no-repeat;
        background-size: 600px 400px;
    }
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    #download-modal .modal-content {
        background: url('../img/download-modal-bg@2x.png') center center no-repeat;
        background-size: 600px 400px;
    }
}

/*@media (-webkit-min-device-pixel-ratio: 3), (min-resolution: 288dpi) {
    #download-modal .modal-content {
        background: url('../img/download-modal-bg@3x.png') center center no-repeat;
        background-size: 600px 400px;
    }
}*/

#download-modal .company-image {
    margin-top: 110px;
    -webkit-filter: drop-shadow(0px 19px 73px rgba(49, 83, 18, 0.54));
    filter: drop-shadow(0px 19px 73px rgba(49, 83, 18, 0.54));
}

#download-modal .for-text {
    margin: 40px 0 0;
    font-size: 16px;
    line-height: 1;
    color: #fff;
}

#download-modal .company-text {
    margin: 12px 0 0;
    font-size: 20px;
    line-height: 1;
    font-weight: 700;
    color: #fff;
}

#download-modal a.modal-button {
    display: inline-block;
    margin: 25px 0 0;
    font-size: 15px;
    line-height: 1;
    font-weight: 900;
    color: #fff;
    text-transform: uppercase;
    padding: 15px 22px;
    border: 2px solid #fff;
    border-radius: 40px;
    text-decoration: none;
    outline: none;
    transition: background-color 0.3s, color 0.3s;
    max-width: 100%;
}

#download-modal .iphone-col a.modal-button:hover {
    background-color: #fff;
    color: #3e95eb;
}

#download-modal .android-col a.modal-button:hover {
    background-color: #fff;
    color: #79d526;
}

#video-modal .modal-dialog {
    width: auto;
    max-width: 1280px;
}

#video-modal .modal-content {
    font-size: 0;
    border: 0;
    border-radius: 0;
}

#video-modal iframe {
    width: 100%;
}

/* -------------- */
/* 12. RESPONSIVE */
/* -------------- */

@media (max-width: 1199px) {
    .partners-columns .column {
        float: none;
    }

    .partners-columns .column:not(:last-child) {
        margin-right: 0;
        margin-bottom: 120px;
    }

    .rewards-row {
        float: none;
    }

    .rewards-row:not(:last-child) {
        margin-right: 0;
        margin-bottom: 55px;
    }
}

@media (max-width: 991px) {
    .become-user .iphone-illustration {
        float: none;
    }

    .become-user-columns {
        margin-left: 0;
        margin-bottom: 80px;
        float: none;
    }
}

@media (min-width: 768px) {
    .modal-dialog {
        margin: 0 auto;
    }
}

@media (max-width: 767px) {
    .download-app-wrapper .title {
        font-size: 4rem;
    }
    
    .rewards-columns .column {
        float: none;
    }

    .rewards-columns .column:not(:last-child) {
        margin-right: 0;
        margin-bottom: 55px;
    }
    
    .facebook-link span, .support-link span {
        display: none;
    }
    
    #download-modal a.modal-button {
        padding: 15px;
    }
}

@media (max-width: 599px) {

    .become-user-columns .column {
        float: none;
        display: block;
        margin: 0 auto;
    }

    .become-user-columns .column:last-child {
        float: none;
    }
}