﻿:root {
    /* --- color ---*/
    --color-primary: #4B95DF;
    --color-primary-dark: #1b5895;
    --color-secondary: #e0e8c4;
    --color-secondary-dark: #93a936;
    --color-gray: #f3f3f3;
    --color-gray-100: #f2f2f2;
    --color-white: #ffffff;
    --color-black: #000000;
    --color-red: #FF4D4D;
    --color-orange: #f97f66;
    /* --- font ---*/
    --font-roboto: 'Roboto', sans-serif;
    --font-roboto-condensed: 'Roboto Condensed', sans-serif;
    --font-lato: 'Lato', sans-serif;
    /* --- display ---*/
    --d-block: block;
    --d-inline-block: inline-block;
    --d-none: none;
    --d-flex: flex;
    --d-table: table;
    --d-grid: grid;
    /* --- alignment ---*/
    --t-center: center;
    --t-right: right;
    --t-left: left;
}

body {
    font-family: var(--font-roboto);
    background-color: var(--color-gray-100);
    color: #222222;
    line-height: 1.5;
    font-size: 16px;
}
h1, h2, h3, h4, nav {
    font-weight: 500;
}

.page h3, #product-list h3, .subheading {
    border: none;
    color: var(--color-primary);
    font-size: 22px;
    margin: 1.5rem 0 .5rem;
    padding: 0;
    text-align: var(--t-center);
}
.page h3 {
    text-align: var(--t-left);
}
a {
    text-decoration: none;
    color: var(--color-primary);
}
.clearfix:before, .clearfix:after {
    content: "";
    display: var(--d-table);
} 
.clearfix:after { clear: both; }
.left { float:left; }
.right { float:right; }
.center { text-align: var(--t-center);}
.lato { font-family: var(--font-lato); }
.roboto { font-family: var(--font-roboto-condensed); }
.mt20 { margin-top:20px; }
.mt10 { margin-top:10px; }
.ml10 { margin-left:10px; }
.ml100 { margin-left:100px; }
.mb15 { margin-bottom:15px; }
.mb20 { margin-bottom:20px; }
.view { text-transform: uppercase; }
.error, .success  {
    margin: 20px;
    padding: 12px 12px 12px 36px;   
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;    
}
.success {
    background-color: #c9f0a4;
    border: 1px solid #509111;
    border-bottom: 1px solid #5b992b;
}
.error {
    background-color: #ffebe8;
    border: 1px solid #980611;
    border-bottom: 1px solid #cc0000;
}
input.error, select.error {
    border: 1px solid #980611 !important;
    border-bottom: 1px solid #cc0000 !important;
}

.error li {
    border: none;
    padding: 0;
    list-style: none;
}
.terms 
{
    font-size:11px;
    color:#666666;
    margin-top:10px;
    margin-right:17px;    
}
.aspect-ratio {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
}
.aspect-ratio iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0; top: 0;
}
.terms ul { padding-left: 15px; } 
.terms ul li { margin: 5px 0; }
input[type="submit"], input[type="button"], button, .button {
    border: 1px solid #5981A9;
    background-color: #DEEAF7;
    color: var(--color-black); /*#2575a5;*/
    font-weight: bold;
    font-size: 12px;
    text-transform: uppercase;
    padding: 3px 5px;
}
input[type="submit"].authorise {
    font-size: 20px;    
    margin-right:5px;
}

.paypal-authorise {
    margin: 0 auto;
}

.main-content {
    min-height: calc(100vh - 340px);
    float: none !important;
    margin-top: 47px;
}

#content {
    max-width: 1120px;
    /*width: 100%;*/
    width: 1120px;
    margin: 0 auto;
    background-color: var(--color-white);
}
#content-left { width:160px;margin-right:30px;float:left; }
#content-right { float:left; }

/* ---- header ----*/
header {
    display: var(--d-grid);
    position: relative;
}

header #logo {
    padding: 14px 10px 6px 8px;
    margin-left: 50px;
    padding-top: 50px;
}

.logo-image {
    width: 100%;
    max-width: 260px;
}

#top-banner {
    display: var(--d-none);
    margin-top: 130px;
    padding-left: 10px;
    padding-right: 10px;
    text-align: var(--t-center);
}

header .top-banner, header .top-banner img {
    width: 728px;
    max-width: 100%;
    height: auto;
}

nav .main-menu {
    display: var(--d-none);
    list-style: outside none none;
    margin: 0;
    padding: 0;
}

nav .main-menu.active {
    display: var(--d-block);
    background-color: var(--color-gray-100);
    position: absolute;
    top: 95px;
    width: 100%;
    z-index: 990;
}

header .group-menu {
    border-bottom: 1px solid #dbe2e8;
    position: absolute;
    width: 100%;
    top: 0;
}

/* ---- footer ----*/
footer {
    text-align: var(--t-center); 
    color: #dde9f5;
    padding-bottom: 30px;
    background-color: #1D6FC2;
    padding-top: 30px;
}

.footer-socials-container {
    display: var(--d-block);
    margin-top: 10px;
    font-size: 20px;
}

footer .main-content {
    min-height: auto;
}

footer a {
    color: #dde9f5;
}

footer a:hover {
    color: var(--color-white);
}

footer .nextmedia-link {
    display: var(--d-block);
    margin-bottom: 15px;
}

.modal-mask {
    background-color: rgba(42,41,65,.37);
    display: var(--d-none);
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 980;
}
.modal {
    /*background-color: white;
    border-radius: 10px;*/
    display: var(--d-none);
    max-height: calc(100% - 100px);
    position: fixed;
    top: 50%;
    left: 50%;
    right: auto;
    bottom: auto;
    transform: translate(-50%, -50%);
    z-index: 990;
    width: 100%;
    max-width: 88%;
}

.modal-image-wrapper img {
    width: 100%;
}

.modal-autotrigger {
    display: var(--d-none) !important;
}
.modal-close {
    position:absolute;
    top:-22px;
    right:0;
    background-color: #336699;
    color:#fff;
    font-weight: bold;
    padding:1px 1px 1px 6px;
    height:20px;  
    cursor:pointer;   
}

#breadcrumb {
    font-size: 12px;
    color: #373737;
    margin-bottom: 20px;
    text-align: var(--t-center);
}

#breadcrumb a {
    color: #6E6E6E;
}

#breadcrumb a:hover {
    text-decoration: underline;
}


#breadcrumb span { font-style:normal; }
.rel-zero { position:relative;top:0;left:0; }
/* Forms */
.label { float:left; }
.input { float:left; }
.input input, textarea 
{    
    width:100%;
    max-width:400px;
}
.input input.mid { width:200px; }
.input input.short { width:100px; }
.input input[type="text"], .input input[type="password"], .input select, textarea
{
    border: none;
    background: #efefef;
    padding: 8px;
    margin: 2px 0;
}
.required { color: #2575a5; }
/* Top Nav */
nav#top-nav {
    background-color: var(--color-primary);
}
nav#top-nav ul li {
    display: var(--d-inline-block);
    float: left;
}

nav#top-nav ul li a {
    font-size: 15px;
    font-family: var(--font-roboto);
    color: #3377bc;
    display: var(--d-block);
    height: 50px;
    line-height: 50px;
    padding: 0 .48rem;
    position: relative;
    transition: background .3s ease;
}

nav#top-nav .main-menu.active li a {
    border-bottom: 1px solid #dbe2e8;
    font-size: 20px;
    height: 60px;
    line-height: 60px;
    padding: 0;
    text-align: var(--t-center);
}

nav#top-nav .main-menu.active li {
    width: 100%
}

/* -----------------------------------
Mobile menu
----------------------------------- */
.mobnav-btn-wrapper {
    position: absolute;
    top: 0;
    top: 58px;
    left: 0;
}

#mobnav-btn {
    border-radius: 2px;
    color: var(--color-white);
    cursor: pointer;
    font-size: 18px;
    font-weight: bold;
    margin: 212px 10px 10px 15px;
    width: 28px;
    height: 30px;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    margin-top: 0;
}

#mobnav-btn span {
    display: var(--d-block);
    position: absolute;
    height: 2px;
    width: 100%;
    background: #92a54a;
    border-radius: 4px;
    opacity: 1;
    left: 0;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}

#mobnav-btn span:nth-child(1) {
    top: 0px;
}

#mobnav-btn span:nth-child(2) {
    top: 9px;
}

#mobnav-btn span:nth-child(3) {
    top: 18px;
}

#mobnav-btn.open span:nth-child(1) {
    height: 3px;
    top: 10px;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    transform: rotate(135deg);
}

#mobnav-btn.open span:nth-child(2) {
    opacity: 0;
    left: -60px;
}

#mobnav-btn.open span:nth-child(3) {
    height: 3px;
    top: 10px;
    -webkit-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

#search {
    background-color: var(--color-gray-100);
    width: 100%;
    position: absolute;
    top: 95px;
    top: 99px;
}

#search .search-wrapper {
    position: relative;
    margin-top: 7px;
    margin-bottom: 7px;
    padding: 0 10px;
}

#search input {
    font-size: 15px;
    border: 0;
    border-radius: 2px;
    height: 36px;
    line-height: 36px;
    padding-left: 10px;
    padding-right: 10px;
    width: calc(100% - 20px);
}

#search input:hover {
    background-color: #fff;
}

#search button {
    height: 36px;
    padding: 0 1rem;
}

header #login {
    float: left;
    height: 36px;
    display: var(--d-flex);
    align-items: center;
}

header #login a, #search button {
    display: var(--d-inline-block);
    border-radius: 0;
    border-bottom-right-radius: 2px;
    border-top-right-radius: 2px;
    font-size: 1rem;
    height: 36px;
    line-height: 36px;
    padding: 0 .75rem;
    transition: background .3s ease;
}

header #login a {
    font-size: .825rem;
    color: #6E6E6E;
}

header #login .icon-user {
    color: var(--color-primary);
}

header #login .menu-myaccount, header #login .logout-link {
    background-color: #3377bc;
    padding: 0 .5rem;
    padding-right: 0.5rem;
    padding-right: 0.5rem;
    color: #fff;
    margin: 0 .2rem;
    border-radius: 2px;
    height: 26px;
    line-height: 26px;
    font-size: .825rem;
}

header #cart-menu {
    margin-right: .5rem;
}

header #login .logout-link {
    background-color: var(--color-primary);
}

header #login .menu-myaccount {
    width: auto;
    margin-left: .5rem;
}

#search button {
    background-color: var(--color-primary);
    color: var(--color-white);
    font-weight: bold;
    position: absolute;
    top: 0;
    right: 10px;
    height: 38px;
}

#search button:hover {
    background-color: #1b5895;
    border: 1px solid #1b5895;
}
header #cart-menu span {
    color: #6E6E6E;
    font-size: .825rem;
}

#top-nav #cart-icon img
{
    margin-left:10px;
    margin-top:3px;
}

header #cart-menu .cart-menu-link {
    color: var(--color-primary);
    display: var(--d-flex);
    align-items: center;
    font-size: 16px;
    float: right;
    height: 51px;
    line-height: 51px;
    height: 36px;
    line-height: 36px;
    padding: 0;
    margin: 0;
}

#top-nav .icon {
    font-size: 16px;
    margin-right: 10px;
}

header #cart-menu .icon {
    font-size: 20px;
}

#top-nav .icon::before {
    margin: 0;
}

header #cart-menu .cart-menu-link img {
    margin-right: .375rem;
    width: 22px;
    display: var(--d-none);
}
/* Left nav */
.nav-head  
{
    position:relative; 
    margin-left:12px; 
    color:#96ad3e; 
    text-transform: uppercase; 
 
    font-weight: bold;
    padding:5px 0 5px 0;
    margin-top:10px;
    }
.nav-head:first-of-type { margin-top:15px; }
#content-left nav ul li { display: var(--d-block); position:relative; padding:5px 0 5px 0; margin-left:12px; }
.nav-head:after, #content-left nav ul li:after 
{
    content: "";     
    position: absolute; 
    bottom: -2px; 
    left: -2px;
    right: -2px;    
    height: 2px;
    width:128px;
    background: rgba(40,122,169,1);
    background: -moz-linear-gradient(left, rgba(40,122,169,1) 0%, rgba(255,255,255,1) 100%);
    background: -webkit-gradient(left top, right top, color-stop(0%, rgba(40,122,169,1)), color-stop(100%, rgba(255,255,255,1)));
    background: -webkit-linear-gradient(left, rgba(40,122,169,1) 0%, rgba(255,255,255,1) 100%);
    background: -o-linear-gradient(left, rgba(40,122,169,1) 0%, rgba(255,255,255,1) 100%);
    background: -ms-linear-gradient(left, rgba(40,122,169,1) 0%, rgba(255,255,255,1) 100%);
    background: linear-gradient(to right, rgba(40,122,169,1) 0%, rgba(255,255,255,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4B95DF', endColorstr='#ffffff', GradientType=1 );
}
#content-left img { margin-left:12px;margin-top:40px; }
/* Home page carousel */
#carousel-wrapper {
    position: relative;
    overflow: hidden;
}
#carousel-inner-wrapper { position:relative;}

#carousel-inner-wrapper:after {
    /*background: rgba(0, 0, 0, 0) url("../images/carousel-after.png") no-repeat scroll center top / 100% 100%;*/
    content: " ";
    display: var(--d-block);
    height: 20px;
    left: 50%;
    margin-left: -50%;
    margin-top: 0;
    position: absolute;
    top: 100%;
    width: 100%;
}

