/*
------- Product Block -----
Product block is used on product to print a message like:
buy this product and earn x beans.

HTML Structure:

div: .beans-product
    div: .beans-product-div
        -- buy this product and earn x beans.
*/

.beans-product:after, .beans-product:before{
    content: '';
    display: table;
    clear: both;
}
.beans-product-div{
    width: 100%;
    display: block;
    text-align: left;
    margin: 20px 0;
    line-height: normal;
}


/*
------- Cart Block -----
Cart Block is used on cart page to allow the user to redeem their beans.
It contains a redeem button as well as some info text.
Cart Block is responsive

HTML Structure:

div: .beans-cart
    div: .beans-cart-div
        div: .beans-cart-info-div
            div: .beans-info-contain
                -- You have x beans
        div: .beans-cart-action-div
             -- Redeem or Join button
*/

.beans-cart:after, .beans-cart:before{
    content: '';
    display: table;
    clear: both;
}
.beans-cart-div{
    display: table;
    width: 100%;
    vertical-align: middle;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    margin: 20px auto;
    text-align: right;
}
.beans-cart-action-div{
    display: table-cell;
    text-align: right;
    vertical-align: middle;
    min-width: 100px;
    max-width: 200px;
    padding: 10px;
}
.beans-cart-info-div{
    display: table-cell;
    vertical-align: middle;
    text-align: left;
    padding: 10px;
}
.beans-cart-info-div .beans-info-contain{
    display: block;
    max-width: 490px;
    line-height: normal;
}
@media (max-width: 490px) {
    .beans-cart-info-div, .beans-cart-action-div{
        text-align: center;
        display: block;
        margin-left: auto;
        margin-right: auto;
    }
    .beans-button{
        width: 100%;
    }
}


/*
------- Account Block -----
Account Block is used on account page to display the user beans balance and history.

HTML Structure:

div: .beans-section

  div: .beans-intro
      -- Join our reward program text

  div: .beans-balance
      -- user's account balance

  ul: .beans-rules
      -- Retailer's rules

  table: .beans-history
      -- user's account history
*/
.beans-section{
    display: block;
    max-width: 700px;
    margin: 30px auto;
}

.beans-section h1{
    margin-bottom: 30px;
}

.beans-intro{
    display: block;
    width: 100%;
    margin: 20px auto;
}

.beans-balance{
    display: block;
    width: 100%;
    margin: 20px auto;
}

.beans-rules{
    margin: 20px auto;
}

.beans-rules li{
    margin: 10px auto;
}

.beans-history{
    width: 100%;
    margin: 20px auto;
}

