body {
	background-color:white;
	color:black;
	padding:0px;
	margin:0px 0px 15px 0px;
    font-family:'Open Sans';
    overflow-x:hidden;
}

body nav.navvar {
    background-color:black;
}

.modal-body {
    font-size:14px;
}

.modal-body span.bold {
    font-weight:bold;
}

nav {
    padding:8px 10px 0px 10px; 
}

nav .top-nav-padd {
    padding:5px 1em 0 0;
}

nav .nav-button.return-to-site.mobile {
    font-size:10px;
    border:none;
    padding-right:0px;
    padding-left:0px;
}

nav .nav-button {
    display:inline-block;
    font-size:13px;
    color:white;
    font-family:'Open Sans';
    padding:25px 16px;
    margin-left:8px;
    font-weight:bold;
    letter-spacing:2px;
    white-space: nowrap;
    background-color:black;
    border:none;
}

nav .nav-button a {
    color:white;
    text-decoration:none;
    font-weight: 700;
    font-size: 1rem;
    letter-spacing: 1px;
}

.bg-dark {
    background-color:black!important;
}


nav .nav-button.active {
    background-color:#ffe27c;
    color:#000;
}

nav .nav-button.return-to-site {
    padding:6px 10px 0px 15px;
    border:1px solid white;
    text-decoration:none;
}

nav .mobile-nav {
    display:none;
}

nav .mobile-nav a {
    text-decoration:none;
}

nav .main-logo {
    width:75%;
}

a, div a, td a {
	color:#25497c;
}

body .main-container {
	margin: 0px auto;
}

body div, body td {
	color:black;
}

body, td {
	font-size:12px;
    font-family:'Open Sans'
}

body div.site-map ul li a {
	font-size:14px;
	color:black;
	line-height:24px;
}

body div.site-map ul li a:hover {
	text-decoration:none;
}

body .page-content {
    max-width:1070px;
    margin:0px auto;
    padding:20px 0px;
}

h2 {
    font-size:26px;
	font-family:Payfair,'Times New Roman';
    font-weight:400;
}

h1 {
    font-size:34px;
	font-family:'Playfair Display', serif;;
    font-weight:500;
    line-height:35px;
    margin-bottom:10px;
}

.text-banner {
    padding:.5em; 
    margin-top:-12px; 
    background:#000; 
    color:#FFF; 
    text-align: center;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.125;
    text-transform: uppercase;
}

.text-banner span {
    color:#ffe27c;
}

.offer-steps { 
    background-color: #eee;
}

.steps-text {
    font-size: 1.5rem;
    font-weight: 700;
    color: #3f4040;
    text-transform: uppercase;
}

#step-one .selection {
    width:300px;
    height:475px;
    margin: 1rem 1rem 0;
    border-radius: 15px;
    position: relative;
    bottom:0;
}

.steps-text span {
    width:3rem;
    margin-right: 2rem;
}

#step-one .selection .dealwrap {
    font-size: 1.4rem;
    font-weight: 700;
    display: block;
    height: 3rem;
    line-height: 2.3;
    white-space: nowrap;
}

.s-deal-label {
    background: #ffe27c;
}

.s-deal-black-label {
    background: #000;
    color: #fff;
}

.shadow-text {
    text-shadow: 
    0 2px 1px #000,
    -1px -1px 1px #000,
    1px -1px 1px #000,
    -1px 1px 1px #000,
    1px 1px 1px #000;
    font-weight: 900 !important;
    color: #ffe27c;
    font-size: 3em !important;
    text-transform: uppercase;
    margin: .5em auto -1.5em;
    
}

.selection-card {
    background-color: #fff;
    border-radius: 10px;
    border: 2px #000 solid;
    height:100%;
}

.selection-card span { display:block; }

.pd-card {
    border: 2px #ffe27c solid;
}

.otype {
    font-size: 2.5em;
    padding-top: 1.5em;
    font-weight: 900;
    white-space: nowrap;
}

.card-cost { 
    font-size: 1.5em;
    padding-top: 1em;
}

.delivery-details { 
    padding: 2em 0 .75em;
    margin: auto 3.0em;
    border-bottom: 1px solid #000;
    font-size: 1.1em;
}

.oaccess {
    padding: 2em 0 .75em;
    margin: auto 3.0em;
    font-weight: bold;
    font-size: 1.1em;
}

.o-free-button {
    position: absolute;
    bottom:1px;
    left:15%;
    font-size: 1.25em;
    width:72%;
}

.o-free-button button {
    padding: 5px 40px;
    border-radius: 8px;
    background: #000;
    color: #fff;
    margin-top: 1.25em;
    text-transform: uppercase;
    font-size: 1.3em;
    border: none;
}

.selected-btn {
    color:#000 !important;
    background: #ffe27c !important;
}

#step-three { 
    margin: 1em auto;
}

#field-billingZip {
}

.auto-renew, .auto-renew-vt {
    font-size: 14px;
    text-align: center;
}

.offer-desc {
    font-size:18px;
    margin:20px 0px;
    font-family:'Open Sans'
}