#carousel-wrapper .left-arrow, #carousel-wrapper .right-arrow {
    background-color: var(--color-primary);
    color: var(--color-white);
    display: var(--d-flex);
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    position: absolute;
    top: calc(50% - 30px);
    width: 20px;
    height: 36px;
    z-index: 1;
}

#carousel-wrapper .left-arrow {
    left: -2px;
}

#carousel-wrapper .right-arrow {
    right: -2px;
}

#carousel-wrapper .left-arrow {
    cursor: pointer;
    z-index: 2;
}

#carousel-wrapper .right-arrow {
    cursor: pointer;
}

#home-carousel {
    overflow: hidden;
}
.home-carousel-img {
    width: 100%;
}

#more-like-this #inner-carousel {
    display: var(--d-flex);
    margin-top: 20px;
    margin-bottom: 10px;
    padding: 0 5px;
}

#home-carousel .home-carousel-item img {
    width: 100%;
    height: auto;
    max-width: 120px;
    margin: 0 auto;
}

#home-carousel .promo-text {
    color: var(--color-primary);
    font-size: 15px;
    font-weight: bold;
    white-space: normal;
    text-align: var(--t-center);
}

#home-carousel .promo-text a {
	background-color: #96ad3e;
    color: var(--color-white);
    display: var(--d-block);
    float: right;
    margin-bottom: -6px;
    margin-top: 22px;
    padding: 2px 4px;
    text-transform: uppercase;
}

.checkout h2, .page h2, #sitemap h2, h2, .heading, .reset h2 {
    color: var(--color-primary);
    font-family: var(--font-roboto);
    font-size: 20px;
    font-weight: 500;
    line-height: 18px;
    margin: 0;
    margin-top: 6px;
    margin-bottom: 20px;
    padding: 0 10px;
    text-align: var(--t-center);
}

.product-list {
    display: var(--d-grid);
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 20px;
    align-items: center;
    margin-top: 0;
    margin-bottom: 0;
    max-width: 300px;
    margin-left: auto;
    margin-right: auto;
}

.magazine-subscription.magazine-subscription__single-issue .product-list,
.magazine-subscription .product-list {
    grid-template-columns: 1fr;
}

.product-list {
    margin-bottom: 1rem;
}

.product-list .promo-badge {
    bottom: 10px;
    right: 10px;
}

.product-list .promo-badge-image {
    width: 50px;
    height: auto;
}

.panel-newsletter {
    color: var(--color-primary);
    background: var(--color-white);
    display: var(--d-flex);
    justify-content: center;
    font-size: 20px;
    padding: 10px 15px 40px 15px;
    flex-direction: column;
    align-items: center;
    padding: 10px 15px 6px 15px;
}

.newsletter-success-message {
    display: var(--d-none);
    background: #d1e8ff;
    width: 580px;
    text-align: var(--t-center);
    padding: 0px 10px;
    border: 1px solid #1d6fc2;
}

.panel-newsletter > div > #subForm.js-cm-form {
    display: var(--d-flex);
}

.panel-newsletter h4.intro-text {
    margin-top: 6px;
    text-align: var(--t-center);
    padding-bottom: 0px;
    margin-bottom: 12px;
}

.panel-newsletter input#fieldEmail {
    height: 35px;
    min-width: 475px;
    font-size: 15px;
    color: var(--color-black);
}

.newsletter-form-container {
    display: var(--d-flex);
    justify-content: center;
}

.newsletter-signup-terms-container {
    padding: 5px 0;
    text-align: var(--t-left);
}

.newsletter-error-message {
    display: var(--d-none);
    background: #fbefef;
    width: 50%;
    text-align: var(--t-center);
    border: 1px solid #e88e8e;
    color: #424242;
    font-size: .75em;
    padding: 0;
    margin: 15px auto 0;
}

.newsletter-error-message p {
    margin: 5px 0;
}

#newsletterForm .terms {
    font-size: 11px;
    color: #666666;
    margin-top: 10px;
    margin-right: 0px;
    width: 100%;
    text-align: var(--t-center);
}

@media screen and (min-width:550px) {
    #newsletterForm .terms {
        max-width: 540px;
    }
}

@keyframes shake {
    0%, 100% {
        transform: translateX(0);
    }

    25%, 75% {
        transform: translateX(-10px);
    }

    50% {
        transform: translateX(10px);
    }
}

.shake-animation {
    animation: shake 0.2s ease-in-out 2;
}

@media screen and (max-width:960px) {
    .newsletter-success-message {
        width: 80vw;
    }

    .panel-newsletter h4.intro-text {
        margin-top: 8px;
    }

    .panel-newsletter input#fieldEmail {
        padding-left: 6px;
        min-width: 80%;
        font-size: 14px;
    }


    .newsletter-signup-terms-container {
        padding-right: 5px;
    }
}

.panel-newsletter input#fieldEmail:hover {
    background-color: #fff !important;
    border: 2px solid #1b5895;
}

.panel-newsletter button {
    border-radius: 0 .25rem .25rem 0;
    left: -5px;
    position: relative;
}

.panel-bottom {
    background-color: var(--color-primary);
    padding: 40px 15px 10px;
}

.panel-bottom #inner-carousel {
    display: var(--d-flex);
}

.panel-bottom .product-link {
    background-color: #a5caef;
    padding: 1.5rem;
    padding: 15px;
    display: var(--d-flex);
    text-align: var(--t-center);
}

.panel-bottom  .product-heading a {
    color: var(--color-white);
}

.product-desc .product-heading {
    font-size: 16px;
    font-weight: 500;
    margin-top: 0;
    margin-bottom: 0;
    line-height: 20px;
    margin-left: 0;
    margin-right: 0;
    padding: 0 10px;
}

.special-issues .product-desc .product-heading, .back-issues .product-desc .product-heading {
    margin-top: 0;
    margin-bottom: 0;
}

.product-item a {
    font-size: 15px;
}

/* Category1 Carousel*/
.carousel-wrapper-cat {
    position: relative;
    overflow: hidden;
}

#carousel-inner-wrapper-cat1 {
    position: relative;
}

#carousel-inner-wrapper-cat1:before {
    /*background: rgba(0, 0, 0, 0) url("../images/carousel-before.png") no-repeat scroll center top / 100% 100%;*/
    content: " ";
    display: var(--d-block);
    height: 20px;
    left: 50%;
    margin-left: -50%;
    margin-top: 0;
    position: absolute;
    top: -20px;
    width: 100%;
}

#carousel-inner-wrapper-cat1:after {
    /*background: rgba(0, 0, 0, 0) url("../images/carousel-after.png") no-repeat scroll center top / 100% 100%;*/
    content: " ";
    display: var(--d-block);
    height: 20px;
    left: 50%;
    margin-left: -50%;
    margin-top: 0;
    position: absolute;
    top: 100%;
    width: 100%;
}

.carousel-wrapper-cat .left-arrow, .carousel-wrapper-cat .right-arrow, .promo-carousel .left-arrow, .promo-carousel .right-arrow {
    background-color: var(--color-primary);
    color: var(--color-white);
    display: var(--d-flex);
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    position: absolute;
    top: calc(50% - 50px);
    width: 24px;
    height: 48px;
    z-index: 1;
}

.promo-carousel .left-arrow, .promo-carousel .right-arrow {
    top: calc(50% - 24px);
}

.promo-carousel .left-arrow, .promo-carousel .right-arrow {
    background-color: var(--color-white);
    color: var(--color-primary);
}

.carousel-wrapper-cat .left-arrow, .promo-carousel .left-arrow {
    cursor: pointer;
    left: 0px;
    z-index: 2;
}

.carousel-wrapper-cat .right-arrow, .promo-carousel .right-arrow {
    cursor: pointer;
    right: 0px;
}

#cat1-home-carousel {
    white-space: nowrap;
    overflow: hidden;
    position: relative;
}

#cat1-home-carousel .home-carousel-item {
    -webkit-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s linear;
    -webkit-transform-style: preserve-3d;
    -o-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    backface-visibility: hidden;
}

.inner-carousel-cat {
    display: var(--d-flex);
    padding: 10px 5px;
}


.home-carousel-item {
    display: inline-flex;
    margin: 0;
    position: relative;
    vertical-align: top;
    padding: 10px;
    flex: 0 0 50%;
    max-width: calc(50% - 20px);
}

.panel-bottom #carousel-wrapper .left-arrow, .panel-bottom #carousel-wrapper .right-arrow {
    top: calc(50% - 60px);
    background-color: var(--color-gray);
    color: var(--color-primary);
}

#cat1-home-carousel .home-carousel-item img {
    width: 100%;
    height: auto;
}

/* Category2 Carousel*/
#carousel-wrapper-cat2 {
    position: relative;
    overflow: hidden;
}

#carousel-inner-wrapper-cat2 {
    position: relative;
}

#carousel-inner-wrapper-cat2:before {
    content: " ";
    display: var(--d-block);
    height: 20px;
    left: 50%;
    margin-left: -50%;
    margin-top: 0;
    position: absolute;
    top: -20px;
    width: 100%;
}

#carousel-inner-wrapper-cat2:after {
    content: " ";
    display: var(--d-block);
    height: 20px;
    left: 50%;
    margin-left: -50%;
    margin-top: 0;
    position: absolute;
    top: 100%;
    width: 100%;
}


#cat2-home-carousel {
    white-space: nowrap;
    overflow: hidden;
    position: relative;
}

#cat2-home-carousel .home-carousel-item img {
    width: 100%;
    height: auto;
}

.cat-home-carousel .promo-text {
    background-color: var(--color-secondary);
    border-radius: 3px;
    color: var(--color-black);
    font-size: 13px;
    line-height: 1.25;
    font-family: var(--font-roboto);
    font-weight: bold;
    padding: 10px;
    white-space: normal;
    text-align: var(--t-center);
}

#cat2-home-carousel .promo-text a {
    background-color: #96ad3e;
    color: var(--color-white);
    display: var(--d-block);
    float: right;
    margin-bottom: -6px;
    margin-top: 22px;
    padding: 2px 4px;
    text-transform: uppercase;
}
/* Category3 Carousel*/
#carousel-wrapper-cat3 {
    position: relative;
    overflow: hidden;
}

#carousel-inner-wrapper-cat3 {
    position: relative;
}

    #carousel-inner-wrapper-cat3:before {
        /*background: rgba(0, 0, 0, 0) url("../images/carousel-before.png") no-repeat scroll center top / 100% 100%;*/
        content: " ";
        display: var(--d-block);
        height: 20px;
        left: 50%;
        margin-left: -50%;
        margin-top: 0;
        position: absolute;
        top: -20px;
        width: 100%;
    }

    #carousel-inner-wrapper-cat3:after {
        /*background: rgba(0, 0, 0, 0) url("../images/carousel-after.png") no-repeat scroll center top / 100% 100%;*/
        content: " ";
        display: var(--d-block);
        height: 20px;
        left: 50%;
        margin-left: -50%;
        margin-top: 0;
        position: absolute;
        top: 100%;
        width: 100%;
    }


#cat3-home-carousel {
    white-space: nowrap;
    overflow: hidden;
    position: relative;
}

#cat3-home-carousel .home-carousel-item img {
    width: 100%;
    height: auto;
}

/* Homepage special offers */
#special-offers { margin-top:10px; }
#special-offers #special-offers-heading {
    background-color: #c9d5b0;

    font-weight: bold;
    height: 40px;
    padding: 0;
    text-transform: uppercase;
}
#special-offers #special-offers-heading #special-offers-heading-text {
    background-color: #92a54a;
    color: var(--color-white);
    float: left;
    font-size: 16px;
    height: 40px;
    line-height: 40px;
    margin: 0;
    padding-left: 14px;
    padding-right: 19px;
}
#special-offers-list {
    display: var(--d-flex);
    flex-wrap: wrap;
    margin: 40px 0;
    padding-left: 15px;
    padding-right: 15px;
    text-align: var(--t-center);
}
#special-offers-list img {
    border-radius: 15px;
    border: 1px solid #f0f0f0;
    border-bottom: 0;
    box-shadow: 0 18px 12px -12px #767676;
    width:270px;
    height:209px    
}
.special-offers-item {
    display: var(--d-flex);
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 2rem;
    width: 100%;
    max-width: 100%;
}
.special-offers-item-inner {
    padding-left: 15px;
    padding-right: 15px;
}
.special-offers-heading {
    color: var(--color-primary);
    font-weight: bold;
    line-height: 20px;
    margin-top: 20px;
    text-align: var(--t-center);
    width: 270px;
}
/* Product lists */
#product-list h1 {
    color: var(--color-primary);
    font-size: 22px;
    font-family: var(--font-roboto);
    font-weight: normal;
}
.heading .back {
    display: var(--d-none);
}
#product-list h1 .back a {
    background-color: #edf1f6;
    border: 2px solid var(--color-primary);
    border-radius: 4px;
    color: var(--color-primary);
    font-weight: bold;
    float: left;
    font-size: 14px;
    text-transform: uppercase;
    margin-bottom: .5rem;
    max-width: 134px;
    padding: 8px 10px;
    display: var(--d-block);
    transition: all .3s ease;
    text-align: var(--t-center);
    margin-top: .5rem;
}
#product-list .product-item {
    background-color: var(--color-gray);
    float: none;
    height: calc(100% - 50px);
    margin-bottom: 20px;
    padding: 10px 0 20px;
    text-align: var(--t-center);
    display: var(--d-flex);
    flex-flow: column;
}

