#may-promo {
    --yellow: #fff200;
    --purple: #292562;
    --blue: #1d3460;
    --red: #ed1c24;
    --gap: 23px;
    font-size: 16px;
}
#may-hero{
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-image: url(../../../images/23/may/hero/back.jpg);
	background-image: -webkit-image-set(url("../../../images/23/may/hero/back.jpg") 1x, url("../../../images/23/may/hero/back@2x.jpg") 2x);
}
.mh-left {
    padding: 45px 204px 86px 0;
}
.mh-left:before {
    content: '';
    display: block;
    width: 2419px;
    height: 100%;
    position: absolute;
    z-index: -1;
    top: 0;
    right: -257px;
	background-position: center right;
	background-size: contain;
	background-repeat: no-repeat;
	background-image: url(../../../images/23/may/hero/shape.png);
	background-image: -webkit-image-set(url("../../../images/23/may/hero/shape.png") 1x, url("../../../images/23/may/hero/shape@2x.png") 2x);
}
.mh-left .button{
    width: 257px;
    height: 60px;
    font-size: 1.6875em;
    margin-top: 24px;
    flex-shrink: 0;
}
.may-animation {
    margin-right: -100%;
}
.may-animation .animation{
    width: 168%;
}
.marquee {
    --gap: 1rem;
    user-select: none;
    gap: var(--gap);
    padding: 15px 0;
}
.marquee__content {
    flex-shrink: 0;
    gap: var(--gap);
    min-width: 100vw;
}
@keyframes scroll {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(calc(-100% - var(--gap)));
    }
}
/* Pause animation when reduced-motion is set */
@media (prefers-reduced-motion: reduce) {
    .marquee__content {
        animation-play-state: paused !important;
    }
}
/* Enable animation */
.enable-animation .marquee__content {
    animation: scroll 30s linear infinite;
  }
/* Pause on hover */
.marquee--hover-pause:hover .marquee__content {
    animation-play-state: paused;
}
/* Attempt to size parent based on content. Keep in mind that the parent width is equal to both content containers that stretch to fill the parent. */
.marquee--fit-content {
    max-width: fit-content;
}
.marquee .dot {
    margin-left: 13px;
}
.marquee li {
    font-size: 1.4375em;
}
@media screen and (max-width: 1399px){
    .mh-left{
        max-width: 50%;
        padding-right: 65px;
    }
    .may-animation {
        max-width: 50%;
        margin-right: -50%;
    }
    .may-animation .animation {
        width: 252%;
    }
    .may-animation img{
        max-width: 150%;
    }
}
@media screen and (min-width:1200px){
    #may-promo {
        width: 100vw;
        max-width: 100vw;
        position: relative;
        left: 50%;
        right: 50%;
        margin-left: -50vw;
        margin-right: -50vw;
    }
}
@media screen and (max-width: 991px) {
    .mh-left{
        padding-right: 40px;
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .mh-left:before {
        right: -180px;
    }
}
@media screen and (max-width: 767px) {
    .mh-left .button{
        width: 226px;
        height: 53px;
        font-size: 1.4375em;
    }
}
@media screen and (max-width: 567px) {
    #may-hero{
        background-position: bottom center;
        background-image: url(../../../images/23/may/hero/back-m.jpg);
        background-image: -webkit-image-set(url("../../../images/23/may/hero/back-m.jpg") 1x, url("../../../images/23/may/hero/back-m@2x.jpg") 2x);
    }
    .mh-inner {
        flex-direction: column;
    }
    .mh-left{
        padding-right: 0;
        padding-top: 57px;
    }
    .mh-left:before {
        display: none;
    }
    .mh-left{
        max-width: 100%;
    }
    .may-animation {
        max-width: 100%;
        margin-right: 0;
        align-self: center;
        right: 20px;
    }
    .may-animation .animation{
        width: 200%;
    }
    .may-animation img{
        max-width: max-content;
    }
}