.offer-desc b {
    font-weight:700;
}

.offer-image img {
    width:100%;
}

.gray-box {
    background-color:#F8F7F7;
    padding:30px 20px;
    color:#515151;
    font-size:14px;
}

.gray-box.gift-box {
    color:black;
}

.gray-box-title {
    color:#000000!important;
}

.pink-box {
    background-color:#FCDFEF;
    padding:20px;
}

.pink-box ul {
    list-style-image: url('/images/pink-checkmark.svg');
    padding-left: 2.7rem;
}

.pink-box ul li {
    margin-top: 10px;
    font-size: 16px;
    font-family: 'Open Sans';
}

.pink-box .headline {
    font-size: 18px;
    font-weight: bold;
    text-transform: uppercase;
    padding-left: 1rem;
}

.page-content .right-column {
    font-size:16px;
    font-family:'Open Sans';
    color:#545454 !important;
}

.visually-hidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

legend, .section-title {
    font-weight:normal;
    font-size:18px;
    font-family:'Open Sans'
}

.section-title {
    margin-bottom:15px;
}

.row select.form-select {
    color:#595c5f;
}

.row input.form-control, .row select.form-control, .row select.form-select {
    font-size: 14px;
}

.row {
    margin-bottom:15px;
}

table.sub-checkboxes {
    margin: 0 auto 15px;
}

table.sub-checkboxes td input {
    margin-right:10px;
}

.submit-button {
    background-image: linear-gradient(#ffe27d, #fecb17);
    padding:5px 80px;
    color:black !important;
    text-transform:uppercase;
    font-weight:bold;
    border:none;
    font-size:16px;
    letter-spacing:2px;
}

.pricing {
    text-align: center;
}

span.clear, span.delete-recipient {
    font-size:13px;
}

.form-error-messages {
    font-size:1.3em;
    display:none;
}

.add-recipient {
    font-size:18px;
    font-style:italic;
}

.add-recipient a {
    display:block;
    color:black;
    text-decoration:none;
}

.add-recipient a:hover {
    text-decoration:underline;
}

.delete-recipient {
    display:none;
}

.footer {
	height:37px;
	text-align:center;
	color:black;
}

.footer {
	font-size: 13px;
	font-family:'Open Sans',Arial,sans-serif;
	margin:5px 0px 30px 0px;
}

.footer a {
	color:black;
	display:inline-block;
	font-family:'Open Sans',Arial,sans-serif;
	margin:5px 0px 30px 0px;
	padding:7px 10px;
	font-size: 13px;
	text-decoration:none;
}

.footer a:hover {
	text-decoration:underline;
}

.gray-footer {
    background-color:#F8F7F7;
    font-size:18px;

}

.gray-footer h4 {
    font-size:26px;
}

.member-services {
    font-family:'Playfair Display', serif;
    font-size:26px;
    font-weight:400;
}

.new-sub-footer h4 {
    font-size:26px;
    font-weight:700;
    color: #3f4040;
}

.new-sub-footer p {
    font-size: 18px;
}

.gray-footer .page-content {
    font-size:18px;
    font-family:'Open Sans'
}

.gray-footer .page-content b {
    font-weight:700;
}

img.card-icon {
    width:70px;
}

.card-to-be-charged {
    font-size: 20px;
    font-weight: normal;
    margin: 25px 0px 0px 0px;
    display: none;
    text-align:center;
}

#free-gift {
    background-image: linear-gradient(-90deg, #fec703, #ffe27c);
}

.gift-title {
    font-size: 1.8rem; 
    line-height: 1.1; 
    font-weight:700;
}

.gift-desc {
    font-size: 0.9rem;
}

#member-benefits div .headline {
    font-size: 2rem;
    padding-bottom: 1em;
}

#member-benefits ul li {
    font-size: 1.5rem;
    font-weight:700;
    list-style-image: url(/images/yellow-checkmark.svg);
    padding: 0px 0 5px 10px;
}

.has-select-label .oaccess {
    margin-top:0px !important;
    padding-top:15px !important;
    line-height:16px;
}

@media screen and (max-width: 850px) {
    nav {
    padding:0;
    }

    .sm-btn-space { width:100%; }

    nav .main-nav {
        padding-bottom:10px;
        display: flex;
        flex-direction: column-reverse;
    }
    
    nav .top-nav-padd {
    padding-top:0;
    }
    nav .main-logo {
        width:200px;
        margin:10px auto; 
    }
    nav .nav-button {
        display:block;
        margin-bottom:10px;
    }
    .footer a {
        display:block;
        margin-bottom:0px;
        margin-top:0px;
        padding:4px 0px 4px 0px;
    }
    .footer span {
        display:none;
    }
    .gray-footer {
        padding:0px 3rem;
    }
    .right-column {
        padding:0px 3rem;
    }
    .main-col-left {
        padding-top:30px !important;
    }
    img.card-icon {
        width:60px;
    }
    div.submit {
        text-align:center;
    }
    .submit-button {
        padding:20px 80px;
        margin:0px auto;
    }

}

