/* buildingblocks portalpage */
h2.smallmargin
{
    margin: 20px 0 5px 0;
}
h3.smallmargin
{
    margin: 15px 0 10px 0;
}
.buildingblock
{
    position: relative;
    max-width: 820px;
    min-height: 160px;
    margin-bottom: 10px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: 10px 0 10px 10px;
}
.buildingblock.upgrade
{
    background-color: #f8f8f8;
}

.buildingblockimage,
.buildingblock .credits_upgrade_addtoaccount
{
    margin-bottom: 10px;
}

.buildingblockimage
{
    position: relative;
    float: left;
    width: 150px;
    height: 150px;
    margin-right: 10px;
}
.buildingblockimage > img
{
    position: absolute;
    max-width: 150px;
    max-height: 150px;
    left: 0px;
    top: 0px;
}
.buildingblockimage div.lockedblock
{
    position: absolute;
    left: 0px;
    top: 0px;
    width: 150px;
    height: 150px;
    background-color: rgba(100,100,100,0.8);
}
.buildingblockimage div.lockedblock img
{
    position: absolute;
    left: 49px;
    top: 35px;
    width: 52px;
    height: 65px;
    margin: 0;
}
.buildingblock button
{
    font-family: 'Open Sans', Arial, Helvetica;
}
.buildingblock button.add,
.buildingblock button.start
{
    height: 28px;
    color: #fff;
    font-weight: normal;
    font-size: 14px;
    line-height: 26px;
    margin-top: 5px;
    border-radius: 14px;
    background: #09c;
}
.buildingblockimage button.start.car
{
    background: green;
}
.buildingblockimage button.add,
.buildingblockimage button.start
{
    position: absolute;
}
.buildingblockimage button.add
{
    width: 150px;
    left: 0;
    bottom: 5%;
}
.buildingblockimage button.add.trial
{
    width: 140px;
    left: 5px;
    padding-left: 1px;
    padding-right: 1px;
}
.buildingblock .addtoaccount button.add
{
    bottom: 15px;
    width: 120px;
    background: green;
}
.buildingblock button.start
{
    left: 17%;
    bottom: 5%;
    width: 100px;
}
.buildingblock .description
{
    float: left;
    width: 100%;
    max-width: 420px;
    font-size: 13px;
}
.buildingblock .light-blue
{
    margin: 0 0 0 0;
}
.buildingblock .usps
{
    width: 100%;
    max-width: 420px;
    margin-top: 15px;
}
.buildingblock .usps .usp
{
    display: inline-block;
    width: 200px;
    font-size: 12px;
    /*
    padding-left: 20px;
    background-image: url(/public/images/gray_dark/check_12x10.png);
    background-repeat: no-repeat;
    background-position: center left;
    */
}
.buildingblock .usps .usp:before
{
    content: "→ ";
    /*content: "\2192\0020";*/
    color: #09c;
    font-size: 14px;
}
.buildingblock .credits_upgrade_addtoaccount
{
    float: right;
    margin-right: 10px;
    position: relative;
    width: 195px;
    height: 148px;
    border: 1px solid #333;
    border-radius: 10px;
}
.buildingblock .credits,
.buildingblock .upgrade,
.buildingblock .addtoaccount
{
    padding: 8px 1px;
    text-align: center;
    font-size: 13px;
}
.buildingblock .credits
{
    border-radius: 10px 10px 0 0;
}
.buildingblock .upgrade
{
    background-color: #09c;
    font-weight: 600;
}
.buildingblock .upgrade.free
{
    padding: 15px 1px;
}

.buildingblock .addtoaccount
{
    position: absolute;
    bottom: 0px;
    padding: 5px 1px;
    line-height: 18px;
    border-radius: 0 0 10px 10px;
}
.buildingblock .addtoaccount.trial
{
    color: #f30;
    font-weight: 600;
}
.buildingblock .credits,
.buildingblock .upgrade
{
    color: #fff;
}
.buildingblock .credits
{
    text-indent: 20px;
    background-color: #000;
    background-image: url(/public/images/portal/icon_opwaarderen-clock.svg);
    background-repeat: no-repeat;
    background-position: 20px center;
}
.buildingblock .credits.centered
{
    text-indent: 0px;
}
.buildingblock .digibooklink,
.buildingblock .examlink
{
    cursor: pointer;
}


#buildingblockbanner
{
    background: #1d82c0;
    color: #000;
    display: inline-block;
    max-width: 828px;
    width: 100%;
    height: 156px;
    border: 1px solid #ccc;

    position: relative;

    font-size: 26px;
    background-color: #fff;
}
#buildingblockbanner > img, #buildingblockbanner_click
{
    max-height: 100%;
    position: absolute;
}