#hero-new{
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
	position: relative;
}
#panel nav{
	z-index: 5;
}
#hero-new .h-wrapper{
	position: relative;
	width: 100%;
}
#hero-new .flex{
    display: flex;
}
#hero-new .flex-column{
	flex-direction: column;	
}
#hero-new img{
	max-width: 100%;
	max-height: 100%;
	height: auto;
	align-self: flex-end;
}
#hero-new .h-left{
	flex-grow: 1;
	position: relative;
	overflow: hidden;
}
#hero-new .h-left-inner{
	padding: 0 15px;
}
#hero-new .h-left a.button{
	color: #fff;
	text-decoration: none;
	text-align: center;
	font-size: 20px;
	font-weight: 800;
	width: 238px;
	height: 51px;
	line-height: 51px;
	text-transform: uppercase;
}
#hero-new .h-right{
    flex-shrink: 0;
    width: 425px;
    padding-right: 45px;
	align-items: center;
	position: relative;
}
#hero-new .h-right-inner{
	height: 100%;
	align-items: flex-end;
	justify-content: center;	
	position: relative;
	z-index: 1;
}
#hero-new .h-right .hero-disclaimer{
	padding-right: 44px;
	padding-left: 30px;
	width: 380px;
}
#hero-new .h-right .hero-disclaimer p{
	font-size: 11px;
	line-height: normal;
	color: #000;
	letter-spacing: 0.025em;
	margin-bottom: 0;
}
#hero-new .h-right .h-box{
	height: 168px;
	width: 380px;
	background-color: #fff;
	padding-left: 30px;
	position: relative;
    max-width: 100%;
	color: #282828;
	background-size: contain;
	background-position: top right;
	background-repeat: no-repeat;
	box-shadow:         -1px 1px 8px 0px rgba(35, 35, 33, 0.17);
}
#hero-new .h-right .h-box + .h-box{
    margin-left: 47px;
}
#hero-new .h-right .h-box .h-featured-text{    
	padding-top: 20px;
}
#hero-new .h-right .h-box h3{
	font-size: 17px;
	line-height: 17px;
	margin-bottom: 0;
	margin-top: 2px;
	font-family: 'assistantbold';
}
#hero-new .h-right .h-box p{
	font-size: 12px;
	line-height: normal;
	font-weight: normal;
	color: #000000;
}
#hero-new .h-right .h-featured-text a{
	color: #fff;
	background-color: #ff6c00;
	font-size: 10px;
	line-height: 30px;
	font-weight: 800;
	text-transform: uppercase;
	text-align: center;
	display: block;
	width: 129px;
	height: 30px;
	position: absolute;
	bottom: 18px;
	left: 30px;
}
#hero-new .h-right .h-featured-image{
	flex-grow: 1;
	text-align: right;
	overflow: hidden;
}

#hero-new .h-right .first-set .top .h-featured-image {
    padding-right: 57px;
}

#hero-new .h-right .first-set .bottom .h-featured-image {
    margin-left: -14px;
}

#hero-new .h-right .first-set .bottom .h-featured-image img {
    max-width: 220px;
}

#hero-new .h-right .h-price{
	top: -11px;
	right: -11px;
	position: absolute;
	background-color: #ff6c00;
	height: 92px;
	width: 92px;
	border-radius: 50%;
	color: #fff;
	text-align: center;
	align-items: center;
	justify-content: center;	
}
#hero-new .h-right .h-price-top{
	font-size: 27px;
	line-height: 27px;
}
#hero-new .h-right .h-price-top sup{
	font-size: 60%;
}
#hero-new .h-right .h-price-top sup.small{
    font-size: 50%;
    top: -.8em;	
	position: relative;
}
#hero-new .h-right .h-price-bottom{
	font-size: 13px;
	font-weight: bold;
}