#product-list .product-item img:not(#product-list .promo-badge-image) {
    box-shadow: 0 14px 8px -12px #929292;
    margin: 10px 0 10px;
    width: auto;
    max-width: 110px;
}

#product-list .product-item-link {
    position: relative;
}

#product-list .product-desc {
    display: var(--d-flex);
    flex-flow: column;
    height: 100%;
    justify-content: center;
    margin-bottom: 10px;
    text-align: var(--t-center);
}

#product-list .promo-text {
    background-color: var(--color-secondary);
    border-radius: 3px;
    color: var(--color-black);
    font-size: 11px;
    font-family: var(--font-roboto);
    font-weight: bold;
    padding: 10px;
    white-space: normal;
    text-align: var(--t-center);
    margin: 0 15px;
}

#product-list .promo-text {
    font-size: 14px;
}

#product-list .view {
    font-weight:bold;
    margin:5px auto;
}

.panel-bottom  .intro-wrapper {
    padding-left: 10px;
    padding-right: 10px;
}

.panel-bottom .panel-heading {
    color: var(--color-white) !important;
    font-size: 21px;
    font-weight: 400;
    margin: 0;
    text-align: var(--t-center);
}

.panel-bottom .intro-text {
    color: var(--color-white) !important;
    font-family: var(--font-roboto);
    font-weight: normal;
    text-align: var(--t-center);
}

/* Category lists */
.main-content-inner {
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 15px;
}

.home-page .category-list {
    background-color: var(--color-gray);
    padding: 10px 5px;
    margin-bottom: 1rem;
}

.cat-list-heading-wrapper {
    display: var(--d-grid);
    align-items: center;
    grid-template-columns: auto 1fr;
}

.cat-list-heading-wrapper .line {
    border-bottom: 1px solid #EBEBEB;
    display: var(--d-block);
    width: 100%;
}

.cat-list-heading {
    color: var(--color-primary);
    font-size: 19px;
    font-weight: normal;
    font-family: var(--font-roboto);
    margin-right: 10px;
    position: relative;
}

.category-list h1 .back {
    display: var(--d-none);
}

.category-list h1 .back a {
    background-color: #edf1f6;
    border: 2px solid var(--color-primary);
    border-radius: 4px;
    color: var(--color-primary);
    font-weight: bold;
    float: left;
    font-size: 14px;
    text-transform: uppercase;
    margin-bottom: .5rem;
    max-width: 134px;
    padding: 8px 10px;
    display: var(--d-block);
    transition: all .3s ease;
    text-align: var(--t-center);
    margin-top: .5rem;
}

.category-list .product-item {
    text-align: var(--t-center);
    width: 18% !important;
    padding-left: 10px;
    padding-right: 10px;
    float: left;
}

.category-list .product-item img{
    box-shadow: 0 18px 12px -12px #767676;
    margin: 10px 0 10px;
    width: 80%;
    max-width: 160px;
}

.home-carousel-img-link{
    position: relative;
}

.promo-badge {
    position: absolute;
    width: 48px;
    height: 48px;
    bottom: 0;
    right: -10px;
    background: var(--color-secondary-dark);
    color: var(--color-white);
    border-radius: 30px;
    line-height: 17px;
    font-weight: bold;
    text-align: var(--t-center);
}

@media (max-width: 880px) {
    .promo-badge {
        width: 55px !important;
        height: 55px !important;
        max-width: 55px !important;
        max-height: 55px !important;
        white-space: nowrap;
    }
}

.category-list .promo-badge-text{
    margin-top: 5px;
} 

.category-list .promo-badge-text span{
    display: var(--d-block);
    font-size: 14px;
}

.category-list .product-desc {
    height: 65px;
    text-align: var(--t-center);
    margin-bottom: 10px;
}

.home-carousel-item .product-heading {
    margin: 0;
    margin-top: 0px;
    margin-bottom: 0px;
    padding: 0;
    color: var(--color-primary);
    font-family: var(--font-roboto);
    font-size: 14px;
    font-weight: 500;
    line-height: 16px;
    margin-top: 6px;
    margin-bottom: 6px;
}

product-list.bottom .home-carousel-item .product-heading {
    margin: 7px 0;
    padding: 0;
    font-size: 17px;
    line-height: 18px;
}

.category-list .view {
    font-weight: bold;
    margin: 5px auto;
}

.one-edge-shadow {
    width: 150px;
    height: 200px;
    padding: 0;
    margin: 0 0 10px 0;
    -webkit-box-shadow: 0 8px 6px -6px var(--color-black);
    -moz-box-shadow: 0 8px 6px -6px var(--color-black);
    box-shadow: 0 8px 6px -6px var(--color-black);
}

/*Publication page*/
.publication {    
    font-size:15px;
    position: relative;
}
.publication .pub-left {
    width: 100%;
}

.publication .pub-left img {
    max-width: 130px;
}

.publication-cover {
    display: var(--d-flex);
}

.product-details {
    position: absolute;
    top: 0;
    left: 140px;
}

.product-details-mob {
    margin-left: 7px;
}

.publication .pub-right {
    width: 450px;
    margin-right: 10px;
}
.publication .product-heading {
    color: var(--color-primary);
    font-size: 21px;
    font-weight: 500;
    line-height: 1;
    margin-top: 7px;
    margin-bottom: 10px;
}

.publication .product-heading {
    font-size: 22px;
    line-height: 1.1;
    margin-bottom: 5px;
}

.publication .pub-far-right {
    width: 152px;
    margin-right: 18px;
}
.publication .sneakwrap {
    position: relative;
    top: 0;
    left: 0;
    margin-bottom: 8px;
    max-width: 130px;
}
.publication .sneakwrap img {   
    position: relative;
    top: 0;
    left: 0;
    max-width: 100%;
} 
.publication .sneakwrap img.view-sneakpeak {
    position:absolute;
    left:auto;
    top:auto;
    bottom:-2px;
    display: var(--d-none);
    right:-1px;
    z-index:10;
} 
.publication .sneakwrap img.no-preview {
    box-shadow: 0 9px 9px -9px var(--color-black);
}
.publication .savings, .publication .cover-prices {
    font-size: 15px;
    font-weight: 600;
    color: #333333;
    letter-spacing: normal;
    line-height: normal;
}

.publication .cover-prices {
    margin-bottom: 6px;
}

.price-savings {
    margin-bottom: 6px;
}

.publication .price {
    display: var(--d-inline-block);
    color: var(--color-primary);
    font-size: 17px;
}

.publication .cover-prices .price {
    display: var(--d-block);
    margin-top: 0;
}

.publication .savings strong {
    background-color: var(--color-orange);
    border: 1px solid var(--color-orange);
    display: var(--d-inline-block);
    color: #f3f7fa;
    font-size: 15px;
    padding: 4px 7px;
    margin: 10px;
}

.publication .special {
    margin: 30px auto;
    width: 278px;
    text-align: var(--t-center);
}

.publication .special img {
    padding: 0;
    margin: 0 0 5px 0;
    box-shadow: 0 18px 12px -12px #767676;
}
.publication p { margin:10px 0; }
.publication .socials { margin-top:10px; display: var(--d-none); }
.pub-desc {
    line-height: 1.25
}

.pub-desc .moreless-button {
    font-weight: 500;
}

/*.pub-desc #long-desc {
    display: var(--d-none);
}*/

.publication-bottom {
    display: var(--d-flex);
    flex-flow: column;
}
.social-icon {
    margin-right: 5px;
} 
.social-count {
    background: #ebebeb url("../images/social-count-bg.png") no-repeat scroll left top;
    background-color: #ebebeb;
    height:20px;
    font-size:12px;
    margin-right:5px;
    padding:0 10px 0 17px;
    line-height:16px;
}
.back-issue-menu {
    color: var(--color-white);
    display: var(--d-flex);
    /*background-image: linear-gradient(to right bottom, #acbe66, #79993f);*/
}

.back-issue-menu a.back-issues, .back-issue-menu a.merchandise {
    background-color: #edf1f6;
    border: 2px solid var(--color-primary);
    border-radius: 4px;
    color: var(--color-primary);
    font-weight: bold;
    float: left;
    font-size: 12px;
    text-transform: uppercase;
    margin-bottom: .5rem;
    padding: 8px 22px;
    display: var(--d-block);
    transition: all .3s ease;
    text-align: var(--t-center);
}

.back-issue-menu a:first-of-type {
    margin-right: .5rem;
}

.back-issue-menu a.merchandise {
    background-color: var(--color-white);
}

.back-issue-menu a:hover {
    background-color: #c9daf0;
}

.back-issue-menu a.merchandise:hover {
    background-color: #edf1f6;
}

.back-issue-menu a.solo{
    width:114px;
}

img.special-offer {
    border-radius: 15px;
    border: 1px solid #f0f0f0;
    border-bottom: 0;
    box-shadow: 0 18px 12px -12px #767676;
    width:270px;
    height:209px   
}
.view-offer {
    right: 30px;
    background-color: var(--color-primary);
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
    color: var(--color-white);
    cursor: pointer;
    font-size: 14px;
    font-weight: bold;
    bottom: 13px;
    transition: background .3s ease;
    z-index: 10;
    border-radius: 3px;
    display: var(--d-inline-block);
    margin-top: 7px;
    padding: 10px 25px;
}

.view-offer:hover {
    background-color: #1b5895;
}

.view-promo { cursor: pointer; }
#view-offer-modal, #view-promo-modal, #view-sneakpeak-modal,
#view-ecard-modal, #view-renew-sample-modal, #view-recipient-sample-modal,
#view-tshirt-modal, #view-gift-email-modal, #view-cvv-sample-modal,
#view-digital-email-modal, #view-digitalgift-email-modal {
    border: 3px solid #215990;
    background-color: var(--color-white);
    display: var(--d-none);
    /*max-height: calc(100% - 100px);*/
    max-height: 80%;
    position: absolute;
    top: 50%;
    left: 50%;
    right: auto;
    bottom: auto;
    transform: translate(-50%, -50%);
    z-index: 990;
    padding: 20px;
    overflow: auto;
    line-height: 1.6em;
    line-height: 1.25em;
    /*  box-shadow: 0 0px 10px 0px #b5b5b5;*/
    border: 2px solid var(--color-primary);
    border: 1px solid #c7c7c7;
    margin: auto;
    /*width: 100%;*/
    max-width: 88%;
    height: auto;
    position: fixed;
    z-index: 1000;
    left: 50%;
    right: auto;
    top: 50%;
    transform: translate(-50%,-50%);
    padding: .75rem;
    border-radius: 4px;
    z-index: 12;
}

#view-offer-modal {
    width: 100%;
}

.mask {
   background-color: #000;
   background-color: rgba(42, 41, 65, 0.37);
   display: var(--d-none);
   height: 100%;
   left: 0;
   opacity: .75;
   position: fixed;
   top: 0;
   width: 100%;
   z-index: 11;
}

#view-offer-modal img:not(.view-offer-close img) {
    width: 100%;
    max-width: 600px;
    box-shadow: 0 18px 12px -12px #767676;
    border-radius: 7px;
    margin: 10px auto 27px;
    display: block;
}

#view-recipient-sample-modal, #view-cvv-sample-modal {
    position: fixed !important;
}
#view-offer-modal h2, #view-sneakpeak-modal h2, #view-tshirt-modal h2 {
    color: #336699;
    color: var(--color-primary);
    font-weight: bold;
    font-size: 25px;
    font-size: 18px;
    line-height: 1.3em;
    line-height: 1.125em;
    margin: 0 0 10px 0;
    margin-bottom: .5rem;
}
#view-offer-modal .intro {
    color: var(--color-primary);
    font-family: var(--font-lato);
    font-size: 16px;
    font-weight: bold;
    line-height: 1.125;
    margin-bottom: .75rem;
}
#view-offer-modal .terms {
    color: #666666;
    font-family: var(--font-lato);
    font-size: 12px;
    line-height: 1.275;
}
.view-offer-close, .view-promo-close, .view-sneakpeak-close, .view-ecard-close, .view-renew-sample-close, .view-recipient-sample-close,
.view-tshirt-close, .view-cvv-sample-close, .view-gift-email-close, .view-digital-email-close, .view-digitalgift-email-close {
    font-family: var(--font-lato);
    font-size: 14px;
    font-weight: bold;
    color: var(--color-primary);
    cursor: pointer;
    text-align: var(--t-right);
    margin-bottom: 5px;
}

#view-promo-modal img {
    max-width: 100%;
}

#view-promo-modal h2 {
   line-height: 1.2;
}

.icon-cancel {
    font-size: 25px;
}

.close {
    margin-bottom: -4px;
}
.modal-right-pad { /*margin-left:10px;*/
    float: none;
    margin-bottom: 10px;
    text-align: var(--t-center);
}
.sneakpeak-box { overflow:hidden;width:800px; }
.sneakpeak-box h4 {
    margin: 0;
    color: var(--color-primary);
    margin-top: 24px;
}