#buildingblockbanner_descr
{
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    min-height: 55px;

    background-image: url(../images/shop/onlinerijexamenoefenen/balkmetballetjes.svg);
    background-position: center bottom;
    background-repeat: repeat-x;
}
#buildingblockbanner_descr p
{
    color: #fff;
    font-size: 16px;
    padding: 5px 0 5px 120px;
    line-height: 1.5em;
}
#buildingblockbanner_descr > img
{
    max-width: 65%;
    margin-left: 120px;
    margin-top: 10px;
}
#buildingblockbanner_bas
{
    /*width: 111px;*/
    height: 156px;
    left: 0;
    top: 0;
}
#buildingblockbanner_logo
{
    width: 300px;
    height: 74px;
    max-width: 35%;
    left: 95px;
    top: 10px;
}
#buildingblockbanner_pijl
{
    width: 247px;
    height: 91px;
    max-width: 30%;
    right: 20%;
    top: 5px;
}
#buildingblockbanner_click
{
    top: 0;
    right: 5px;
    width: 156px;
    height: 156px;
    max-width: 20%;
}
#buildingblockbanner_click img
{
    max-width: 100%;
    transition: transform 0.5s ease-in-out;
}
#buildingblockbanner_click:hover img {
    transform: rotate(15deg);
}

@media screen and (max-width: 470px) {
    #buildingblockbanner
    {
        height: 140px;
    }
    #buildingblockbanner_pijl
    {
        top: 0;
    }
}
@media screen and (max-width: 400px) {
    #buildingblockbanner
    {
        height: 130px;
    }
}

.buildingblockreview
{
    position: relative;
    margin-left: 10px;
    margin-right: 10px;
    margin-bottom: 10px;
    color: #fff;
    padding: 1em 10px;
    max-width: 790px;
    border-radius: 10px;
}
.buildingblockreview h3
{
    margin-bottom: 0.5em;
    margin-right: 60px;
}
.scootertheorieoefenen .buildingblockreview,
.wegrijden .buildingblockreview
{
    background-color: #09c;
}
.scootertheorieoefenen .buildingblockreview a#wegrijdenreviewlink,
.wegrijden .buildingblockreview a#wegrijdenreviewlink
{
    float: right;
    background-color: #fff;
    color: #000;
    margin-left: 1em;
    margin-top: 0.75em;
    margin-bottom: 0.75em;
}
.scootertheorieoefenen .buildingblockreview a#wegrijdenreviewlink:hover,
.scootertheorieoefenen .buildingblockreview a#wegrijdenreviewlink:focus,
.wegrijden .buildingblockreview a#wegrijdenreviewlink:hover,
.wegrijden .buildingblockreview a#wegrijdenreviewlink:focus
{
    background-color: #ddd;
}
.scootertheorieoefenen .buildingblockreview .close,
.wegrijden .buildingblockreview .close
{
    top: 5px;
    right: 5px;
    width: auto;
    line-height: 25px;
    font-weight: normal;
    text-indent: 0;
    padding-right: 30px;
    background-image: url(/public/images/portal/icon_close_black_white.svg);
    background-position: top right;
}
.scootertheorieoefenen .buildingblockreview .close:hover,
.scootertheorieoefenen .buildingblockreview .close:focus,
.wegrijden .buildingblockreview .close:hover,
.wegrijden .buildingblockreview .close:focus
{
    opacity: 0.8;
}



.upgradepopup {
    position: fixed;
    display: none;
    width: 100%;
    height: 100%;
}
.upgradepopup .overlay
{
    position: fixed;
    width: 100%;
    height: 100%;
    opacity: 0.5;
}
.upgradepopup .content
{
    display: none;
    width: 100%;
    max-width: 680px;
    padding: 0;
    position: fixed; /* absolute;*/
    left: 50%;
    margin-left: -340px;
    top: 50%;
    margin-top: -250px; /*-300px;*/
    background-color: #fff;
    border: 1px solid #000;
    border-radius: 10px;
    z-index:1001;
}
.upgradepopup .contentinner
{
    padding: 10px 40px 20px 40px;
}