.beans-reward-reset div, .beans-reward-reset span, .beans-reward-reset a{
    font-size-adjust: none;
    letter-spacing: normal;
    font-stretch: normal;
    text-align: left;
    -moz-text-align-last: initial;
    text-align-last: initial;
    text-decoration: none;
    -webkit-text-emphasis: none;
    text-emphasis: none;
    text-height: auto;
    text-indent: 0;
    text-justify: auto;
    text-outline: none;
    text-shadow: none;
    text-transform: none;
    text-wrap: normal;
    alignment-adjust: auto;
    alignment-baseline: baseline;
    -webkit-animation: none 0 ease 0 1 normal;
    animation: none 0 ease 0 1 normal;
    -webkit-animation-play-state: running;
    animation-play-state: running;
    appearance: normal;
    azimuth: center;
    -webkit-backface-visibility: visible;
    backface-visibility: visible;
    background: none 0 0 auto repeat scroll padding-box transparent;
    baseline-shift: baseline;
    binding: none;
    bleed: 6pt;
    bookmark-label: content();
    bookmark-level: none;
    bookmark-state: open;
    bookmark-target: none;
    border: 0 none transparent;
    border-radius: 0;
    bottom: auto;
    box-align: stretch;
    -webkit-box-decoration-break: slice;
    box-decoration-break: slice;
    box-direction: normal;
    box-flex: 0.0;
    box-flex-group: 1;
    box-lines: single;
    box-ordinal-group: 1;
    box-orient: inline-axis;
    box-pack: start;
    box-shadow: none;
    box-sizing: border-box;
    -webkit-break-after: auto;
    -moz-break-after: auto;
    break-after: auto;
    -webkit-break-before: auto;
    -moz-break-before: auto;
    break-before: auto;
    -webkit-column-break-inside: auto;
    page-break-inside: auto;
    break-inside: auto;
    caption-side: top;
    clear: none;
    clip: auto;
    color-profile: auto;
    -webkit-column-count: auto;
    -moz-column-count: auto;
    column-count: auto;
    -webkit-column-fill: balance;
    -moz-column-fill: balance;
    column-fill: balance;
    -webkit-column-gap: normal;
    -moz-column-gap: normal;
    column-gap: normal;
    -webkit-column-rule: medium medium #000000;
    -moz-column-rule: medium medium #000000;
    column-rule: medium medium #000000;
    -webkit-column-span: 1;
    -moz-column-span: 1;
    column-span: 1;
    -webkit-column-width: auto;
    -moz-column-width: auto;
    column-width: auto;
    -webkit-columns: auto auto;
    -moz-columns: auto auto;
    columns: auto auto;
    content: normal;
    counter-increment: none;
    counter-reset: none;
    crop: auto;
    cursor: auto;
    direction: ltr;
    display: inline;
    dominant-baseline: auto;
    drop-initial-after-adjust: text-after-edge;
    drop-initial-after-align: baseline;
    drop-initial-before-adjust: text-before-edge;
    drop-initial-before-align: caps-height;
    drop-initial-size: auto;
    drop-initial-value: initial;
    elevation: level;
    empty-cells: show;
    fit: fill;
    fit-position: 0% 0%;
    float: none;
    float-offset: 0 0;
    grid-columns: none;
    grid-rows: none;
    hanging-punctuation: none;
    height: auto;
    hyphenate-after: auto;
    hyphenate-before: auto;
    hyphenate-character: auto;
    hyphenate-lines: no-limit;
    hyphenate-resource: none;
    -webkit-hyphens: manual;
    -moz-hyphens: manual;
    -ms-hyphens: manual;
    hyphens: manual;
    icon: auto;
    image-orientation: auto;
    image-rendering: auto;
    image-resolution: normal;
    inline-box-align: last;
    left: auto;
    line-height: inherit;
    line-stacking: inline-line-height exclude-ruby consider-shifts;
    list-style: disc outside none;
    margin: 0;
    marks: none;
    marquee-direction: forward;
    marquee-loop: 1;
    marquee-play-count: 1;
    marquee-speed: normal;
    marquee-style: scroll;
    max-height: none;
    max-width: none;
    min-height: 0;
    min-width: 0;
    move-to: normal;
    nav-down: auto;
    nav-index: auto;
    nav-left: auto;
    nav-right: auto;
    nav-up: auto;
    opacity: 1;
    orphans: 2;
    outline: invert none medium;
    outline-offset: 0;
    overflow: visible;
    overflow-style: auto;
    padding: 0;
    page: auto;
    page-break-after: auto;
    page-break-before: auto;
    page-break-inside: auto;
    page-policy: start;
    -webkit-perspective: none;
    perspective: none;
    -webkit-perspective-origin: 50% 50%;
    perspective-origin: 50% 50%;
    position: static;
    presentation-level: 0;
    punctuation-trim: none;
    quotes: none;
    rendering-intent: auto;
    resize: none;
    right: auto;
    rotation: 0;
    rotation-point: 50% 50%;
    ruby-align: auto;
    ruby-overhang: none;
    ruby-position: before;
    ruby-span: none;
    size: auto;
    string-set: none;
    table-layout: auto;
    top: auto;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    -webkit-transform-origin: 50% 50% 0;
    -ms-transform-origin: 50% 50% 0;
    transform-origin: 50% 50% 0;
    -webkit-transform-style: flat;
    transform-style: flat;
    transition: all 0 ease 0;
    unicode-bidi: normal;
    vertical-align: baseline;
    white-space: normal;
    white-space-collapse: collapse;
    widows: 2;
    width: auto;
    word-break: normal;
    word-spacing: normal;
    word-wrap: normal;
    z-index: auto;
    /* And disable MS gradients */
    filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.beans-reward-reset *{
    box-sizing: border-box;
}


#beans-section{
    display: block;
    max-width: 600px;
    margin: 30px auto;
}

#beans-section > div {
    display: block;
    width: 100%;
    margin: 20px auto;
}