#hero-new.may .h-right{
    background-color: #fff;
    width: 100%;
    padding: 0;
}
#hero-new.may .h-right-inner{
    padding-bottom: 63px;
    padding-top: 42px;
}
#hero-new.may .h-right-top{
    padding-top: 48px;
}
#hero-new.may .h-right-top p{
    margin-bottom: 0;
    font-size: 32px;
    line-height: 1;
    color: #031943;
    text-transform: uppercase;
}
#hero-new.may .h-right p.assistant{
    margin-bottom: 0;
    margin-top: 40px;
    text-align: center;
    padding: 0 15px;
}
#hero-new .h-right .second-set .top .h-featured-image{
    padding-bottom: 9px;
    padding-right: 12px;
}
#hero-new .h-right .second-set .bottom .h-featured-image{
    padding-bottom: 20px;
    padding-right: 10px;
}
@media screen and (max-width:1199px){	
	#hero-new .h-right{
		padding-right: 15px;
		width: auto;
	}
}
@media screen and (min-width:1200px){
    #hero-new.may .h-right .h-box + .h-box{
        margin-left: 79px;
    }
}
@media screen and (max-width:1199px){
	#hero-new .h-right{
		width: 100%;
		align-items: center;
		padding-right: 0;
	}
	#hero-new .h-right .h-right-inner{
		width: 100%;
		padding:40px 15px;
		align-items: center;
        flex-direction: column;
	}
    #hero-new.may .h-right .h-box + .h-box,
	#hero-new.may .h-right .second-set .h-box + .h-box.bottom{
        margin-top: 35px;
        margin-left: 0;
    }
    #hero-new.may .h-right-top p{
        font-size: 33px;
        line-height: 1.4;
    }
}
@media screen and (max-width:991px){
	#hero-new .h-inner.flex{
		flex-direction: column;			
	}
}
@media screen and (min-width: 768px){
} 
@media screen and (max-width: 767px){
} 
@media screen and (min-width:568px){
    #hero-new.may .h-right .h-box{
        padding-left: 27px;
        width: 557px;
        height: 280px;
    }
    #hero-new.may .h-right .h-box .h-featured-text{
        padding-top: 20px;
    }
    #hero-new.may .h-right .h-box h3,
    #hero-new.may .h-right .h-box p{
        line-height: 1.2;
    }
    #hero-new.may .h-right .h-box h3{
        font-size: 23px;
    }
    #hero-new.may .h-right .h-box p{
        font-size: 18px;
    }
    #hero-new.may .h-right .h-box h3{
        margin-bottom: 0;
    }
    #hero-new.may .h-right .h-featured-text a{
        bottom: 17px;
        left: 27px;
        font-size: 14px;
        width: 188px;
        height: 43px;
        line-height: 43px;
    }
    #hero-new.may .h-right .h-price{
        width: 134px;
        height: 134px;
        top: -13px;
        right: -16px;
    }
    #hero-new.may .h-right .h-price-top{
        font-size: 41px;
        line-height: 41px;
    }
    #hero-new.may .h-right .h-price-bottom{
        font-size: 20px;
    }
    #hero-new.may .h-right-top p{
        font-size: 47px;
    }
}
@media screen and (max-width:567px){
    #hero-new.may .h-right .h-box{
        padding-left: 10px;
    }
    #hero-new.may .h-right .h-box .h-featured-text{
        padding-top: 10px;
    }
    #hero-new.may .h-right .h-featured-text a{
        left: 0;
        bottom: 0;
        position:relative;
        margin-bottom:10px;
    }
    #hero-new.may .h-right .h-featured-image{
        padding-left: 10px;
    }
	#hero-new .h-right .second-set .top .h-featured-image {
		padding-right: 0;
		padding-top: 15px;
	}
    #hero-new .h-right .first-set .top .h-featured-image {
        padding-right: 20px;
    }
    #hero-new .h-right .first-set .bottom .h-featured-image {
        margin-left: 0;
    }
    #hero-new .h-right .h-box {
        height:100%;
    }
    #hero-new .h-right .h-featured-text p br{
        display:none;
    }

    #hero-new .h-right .h-featured-text p {
        padding-right: 10px;
    }

    #hero-new .h-right .h-featured-text {
        width:70%;
    }
}
@media screen and (max-width:430px){
    #hero-new .h-right .h-box {
        background-size: auto calc(100% - 40px);
        background-position: calc(100% - 10px) 20px;
    }
	#hero-new .h-right .h-box h3{
		font-size: 15px;
	}
}