.buildingblockreview .close,
.upgradepopup .close
{
    position: absolute;
    top: 10px;
    right: 10px;
    font-weight: bold;
    cursor: pointer;
    width: 25px;
    height: 25px;
    cursor: pointer;
    text-indent: -99999px;
    background: transparent url(/public/images/portal/icon_close_light.svg) no-repeat top left;
    background-size: 25px 25px;
}
.upgradepopup .upgradeheader
{
    margin-top: 15px;
}
.upgradepopup h2.light-blue
{
    font-weight: bold;
}
.upgradeitem
{
    position: relative;
    width: 580px;
    border: 1px solid #ccc;
    border-radius: 10px;
    padding: 10px 0 10px 5px;
    margin-bottom: 5px;
}
.upgradeitem:hover
{
    background-color: #efe;
}
.upgradeitem.selected
{
    background-color: #dfc;
}
.upgradeitem span,
.upgradeheader span
{
    display: inline-block;
    vertical-align: middle;
}
.upgradeitem input[type="radio"],
.payitem input[type="radio"]
{
    margin: 0 5px;
    vertical-align: middle;
}
.upgradeitem span.description
{
    width: 380px;
    font-weight: bold;
}
.upgradeitem span.price,
.upgradeheader span.price
{
    width: 80px;
    text-align: center;
}
.upgradeheader span.price
{
    font-weight: 600;
}
.upgradeitem span.price.incl
{
    font-weight: bold;
}
.upgradeheader span.incl
{
    margin-left: 410px;
}
.upgradeitem span.recommended
{
    position: absolute;
    top: 14px;
    right: 160px;
    padding: 1px 10px 3px 10px;
    background-color: white;
    color: green;
    font-size: 11px;
    font-weight: bold;
    border: 2px solid green;
}
.upgradeitem,
.payitem
{
    cursor: pointer;
}

.payitem
{
    display: inline-block;
    width: 270px;
    border: 1px solid #ccc;
    border-radius: 10px;
    padding: 7px 0 7px 5px;
    font-weight: bold;
    margin-bottom: 10px;
}
.payitem.chosen
{
    background-color: #efd;
    border-color: #8f8;
}
.payitem.notchosen
{
    background-color: #fdd;
    border-color: #f88;
}
.payitem.ideal
{
    margin-right: 27px;
}
.payitem img
{
    vertical-align: middle;
    height: 30px;
}
select.bank
{
    width: 140px;
    height: 26px;
    border-radius: 10px;
    background-color: transparent;
    margin-left: 10px;
}
.upgradeheader span.price
{
    width: 80px;
    text-align: center;
}

.upgradepopup button.upgrade
{
    width: 150px;
    height: 30px;
    color: #fff;
    font-weight: normal;
    font-size: 14px;
    line-height: 14px;
    background: green;
    border-radius: 14px;
    margin-top: 10px;
    margin-left: 210px;
}

@media screen and (max-width: 1180px) {
    .buildingblockimage
    {
        width: 47%;
        max-width: 150px;
    }
    .buildingblockimage img,
    .buildingblockimage div.lockedblock
    {
        max-width: 100%;
        max-height: 100%;
    }

    .buildingblock .credits_upgrade_addtoaccount
    {
        width: 50%;
        max-width: 195px;
        float: left;
    }
}

@media screen and (max-width: 800px) {
    .buildingblock .credits_upgrade_addtoaccount
    {
        margin-right: 0;
    }
}

@media screen and (max-width: 680px) {
    .upgradepopup .content {
        left: 0;
        margin-left: 0;
        top: 0;
        margin-top: 0;
    }
    .upgradepopup .contentinner
    {
        padding: 10px 10px 20px 10px;
    }

    .upgradeitem
    {
        width: 100%;
        max-width: 580px;
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .upgradeitem span.description
    {
        width: auto;
        max-width: 70%;
    }
    .upgradeheader span.price.excl,
    .upgradeitem span.price.excl
    {
        display: none;
    }
    .upgradeheader
    {
        max-width: 580px;
        text-align: right;
    }
    .upgradeheader span.incl
    {
        margin-left: 0;
    }
    .upgradeitem span.price.incl
    {
        width: auto;
        float: right;
        margin-top: 4px;
        padding-right: 20px;
        text-align: right;
    }
    .upgradeitem span.recommended
    {
        top: 0;
        right: 20px;
    }

    .upgradepopup button.upgrade
    {
        margin: 20px auto 0 auto;
        display: block;
    }

}

@media screen and (max-width: 400px) {
    .buildingblock {
        padding-left: 5px;
        padding-right: 3px;
    }
    .buildingblock .credits {
        background-position: 10px center;
    }
    .buildingblockimage {
        margin-right: 5px;
    }

    .upgradeitem {
        padding-top: 17px;
        padding-bottom: 14px;
    }
    .upgradepopup .upgradeheader
    {
        margin-top: 2px;
    }
    .upgradepopup button.upgrade
    {
        margin-top: 10px;
    }
    .upgradepopup h2.smallmargin,
    .upgradepopup h3.smallmargin
    {
        margin-top: 10px;
    }
}
