.hero-wrapper { display:inline-block; width:100%; position:absolute; top:0; left:0; right:0; }
.hero-image {
  background: url('/subscriptions/stock.jpg') no-repeat transparent;
    background-position-x: 0%;
    background-position-y: 0%;
    background-size: auto auto;
  width: 100%;
  height: 345px;
  background-position: center top;
  background-size: cover;
  z-index: -1;
  position: absolute;
  top: 0;
  left: 0;
}

.hero-overlay {
  background: rgba(0,0,0,0.5) none repeat scroll 0 0;
  display: block;
  height: 345px;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.prod-wrapper ev-product-selection {
  width: 360px;
  display: inline-block;
  margin-left: 52px;
    position: relative;
    top: 65px;
}

.widget-header {
  position: relative;
  padding: 15px 15px;
  background: #000;
  text-transform: uppercase;
  text-align: center;
  font-family: "Fira Sans Condensed", sans-serif;
  font-size: 1.3em;
  font-weight: 400;
  color: #fff;
  border-radius: 0;
  margin-top:-3px;
  display:inline-block;
  width:100%;
  max-width:870px;
  margin-bottom:20px;
}

.ev .col-md-4 {
  width: auto !important;
  display:inline-block;
  float:none;
}

#container { /*max-width:900px;*/ }

.sub-wrapper {
  max-width: 900px;
  margin: 0 auto;
}

.prod-wrapper {
  display: inline-block;
  width: 100%;
  margin-top: 220px;
  background-color: #FFFFFF;
  position: relative;
  border: 1px solid #000;
  border-radius: 0;
  margin-bottom: 50px;
  padding: 0 0 20px;
    text-align:center;
}

.product-body {
  background-color: #FFFFFF;
  padding: 0px 20px 5px;
}

.ev .pm2 .product-header {
  text-align: center;
  padding: 20px 20px 0;
  color:#FFFFFF;
  font-family:"Fire Sans Condensed", sans-serif;
}

.ev .pm2 .product-title {
  text-align: center;
  font-weight: 500;
  font-size: 17px;
}

@media only screen and ( max-width : 767px ){
  .ev .pm2 .product-title { font-size:16px; white-space: nowrap; }
}

.ev .pm2 .product-item {
  border: 2px solid #b3b3b3;
  border-radius: 25px;
  padding: 0;
  background-color: #669933;
}

.ev .pm2 .payment-content {
  margin-bottom: 30px;
    padding-bottom:15px;
}

.ev .pm2 .payment-content li { background-color:#efefef; }

.ev .product-footer .btn::after {
  /*background-image: linear-gradient(to bottom,#fff 0,#e0e0e0 100%);*/
  background-repeat: repeat-x;
  text-shadow: 0 1px 0 #000;
  content: "Start FREE Trial";
  visibility: visible;
  padding: 10px 80px;
  border-radius: 5px;
  border: 2px solid #cccccc;
  display: inline-block;
  margin-left: -55px;
  background-color: #669933;
  color: #FFFFFF;
}

.ev .product-footer .btn:hover::after {
  /*background-image: linear-gradient(to bottom,#fff 0,#e0e0e0 100%);*/
  background-repeat: repeat-x;
  text-shadow: 0 1px 0 #669933;
  content: "Start FREE Trial";
  visibility: visible;
  padding: 10px 80px;
  border-radius: 5px;
  border: 2px solid #669933;
  display: inline-block;
  margin-left: -55px;
  background-color: #FFFFFF;
  color: #000000;
}

ev-stripe .payment-stripe-footer .btn-success::after {
    /*background-image: linear-gradient(to bottom,#fff 0,#e0e0e0 100%);*/
    background-repeat: repeat-x;
    text-shadow: 0 1px 0 #000;
    content: "Submit Payment";
    visibility: visible;
    padding: 10px 50px;
    border-radius: 50px;
    border: 2px solid #cccccc;
    display: inline-block;
    margin-left: -165px;
    box-sizing: border-box;
    width: 300px;
    background-color: #669933;
    color: #FFFFFF;
    font-size: 1.3em;
    text-transform: capitalize;
    font-family: "ROBOTO", sans-serif;
    font-weight: 500;
}

ev-stripe .payment-stripe-footer .btn-success:hover::after {
  border: 2px solid #669933;
  background-color: #FFFFFF;
  color: #000000;
}

ev-stripe .payment-stripe-footer .btn, 
ev-stripe .payment-stripe-footer .btn:hover, 
ev-stripe .payment-stripe-footer .btn-default, 
ev-stripe .payment-stripe-footer .btn-default:hover
ev-stripe .payment-stripe-footer .btn-success, 
ev-stripe .payment-stripe-footer .btn-success:hover {
  background: none transparent !important;
    background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  outline:none !important;
  text-shadow: none;
}

ev-stripe .payment-stripe-footer {
  padding: 0;
  padding-bottom: 0px;
  background-color: #FFFFFF;
  width: 100%;
  margin-bottom: 0px;
  padding-bottom: 20px;
  border-radius: 0 0 23px 23px;
}

.ev .product-footer .btn, 
.ev .product-footer .btn:hover, 
.ev .product-footer .btn-default, 
.ev .product-footer .btn-default:hover {
  background: none transparent !important;
    background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  outline:none !important;
}

.ev .product-footer .btn { text-shadow:none !important; color:transparent !important; }
.ev .product-footer .btn:hover { text-shadow:none !important; color:transparent!important; }
ev-stripe .payment-stripe-footer .btn { color:transparent!important; text-shadow:none !important; }
ev-stripe .payment-stripe-footer .btn:hover { color:transparent!important; }

.product-footer {
  padding: 0;
  padding-bottom: 0px;
  background-color: #FFFFFF;
  width: 100%;
  margin-bottom: 0px;
  padding-bottom: 20px;
  border-radius: 0 0 23px 23px;
}

.widget-body { padding:0; }

.offer-wrapper {
    display: inline-block !important;
    width: auto;
    font-family: "Fira Sans Condensed", sans-serif !important;
    font-weight: 300 !important;
    /*margin-left: 52px;*/
    vertical-align: top;
    margin-bottom: 20px;
    border-radius: 25px;
    border: solid 2px #b3b3b3;
    overflow: hidden;
}
.offer-wrapper h2 {
    font-size: 1.8em;
    /* font-weight: 300 !important; */
    font-family: "Fira Sans Condensed", sans-serif;
    color: #ffffff !important;
    margin-left: 0px;
    padding-top: 15px;
    background-color: #353535;
    padding: 15px;
    font-size: 1.1em;
    font-weight: normal !important;
}
.politics .offer-wrapper h2{
    background-color: #d30015;
}
  .offer-wrapper ul.benefits li { padding-bottom:10px; white-space: nowrap; }

.offer-wrapper ul.benefits li:last-child {
    padding-bottom: 0;
}

  .offer-wrapper ul.benefits li span.checkmark::before {
    background: url('//util.realclearpolitics.com/rcmg_users/assets/checkmark-xxl.png') no-repeat;
      background-size: auto auto;
    content: '';
    width: 15px;
    height: 15px;
    padding-right: 20px;
    margin-right: 5px;
    position: relative;
    background-size: contain;
  }

    .offer-wrapper ul.benefits li span.info-mark::before {
        content: "\26A0";
        color: #d30015;
        font-size: 1.8em;
        vertical-align: middle;
        margin-left: -5px;
        margin-right:8px;
    }

  .offer-wrapper .product-image {
    background: url('//util.realclearpolitics.com/rcmg_users/assets/product_v5.png') no-repeat scroll 0 -22px transparent;
    width:380px;
    height:215px;
    background-size:cover;
    margin:0 auto;
  }

@media only screen and ( max-width : 1024px ){
  .offer-wraper { width:320px; margin-left:30px; }
  .offer-wrapper .product-image { width:320px; height:195px; }
  .offer-wrapper h2 { font-size:1.7em; }
  
  .prod-wrapper ev-product-selection {
    width: 360px;
    display: inline-block;
    margin-left: 20px;
      top: 48px;
  }
  
  .widget-header { padding:10px 0 8px; max-width:inherit; }
  
  .ev .col-sm-6 {
    width: 100%;
  }
}

@media only screen and ( max-width : 767px ){
  .prod-wrapper { margin-top:0; }
  
  .offer-wrapper {
    display: inline-block !important;
    width: 90%;
    font-family: "Fira Sans Condensed", sans-serif !important;
    font-weight: 300 !important;
    margin-left: 0;
    text-align: center;
      margin-top:15px;
  }
  
  .offer-wrapper .product-pos { margin:10px auto 20px; }
  
  .benefits {
    padding: 0;
    text-align: left;
    display: inline-block;
    margin-left:0 !important;
  }
    
    .benefits li { font-size:0.9em; }
  
  .offer-wrapper h2 { margin-left:0; }
  
  .prod-wrapper ev-product-selection {
    width: 100%;
    display: inline-block;
    margin: 0 auto;
      top:0;
  }
  
  .widget-header { margin-bottom:0; }
  
  .ev .col-md-4 {
    width: auto !important;
    display: inline-block;
    float: none;
    text-align: left;
  }
  
  .ev .row {
    margin-right: auto;
    margin-left: auto;
  }
  
  .widget-body {
    padding: 0;
    display: inline-block;
    width: 100%;
    text-align: center;
  }
  
}

.fn_ln_email_form .next_container .loading,
.password_entry .loading, .autologin .loading {
  
  margin: 0 auto;
  display: none;

  width:42px;
  height: 42px;

  background: url(/asset/top/rcmg_users_v2/loader.gif) no-repeat;
  background-size: cover;
}

.fn_ln_email_form .message {
  display: none;
}

.prod-summary-wrapper, .info-wrapper, .cc-wrapper {
  opacity: 0.2;
  pointer-events: none;
}

.fn_ln_email_form {
  text-align:center;
}

.info-wrapper.show {
  opacity: 1;
  pointer-events: auto;
}

.prod-summary-wrapper.show, .cc-wrapper.show {
  opacity: 1;
  pointer-events: auto;
}

/* Hide checkout button, doing checkout auto on "next " now */
.ev button.btn.product-checkout-btn {
  display: none;
}


/* reg. page new styles */

.prod-summary-wrapper, .cc-wrapper, .info-wrapper {
    border-top: 7px solid #000;
    border-left: 1px solid #dddddd;
    border-right: 1px solid #DDDDDD;
    border-bottom: 1px solid #DDDDDD;
    padding: 0 0 15px;
    margin-bottom: 50px;
}

.prod-summary-wrapper { padding:0 0 5px; }

.smy-wrapper, .details-wrapper, .payment-wrapper {
    font-weight: bold;
    font-size: 1.2em;
    padding: 15px;
    background-color: #f2f2f2;
  border-bottom:1px solid #DDDDDD;
}

.details-form-wrapper {
    padding: 15px 0;
}

.details-form-wrapper input:not([type="checkbox"]) {
    height: 40px;
    width: 400px;
    margin: 15px 0;
    padding-left: 10px;
}

.details-form-wrapper input[type="submit"] {
  display: none; /* Only shown when TOS is checked */
}

@media only screen and ( max-width : 767px ){
  .details-form-wrapper input { width:auto; font-size:16px !important; }
  .info-wrapper .next_container input.next { -webkit-appearance: none; -moz-appearance: none; appearance:none; }
  .agree_container { padding:0 20px; }
}

.details-form-wrapper .next {
    background-color: rgba(102,153,51,1);
    border: 1px solid #DDDDDD;
    border-radius: 50px;
    height: 50px !important;
    width: 300px !important;
    color: #FFFFFF;
    font-size: 1.1em;
}

.details-form-wrapper .next:hover {
    background-color: rgba(255,255,255,1);
    border: 1px solid #669933;
    border-radius: 50px;
    height: 50px !important;
    width: 300px !important;
    color: #669933;
    font-size: 1.1em;
}

th {
    font-size: 0.8em;
    border-right: 1px solid #DDDDDD;
    font-weight: normal;
    background-color: #aaaaaa;
}

.btn:hover { background-color:none; }

#thanks_modal {
  display: none;
}


.ev .modal { top:10%; }

body.modal-open {
    position: absolute;
  top:0;
  left:0;
  right:0;
}

@media only screen and ( max-width : 767px ){
  .ev .modal-dialog { margin:0px; }
  .ev .modal { top:0; z-index:2222222; }
}

.ev .modal-header {
    padding: 15px;
    border-bottom: 1px solid #888;
    background-color: #669933;
    color: #FFFFFF;
}

.ev .modal-header .close {
    margin-top: -2px;
    opacity: 0.5;
    font-size: 1.9em;
    color: #FFF;
}

.ev .close:focus, .ev .close:hover {
    color: #FFFFFF;
    text-decoration: none;
    cursor: pointer;
    opacity: .8;
}

.ev .close {
    font-size: 21px;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: 1px 1px 1px #000;
}

#thanks_modal .close::after {
    background-color: transparent;
}

