.w10                { width: 10%; }
.w20                { width: 20%; }
.w30                { width: 30%; }
.w40                { width: 40%; }
.w50                { width: 50%; }
.w60                { width: 60%; }
.w70                { width: 70%; }
.w80                { width: 80%; }
.w90                { width: 90%; }
.w100               { width: 100%; }

.col_1-3            { width: 31.91489361702128%; }
.col_2-3            { width: 65.95744680851064%; }
    .col_2-3 .col_1-3 { width: 48.46526655896607%; }
.col_3-3            { width: 100% }

.ml_flex            { margin-left: 2.127659574%; }
    .col_2-3 .ml_flex { margin-left: 3.2258064516129%; }

.bg_b_5             { background-color: #f1f1f1; background-color: rgba(0,0,0,0.05); }

.clr_0              { color: #000000; }
.clr_a              { color: #3284ad; }
.clr_red            { color: #cc0000; }

.brd_red            { border-color: #cc0000; }
.brd_lblue          { border-color: #3284ad; }

/* checkout */
.checkout input[type="text"]     { outline: 0 none; }
.checkout .call_to_action button,
.checkout .call_to_action a { padding: 16px 20px; margin-top: 10px; }
.call_to_action a.reverse span { opacity: 1; border-color: transparent rgba(0, 102, 153, 0.8) transparent transparent; right: auto; left: -10px; border-width: 10px 10px 10px 0; }
.call_to_action a.reverse:hover span { border-color: transparent rgba(146, 198, 0, 0.8) transparent transparent; }

.checkout .step_back { width: 51px; height: 51px; vertical-align: top; margin-left: 10px; position: relative; }
.checkout .step_back em { display: block; width: 51px; height: 51px; position: absolute; top: 0px; left: 0px; -webkit-transition: all .3s ease-out; -moz-transition: all .3s ease-out; -o-transition: all .3s ease-out; transition: all .3s ease-out; }
.checkout .step_back .a { opacity: 1; background-position: -153px -232px; }
.checkout .step_back .b { opacity: 0; background-position: -153px -283px; }
.checkout .step_back:hover .a { opacity: 0; }
.checkout .step_back:hover .b { opacity: 1; }
.checkout h1 { margin-left: 25px; padding-top: 5px; }

.checkout .delimiter { position: relative; }
.checkout .delimiter span,
.checkout .delimiter em { display: inline-block; }
.checkout .delimiter em {  }
.checkout .delimiter span { height: 0px; width: 25%; position: absolute; top: 50%; }
.checkout .delimiter span.hr_left  { left: 11.71875%; }
.checkout .delimiter span.hr_right { left: auto; right: 11.71875%; }
.checkout .blue .delimiter span  { border-bottom: 1px solid #2371a5; border-top: 1px solid #004a7e; }
.checkout .green .delimiter span { border-bottom: 1px solid #a0d422; border-top: 1px solid #6fa800; }

.fm_error_msg { color: #c00; list-style: none; font-size: 13px; display: none; }
.fm_error label { color: #c00; }
.fm_error input { border-bottom: 1px solid #d00 !important; }
.fm_error textarea { border: 1px solid #d00 !important; }

.purchase .internal, .purchase .external { display: none !important; }
.purchase .copy { margin-top: 0; }


/* step1 */
.checkout_step1 h1,
.checkout_step7 h1 { margin-left: 87px; }
.clean_form .fm_field,
.card_info .fm_field            { margin-bottom: 10px; font-size: 20px; line-height: 1; }
.clean_form label               { vertical-align: baseline; width: 48.46526655896607%;; text-align: right; display: inline-block }
.clean_form input[type="text"],
.clean_form input[type="email"],
.clean_form input[type="tel"]   { border: none; border-bottom: 1px dotted #c9c9c9; outline: 0 none; color: #3284ad; width: 41.93548387096774%; margin-left: 3.3333333%; background: none; -moz-border-radius: 0; -webkit-border-radius: 0; -o-border-radius: 0; -ms-border-radius: 0; border-radius: 0; -webkit-appearance: none; -moz-appearance: none; }
.clean_form input[type="text"]:focus,
.clean_form input[type="email"]:focus,
.clean_form input[type="tel"]:focus { border-bottom: 1px solid #92C600 !important; }
.clean_form select              { border: none; outline: 0 none; width: 41.93548387096774%; margin-left: 3.3333333%; background: none; }

/* step2 */
.checkout_step2 .input_arrow_r,
.checkout_step2 .input_arrow_b  { background: #ccc; border: 1px solid #b2b2b2; position: relative; }
.checkout_step2 input,
.input_arrow_b,
.input_arrow_r { color: #666; text-shadow: 0 1px 0 rgba(102,102,102,0.5); font-size: 20px; background: none; border: none; font-family: 'titilliumweb_semibold', Arial, Tahoma, Helvetica, sans-serif; }

    /* styling them arrowz */
    .checkout_step2 .input_arrow_b span,
    .checkout_step2 .input_arrow_r span { display: block; position: absolute; content: ' '; border-width: 11px; border-style: solid; z-index: 2; }
        .checkout_step2 .input_arrow_b span span,
        .checkout_step2 .input_arrow_r span span { border-width: 10px; }

    /* bottom arrow */
    .checkout_step2 .input_arrow_b span      { border-color: #b2b2b2 transparent transparent transparent; top: auto; left: 50%; bottom: -22px; margin-left: -11px; }
    .checkout_step2 .input_arrow_b span span { border-color: #ccc transparent transparent transparent; top: -11px; left: auto; bottom: auto; margin-left: -10px; }
        .error .input_arrow_b span           { border-color: #bb2d2d transparent transparent transparent; }
        .error .input_arrow_b span span      { border-color: #d63333 transparent transparent transparent; }
        .success .input_arrow_b span         { border-color: #93b72d transparent transparent transparent; }
        .success .input_arrow_b span span    { border-color: #a8d133 transparent transparent transparent; }

    /* right arrow */
    .checkout_step2 .input_arrow_r span      { border-color: transparent transparent transparent #bb2d2d; right: -23px; top: 14px; display: none; }
    .checkout_step2 .input_arrow_r span span { border-color: transparent transparent transparent #d63333; right: -8px; top: -10px; }

    /* transaction fields */
    .transactions .fm_field { /*float: left;*/ position: relative; height: 80px; margin-right: 1.6666667%; }
    .transactions .input_arrow_b { height: 48px; }
    .transactions label { font-size: 12px; font-family: Arial, sans-serif; position: absolute; left: 0px; top: auto; bottom: 0px; width: 100%; text-align: center; }
    .transactions input { width: 68px; text-align: center; padding: 14px 0; height: 20px; position: relative; }

    /* min/max amount fields */
    .amount label { vertical-align: baseline; }
    .amount .input_arrow_r { width: 150px; padding: 10px 0; height: 28px; font-size: 20px; }
        .input_arrow_r input { width: 50%; padding: 0 20px; }
    .amount .error_msg { margin-left: 25px; font-size: 15px; }

    .amount .error_msg,
    .amount .input_arrow_r span { display: none; }
    .amount .error .error_msg,
    .amount .error .input_arrow_r span { display: inline-block; }

    /* errors */
    .error .input_arrow_r,
    .error .input_arrow_b { background: #d63333; }
    .error .input_arrow_r input,
    .error .input_arrow_b input,
    .error .input_arrow_r,
    .error .input_arrow_b { /*text-shadow: 0 1px 0 rgba(187,45,45,1);*/ text-shadow: 1px 1px 1px #b40000; border-color: #bb2d2d; color: #fff; }

    /* success */
    .success .input_arrow_r,
    .success .input_arrow_b { background: #a8d133; }
    .success .input_arrow_r input,
    .success .input_arrow_b input,
    .success .input_arrow_r,
    .success .input_arrow_b { /*text-shadow: 0 1px 0 rgba(147,183,45,1);*/ text-shadow: 1px 1px 1px #6cb200; border-color: #93b72d; color: #fff; }

/* step3 */
.checkout_step3 .huge,
.checkout_step3 .less_huge       { text-align: center !important; }
.checkout_step3 .subplan_c .huge,
.checkout_step3 .subplan_d .huge { font-size: 70px !important; }

.checkout_plans .subplan_d div .price, .checkout_services .subplan_d div .price { font-size: 50px; }

/* step4 */
.checkout_step4 .box > div > .outer > .inner  { padding: 20px; }
.checkout_step4 .box .inner h2 { font-size: 30px; text-align: center !important; }
.checkmarks p { padding-left: 30px; position: relative; font-size: 15px; line-height: 1.4; margin-left: 30px; }
    .checkmarks .has_asset { background-position: 0 -330px; width: 24px; height: 24px; display: block; float: left; position: absolute; top: 0; left: 0; }


.add_remove { width: 93.02325581395349%; margin: auto; }

.remove_service .outer, .add_service .outer { border: 1px solid; -moz-border-radius: 5px; -webkit-border-radius: 5px; -o-border-radius: 5px; -ms-border-radius: 5px; border-radius: 5px; }
.remove_service .inner, .add_service .inner { padding: 15px; border: 1px solid; -moz-border-radius: 3px; -webkit-border-radius: 3px; -o-border-radius: 3px; -ms-border-radius: 3px; border-radius: 3px; }

.add_service .outer, .remove_service .outer { border-color: #77a700; }
.add_service .inner, .remove_service .inner { border-color: #fff200; }

.add_service .inner, .blue:hover .add_service .inner { background: #91c600; background: -moz-linear-gradient(top, #91c600 0%, #65af00 100%); background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#91c600), color-stop(100%,#65af00)); background: -webkit-linear-gradient(top, #91c600 0%,#65af00 100%); background: -o-linear-gradient(top, #91c600 0%,#65af00 100%); background: -ms-linear-gradient(top, #91c600 0%,#65af00 100%); background: linear-gradient(to bottom, #91c600 0%,#65af00 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#91c600', endColorstr='#65af00',GradientType=0 ); }
.remove_service .inner, .green:hover .remove_service .inner { background: #004181; background: -moz-linear-gradient(top, rgba(0,101,153,0.9) 0%, rgba(0,65,129,0.9) 100%); background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,101,153,0.9)), color-stop(100%,rgba(0,65,129,0.9))); background: -webkit-linear-gradient(top, rgba(0,101,153,0.9) 0%,rgba(0,65,129,0.9) 100%); background: -o-linear-gradient(top, rgba(0,101,153,0.9) 0%,rgba(0,65,129,0.9) 100%); background: -ms-linear-gradient(top, rgba(0,101,153,0.9) 0%,rgba(0,65,129,0.9) 100%); background: linear-gradient(to bottom, rgba(0,101,153,0.9) 0%,rgba(0,65,129,0.9) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e6006599', endColorstr='#e6004181',GradientType=0 ); opacity: 0.5; }

.add_remove .service_asset { float: right; background: url(/css/site/cssimg/assets/service_assets.png) no-repeat; width: 22px; height: 19px; color: transparent; }
    .add_service .service_asset { background-position: center bottom; }
    .remove_service .service_asset { background-position: center top; }

.blue .add_service,
.green .remove_service  { display: block; }
.green .add_service,
.blue .remove_service   { display: none; }

/* step5 */
.terms_container        { padding: 40px 0px; }
.terms                  { height: 310px; overflow: auto; padding-right: 2.12765957446809%; padding-left: 6.38297872340426%; }
#purchase_step5         { padding-left: 6.38297872340426%; }

.checkout_step5 .fm_error_msg { padding-left: 28px; }

/* step6 */
.order_details ul       { padding-left: 17px; padding-bottom: 22px; margin-top: 12px; list-style-type: square; font-size: 20px; line-height: 1; }
.order_details .total   { font-size: 30px; }

.card_info_labels,
.card_info_inputs       { width: 48.46526655896607%; }
.card_info_labels label { vertical-align: baseline; width: 100%; text-align: right; display: inline-block; height: 40px; }
.card_info_inputs       { margin-left: 3.06451612903226%; }
.card_info_inputs input,
.card_info_inputs select { border: 1px solid #dfdfdf; font-size: 15px; line-height: 30px; padding: 0 5.81395348837209%; height: 38px; color: #333; }
.card_info_inputs #purchase_step6_cc_type     { width: 100%; padding: 10px 15px; height: 40px; }
.card_info_inputs #purchase_step6_card_number { width: 226px; }
.card_info_inputs #purchase_step6_exp_month   { width: 34.88372093023256%; padding: 10px 15px; height: 40px; }
.card_info_inputs #purchase_step6_exp_year    { width: 62.01550387596899%; padding: 10px 15px; height: 40px; margin-left: 3.10077519379845%; }
.card_info_inputs #purchase_step6_cvv         { width: 50px; text-align: center; }

/* step7 (success) */
.summary { width: 73.91304347826087%; margin: 0 auto; }

/* scrollbar */
.viewport { width: 89.18604651162791%; height: 310px; position: relative;  }
.js .viewport { overflow: hidden; }
.overview { list-style: none; position: absolute; left: 0; top: 0; }
.overview p { font-size: 15px; }
.thumb .end,
.thumb { background-color: #5c5c5c; display: none; }
.js .thumb .end,
.js .thumb { display: block; }
.scrollbar { position: relative; float: right; width: 15px; }
.track { background-color: #e5e5e5; height: 100%; width:13px; position: relative; padding: 0 1px; }
.thumb { height: 20px; width: 13px; cursor: pointer; overflow: hidden; position: absolute; top: 0; }
.thumb .end { overflow: hidden; height: 5px; width: 13px; }
.disable{ display: none; }
.noSelect { user-select: none; -o-user-select: none; -moz-user-select: none; -khtml-user-select: none; -webkit-user-select: none; }


@media only screen and (min-width: 320px) and (max-width: 479px){

    .col_1-3,
    .col_2-3,
    .col_2-3 .col_1-3,
    .checkout h2,
    .checkout_step5 .w50    { width: 100% }

    .checkout h1    { font-size: 26px; }
    .checkout h2,
    .checkout .h3   { text-align: left !important; }

    .contact_disclaimer.right           { float: none; margin-bottom: 20px; }
    .clean_form .fm_field,
    .card_info .fm_field               { font-size: 17px; }

    .checkout_step2 .h3 { margin-bottom: 10px; }
    .checkout_step2 .transactions,
    .checkout_step2 .amount .col_2-3 { text-align: center; }
    .transactions .fm_field { margin-bottom: 15px; }
    .transactions input { width: 70px; }

    #purchase_step5 { padding-left: 0; }

    .order_details .total { margin-bottom: 40px; }
    .card_info_inputs input, .card_info_inputs select { font-size: 12px; }
    .card_info_inputs .p_m { padding: 10px; }
    .card_info_inputs select { padding: 10px 5px 10px 5px !important; }
    .card_info_inputs #purchase_step6_card_number { width: 107px; }

    .checkout .call_to_action   { margin-top: 20px; }
    .checkout .call_to_action button  { text-align: center !important; }
    .checkout .call_to_action a { font-size: 13px; }
    .checkout .call_to_action a.active { width: auto; }

    .checkout_step3 .subplan_c .huge { font-size: 75px !important; }

}

@media only screen and (min-width: 480px) and (max-width: 620px){

    .col_1-3,
    .col_2-3,
    .checkout_step5 .w50   { width: 100% }

    .price_smaller { font-size: 60px !important; }

    .checkout_step2 .h3 { text-align: left !important; margin-bottom: 10px; }

    .contact_disclaimer.right       { float: none; margin-bottom: 20px; }
    .clean_form .fm_field,
    .card_info .fm_field           { font-size: 17px; }

    .transactions .fm_field { margin-bottom: 15px; }
    .transactions input { width: 65px; }
    .amount { float: left; }

    #purchase_step5 { padding-left: 0; }

    .card_info_inputs input, .card_info_inputs select { font-size: 13px; }
    .card_info_inputs #purchase_step6_card_number { width: 158px; }
    .card_info_inputs select { padding: 10px 5px 10px 10px !important; }

    .checkout .call_to_action   { margin-top: 20px; }
    .checkout .call_to_action button  { text-align: center !important; }
    .checkout .call_to_action a.active { width: auto; }

}

@media only screen and (min-width: 621px) and (max-width: 980px){

    .clean_form .fm_field,
    .card_info .fm_field,
    .order_details ul,
    .checkout_step2 .h3              { font-size: 17px; }

    .transactions label { font-size: 11px; }
    .transactions input { width: 57px; }

    .checkout_step3 .subplan_c .huge,
    .checkout_step3 .subplan_d .huge,
    .checkout_step3 .subplan_c .less_huge,
    .checkout_step3 .subplan_d .less_huge { font-size: 44px !important; line-height: 60px !important; }
    .checkout_plans .subplan_c div .price, .checkout_services .subplan_c div .price,
    .checkout_plans .subplan_d div .price, .checkout_services .subplan_d div .price,
    .checkout_plans .price_smaller { font-size: 30px !important; }
/*
    .checkout_step4 .box > div > .outer > .inner { padding: 20px 10px; }*/
    /*.checkout_step4 .transaction_price { padding: 0 31px; }*/
    .checkout_step4 .box .inner h2,
    .order_details .total            { font-size: 20px; }
    .checkout_step4 .checkmarks p    { font-size: 13px; margin-left: 0; padding-left: 23px; }
    .checkout_step4 .has_asset       { background-size: 300px 300px; background-position: 0 -248px; width: 19px; height: 19px; }
    .add_remove .inner               { font-size: 12px !important; padding: 13px 7px; position: relative; }
    .add_remove .service_asset       { background-size: 90%; width: 19px; height: 17px; position: absolute; left: auto; top: auto; right: 4px; }
    .remove_service .service_asset   { background-position: center 2px; }

    #purchase_step5 { padding-left: 0; }

    .card_info_inputs input, .card_info_inputs select { font-size: 13px; }
    .card_info_inputs #purchase_step6_cc_type     { /*width: 156px;*/ padding: 10px 5px 10px 10px; height: 40px; }
    .card_info_inputs #purchase_step6_card_number { width: 136px; }
    .card_info_inputs #purchase_step6_exp_month   { width: 70px; padding: 10px 5px 10px 10px; height: 40px; }
    .card_info_inputs #purchase_step6_exp_year    { width: 78px; margin-left: 8px; padding: 10px 5px 10px 5px; height: 40px; }
    .card_info_inputs #purchase_step6_cvv         { width: 46px; }

}

@media only screen and (min-width: 981px) and (max-width: 1270px){

    .checkout_step3 .subplan_c .huge,
    .checkout_step3 .subplan_d .huge { font-size: 75px !important; }

}

@media only screen and (min-width: 1271px) {

    .purchase .container { width: 940px; }

    .checkout_plans li,
    .checkout_services li { width: 219px; }

        .checkout_plans .options li,
        .checkout_services .options li  { width: 300px; margin-bottom: 20px; }

    /*.checkout_step3 .subplan_d .huge { font-size: 75px !important; }*/

    /*.card_info_inputs #purchase_step6_card_number { width: 317px; }*/

}