#beans-section .beans-clearfix:before, .beans-clearfix:after{
    content:" ";
    display:table
}
#beans-section .beans-clearfix:after{
    clear:both
}

#beans-section .beans-header{
    display: block;
    text-align: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: transparent;
    max-width: 600px;
    height: 215px;
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    transform-style: preserve-3d;
    /*border-radius: 5px;*/
}

#beans-section .beans-header h1{
    display: inline-block;
    position: relative;
    top: 50%;
    padding: 5px;
    margin: 0;
    background-color: rgba(255, 255, 255, 0.67);
    transform: translateY(-50%);
}

#beans-section .beans-header h1{

}

#beans-section .beans-intro{
    display: block;
    text-align: left;
    width: 100%;
    padding: 15px 0;
    font-size: 15px;
}

#beans-section .beans-intro .beans-intro-content{
    display: inline-block;
    max-width: 400px;
    text-align: left;
}

#beans-section .beans-intro .beans-intro-cta{
    display: inline-block;
    margin: auto;
    padding: 10px 15px;
    font-weight: bold;
    color: #ffffff;
    border-radius: 4px;
    float: right;
    cursor: pointer;
}

#beans-section .beans-balance {
    margin: 0;
    clear: none;
    width: auto;
    min-width: 0;
    color: rgb(255, 255, 255);
    border-radius: 2px;
    display: block;
    font-size: 16px;
    line-height: 1em;
    text-align: left;
    font-weight: bold;
    padding: 10px;
}

#beans-section .beans-rules{
    margin: auto;
    padding: 0;
}

#beans-section .beans-rule-item{
    display: block;
    width: 100%;
    margin: 10px auto;
    background-color: #F9F9F9;
    border: 1px solid rgb(184, 184, 184);
    padding: 20px;
    border-radius: 2px;
    text-align: center;
}

#beans-section .beans-rule-icon-circle {
    float: right;
    height: 46px;
    margin: auto 20px auto 0;
    clear: none;
    width: 46px;
    /*border-radius: 50%;*/
    text-align: center;
}

#beans-section .beans-rule-image {
    float: none;
    width: 50px;
    max-width: none;
    height: 50px;
    margin: 5px auto;
    clear: none;
    color: rgb(0, 0, 0);
}

#beans-section .beans-rule-text-wrapper {
    float: none;
    height: auto;
    margin: 10px 0;
    clear: none;
    width: auto;
    padding-top: 5px;
    padding-bottom: 5px;
}

#beans-section .beans-rule-title {
    float: none;
    font-size: 16px;
    width: auto;
    height: auto;
    text-align: left;
    font-weight: bold;
    line-height: 1em;
    margin: 0 0 5px;
    clear: none;
    min-height: 0;
    text-decoration: none;
    text-transform: capitalize;
    padding-bottom: 0;
    display: block;
}

#beans-section .beans-rule-description {
    float: none;
    font-size: 15px;
    width: auto;
    height: auto;
    text-align: left;
    font-weight: normal;
    line-height: 1em;
    margin: 0;
    clear: none;
    min-height: 0;
    text-decoration: none;
    text-transform: none;
    padding-bottom: 0;
    display: block;
    color: rgb(0, 0, 0);
}

#beans-section .beans-history{
    width: 100%;
    margin: 20px auto;
}

#beans-section .beans-history-entry {
    display: block;
    margin: 10px auto;
    width: 100%;
    border-radius: 2px;
    background-color: #F9F9F9;
    border: 1px solid rgb(184, 184, 184);
    padding: 10px;
}

#beans-section .beans-history-description{
    font-size: 18px;
    text-align: left;
    font-weight: normal;
    line-height: 1em;
    margin: 0 0 5px;
    min-height: 0;
    padding-bottom: 0;
    display: block;
    color: rgb(68, 68, 68);
}

#beans-section .beans-history-beans {
    font-size: 15px;
    text-align: right;
    font-weight: normal;
    line-height: 1em;
    margin: auto 10px;
    display: inline-block;
    width: 120px;
    float: right;
}

#beans-section .beans-history-date {
    font-size: 15px;
    text-align: left;
    font-weight: normal;
    line-height: 1em;
    display: inline-block;
    color: rgb(102, 102, 102);
    margin: auto;
    float: left;
}