.ev .modal-content {
    -webkit-box-shadow: 0 5px 15px rgba(0,0,0,.5);
    box-shadow: 0 5px 15px rgba(0,0,0,.8);
}

#thanks_modal .password_entry input {
    margin-bottom: 15px;
    padding: 10px 5px 10px 15px;
    width: 100%;
    max-width: 280px;
    border: 1px solid #aaa;
    font-style: italic;
    font-size: 0.9em;
    color: #888888 !important;
    border-radius: 5px;
}

@media only screen and ( max-width : 767px ){
  #thanks_modal .password_entry input { font-size:16px; }
}

#thanks_modal .password_entry input:focus {
 border-color:#66afe9;
 outline:0;
 box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);
}

#thanks_modal .password_entry #enter_password button, #thanks_modal .known-user button, #thanks_modal .already_subscribed button {
    background-color: #669933;
    border: 2px solid #cccccc;
    border-radius: 50px;
    padding: 10px;
    width: 150px;
  color:#FFFFFF;
}

#thanks_modal .password_entry #enter_password button, #thanks_modal .known-user button, #thanks_modal .anon-user button {
    background-color: #669933;
    border: 2px solid #cccccc;
    border-radius: 50px;
    padding: 10px;
    width: 150px;
  color:#FFFFFF;
}