.offers-tabs div {
    background-color: #92bad2;
    text-align: var(--t-center);
    font-size: 13px;
    color: var(--color-white);
    font-weight: bold;
    text-transform: uppercase;
    padding: 5px 0;
    cursor: pointer;
}
.offers-tabs div.selected { background-color:#2575a5; }
.offers-tab {
    width: 50%;
    text-align: var(--t-center);
}
.offers-panel { display: var(--d-none); }
.offers-panel.selected { display: var(--d-block); }
.offers-panel table {
    font-size:13px;
    width:100%;
}
.offers-panel th {
    white-space:nowrap;
    padding: 6px 3px;    
}
.offers-panel th:first-of-type { width:20px; }
.offers-panel th:nth-of-type(2) { width:55px; }
.offers-panel td {
    padding: 6px 3px;
    text-align: var(--t-center);
}
.offers-panel input[type="text"], .offers-panel input[type="tel"] { 
    width:38px; 
    border: 1px solid #2575a5;
}
.offers-panel .auto-renew {
    display: var(--d-none);
}
.offers-panel .auto-renew input[type="checkbox"] {
    margin-right:10px;
}
.offer-digital-inner {
    padding: 1rem !important;
    border: 1px solid #dde3ed;
    border-top: 0;
}

.offer-digital-item {
    margin-bottom: 1rem;
}

.cart-buttons { text-align: var(--t-right); }
.add-cart { margin-right: 10px; }

.more-carousel-img {
    text-align: var(--t-center);
    position: relative;
}

.more-carousel-item img {
    /*width: 100%;*/
    height: auto;
    max-width: 100px;
}
.more-carousel-item {
    background-color: var(--color-gray);
    display: var(--d-flex);
    flex-flow: column;
    flex: 0 0 50%;
    max-width: calc(50% - 40px);
    margin: 0 10px;
    padding: 20px 10px;
    position: relative;
    vertical-align: top;
    text-align: var(--t-center);
}

#more-like-this {
    margin-top: 30px;
    margin-bottom: 20px;
}

.more-carousel-img img:not(.more-carousel-img .promo-badge-image) {
    box-shadow: 0 12px 5px -12px #929292;
    padding: 0;
}

.more-carousel-img img:hover {
    box-shadow: 0 12px 5px -12px #929292;
    padding: 0;
}

.more-carousel-img .promo-badge {
    bottom: 0;
    right: 0;
    width: 55px;
    height: 55px;
    white-space: nowrap;
}

#more-like-this .promo-text {
    height: 100%;
    display: var(--d-flex);
    align-items: center;
    justify-content: center;
}

#more-like-this .promo-desc {
    background-color: var(--color-secondary);
    border-radius: 3px;
    color: var(--color-black);
    font-size: 12px;
    font-family: var(--font-roboto);
    font-weight: bold;
    line-height: 1.25;
    margin: 0;
    padding: 10px 0;
    text-align: var(--t-center);
    white-space: nowrap;
}

#more-like-this .promo-text a.view {
    color: var(--color-white);
    margin-bottom: -6px;
    margin-top: 5px;
    font-weight: bold;
    text-transform: uppercase;
}
#more-like-this .promo-heading {
    color: var(--color-primary);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.25;
    margin: 0;
    margin-top: 2px;
    margin-bottom: 5px;
    padding: 0;
}

#more-like-this-heading {
    display: var(--d-grid);
    align-items: center;
    grid-template-columns: auto 1fr;
}

#more-like-this-text {
    color: var(--color-primary);
    font-size: 19px;
    font-weight: normal;
    font-family: var(--font-roboto);
    margin-right: 10px;
    position: relative;
}

#more-like-this .line {
    border-bottom: 1px solid #EBEBEB;
    display: var(--d-block);
    width: 100%;
}

#more-like-this #carousel-wrapper .left-arrow, #more-like-this #carousel-wrapper .right-arrow {
    padding-left: 0;
    padding-right: 0;
    top: calc(50% - 80px);
}
.sold-out {
    position:absolute;
    bottom:0px;
    right:23px;
    z-index:10; 
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;    
    margin:0;
}
/* Checkout & Cart */
.cart-left {
    float:left;
    width:100%;
    margin-right:15px; 
    order: 1;
    text-align: var(--t-center);
}
.cart-right { float:left;width:595px; }

.checkout .label {
    margin:2px 0;
    width:110px;
}
.checkout .input {
    margin:2px 0;
    width:750px
}
.checkout .wide-labels .label { width:150px; }
.checkout .wide-labels .input { width:700px; }
.checkout .wider-labels .label { width:200px; }
.checkout .wider-labels .input { width:650px; }
.checkout .cart-intro {
    font-weight:bold;
    color:#336699;
}
.checkout .item-head {
    color:#336699;font-weight:bold;margin-bottom:10px;
}
.item-form {
    width:715px;
}
.item-form .label, .account-form .label {
    margin:4px 0;
    width:250px;
    font-weight:normal; 
}
.item-form .input, .account-form .input {
    margin:4px 0;
    width:400px
}
.account-form .input { width: 600px;}
.account-form .input.required-wrapper {
    margin-top: 25px;
    padding-left: 1.25rem;
}
.reset .success {
    max-width: 250px;
    margin: 0 auto;
}
.checkout table {
    width: 100%;
}
.checkout th, .checkout td {
    text-align: var(--t-left);
    padding: 4px;
}
.cart input[type="text"] {
    border:1px solid var(--color-black);
}
.cart input[type="text"].vsmall {
    width:30px;
}
.cart input[type="submit"], .cart button {
    background-color: var(--color-white);
}
.cart button.btn-checkout {
    background-color: #5981A9;
    color: var(--color-white);
}
.checkout .terms-cb {
    width: 20px;
}
.checkout .terms-desc { width:860px; }
.checkout .bottom-buttons div { margin-left:10px; }
.checkout .bottom-buttons div:nth-child(1) {
    float:right;   
}
/* eCards */
.ecard-form { margin: 20px 0; }
.ecard-designs {
    /* width: 630px;*/
    margin-left: -5px;
    margin-right: -5px;
}

.ecard-button { 
    margin-left: 7px !important;
}

.ecard-select {
    color: var(--color-primary);
    font-weight: bold;
    font-size: 1.125rem;
    margin-bottom: .5rem;
}

.ecard-item {
    display: var(--d-inline-block);
    cursor: pointer;
    width: calc(50% - 12px);
    position: relative;
    padding: 5px;
}

.ecard-preview {
    width: 100%;
}

#ecard-print {
    margin-bottom: 20px;
}
/* Mad Moments */
    .mm-left { float:left;width:300px;margin-bottom:20px; }
.mm-right { float:left;width:600px;margin-right:10px; }
#deal-highlights-heading {
    font-weight: bold;
    text-transform: uppercase;    
    height:30px;  
    padding:0;  
    background-image: linear-gradient(to right bottom, #c8dce8, #92bad2);
    background-color: #92bad2;      
    margin-top:10px;
}
#deal-highlights-text {
    background-image: linear-gradient(to bottom right, #a9bb60, #779739);
    background-color: #779739;
    color: var(--color-white);
    float: left;
    height: 26px;
    padding-left: 14px;
    padding-right: 19px;
    padding-top: 4px;
    font-size: 16px;
    margin: 0;
}
#deal-highlights li {
    margin:10px 20px 10px 0;
    padding-left: 15px;
}
.promo-carousel-wrapper {
    overflow: hidden;
}
.promo-carousel {
    text-align: var(--t-center);
    position: relative;
    height: 200px;
}

.promo-carousel .carousel-dots {
    position: absolute;
    z-index: 980;
    bottom: 10px;
    display: var(--d-flex);
    width: 100%;
    justify-content: center;
}

.promo-carousel .carousel-dot {
    display: var(--d-inline-block);
    background: var(--color-primary);
    border-radius: 50%;
    width: 12px;
    height: 12px;
    margin: 0 5px;
    cursor: pointer;
}

.promo-carousel .carousel-dot.selected {
    background: #1b5895;
}

.promo-carousel img {
    transform: translate(-50%, 0%);
    position: absolute;
    top: 0;
    left: 50%;
    max-height: 200px;
    width: auto;
}

/* Education Programme */
.edu-logo {
   margin-top: .5rem;
   margin-bottom: 1rem;
}

.edu-logo img{
    width: 100%;
    max-width: 918px;
}

#education h4 {
    color: var(--color-primary);
    font-size: 16px;
}

#education p {
    font-size:14px;
    letter-spacing: 0.02em;
}

#education .header-wrapper {
    text-align: var(--t-center);
}

#education .header-wrapper img {
    width: 100%;
    max-width: 918px;
}

#education .edu-left {
    float: left;
    width: 100%;
}
#education .edu-right {
    float: left;
    width: 100%;
    text-align: var(--t-center);
}

#education .edu-right img {
    max-width: 200px;
}

#education .product-list {
    padding: 1rem 0 ;
}

#education .product-item-list {
    display: var(--d-flex);
    flex-wrap: wrap;
    margin-top: 1.5rem;
    margin-bottom: 1rem;
}

#education .product-item {
    float: left;
    padding-bottom: 10px;
    min-height: 180px;
    text-align: var(--t-center);
    width: calc(50% - 60px);
    background-color: var(--color-gray);
    margin: 10px;
    padding: 20px;
}
#education .product-item img {
    max-width: 100%;
}
#education .product-desc 
{
    font-size:12px;
}
#education .promo-text {
    background-color: var(--color-secondary);
    border-radius: 3px;
    color: var(--color-black);
    font-size: 13px;
    line-height: 1.25;
    font-family: var(--font-roboto);
    font-weight: bold;
    padding: 10px;
    white-space: normal;
    text-align: var(--t-center);
}

.faqs {
    margin-top: 2rem
}

.magazine-subscription .faqs {
    margin-top: 0.5rem
}

/* Site Map */
#sitemap .sm-col { width:50%; }
#sitemap ul {
    list-style-type: none;
    padding: 5px;
    font-size: 17px;
    font-weight: 500;
    margin: 0;
    margin-left: 5px;
}
#sitemap ul li { margin-top: 20px; }
#sitemap ul li:first-of-type {
    margin-top: 0;
}
#sitemap ul ul { font-size: 14px; font-weight: normal; } 
#sitemap ul ul ul { font-size: 12px; font-weight: normal; } 
#sitemap ul ul li { margin-top: 3px; }
#sitemap ul ul ul li { margin-top: 0px; }
/** from Spinkit http://tobiasahlin.com/spinkit/ **/
.sk-three-bounce {
    margin: 40px auto;
    width: 80px;
    text-align: var(--t-center);
}
.sk-three-bounce .sk-child {
    width: 20px;
    height: 20px;
    background-color: #333;
    border-radius: 100%;
    display: var(--d-inline-block);
    -webkit-animation: sk-three-bounce 1.4s ease-in-out 0s infinite both;
    animation: sk-three-bounce 1.4s ease-in-out 0s infinite both;
}
.sk-three-bounce .sk-bounce1 {
    -webkit-animation-delay: -0.32s;
    animation-delay: -0.32s;
}
.sk-three-bounce .sk-bounce2 {
    -webkit-animation-delay: -0.16s;
    animation-delay: -0.16s;
}

/*Frequently Asked Questions*/
.faqs h4 {
    margin-bottom: 0;
    font-size: 20px;
}

.accordion h3 {
    display: -webkit-box;
    display: -webkit-flex;
    display: var(--d-flex);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    flex-direction: column;
    color: var(--color-primary);
    cursor: pointer;
    font-size: 15px;
    font-weight: 500;
    padding: .625rem 2.55rem .625rem .625rem;
    text-align: var(--t-left);
    display: var(--d-block);
    border: none;
    background-color: #f5f5f5;
    margin-top: 1rem;
    margin-bottom: 1rem;
    border: 1px solid #eceef1;
    border: 1px solid var(--color-gray-100);
    background-color: #f9f9f9;
    position: relative;
    padding: 1rem 2.5rem 1rem 1rem;
}

.accordion h3::after {
    color: #92a54a;
    content: '+';
    font-family: sans-serif;
    font-size: 1.25rem;
    position: absolute;
    float: right;
    right: 0;
    padding: .75rem 1rem;
    width: 30px;
    height: 30px;
    text-align: var(--t-center);
    top: 0;
}

.accordion h3.active::after {
    content: '-';
    font-family: sans-serif;
    font-size: 1.625rem;
    top: -5px;
}

.accordion .content {
    display: var(--d-none);
    padding: 0 1rem 1rem;
    overflow: hidden;
}

.accordion .content p {
    font-size: 15px;
    font-weight: 300;
    margin-top: 0;
}

@-webkit-keyframes sk-three-bounce {
    0%, 80%, 100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }

    40% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}
@keyframes sk-three-bounce {
    0%, 80%, 100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }

    40% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

.top-notice-alert {
    background-color: #ea2f34;
    color: #fff;
    font-size: .7925rem;
    padding: 8px;
    line-height: 15px;
    text-align: var(--t-center);
}

.top-notice-alert p {
    margin-top: 0;
    margin-bottom: .35rem;
}

.top-notice-alert p:last-of-type {
    margin-bottom: 0;
}