@media screen and (max-width: 450px) {
    .wide-email {
        width:260px;
        text-overflow: ellipsis;
        overflow: hidden;
        white-space: nowrap;
    }
    .submit-button {
        padding:20px 0px;
        width:100%;
        text-align:center;
        margin:0px auto;
    }
    body .page-content {
        max-width:1070px;
        margin:0px auto;
        padding:0px 0px 40px 0px;
    }
    #member-benefits {
        padding-top:25px;
    }
    #member-benefits div.headline {
        font-size:18px;
    }
    #member-benefits ul li {
        font-size:14px;
        font-weight:bold;
        background-size:16px auto;
        list-style-image: url( '/images/yellow-checkmark-mobile.png' ) !important;
    }
    h1 {
        font-size:28px;
        line-height:25px;
        margin-bottom:10px;
    }
    .gray-footer .page-content {
        padding:0px;
    }
    .footer-content {
        font-size:14px !important;
    }
    .gift-title {
        margin-top:25px;
    }
    .gift-desc {
        padding:0px 20px;
        margin-bottom:0px;
    }
    .page-addon {
        padding:0px 0px 20px 0px !important;
    }
    h2 {
        font-size:24px;
    }
    .main-col-left {
        padding-top:20px !important;
    }
    .right-column {
        overflow: clip;
        margin: 0;
    }
    .offer-steps { 
        text-align: center; 
    }
    .offer-steps-one {
        width: 100vw;
        position: relative;
        display:inline-block;
        right: 11%;
        overflow: clip;
    }
    .steps-text { 
        font-size: 1.5em;
        padding: 15px 0px !important;
        margin: 0 0 0 0 !important;
        text-align:center;
     }
     .ssl-seal {
        text-align:center;
     }
    .steps-text span {
        width:1rem;
        margin-right: 0px;
    }
    #step-one .selection {
        margin: 1rem auto 3rem !important;
    }
    .tote-bag {
        width:100px;
        float:left;
        padding:0px 10px 0px 0px;
    }
    .gift-title {
        text-align: center;
    }
    .gift-desc {
        font-size: 0.9rem;
        text-align: center;
    }
    .term-options label {
        display:inline;
    }
    .single-label {
        padding-left:0px !important;
    }
    .single-type-mention ul {
        margin-left:0px !important;
    }
    .single-check-table {
        margin-left:0px !important;
    }
}

@media screen and (max-width: 850px) and (min-width: 450px) {

    .page-addon {
        text-align:center;
    }

    .addon-content {
        margin:0px auto;
    }

    .delivery-details {
        line-height:15px !important;
        margin-top:0px;
        padding-top:px;
    }

    .has-select-label .oaccess {
        padding-top: 5px !important;
        line-height:14px;
    }

    .select-button-label {
        font-size:12px;
    }

}

@media (min-width: 851px) and (max-width: 999px) {

    .delivery-details {
        line-height:15px !important;
    }

    .has-select-label .oaccess {
        padding-top:5px !important;
    }

    .has-select-label .select-button-label {
        line-height:14px !important;
    }

}

@media screen and (min-width: 850px) {

    .addon-content {
        margin:0px auto;
    }
    .page-addon {
        text-align:center;
    }
    nav .main-nav {
        padding-bottom:10px;
    }

    nav .mobile-nav {
        display:none;
    }

    nav .main-logo {
        width:75%;
        margin:2em auto 4em;
    }

    .main-col-left {
        padding-right:50px !important;
    }

    nav .nav-button.active:hover {
        background-color:#ffe27c;
    }

    nav .nav-button:hover {
        background-color:#ffe27c;
        text-decoration:none;
    }

    nav .nav-button:hover a {
        color:#000;
    }

    .tote-bag {
        float:right;
        padding:0px 0px 0px 10px;
    }

    .benefit-list .headline {
        margin-left:-50px;
    }
}

.term-options {
    position:relative;
}

.options-changer td .label {
    font-size:15px;
    margin-bottom:5px;
}

.options-changer td {
    font-size:18px;
    text-align:left;
    padding-right:10px;
}

.term-selector.active {
    display:block;
}

.term-selector.not-active {
    display:none;
}

.term-selector .option {
    cursor:pointer;
}

.term-selector .option:hover {
    text-decoration:underline;
}


.term-selector.not-active {
    display:none;
}

.end-page-pricing {
    text-align:center;
    font-size:1.125rem;
}

#singleOptionModal .modal-body td {
    font-size:1.123rem;
}

.single-label, .single-label td {
    display:none;
    font-size:23px;
    cursor:pointer;
}

.single-check-table {
    margin-left:50px;
}

.mention {
    font-size:.8em;
    margin-top:15px;
}

.no-intl-available {
    font-size:1.2em;
    display:none;
}

.footer-content {
    font-size:18px;
}

.single-type-mention ul {
    margin:20px 0px 0px 40px;
    font-size:16px;
}

.benefit-list {
    display:none;
}

.has-select-label .select-button-label {
    line-height:16px;
}