#thanks_modal .password_entry #enter_password button:hover, #thanks_modal .known-user button:hover, #thanks_modal .anon-user button:hover {
    background-color: #FFFFFF;
    border: 2px solid #669933;
    border-radius: 50px;
    padding: 10px;
    width: 150px;
  color:#669933;
}

#thanks_modal .modal-footer .btn:hover {
    background-color: #dddddd !important;
}

#thanks_modal .anon-receipt, #thanks_modal .known-receipt { color:#D30015; font-weight:bold; }

.stripe-payment button { height:60px; }

@media only screen and ( max-width : 768px ){
  .stripe-payment { padding:0; }
}

@media only screen and ( max-width : 320px ){
  ev-stripe .payment-stripe-footer .btn-success::after {
    /*background-image: linear-gradient(to bottom,#fff 0,#e0e0e0 100%);*/
    background-repeat: repeat-x;
    text-shadow: 0 1px 0 #000;
    content: "Submit Payment";
    visibility: visible;
    padding: 10px 50px;
    border-radius: 50px;
    border: 2px solid #cccccc;
    display: inline-block;
    margin-left: -145px;
    box-sizing: border-box;
    width: 290px;
    background-color: #669933;
    color: #FFFFFF;
    font-size: 1.3em;
    text-transform: capitalize;
    font-family: "ROBOTO", sans-serif;
    font-weight: 500;
  }
}