.top-notice-alert a {
    color: var(--color-white);
    font-weight: bold;
    text-decoration: underline;
}

/*Added CSS - 5 May 2025 (05/05/2025) */
.category-page__product-list .product-desc .product-heading {
    font-size: 15px;
    line-height: 1.25;
    height: 100%;
    display: var(--d-flex);
    align-items: center;
    justify-content: center;
    margin-bottom: 0.85rem;
    margin-top: 0.3rem;
}

/* -----------------------------------
Subscription Pages - Publication - Merchandise - Back Issues 
----------------------------------- */

/* Top section - Magazine main details */
/*.magazine-subscription .clamped-paragraph p,
.magazine-subscription__top-description p:first-child{
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    position: relative;
    max-height: 3em;
    margin-bottom: 0;
    margin-top: 0;
}*/

/*.magazine-subscription__top-description p:not(:first-child),
.magazine-subscription__top-description div:not(.clamped-paragraph) {
    display: none;
}*/

.magazine-subscription__top-description {
    display: var(--d-flex);
    flex-direction: column;
    margin-bottom: 0.5rem;
    margin-top: 0.5rem;
}

.magazine-subscription .read-more__link {
    font-weight: 600;
    color: var(--color-primary);
    background-color: transparent;
    border: none;
    border-radius: 0;
    display: contents;
    text-transform: initial;
    transition:all 0.2s ease-in-out;
}

.magazine-subscription .read-more__link:hover{
    color: #1b5895;
}

.magazine-subscription__banner.desktop-banner-img {
    display: var(--d-none);
}

.magazine-subscription__banner img {
    width: 100%;
    margin: 0.7rem auto 0.5rem;
    height: auto;
    cursor: pointer;
    border-radius: 8px;
    object-fit: cover;
    box-shadow: 0 12px 12px -12px #999999;
    border:none;
}

.magazine-subscription__tab-container {
    flex-direction: column;
    width: 100%;
    max-width: 880px;
    margin: 0.6rem auto 2.5rem;
}

/* --- Tabs  --- */
.magazine-subscription .tabs,
.magazine-subscription__tabs {
    display: var(--d-flex);
    flex-direction: column;
    background: var(--color-white);
    border-bottom: 1px solid var(--border);
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

.magazine-subscription .tab,
.magazine-subscription__tab {
    background-color: var(--color-white);
}

/* hide radios but keep accessible */
.magazine-subscription .tabs input[type="radio"],
.magazine-subscription__tabs input[type="radio"] {
    position: absolute;
    inline-size: 1px;
    block-size: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    clip-path: inset(50%);
    border: 0;
    padding: 0;
    margin: -1px;
}

.magazine-subscription .tab-label,
.magazine-subscription__tab-label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    padding: 0.4rem 0.8rem;
    font-weight: 600;
    font-size: 0.8rem;
    border: 1px solid var(--border);
    border-top-right-radius: 4px;
    border-top-left-radius: 4px;
    color: var(--text);
    cursor: pointer;
    transition: background .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease;
    user-select: none;
    margin-bottom: -1px;
}

/* default (unselected) */
.magazine-subscription .tabs input:not(:checked) + .tab-label,
.magazine-subscription__tabs input:not(:checked) + .magazine-subscription__tab-label {
    background: var(--tab-bg);
    color: #2b2f35;
}

/* --- Panels --- */
.magazine-subscription .panel-ul-list {
    padding-left: 1.5rem;
}
.magazine-subscription .panels,
.magazine-subscription__panels {
    padding: clamp(14px, 2.2vw, 22px);
    padding: 15px;
    border: 1px solid #DEDEDE;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    border-top-right-radius: 4px;
}

.magazine-subscription .panel,
.magazine-subscription__panel {
    display: var(--d-none);
    animation: fade .2s ease-in;
}

/* show the panel for checked tab */
.magazine-subscription #tab-about:checked ~ .panels #panel-about,
.magazine-subscription #tab-delivery:checked ~ .panels #panel-delivery,
.magazine-subscription #tab-faq:checked ~ .panels #panel-faq,
.magazine-subscription #tab-print:checked ~ .magazine-subscription__panels #panel-print,
.magazine-subscription #tab-digital:checked ~ .magazine-subscription__panels #panel-digital,
.magazine-subscription #tab-backissues:checked ~ .magazine-subscription__panels #panel-backissues,
.magazine-subscription #tab-merchandise:checked ~ .magazine-subscription__panels #panel-merchandise,
.magazine-subscription #tab-otherissues:checked ~ .magazine-subscription__panels #panel-otherissues {
    display: var(--d-block);
}

/* layout for your new wrapper */
.magazine-subscription .tab-list,
.magazine-subscription__tabs-list {
    display: var(--d-flex);
    gap: 7px;
    flex-wrap: wrap;
}

.magazine-subscription .tabs input:not(:checked) + .tab-label,
.magazine-subscription__tabs input:not(:checked) + .magazine-subscription__tab-label {
    background: #DEDEDE;
    border: 1px solid #DEDEDE;
    color: #2b2f35;
}

/* CHECKED inputs */
.magazine-subscription .tabs input:checked + .tab-label,
.magazine-subscription__tabs input:checked + .magazine-subscription__tab-label {
    color: var(--color-primary);
    border: 1px solid #DEDEDE;
    border-top-right-radius: 4px;
    border-top-left-radius: 4px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    border-bottom: 1px solid var(--color-white);
    background: var(--color-white);
    position: relative;
    z-index: 1;
}

.magazine-subscription .tabs:has(#tab-about:checked) #panel-about,
.magazine-subscription .tabs:has(#tab-delivery:checked) #panel-delivery,
.magazine-subscription .tabs:has(#tab-faq:checked) #panel-faq,
.magazine-subscription__tabs:has(#tab-print:checked) #panel-print,
.magazine-subscription__tabs:has(#tab-digital:checked) #panel-digital,
.magazine-subscription__tabs:has(#tab-backissues:checked) #panel-backissues,
.magazine-subscription__tabs:has(#tab-merchandise:checked) #panel-merchandise,
.magazine-subscription__tabs:has(#tab-otherissues:checked) #panel-otherissues {
    display: var(--d-block);
}

/* Digital panel */
.magazine-subscription #panel-digital .offer-digital-inner {
    padding: 0 !important;
    border: none;
}

/* Print Panel */
.magazine-subscription #panel-print .offers-tabs {
    background: none;
    margin-bottom: 0.7rem;
    padding: 0;
}

.magazine-subscription #panel-print .offers-tabs-text {
    color: var(--color-black);
    display: var(--d-block);
    width: 100%;
    font-weight: 800;
    padding-left: .3rem;
}

.magazine-subscription #panel-print .offers-tabs div.selected {
    background-color: var(--color-primary);
    border-radius: 2px 2px 0px 0px;
    border: 1px solid var(--color-primary);
    color: var(--color-white);
}

.magazine-subscription #panel-print .offers-tabs div {
    color: #555555;
    background-color: var(--color-white);
    border: 1px solid #d8d8d8;
    transition: all 0.2s ease-in-out;
}

.magazine-subscription #panel-print .offers-tabs div:hover {
    background-color: #1b5895;
    color: var(--color-white);
    border: 1px solid #1b5895;
}

.magazine-subscription #panel-print .promo-code{
    background: none;
    border: none;
}

.magazine-subscription #panel-print .promo-code-body {
    display: var(--d-flex);
    flex-flow: column;
    align-items: baseline;
    justify-content: flex-start;
}

.magazine-subscription #panel-print .promo-code-text,
.checkout .promo-code-text {
    text-align: var(--t-left);
    color: var(--color-black);
    display: var(--d-block);
    align-self: baseline;
    margin-bottom: 0.5rem;
    font-size: 14px;
    flex: 1;
    max-width: 100%;
}

.magazine-subscription #panel-print .promo-code-number-entry,
.checkout .promo-code-number-entry {
    width: 100%;
    min-width: 160px;
    height: 34px;
    border-radius: 2px;
}

.magazine-subscription #panel-print .promo-code-number-entry:focus-visible,
.checkout .promo-code-number-entry:focus-visible {
    outline:none;
    border: 1px solid var(--color-primary);
}

.magazine-subscription #panel-print input.promo-code-number-apply,
.checkout input.promo-code-number-apply {
    max-width: 100px;
    padding: .45rem 1.5rem;
}

.magazine-subscription #panel-print .table .table-row {
    border: none;
    border-bottom: 1px solid #dde3ed;
}

.magazine-subscription #panel-print h3 {
    font-size: 14px;
    color: var(--color-black);
    padding-left: 0.5rem;
    font-weight: 800;
}

.magazine-subscription #panel-print .savings {
    color: var(--color-orange);
    font-weight: bold;
}

.magazine-subscription .price-savings {
    display: var(--d-inline-block);
    margin-left: 0px !important;
    background-color: var(--color-orange);
    border: 1px solid var(--color-orange);
    color: #f3f7fa;
    font-size: 15px;
    padding: 4px 7px;
    margin: 10px;
}

.magazine-subscription__rrp-price {
    font-size: 12.5px;
    color: #858585;
    font-weight: 100;
    text-decoration: line-through;
}

.magazine-subscription #panel-print .subscription-details {
    font-weight: 500;
}

.magazine-subscription__price-box-wrapper {
    margin-bottom: 0;
}

.magazine-subscription__savings-box-container {
    margin-top: 1rem;
    margin-bottom: 0.5rem;
}

.magazine-subscription__single-issue .magazine-subscription__price-box-wrapper {
    margin-bottom: 0.25rem;
}

.magazine-subscription__types-panel {
    font-size: 12px;
    padding-left: 0.2rem;
}

.magazine-subscription__types-panel .price {
    display: var(--d-inline-block);
    color: var(--color-black);
    font-weight: 800;
    font-size: 14px;
    text-transform: uppercase;
}

.magazine-subscription__types-panel .pricing {
    display: var(--d-flex);
    flex-direction: column;
}

.magazine-subscription__types-panel .price--issues {
    color: #020202;
    font-weight: 400;
    text-transform: capitalize;
}

.magazine-subscription__types-panel .price--secondary {
    color: var(--color-primary);
    text-transform: initial;
}

.magazine-subscription__types-panel .automatic-renewal {
    font-weight:100;
    text-wrap-mode: nowrap;
}

.magazine-subscription__types-panel-row {
    display: var(--d-flex);
    flex-direction: column;
    justify-content: space-between;
    align-items: baseline;
    padding: 1.3rem 0;
    border-top: 1.5px solid #DEDEDE;
    gap: 1rem;
}

.magazine-subscription__single-issue .magazine-subscription__types-panel-row {
    flex-direction: column;
    align-items: flex-start;
    padding: 1.3rem 0;
}

.magazine-subscription__types-panel .magazine-subscription__types-panel-row:first-child,
.magazine-subscription__types-panel .magazine-subscription__types-panel-row:first-of-type {
    border-top: none;
}

.magazine-subscription__single-issue .magazine-subscription__types-panel#offer-os .magazine-subscription__types-panel-row:first-child,
.magazine-subscription__single-issue .magazine-subscription__types-panel#offer-os .magazine-subscription__types-panel-row:first-of-type {
    border-top: 1.5px solid #DEDEDE;
}

.magazine-subscription__details {
    margin-top: 1rem;
    margin-bottom: 0.2rem;
}

.magazine-subscription #offers-os .magazine-subscription__details {
    margin-bottom: 0.1rem;
}

.magazine-subscription__price-box {
    display: var(--d-flex);
    flex-direction: column;
    justify-content: flex-start;
    align-items: baseline;
    margin-bottom: 0;
}

.magazine-subscription__single-issue .magazine-subscription__price-box {
    margin-bottom: 0;
}

.magazine-subscription__types-panel-column.column--one {
    flex: 1;
    width: 100%;
}

.magazine-subscription__savings-box {
    color: var(--color-red);
    border: 1px solid var(--color-red);
    font-size: 12px;
    font-weight: 600;
    padding: 5px 10px;
    border-radius: 3px;
}

.magazine-subscription__savings-box.best-value {
    background: var(--color-red);
    color: var(--color-white);
    border: 1px solid var(--color-red);
}

.magazine-subscription__types-panel .buy-now input[type="submit"],
.magazine-subscription__types-panel .buy-now button {
    padding: .5rem 1.75rem;
    font-size: 13px;
}

.magazine-subscription__types-panel .subscription-details + div {
    color: #707070;
    font-weight: 100 !important;
    margin-top: 0.2rem;
}

.magazine-subscription__backissues-tab-intro {
    margin-bottom:1.5rem !important;
}

.magazine-subscription__single-issue .magazine-subscription__types-panel .price {
    font-weight:500;
    display: flex;
}

.magazine-subscription__price-box-name {
    display: inline-block;
    white-space: nowrap;
    width: 90px;
}

.magazine-subscription__single-issue .magazine-subscription__price-box-name {
    width: 109px;
}

.magazine-subscription__inc-shipping-text {
    color: #5d5d5d;
    text-transform: initial;
    font-weight: 200;
}

.magazine-subscription .product-desc .product-heading {
    line-height: 1.1;
}

.magazine-subscription .savings span span {
    color: var(--color-primary);
}

/* --- "Show more offer" button --- */