.sub-wrapper > div {
    box-shadow: 0px 5px 7px 1px rgba(0,0,0,0.6);
}

.stripe-payment .input.focused+label {
 color:#669933 !important;
}
.stripe-payment .input.focused+label+.baseline {
 background-color:#669933 !important;
}

.blOverlay { background:rgba(0,0,0,0.6) none repeat scroll 0 0; display:none; width:100vw; height:100vh; position:absolute; top:0; left:0; z-index:1; opacity:0.8; }

/**
 *  product summary custom box styles
**/

.ps-header-wrapper {
    font-size: 0.8em;
    display: inline-block;
    width: 100%;
    background-color: #AAAAAA;
  border-top:1px solid #DDDDDD;
}

.ps-header-wrapper > div {
    float: left;
    width: 30%;
    border-right: 1px solid #DDDDDD;
    padding: 5px 10px;
}

.ps-label.cost-head {
    width: 20%;
}

.ps-header-wrapper div:last-child {
    border: none !important;
    width: 20% !important;
    padding: 0 !important;
}

/*.ps-header-wrapper .freq-head, .ps-header-wrapper .cost-head { width:15%; }*/

.ps-body-wrapper > div {
    display: inline-block;
    width: 31%;
    padding-left: 10px;
    margin: 7px 0;
}

.ps-amt {
    width: 20% !important;
}
  .ps-amt span {
    color: #888;
    font-size: 0.8em;
    vertical-align: top;
    padding-top: 2px;
    display: inline-block;
  }

.ps-body-wrapper div:last-child {
    width: 10% !important;
    padding-right: 10px;
    text-align: center;
    float: right;
}

.ps-close-button span {
    background: #669933;
    padding: 3px 10px;
    border-radius: 25px;
    border: 0px solid #aaa;
    cursor: pointer;
    box-shadow: 2px 2px 3px #aaa;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 1.1em;
}

.ps-close-button span:hover {
    background: #FFFFFF;
    box-shadow: 1px 1px 4px #666666;
    color: #000000;
}

/*FAQ*/
.faq-container{
    border: solid .5px #dedede;
    margin-bottom: 40px;
}
.faq-container .container-question {
    position: relative;
    padding: 20px 10px;
    cursor: pointer;
}
.faq-container .container-question h2 {
    margin: 5px;
    text-transform: uppercase;
    font-size: 20px;
}

.faq-container .container-question .caret {
    position: absolute;
    top: 50%;
    right: 20px;
    width: 16px;
    height: 12px;
    margin-top: -6px;
    -webkit-transition: all 250ms;
    transition: all 250ms;
}
.faq-container .container-question.is-active .caret {
    -webkit-transition: all 250ms;
    transition: all 250ms;
    -webkit-transform: rotate(
            180deg
    );
    transform: rotate(
            180deg
    );
}

.faq-container .caret:after {
    position: absolute;
    top: -2px;
    right: 3px;
    display: block;
    width: 10px;
    height: 10px;
    content: '';
    -webkit-transform: rotate(
            -45deg
    );
    transform: rotate(
            -45deg
    );
    border-bottom: 2px solid #666;
    border-left: 2px solid #666;
}
.faq-container .container-answers {
    display: none;
    padding:10px;
}
.faq-container .container-answers .question-heading {
    font-size: 14px;
    font-weight: bold;
    text-transform: uppercase;
}
/*overwrites with new layout for the subscriptions page*/
.hero-heading{
    width: 90%;
}
/*Product discount labels*/
span.original-price {
    display: block;
    font-size: 1.3em;
    position: relative;
}
span.original-price:after {
    content: '';
    left: 44%;
    top: 11px;
    height: 2px;
    background-color: red;
    width: 59px;
    transform: rotate(
            11deg
    );
    position: absolute;
}

@media only screen and ( max-width : 767px ){
  .desc-head, .ps-desc { display:none !important; }
  .ps-label.cost-head, .ps-amt { width:30% !important; }
  .ps-header-wrapper div:last-child { width:20% !important; }
  .ps-body-wrapper div:last-child { width:20% !important; }
  .ps-body-wrapper div { font-size:0.8em; }
}

.ev .modal-body { text-align:center; }
.subscription-renewal-text {
    padding: 15px 30px 0 30px;
    font-size: .8em;
}

@media only screen and ( max-width : 600px){
    .offer-wrapper .product-image{
        display:none;
    }

    .offer-wrapper .product-pos {
        margin: 0px auto -5px;
    }
    span.original-price:after {
        left: 22%;
    }
}

/*updates for mobile other subscription options */

.other-subscription-options{
    display: none;
}
.other-options{
    /*transition: 1s all ease-in-out;*/
    overflow: hidden;
    display: none;
}
@media only screen and (max-width: 600px){
    .other-subscription-options {
        display: block;
        border: solid 1px #dedede;
        width: calc(90% - 30px);
        margin: auto;
        border-radius: 13px;
        padding:15px;
        margin-bottom: 20px;
    }

    .option-heading-wrapper {
        width: 100%;
        display: block;
        position: relative;
    }
    .options-heading{
        text-align: left;
        color: #5a5a5a;
        font-weight: bold;
    }
    .mobile-caret {
        position: absolute;
        right: 5px;
        top: 2px;
        cursor: pointer;
    }
    .other-options ul {
        /*text-align: left;*/
        padding: 0;
    }
    .other-options a{
        color:#9c9c9c;
    }
    .other-options ul li{
        padding-top: 8px;
    }
    .btn.btn-full {
        padding: 8px 13px;
        background: #d30014;
        color: #fff;
        border-radius: 6px;
        border: none;
    }

}

/* Portrait and Landscape */
@media only screen
and (min-device-width: 768px)
and (max-device-width: 1024px)
and (-webkit-min-device-pixel-ratio: 1) {
    .hero-heading h1 {
        font-size: 4.4em !important;
    }
    .offer-wrapper, .other-subscription-options{
        width:45% !important;
    }

}