.magazine-subscription__show-more-offers {
    display: flex;
    justify-content: center;
    align-items: center;
    border-top: 1px solid #DEDEDE;
}

.magazine-subscription__show-more-offers .btn {
    padding: .575rem 1.5rem;
    font-size: 14px;
    text-transform: initial;
    margin: 2rem auto 1rem;
}

.backissues__show-more-offers-btn a,
.backissues__show-more-offers-btn {
    color: var(--color-white);
}

.magazine-subscription__show-more-offers .btn.more-offer__btn-link,
.more-offer__btn-link {
    color: var(--color-white);
    padding: 0;
}

.more-offer__btn-link a{
    display: var(--d-block);
    padding: .575rem 1.5rem;
}

.magazine-subscription .moreless-button {
    background: transparent;
    color: #4B95DF;
    border: none;
    padding: 0;
    font-size: 14px !important;
    text-transform: none;
}

/* --- Magazine subscription "gift choices" select option --- */
.magazine-subscription__gift-choices {
    margin: 1rem auto 0 auto;
}

.magazine-subscription__gift-input {
    width: 100%;
    max-width: 290px;
    padding: 0.2rem 0.5rem;
    border: 1px solid #DEDEDE;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    border-radius: 2px;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='%23d7d7d7' viewBox='0 0 24 24'><path d='M7 10l5 5 5-5z'/></svg>");
    background-position: right 6px center;
    background-size: 26px;
    background-repeat: no-repeat;
    cursor: pointer;
    transition: border 0.3s ease;
}

.magazine-subscription__gift-input:focus,
.magazine-subscription__gift-input:focus-visible {
    outline: none;
    border-color: #777777;
}

.magazine-subscription #panel-print h3,
.magazine-subscription__types-panel,
.magazine-subscription #panel-print .promo-code {
    padding-left: 0.2rem;
}

.magazine-subscription #panel-print .promo-code {
    margin-top: 0rem;
}

.magazine-subscription #panel-print h3 {
   margin: 0 auto;
}

.magazine-subscription__single-issue .offers-panel {
    display: var(--d-block);
}

.magazine-subscription__single-issue .cart-wrapper.merch {
    margin-top: 0.25rem;
}

.magazine-subscription__single-issue .magazine-subscription__tab-container {
    margin: 1rem auto 0.5rem;
}

.single-issue__bottom-tabs {
    margin-top: 1rem;
}

.separator-pipe {
    color: #bdbdbd;
}

.magazine-subscription__details-delivery {
    font-size: 15px;
}

.magazine-subscription .clamped-paragraph p,
.magazine-subscription__top-description p:first-child {
    margin-bottom: 0.2rem;
}


/* ------
.inner-carousel-cat {
    position: relative;
    left: 0;
    white-space: nowrap;
    transition: left 0.3s ease; 
}

.home-carousel-item {
    display: inline-block;
    vertical-align: top;
}---- */

/* ------ Media Query------ */

/* ------ 250 < x < 359px ------ */
@media screen and (min-width:250px) and (max-width: 359px) {
    body, .product-item a {
        font-size: 14px;
    }
    nav#top-nav .main-menu.active li a {
        font-size: 16px;
        height: 52px;
    }
    .product-list {
        grid-column-gap: 16px;
        max-width: 310px;
    }
    #product-list .product-item img:not(#product-list .promo-badge-image) {
        max-width: 100px;
    }
    #product-list .promo-text {
        padding: 8px;
        font-size: 12px;
        margin: 0 11px;
    }
    .ecard-button {
        margin-left: 0 !important;
        margin-top:10px;
    }
    .magazine-subscription.magazine-subscription__single-issue .product-list, .magazine-subscription .product-list {
        grid-template-columns: repeat(2, 1fr);
        max-width: 100%;
        grid-column-gap: 8px;
    }
    .magazine-subscription .tab-label, .magazine-subscription__tab-label {
        padding: 0.4rem 0.3rem;
    }
    .magazine-subscription.publication .product-heading {
        font-size: 15px;
        margin-top: 0;
        margin-bottom: 8px;
    }
    .magazine-subscription .panels, .magazine-subscription__panels {
        padding: 10px;
    }
    .magazine-subscription .savings .price,
    .magazine-subscription .savings span[style="color:#4B95DF;"],
    .magazine-subscription .savings span span,
    .magazine-subscription .savings span s {
        font-size: 15px !important;
    }
    .magazine-subscription .savings {
        font-size: 12px !important;
        margin-top: 0.1rem;
    }
    .cart .table .table-cell:nth-of-type(2) {
        flex-basis: 75% !important;
        max-width: 75% !important;
    }
    .cart .table .title {
        font-size: 15px;
        line-height: 1;
    }
    .cart .home-carousel-img-link {
        line-height: 1.2;
    }
    .checkout .button-wrapper.bottom, .checkout .accepted-payment, .cart .button-wrapper.top {
        gap: 5px;
    }
    .ecard-form .rc-anchor-normal {
        width: 100%;
    }
    .ecard-form .rc-anchor-normal .rc-anchor-content,
    .ecard-form .rc-anchor-normal .rc-anchor-checkbox-label{
        width: auto;
    }

}

/* ------ 360 < x < 374px ------ */
@media screen and (min-width:360px) and (max-width: 374px) {
    .magazine-subscription.magazine-subscription__single-issue .product-list,
    .magazine-subscription .product-list {
        grid-template-columns: repeat(2, 1fr);
        grid-column-gap: 10px;
    }
    .magazine-subscription .tab-label, .magazine-subscription__tab-label {
        padding: 0.4rem 0.6rem;
    }
    .magazine-subscription.publication .product-heading {
        font-size: 17px;
        margin-top: 0;
        margin-bottom: 6px;
    }
    .magazine-subscription .savings .price,
    .magazine-subscription .savings span[style="color:#4B95DF;"],
    .magazine-subscription .savings span span,
    .magazine-subscription .savings span s {
        font-size: 15px !important;
    }
    .magazine-subscription__top-description {
        margin-top: 0.45rem;
    }
    .magazine-subscription .savings {
        font-size: 13px !important;
        margin-top: 0.1rem;
    }
    .cart .table .title {
        font-size: 16px;
    }
    #product-list .promo-text {
        font-size: 13px;
    }
}

/* ------ x < 374px ------ */
@media (max-width: 374px) {

    .magazine-subscription,
    .magazine-subscription__details-delivery,
    .magazine-subscription .offers-tabs-text,
    .magazine-subscription__types-panel .price {
        font-size: 14px;
    }

    .magazine-subscription .clamped-paragraph p,
    .magazine-subscription__top-description p:first-child,
    .magazine-subscription .read-more__link,
    .magazine-subscription .cover-prices {
        font-size: 12px !important;
        margin-top: 0.1rem;
    }

    .magazine-subscription .promo-badge {
        bottom: -1px;
        right: -6px;
    }

    .magazine-subscription .accordion h3 {
        font-size: 13px;
    }

    .magazine-subscription__single-issue .magazine-subscription__types-panel-row{
        padding: 1rem 0;
    }

    .magazine-subscription .magazine-subscription__tab-container {
        margin: 0.5rem auto 1.5rem auto;
    }
    footer {
        font-size: 14px;
    }

    .magazine-subscription__price-box-name {
        width: 80px;
    }

    .magazine-subscription__single-issue .magazine-subscription__price-box-name {
        width: 97px;
    }
}

@media (min-width: 375px) {
    header #cart-menu span {
        font-size: .875rem;
    }

    header #login a {
        font-size: .875rem;
    }

    header #login .menu-myaccount, header #login .logout-link {
        font-size: .875rem;
    }

    .publication .sneakwrap {
        max-width: 170px;
    }

    .product-details {
        left: 180px;
    }

    .publication .product-heading {
        font-size: 26px;
    }

    .publication .product-heading {
        margin-bottom: 10px;
    }

    .special-issue .pub-left img {
        max-width: 150px;
    }

    .special-issue .product-heading {
        font-size: 22px;
    }

    .special-issue h1 {
        font-size: 22px;
    }

    .special-issue .pricing .table .table-cell:nth-of-type(2) {
        display: var(--d-block);
    }

    .publication .cover-prices {
        margin-bottom: .5rem;
    }

    .publication .savings strong {
        margin-bottom: .375rem;
        margin-left: 0px;
    }

    .publication .price {
        font-size: 19px;
    }

    .back-issue-menu a.back-issues, .back-issue-menu a.merchandise {
        padding: 8px 41px;
    }

    .back-issue-menu a.solo {
        width: 87px;
    }

    #breadcrumb {
        max-width: 360px;
        margin-left: auto;
        margin-right: auto;
    }

    .product-list {
        max-width: 360px;
    }

    #product-list .promo-text {
        font-size: 12px;
        line-height: 1.25;
    }

    .magazine-subscription__types-panel .price {
        font-size: 14px;
    }
}

@media (min-width: 400px) {

    .publication .product-heading {
        margin-bottom: 10px;
    }

    .publication .sneakwrap {
        max-width: 150px;
    }

    .product-details {
        left: 160px;
    }

    .back-issue-menu a.back-issues, .back-issue-menu a.merchandise {
        padding: 8px 34px;
    }

    .promo-carousel {
        min-height: 220px;
    }

        .promo-carousel img {
            max-height: 220px;
            width: auto;
        }
}

/* ------  375px < x < 464px ------ */
@media (min-width: 375px) and (max-width: 411px) {
    .magazine-subscription .clamped-paragraph p,
    .magazine-subscription__top-description p:first-child,
    .magazine-subscription .read-more__link,
    .magazine-subscription .savings,
    .magazine-subscription .cover-prices,
    .magazine-subscription #panel-print .offers-tabs-text {
        font-size: 14px;
    }

    .magazine-subscription #panel-print .offers-tabs-text,
    .magazine-subscription #panel-print h3,
    .magazine-subscription #panel-print .promo-code,
    .checkout .promo-code {
        font-size: 15px;
    }

    .magazine-subscription #panel-print h3,
    .magazine-subscription__types-panel,
    .magazine-subscription #panel-print .promo-code,
    .checkout .promo-code {
        padding-left: 0.2rem;
    }

    .magazine-subscription__types-panel {
        font-size: 13px;
    }

    .magazine-subscription .promo-badge {
        right: -7px;
    }

    .magazine-subscription .tab-label, .magazine-subscription__tab-label {
        padding: 0.4rem 0.7rem;
        font-size: 0.85rem;
    }

    .magazine-subscription.magazine-subscription__single-issue .product-list,
    .magazine-subscription .product-list {
        grid-template-columns: 1fr 1fr;
        grid-column-gap: 15px;
    }

    .magazine-subscription.publication .product-heading {
        font-size: 19px;
    }

    .magazine-subscription .savings {
        font-size: 14px !important;
        margin-top: 0.1rem;
    }
    .magazine-subscription .savings .price, .magazine-subscription .savings span[style="color:#4B95DF;"], .magazine-subscription .savings span span, .magazine-subscription .savings span s {
        font-size: 17px !important;
    }

    .magazine-subscription__price-box-name {
        width: 80px;
    }

    .magazine-subscription__single-issue .magazine-subscription__price-box-name {
        width: 97px;
    }
}

/* ------ 412px < x < 768px ------ */
@media (min-width: 412px) and (max-width: 768px) {
    .magazine-subscription .clamped-paragraph p,
    .magazine-subscription__top-description p:first-child,
    .magazine-subscription .read-more__link,
    .magazine-subscription .savings,
    .magazine-subscription .cover-prices,
    .magazine-subscription #panel-print .offers-tabs-text {
        font-size: 14px;
    }

    .magazine-subscription #panel-print .offers-tabs-text,
    .magazine-subscription #panel-print h3,
    .magazine-subscription #panel-print .promo-code,
    .magazine-subscription #panel-print .promo-code-text,
    .checkout .promo-code,
    .checkout .promo-code-text {
        font-size: 17px;
    }

    .magazine-subscription #panel-print h3,
    .magazine-subscription__types-panel,
    .magazine-subscription #panel-print .promo-code,
    .checkout .promo-code {
        padding-left: 0.2rem;
    }

    .magazine-subscription__types-panel {
         font-size: 14px;
    }

    .magazine-subscription__types-panel .price {
        font-size: 16px;
    }

    .magazine-subscription .promo-badge {
        right: -7px;
    }

    .magazine-subscription .tab-label, .magazine-subscription__tab-label {
        padding: 0.4rem 0.76rem;
        font-size: 0.95rem;
    }

    .magazine-subscription.magazine-subscription__single-issue .product-list,
    .magazine-subscription .product-list {
        grid-template-columns: repeat(2, 1fr);
    }

    .magazine-subscription.publication .product-heading {
        font-size: 22px;
    }

    .magazine-subscription .savings {
        font-size: 15px !important;
        margin-top: 0.1rem;
    }

    .magazine-subscription .savings .price, .magazine-subscription .savings span[style="color:#4B95DF;"], .magazine-subscription .savings span span, .magazine-subscription .savings span s {
        font-size: 19px !important;
    }
    .magazine-subscription__single-issue .magazine-subscription__types-panel-row {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (min-width: 480px) {
    .back-issue-menu a.solo {
        width: auto;
    }

    #education .product-item {
        width: calc(33.330% - 60px);
    }

    .product-list {
        grid-template-columns: repeat(3,1fr);
        max-width: 480px;
    }

    .ecard-item {
        width: calc(32.8% - 10px);
    }

    .modal-right-pad {
        margin-bottom: 20px;
    }

    #view-offer-modal .intro {
        margin-bottom: 1.25rem;
    }

    /*.main-content {
        padding-left: 15px;
        padding-right: 15px;
    }*/

    .home-carousel-item {
        padding: 10px;
        flex: 0 0 33%;
        max-width: calc(33% - 20px);
    }

    .panel-bottom #home-carousel {
        height: 260px;
    }

    .more-carousel-item {
        max-width: calc(33.33% - 40px);
    }

    .magazine-subscription__top-description {
        margin-top: 0.7rem;
    }
}

@media (min-width: 576px) {
    /*.magazine-subscription .clamped-paragraph p,
    .magazine-subscription__top-description p:first-child {
        -webkit-line-clamp: 2;
    }*/

    .promo-carousel {
        min-height: 290px;
    }
        .promo-carousel img {
            max-height: 290px;
            width: auto;
        }

    .special-offers-item {
        max-width: 50%;
    }

    .ecard-item {
        width: calc(24.5% - 10px);
    }

    #view-offer-modal, #view-promo-modal, #view-sneakpeak-modal, #view-ecard-modal, #view-renew-sample-modal, #view-recipient-sample-modal, #view-tshirt-modal, #view-gift-email-modal, #view-cvv-sample-modal, #view-digital-email-modal, #view-digitalgift-email-modal {
        padding: 20px;
    }

    #view-offer-modal h2, #view-sneakpeak-modal h2, #view-tshirt-modal h2 {
       font-size: 21px;
    }

    .modal-right-pad {
        float: right;
        margin-bottom: 8px;
        margin-left: 10px;
    }

}

/* ------ x < 639px ------ */
@media screen and (max-width: 639px){
    .magazine-subscription .savings strong, .magazine-subscription .price-savings {
        font-size: 12px !important;
        margin: 5px 4px 5px 0 !important;
    }

    .magazine-subscription.publication .product-heading {
        display: -webkit-box;
        -webkit-line-clamp: 5;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
        margin-top:0;
    }

    .magazine-subscription .promo-badge, .magazine-subscription .promo-badge-image {
        width: 53px !important;
        height: 53px !important;
        max-width: 53px !important;
        max-height: 53px !important;
    }
    .magazine-subscription .faqs {
        margin-top: 0.5rem;
    }
}

@media (min-width: 640px) {
    .home-carousel-item {
        flex: 0 0 25%;
        max-width: calc(25% - 20px);
    }

    .more-carousel-item {
        max-width: calc(25% - 50px);
        padding: 20px 15px;
    }

        .more-carousel-item img {
            max-width: 110px;
        }

    .ecard-item {
        width: calc(19.5% - 10px);
    }

    .product-list {
        max-width: 640px;
        padding-left: 20px;
        padding-right: 20px;
    }

    .panel-bottom #home-carousel {
        height: 280px;
    }

    #education .product-item {
        width: calc(25% - 60px);
    }
}

/* ------ 640px < x < 768px ------ */
@media (min-width: 640px) and (max-width: 768px) {

    .magazine-subscription__types-panel-row {
        display: var(--d-flex);
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        gap: 1.5rem;
    }

    .magazine-subscription__price-box {
        display: var(--d-flex);
        flex-direction: column;
        justify-content: space-between;
        align-items: baseline;
        margin-bottom: 0.7rem;
    }

    .magazine-subscription.magazine-subscription__single-issue .product-list,
    .magazine-subscription .product-list {
        grid-template-columns: repeat(3, 1fr);
    }

    .magazine-subscription.publication .product-heading {
        font-size: 26px;
        margin-top:1px;
    }

    .magazine-subscription .promo-badge, .magazine-subscription .promo-badge-image {
        width: 57px !important;
        height: 57px !important;
        max-width: 57px !important;
        max-height: 57px !important;
    }

    .magazine-subscription .clamped-paragraph p, .magazine-subscription__top-description p:first-child, .magazine-subscription .read-more__link, .magazine-subscription .savings, .magazine-subscription .cover-prices, .magazine-subscription #panel-print .offers-tabs-text {
        font-size: 15px;
    }

    .magazine-subscription .tab-label, .magazine-subscription__tab-label {
        padding: 0.4rem 1rem;
        font-size: 1rem;
    }

    .magazine-subscription__single-issue .magazine-subscription__types-panel-row {
        flex-direction: row;
        align-items: center;
    }

}

@media (min-width:700px) {
    .modal {
        max-width: 640px;
    }

    #more-like-this {
        margin-top: 30px;
    }
}

/* ------ x = 768px ------ */
@media screen and (width: 768px) {
    .magazine-subscription.publication .pub-right {
        width: 100%;
        margin-bottom: .875rem;
    }

    .magazine-subscription.magazine-subscription__single-issue .product-list {
        grid-template-columns: repeat(4, 1fr) !important;
    }
}

/* ------ x > 768px ------ */
@media (min-width: 768px) {

    .magazine-subscription__price-box {
        display: var(--d-flex);
        flex-direction: row;
        justify-content: space-between;
        align-items: baseline;
        margin-bottom: 0.7rem;
    }

    .magazine-subscription__savings-box-container {
        margin: 0;
    }

    .magazine-subscription .product-list {
        grid-template-columns: repeat(4, 1fr) !important;
        grid-column-gap: 17px;
        max-width: 840px;
        padding-left: 0;
        padding-right: 0;
    }

    .magazine-subscription .savings .price, .magazine-subscription .savings span[style="color:#4B95DF;"], .magazine-subscription .savings span span, .magazine-subscription .savings span s {
        font-size: 19px !important;
    }

    .magazine-subscription .product-desc .product-heading {
        line-height: 0.95;
    }

}

@media screen and (max-width: 768px) {
    /*.magazine-subscription:not(.magazine-subscription__single-issue) .product-details { */
    .magazine-subscription .product-details {
        position: inherit;
    }

    .magazine-subscription section.clearfix {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
    }

    .magazine-subscription section.clearfix .pub-left {
        width: auto;
    }

   .magazine-subscription section.clearfix .pub-right {
        flex: 1;
        margin-left: 1rem;
   }
}

/* ------ x > 769px ------ */
@media (min-width: 769px){

    .home-carousel-item {
        padding: 15px;
        max-width: calc(25% - 30px);
    }

    .promo-carousel {
        min-height: 340px;
    }

        .promo-carousel img {
            max-height: 340px;
            width: auto;
        }

    .panel-bottom {
        padding: 50px 15px 20px;
    }

        .panel-bottom #home-carousel {
            height: 310px;
        }

    .product-list {
        max-width: 769px;
        grid-template-columns: repeat(4,1fr);
        grid-column-gap: 30px;
    }

    .product-desc .product-heading {
        font-size: 15px;
        line-height: 1.25;
    }

    #product-list .promo-text {
        font-size: 13px;
        line-height: 1.25;
    }

    .checkout h2, .page h2, #sitemap h2, h2, .heading, .reset h2 {
        font-size: 24px;
        margin-bottom: 30px;
    }


    .publication .pub-left {
        width: 290px;
    }

    .special-issue .pub-left img {
        max-width: 290px;
    }

    .product-details {
        position: relative;
        left: 0;
    }

    .special-issue h1 {
        font-size: 22px;
        line-height: 26px;
    }

    .product-details-mob {
        display: var(--d-none);
    }

    .publication .sneakwrap {
        max-width: 100%;
        margin-bottom: 10px;
    }

    .pub-desc .moreless-button {
        display: var(--d-none);
    }

    .pub-desc #long-desc {
        display: var(--d-block);
    }

    .publication .special {
        margin: 0 0 30px;
    }

    .publication-bottom {
        flex-flow: row;
    }

    .publication-bottom.magazine-subscription__tab-container {
        flex-flow: column;
    }

    .publication .sneakwrap img {
        max-width: 90%;
    }

    .education .sneakwrap img, .magazine .sneakwrap img {
        max-width: 98%;
    }

    .cart-left {
        order: 0;
    }

    .publication .cover-prices .price {
        font-size: 21px;
    }

    .back-issue-menu {
        justify-content: center;
    }

        .back-issue-menu a.back-issues, .back-issue-menu a.merchandise {
            margin-bottom: 1.25rem;
            padding: 8px 24px;
        }

        .back-issue-menu a.merchandise {
            margin-right: 16px;
        }

        .back-issue-menu a.solo {
            width: auto;
            padding: 8px 44px;
        }

    #view-offer-modal, #view-promo-modal, #view-sneakpeak-modal, #view-ecard-modal, #view-renew-sample-modal, #view-recipient-sample-modal, #view-tshirt-modal, #view-gift-email-modal, #view-cvv-sample-modal, #view-digital-email-modal, #view-digitalgift-email-modal {
        max-width: 660px;
        padding: 25px;
    }

    #view-offer-modal, #view-promo-modal, #view-sneakpeak-modal, #view-ecard-modal, #view-renew-sample-modal, #view-recipient-sample-modal, #view-tshirt-modal, #view-gift-email-modal, #view-cvv-sample-modal, #view-digital-email-modal, #view-digitalgift-email-modal {
        line-height: 1.5em;
    }

    .modal-right-pad {
        margin-left: 16px;
    }

    #education .product-item {
        width: calc(20% - 60px);
    }

    .more-carousel-item {
        max-width: calc(20% - 50px);
        padding: 20px 15px;
    }

    .magazine-subscription.magazine-subscription__single-issue .product-list {
        grid-template-columns: repeat(4, 1fr) !important;
        grid-column-gap: 17px;
    }

    .magazine-subscription #panel-print .promo-code-number-entry,
    .checkout .promo-code-number-entry {
        min-width: 190px;
    }

    .magazine-subscription__types-panel {
        font-size: 14px;
    }

    .magazine-subscription .tab-label,
    .magazine-subscription__tab-label {
        padding: 0.5rem 0.9rem;
    }

    .magazine-subscription .panels,
    .magazine-subscription__panels {
        padding: 22px;
    }

    .magazine-subscription #panel-print .promo-code-text {
        margin-bottom: 1rem;
    }

    .magazine-subscription__top-description {
        margin-bottom: 0.5rem;
    }

    .magazine-subscription .tab-label,
    .magazine-subscription__tab-label {
        padding: 0.5rem 1.9rem 0.5rem;
        font-size: 1.1rem;
    }

    .magazine-subscription .promo-code-number-entry {
        min-width: 200px;
    }

    .magazine-subscription #panel-print h3 {
        font-size: 17px;
        margin-bottom: 0;
    }

    .magazine-subscription #panel-print .offers-tabs-text,
    .magazine-subscription__types-panel .price,
    .magazine-subscription #panel-print .promo-code-text,
    .checkout .promo-code-text {
        font-size: 17px;
    }

    .magazine-subscription__types-panel .price {
        font-size: 16px;
    }

    .magazine-subscription__banner img {
        margin: 1rem auto 0.5rem;
    }

    .magazine-subscription .clamped-paragraph p,
    .magazine-subscription__top-description p:first-child {
        margin-top: 0.5rem;
    }

    .magazine-subscription__price-box {
        display: var(--d-flex);
        flex-direction: row;
        justify-content: space-between;
    }

    .magazine-subscription__price-box-wrapper {
        margin-bottom: 0.8rem;
    }

    .magazine-subscription__single-issue .magazine-subscription__price-box-wrapper {
        margin-bottom: 0;
    }

    .magazine-subscription__banner.mobile-banner-img {
        display: var(--d-none);
    }

    .magazine-subscription__banner.desktop-banner-img {
        display: var(--d-block);
    }

    .magazine-subscription .tab-list,
    .magazine-subscription__tabs-list {
        gap: 12px;
    }

    .magazine-subscription__rrp-price {
        font-size: 14.5px;
    }

    .magazine-subscription__gift-choices {
        margin: 1rem auto 0.5rem;
    }

    .magazine-subscription__details {
        margin-bottom: 0.3rem;
        margin-top: 0.3rem;
    }

    .magazine-subscription__details-delivery {
        display: var(--d-inline-block);
        margin-bottom: 0.3rem;
        font-size: 16px;
    }

    .magazine-subscription__price-box {
        margin-bottom: 0;
    }

    .magazine-subscription__types-panel-row {
        flex-direction: row;
        align-items: center;
        padding: 1.3rem 0;
        gap: 4rem;
    }

    .magazine-subscription__types-panel .buy-now input[type="submit"],
    .magazine-subscription__types-panel .buy-now button,
    .magazine-subscription .promo-code-number-apply,
    .checkout .promo-code-number-apply,
    .magazine-subscription #panel-print .offers-tabs div {
        font-size: 15px !important;
    }

    .magazine-subscription__show-more-offers .btn {
        font-size: 16px !important;
    }

    .magazine-subscription__types-panel .buy-now input[type="submit"],
    .magazine-subscription__types-panel .buy-now button { 
        padding: 0.6rem 1.75rem;
    }

    .magazine-subscription .offers-tab {
        padding: 0.15rem 1.5rem !important;
    }

    .magazine-subscription__tab-container {
        margin: 1rem auto 3.5rem;
    }

    .magazine-subscription__single-issue .magazine-subscription__tab-container {
        margin: 1.5rem auto 3.5rem;
    }

    .magazine-subscription.publication .product-heading {
        font-size: 26px;
    }

    .magazine-subscription__single-issue .magazine-subscription__types-panel-row {
        gap : 1rem;
    }
}

/* ------ x > 890px ------ */
@media screen and (min-width: 880px) {

    #view-offer-modal, #view-promo-modal, #view-sneakpeak-modal, #view-ecard-modal, #view-renew-sample-modal, #view-recipient-sample-modal, #view-tshirt-modal, #view-gift-email-modal, #view-cvv-sample-modal, #view-digital-email-modal, #view-digitalgift-email-modal {
        max-width: 800px;
    }

    /*.carousel-wrapper-cat .left-arrow, .carousel-wrapper-cat .right-arrow {
        display: none;
    }*/

    .publication .sneakwrap img.view-sneakpeak {
        display: var(--d-block);
        bottom: 0;
        right: 11px;
    }

    .publication .sneakwrap img {
        max-width: 90%;
    }

    .education .sneakwrap img, .magazine .sneakwrap img {
        max-width: 100%;
    }

    .promo-badge {
        position: absolute;
        width: 55px;
        height: 55px;
        bottom: -4px;
        right: -14px;
        max-height: 55px !important;
        max-width: 55px !important;
    }

    .home-carousel-item {
        padding: 15px;
        flex: 0 0 20%;
        max-width: calc(20% - 30px);
    }

    .magazine-subscription .product-list {
        grid-column-gap: 23px;
    }

    .magazine-subscription.magazine-subscription__single-issue .product-list {
        grid-template-columns: repeat(4, 1fr) !important;
        grid-column-gap: 23px;
    }

    .magazine-subscription #panel-print .promo-code {
        margin-top: 0.5rem;
    }

    .magazine-subscription__single-issue .magazine-subscription__types-panel-row {
        flex-direction: row;
        align-items: center;
        padding: 1.3rem 0;
    }
}

/* ------ x < 960px ------ */
@media only screen and (max-width: 960px) {
    #mobnav-btn {
        display: block;
    }

    .home-carousel-img {
        text-align: var(--t-center);
    }

    .home-carousel-item img {
        max-width: 130px !important;
    }
}

@media (min-width: 960px) {
    header {
        display: var(--d-grid);
        grid-template-columns: auto 1fr auto;
        grid-column-gap: 10px;
        align-items: center;
        margin-top: 0;
        margin-bottom: 0;
    }

        header #logo {
            margin: 0;
            padding-bottom: 10px;
            padding-top: 16px;
            padding: 1rem 1rem;
        }

        header #cart-menu {
            margin-right: 1.125rem;
        }

    .top-notice-alert {
        padding: .825rem;
    }

    #search .search-wrapper {
        padding: 0;
        margin: 0 10px;
    }

    #mobnav-btn {
        display: var(--d-none);
    }

    .logo-image {
        max-width: 240px;
    }

    #top-banner {
        margin-top: 0;
    }

    #search {
        background-color: var(--color-white);
        position: relative;
        top: 0;
        width: auto;
    }

        #search button {
            width: 50px;
            right: 0;
        }

        #search input:hover {
            background-color: #F1F1F1;
        }

    nav#top-nav ul li a {
        color: #fff;
    }

        nav#top-nav ul li a:hover {
            background-color: #3377bc;
        }

    header #cart-menu span {
        font-size: 1rem;
    }

    header #login .menu-myaccount, header #login .logout-link {
        font-size: 1rem;
        height: 32px;
        line-height: 32px;
        padding: 0 .75rem;
    }

    header #login .menu-myaccount {
        margin-right: .5rem;
    }

    header #login a.menu-myaccount:hover, header #login .logout-link:hover {
        background-color: #0f4376;
    }

    header #login a {
        color: #6E6E6E;
        font-size: 1rem;
        margin: 7px 0;
        padding: 0;
        margin-right: .5rem;
    }

    header #login .icon-user {
        color: var(--color-primary);
        padding-right: 0.25rem;
    }

    nav#top-nav {
        display: var(--d-flex);
        justify-content: center;
        grid-column: 1 / 4;
    }

        nav#top-nav ul li a {
            font-size: 16px;
            height: 52px;
            line-height: 52px;
            padding: 0 .75rem;
        }

            nav#top-nav ul li a span {
                display: var(--d-inline-block);
            }

    header .group-menu {
        position: relative;
        width: auto;
        border-bottom: 0;
    }

    nav .main-menu {
        display: var(--d-block);
    }

    #search input {
        background-color: #F1F1F1;
        padding-left: 10px;
    }

    .promo-carousel {
        min-height: 400px;
    }

        .promo-carousel img {
            max-height: 400px;
            width: auto;
        }

    #breadcrumb {
        max-width: 880px;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 30px;
        text-align: var(--t-left);
    }

    .main-content-inner {
        padding: 40px 30px;
    }

    .inner-carousel-cat {
        display: var(--d-flex);
        padding: 10px 10px;
    }

    .publication {
        max-width: 880px;
        margin: 0 auto;
    }

    .cat-list-heading, #more-like-this-text {
        font-size: 24px;
    }

    .product-list {
        max-width: 880px;
        grid-column-gap: 30px;
    }

    #product-list .product-desc {
        margin-bottom: 15px;
    }

    #product-list .product-item img:not(#product-list .promo-badge-image) {
        max-width: 130px;
    }

    .panel-bottom #home-carousel {
        height: 320px;
    }

    .panel-bottom .panel-heading {
        font-size: 28px;
    }

    .panel-bottom .product-link {
        text-align: var(--t-center);
        padding: 2rem;
    }

    .special-offers-item {
        max-width: 33.3%;
    }

    .publication .pub-left {
        width: 300px;
    }

    .publication .price {
        font-size: 21px;
    }

    .publication .savings strong {
        font-size: 16px;
    }

    .back-issue-menu a.merchandise {
        margin-right: 26px;
    }

    .back-issue-menu a.back-issues, .back-issue-menu a.merchandise {
        padding: 8px 22px;
    }

    .back-issue-menu a.merchandise {
        margin-right: 24px;
    }

    .publication .savings {
        font-size: 15px;
        line-height: 21px;
    }

        .publication .savings .amount {
            font-size: 21px;
            line-height: 21px;
        }

    .publication .sneakwrap img.view-sneakpeak {
        right: 0;
    }

    .education .sneakwrap img.view-sneakpeak {
        right: 21px;
    }

    #education .edu-left {
        width: calc(100% - 300px);
    }

    #education .edu-right {
        width: 300px;
        text-align: var(--t-right);
    }

        #education .edu-right img {
            max-width: 250px;
        }

    #education .product-list {
        display: var(--d-flex);
        flex-wrap: wrap;
    }

    .edu-logo {
        margin-top: 1rem;
        margin-bottom: 2rem;
        text-align: var(--t-center);
    }

    .more-carousel-img {
        -webkit-transition: all .2s ease;
        transition: all .3s ease;
    }

        .more-carousel-img:hover {
            /*-webkit-transform: scale(1.075);
        transform: scale(1.075);
        -webkit-transform: scale(1.05) translate(0,-5px);
        -o-transform: scale(1.05) translate(0,-5px);
        transform: scale(1.05) translate(0,-5px);*/
        }

    .ecard-preview {
        -webkit-transition: all .2s ease-in-out;
        -o-transition: all .2s ease-in-out;
        transition: all .2s ease-in-out;
    }

        .ecard-preview:hover {
            -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.5);
            box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.5);
            z-index: 10;
            opacity: 1 !important;
        }

    #view-offer-modal h2, #view-sneakpeak-modal h2, #view-tshirt-modal h2 {
        font-size: 23px;
        margin-top: 1rem;
        margin-bottom: .625rem;
    }

    #view-offer-modal .intro {
        font-size: 17px;
        margin-bottom: 1.375rem;
    }

    .faqs {
        max-width: 840px;
        margin-left: auto;
        margin-right: auto;
        margin-top: 3rem
    }

        .faqs h3 {
            font-size: 17px;
        }

        .faqs h4 {
            font-size: 19px;
        }

    .magazine-subscription__types-panel .price {
        font-size: 16px;
    }
}

@media (min-width: 1024px) {
    .logo-image {
        max-width: 310px;
    }

    /*#education .product-item {
        width: calc(16.6667% - 60px);
    }*/
}

/* ------ x > 1120px ------ */
@media screen and (min-width: 1120px) {
    header {
        padding: 1rem 1.5rem;
        padding: 0;
    }

    nav#top-nav ul li a {
        font-size: 18px;
        padding: 0 .75rem;
    }

    header #cart-menu .icon {
        font-size: 22px;
    }

    header #cart-menu .cart-menu-link {
        margin-right: .375rem;
        /*padding: 0 .625rem 0 .5rem;*/
    }

    #search input {
        height: 42px;
    }

    #search button {
        height: 44px;
    }

    .main-content-inner {
        padding: 40px 0;
        max-width: 1024px;
        margin-left: auto;
        margin-right: auto;
    }

    .promo-carousel .left-arrow, .promo-carousel .right-arrow {
        top: calc(50% - 30px);
    }

    .promo-carousel .left-arrow, .promo-carousel .right-arrow {
        width: 30px;
        height: 60px;
        font-size: 2rem;
    }

    .cat-list-heading, #more-like-this-text {
        font-size: 26px;
    }

    .promo-carousel {
        height: 382px;
    }

    .home-carousel-item .product-heading {
        font-size: 17px;
        margin-top: 14px;
        margin-bottom: 12px;
        margin-left: -20px;
        margin-right: -20px;
    }

    .cat-home-carousel .promo-text {
        font-size: 14px;
    }

    #carousel-wrapper .left-arrow, #carousel-wrapper .right-arrow {
        width: 25px;
        height: 56px;
    }

    .home-carousel-item {
        position: relative;
        z-index: 1;
        margin: 0;
        vertical-align: top;
        padding: 18px;
        max-width: calc(20% - 36px);
    }

    .inner-carousel-cat {
        padding: 10px;
        padding-bottom: 30px;
    }

    #breadcrumb {
        max-width: 100%;
    }

    .publication {
        max-width: 100%;
    }


    .product-list {
        grid-template-columns: repeat(5,1fr);
        max-width: 100%;
        padding-left: 0;
        padding-right: 0;
    }

    .product-item a {
        font-size: 16px;
    }

    .panel-bottom #home-carousel {
        height: 330px;
    }

    .panel-bottom .intro-text {
        font-size: 18px;
        line-height: 28px;
    }

    .panel-bottom .panel-heading {
        color: var(--color-white) !important;
        font-size: 30px;
        text-align: var(--t-center);
    }

    .panel-bottom .home-carousel-item .product-heading {
        font-size: 15px;
        font-weight: 400;
        margin-top: 14px;
        margin-bottom: 12px;
        line-height: 19px;
        margin-left: 0;
        margin-right: 0;
    }

    .panel-bottom .home-carousel-item img {
        max-width: 100px;
    }

    .panel-bottom #carousel-wrapper .left-arrow, .panel-bottom #carousel-wrapper .right-arrow {
        top: calc(50% - 70px);
    }

    #home-carousel .promo-text {
        color: #174a7d;
        font-family: var(--font-roboto);
        font-size: 13px;
        height: 36px;
        line-height: 1.6em;
        margin-top: -3px;
        white-space: nowrap;
        text-align: var(--t-center);
    }

    #home-carousel .transition .promo-text, #home-carousel-cat-1 .transition .promo-text, #cat2-home-carousel .transition .promo-text, #cat3-home-carousel .transition .promo-text {
        visibility: visible;
    }

    .more-carousel-item {
        max-width: calc(16.666667% - 50px);
    }

    #view-offer-modal, #view-promo-modal, #view-sneakpeak-modal, #view-ecard-modal, #view-renew-sample-modal, #view-recipient-sample-modal, #view-tshirt-modal, #view-gift-email-modal, #view-cvv-sample-modal, #view-digital-email-modal, #view-digitalgift-email-modal {
        max-width: 800px;
    }

        #view-offer-modal h2, #view-sneakpeak-modal h2, #view-tshirt-modal h2 {
            font-size: 23px;
            margin-bottom: .75rem;
        }

    #view-offer-modal, #view-promo-modal, #view-sneakpeak-modal, #view-ecard-modal, #view-renew-sample-modal, #view-recipient-sample-modal, #view-tshirt-modal, #view-gift-email-modal, #view-cvv-sample-modal, #view-digital-email-modal, #view-digitalgift-email-modal {
        line-height: 1.6em;
    }

    .modal-right-pad {
        margin-left: 25px;
    }
    .magazine-subscription .product-list {
        grid-template-columns: repeat(4,1fr);
    }

    .magazine-subscription.magazine-subscription__single-issue #product-list .promo-text {
        padding: 10px 7px;
        margin: 0 10px;
    }

    .magazine-subscription .savings .price, .magazine-subscription .savings span[style="color:#4B95DF;"], .magazine-subscription .savings span span, .magazine-subscription .savings span s {
        font-size: 21px !important;
    }
}

@keyframes fade {
    from {
        opacity: .6;
        translate: 0 2px;
    }

    to {
        opacity: 1;
        translate: 0 0;
    }
}
