.sl-wrapper .sl-close, .sl-wrapper .sl-navigation button {
    height: 44px;
    line-height: 44px;
    font-family:Arial, Baskerville, monospace
}

.sl-wrapper .sl-close:focus, .sl-wrapper .sl-navigation button:focus {
    outline:0
}

body.hidden-scroll {
    overflow:hidden
}

.sl-overlay {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: #fff;
    opacity: .7;
    display: none;
    z-index:1035
}

.sl-wrapper .sl-close, .sl-wrapper .sl-counter {
    top: 30px;
    display: none;
    color: #000;
    position:fixed
}

.sl-wrapper {
    z-index:1040
}

.sl-wrapper button {
    border: 0;
    background: 0 0;
    font-size: 28px;
    padding: 0;
    cursor:pointer
}

.sl-wrapper button:hover {
    opacity:.7
}

.sl-wrapper .sl-close {
    right: 30px;
    z-index: 10060;
    margin-top: -14px;
    margin-right: -14px;
    width: 44px;
    font-size:3rem
}

.sl-wrapper .sl-counter {
    left: 30px;
    z-index: 1060;
    font-size:1rem
}

.sl-wrapper .sl-navigation {
    width: 100%;
    display:none
}

.sl-wrapper .sl-navigation button {
    position: fixed;
    top: 50%;
    margin-top: -22px;
    width: 22px;
    text-align: center;
    display: block;
    z-index: 10060;
    color:#000
}

.sl-wrapper .sl-navigation button.sl-next {
    right: 5px;
    font-size:2rem
}

.sl-wrapper .sl-navigation button.sl-prev {
    left: 5px;
    font-size:2rem
}

@media (min-width: 35.5em) {
    .sl-wrapper .sl-navigation button {
        width:44px
    }

    .sl-wrapper .sl-navigation button.sl-next {
        right: 10px;
        font-size:3rem
    }

    .sl-wrapper .sl-navigation button.sl-prev {
        left: 10px;
        font-size:3rem
    }

    .sl-wrapper .sl-image img {
        border:0
    }
}

@media (min-width: 50em) {
    .sl-wrapper .sl-navigation button {
        width:44px
    }

    .sl-wrapper .sl-navigation button.sl-next {
        right: 20px;
        font-size:3rem
    }

    .sl-wrapper .sl-navigation button.sl-prev {
        left: 20px;
        font-size:3rem
    }

    .sl-wrapper .sl-image img {
        border:0
    }
}

.sl-wrapper .sl-image {
    position: fixed;
    touch-action: none;
    z-index:10000
}

.sl-wrapper .sl-image img {
    margin: 0;
    padding: 0;
    display: block;
    border: 0;
    width: 100%;
    height:auto
}

.sl-wrapper .sl-image iframe {
    background: #000;
    border:0
}

@media (min-width: 35.5em) {
    .sl-wrapper .sl-image iframe {
        border:0
    }
}

@media (min-width: 50em) {
    .sl-wrapper .sl-image iframe {
        border:0
    }
}

.sl-wrapper .sl-image .sl-caption {
    display: none;
    padding: 10px;
    color: #fff;
    background: rgba(0, 0, 0, .8);
    font-size: 1rem;
    position: absolute;
    bottom: 0;
    left: 0;
    right:0
}

.sl-wrapper .sl-image .sl-caption.pos-top {
    bottom: auto;
    top:0
}

.sl-wrapper .sl-image .sl-caption.pos-outside {
    bottom:auto
}

.sl-wrapper .sl-image .sl-download {
    display: none;
    position: absolute;
    bottom: 5px;
    right: 5px;
    color: #000;
    z-index:1060
}

.sl-spinner {
    display: none;
    border: 5px solid #333;
    border-radius: 40px;
    height: 40px;
    left: 50%;
    margin: -20px 0 0 -20px;
    opacity: 0;
    position: fixed;
    top: 50%;
    width: 40px;
    z-index: 1007;
    -webkit-animation: pulsate 1s ease-out infinite;
    animation:pulsate 1s ease-out infinite
}

.sl-scrollbar-measure {
    position: absolute;
    top: -9999px;
    width: 50px;
    height: 50px;
    overflow:scroll
}

.sl-transition {
    transition:transform .2s ease
}

@-webkit-keyframes pulsate {
    0% {
        transform: scale(.1);
        opacity:0
    }

    50% {
        opacity:1
    }

    to {
        transform: scale(1.2);
        opacity:0
    }
}

@keyframes pulsate {
    0% {
        transform: scale(.1);
        opacity:0
    }

    50% {
        opacity:1
    }

    to {
        transform: scale(1.2);
        opacity:0
    }
}


:root {
    --error-border: #c91c0c;
    --error-label: #c91c0c;
    --inner-margin: 5vw;
    --outer-margin: 3.5vw;
    --wide-inner-margin: 18.1vw;
    --middle-margin: calc(var(--inner-margin) - var(--outer-margin));
    --horizontal-margin: calc(var(--inner-margin) + var(--outer-margin));
    --horizontal-scroll-container-gap: 2px;
    --horizontal-scroll-item-gap: 2px;
    --horizontal-scroll-item-min-width: 280px;
    --horizontal-scroll-padding-left: 0px;
    --horizontal-scroll-padding-right: 0px;
    --card-grid-item-gap: 3px;
    --card-grid-item-gap-lg: 6px;
    --card-grid-item-min-width: 100vw;
    --card-grid-small-row-count: 1;
    --card-grid-small-4-row-count: 1;
    --card-height-small: 355px;
    --card-height-medium: 400px;
    --card-height-large: 400px;
    --card-height-xlarge: 85vh;
    --card-height-hero: 85vh;
    --body-font: #4c4c4c;
    --celebrities: #4532e8;
    --coeds: #888;
    --girlfriends: #4597c7;
    --international: #9edc22;
    --muses: #ff4600;
    --newcomers: #e31dd6;
    --playmates: #ff006c;
    --special-edition: #e7cb16;
    --promo:#228b22
}

@media (min-width: 768px) {
    :root {
        --card-height-medium: 300px;
        --card-height-large: 478px;
        --card-height-redesign-large: 300px;
        --card-height-xlarge: 478px;
        --card-grid-item-min-width: 75vw;
        --card-grid-small-row-count:2
    }
}

@media (max-width: 768px) {
    :root {
        --card-height-redesign-large:20rem
    }
}

@media (min-width: 1024px) {
    :root {
        --card-height-small: 29.778vh;
        --card-height-medium: 53.333vh;
        --card-height-large: 64.222vh;
        --card-height-redesign-large: 30vh;
        --card-grid-small-row-count: 3;
        --card-grid-small-4-row-count:2
    }
}

@media (min-width: 1440px) {
    :root {
        --card-height-xlarge: 900px;
        --wide-inner-margin: 21.1vw;
        --card-height-redesign-large: 35vh;
        --card-grid-small-4-row-count:4
    }
}

@media (min-width: 1920px) {
    :root {
        --card-height-medium: 65vh;
        --card-height-large:82vh
    }
}

html {
    box-sizing:border-box
}

*, :after, :before {
    box-sizing:inherit
}

body {
    background:#000
}

blockquote, body, figcaption, figure, h1, h2, h3, h4, h5, h6, ol, p, ul {
    margin: 0;
    padding:0
}

a {
    color: var(--body-font);
    text-decoration:none
}

html {
    font-size:10px
}

body {
    font-family: PlayboyVisuelt, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing:grayscale
}

b, strong {
    font-weight:bolder
}

img {
    max-width:100%
}

picture {
    line-height: 0
}

body > img[height="1"][width="1"] {
    position: absolute;
    top: 0;
    left: 0;
    opacity:.01
}

#__next {
    background:#fff
}

.menu-open, .search-open {
    position: fixed;
    width:100vw
}

div:focus, input:focus, main:focus, textarea:focus {
    outline:none
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border:0
}

.sr-only-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto;
    white-space: normal;
    position: absolute;
    left: 1rem;
    top:1rem
}

.cardSmall {
    height:var(--card-height-small)
}

.cardMedium {
    height:var(--card-height-medium)
}

.cardLarge {
    height:var(--card-height-large)
}

.cardXLarge {
    height:var(--card-height-xlarge)
}

.cardHero {
    height:var(--card-height-hero)
}

@media (max-width: 767px) {
    .cardHero {
        height:70vh
    }
}

.heroGroup {
    padding-bottom:var(--card-grid-item-gap)
}

.grid {
    position: relative;
    display: flex;
    flex-wrap:wrap
}

.grid .item {
    box-sizing: border-box;
    flex: 0 0 var(--card-grid-item-min-width);
    padding-right: var(--card-grid-item-gap);
    padding-bottom:var(--card-grid-item-gap)
}

@media (max-width: 767px) {
    .grid .item:last-child {
        padding-right:0
    }
}

@media (min-width: 768px) {
    .grid.gap-lg {
        margin-left: calc(var(--card-grid-item-gap) * -1);
        margin-right:calc(var(--card-grid-item-gap) * -1)
    }
}

.grid.gap-lg .item {
    padding-bottom: var(--card-grid-item-gap-lg);
    padding-right:0
}

@media (min-width: 768px) {
    .grid.gap-lg .item {
        padding-right: var(--card-grid-item-gap);
        padding-left:var(--card-grid-item-gap)
    }
}

@media (max-width: 767px) {
    .oneUp .item {
        --card-grid-item-min-width:100%
    }

    .twoUp {
        flex-wrap:wrap
    }

    .twoUp .item {
        --card-grid-item-min-width: 100%;
        padding-right:0
    }

    .twoUpMobile .item {
        --card-grid-item-min-width:50%
    }

    .twoUpMobile .item:nth-child(2n + 2) {
        padding-right:0
    }
}

@media (min-width: 768px) {
    .grid .item {
        --card-grid-item-min-width:25%
    }

    .oneUp .item {
        --card-grid-item-min-width:100%
    }

    .twoUp .item {
        --card-grid-item-min-width:50%
    }

    .twoUp .item:nth-child(2n + 2) {
        padding-right:0
    }

    .gridThree .item {
        --card-grid-item-min-width:33.33333%
    }

    .gridEven .item {
        --card-grid-item-min-width:50%
    }

    .gridEven .item:nth-child(2n + 2), .gridFive .item:nth-child(5n + 2), .gridFive .item:nth-child(5n + 5), .gridFiveFlipped .item:nth-child(5n + 2), .gridFiveFlipped .item:nth-child(5n + 5) {
        padding-right:0
    }

    .gridFive .item:nth-child(5n + 2) {
        --card-grid-item-min-width:75%
    }

    .gridFive .item:nth-child(5n + 3) {
        --card-grid-item-min-width:50%
    }

    .gridFiveFlipped .item:nth-child(5n + 1) {
        --card-grid-item-min-width:75%
    }

    .gridFiveFlipped .item:nth-child(5n + 5) {
        --card-grid-item-min-width:50%
    }

    .gridFiveLarge .item:nth-child(5n + 5), .gridFiveLargeFlipped .item:nth-child(5n + 5) {
        padding-right:0
    }

    .gridFiveLarge .item:nth-child(5n + 2) {
        margin-right:50%
    }

    .gridFiveLargeFlipped .item:nth-child(5n + 1) {
        margin-left:50%
    }

    .gridFiveLarge .item:nth-child(5n + 3), .gridFiveLargeFlipped .item:nth-child(5n + 3) {
        --card-grid-item-min-width:50%
    }

    .gridFiveLarge .item:nth-child(5n + 3) {
        margin-right:50%
    }

    .gridFiveLargeFlipped .item:nth-child(5n + 3) {
        margin-left:50%
    }

    .gridFiveLarge .item:nth-child(5n + 4), .gridFiveLargeFlipped .item:nth-child(5n + 5) {
        --card-grid-item-min-width:75%
    }
}

@media (min-width: 1024px) {
    .gridFour li.item {
        --card-grid-item-min-width:25%
    }
}



@media (min-width: 1024px) {
    .bg-img {
        background-size:100% auto
    }
}

.list-unstyled {
    list-style:none
}

.uppercase {
    text-transform:uppercase
}

.text-center {
    text-align:center
}

.mx-auto {
    margin-left: auto;
    margin-right:auto
}

.account-header .title {
    font-size: 4rem;
    line-height: 1.1;
    margin-top: 117px;
    font-weight:700
}

@media (min-width: 1024px) {
    .account-header .title {
        font-size: 10rem;
        line-height: 1;
        margin-top: 148px;
        margin-bottom:58px
    }
}

.actions-container {
    position: relative;
    z-index: 5;
    padding-bottom: 28px;
    padding-top:28px
}

@media (min-width: 1024px) {
    .actions-container {
        background-image: linear-gradient(#d5d5d5, #d5d5d5);
        background-size: 10% 1px;
        background-repeat: no-repeat;
        background-position: 50%;
        display: flex;
        justify-content: flex-end;
        height: 135px;
        padding: 0;
        z-index:auto
    }
}

.actions {
    background-image: linear-gradient(#d5d5d5, #d5d5d5);
    background-size: 100% 1px;
    background-repeat: no-repeat;
    background-position: 0;
    display: flex;
    justify-content: flex-end;
    position:static
}

@media (min-width: 1024px) {
    .actions {
        background: none;
        flex-direction: column;
        top: 50%;
        padding-right: var(--outer-margin, 3.5vw);
        z-index:10
    }

    .actions.floating {
        position: fixed;
        right: 0;
        opacity: 0;
        transition: .6s ease-in-out;
        transform:translateX(100%)
    }

    .actions.floating.is-visible {
        opacity: 1;
        transform:translateX(0)
    }
}

@media (max-width: 1023px) {
    .actions {
        margin-bottom:74px
    }
}

.action {
    background: #fff;
    padding-left:12px
}

@media (min-width: 1024px) {
    .action {
        background: transparent;
        border-radius: 50%;
        padding-left:0
    }

    .action:first-child {
        margin-bottom:36px
    }
}

@media (max-width: 1023px) {
    .action {
        box-sizing:content-box
    }
}

.attribution {
    margin-top: 32px;
    margin-bottom:28px
}

@media (min-width: 768px) {
    .attribution {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        margin-bottom: 4rem;
        align-items:flex-end
    }
}

@media (min-width: 1024px) {
    .attribution {
        margin-top: 6.4rem;
        margin-bottom:6.4rem
    }
}

.attribution .contributors {
    flex: 1 1 auto;
    padding-right:10px
}

@media (min-width: 1024px) {
    .attribution .contributors {
        flex-grow:2
    }
}

@media (max-width: 767px) {
    .attribution .contributors {
        margin-bottom:40px
    }
}

.attribution .tag {
    flex: 1;
    display: flex;
    justify-content:flex-end
}

@media (min-width: 500px) {
    .attribution .tag {
        flex:0 1 auto
    }
}

@media (min-width: 1024px) {
    .attribution .tag {
        flex:1 1 auto
    }
}

.attribution .label {
    font-weight: 400;
    font-size:1.4rem
}

@media (min-width: 1024px) {
    .attribution .label {
        font-size: 1.6rem;
        line-height:1.5
    }
}

.attribution .date {
    margin-bottom:1.7rem
}

@media (min-width: 1024px) {
    .attribution .date {
        margin-bottom:2.7rem
    }
}

.attribution .contributor {
    color: #000;
    font-size: 1.4rem;
    line-height: 20px;
    padding-bottom:8px
}

.attribution .contributorName {
    color: var(--dominant-color, inherit);
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: .9px;
    text-transform:uppercase
}

@media (min-width: 1024px) {
    .attribution .contributorName {
        font-size: 1.4rem;
        line-height: 1.43;
        letter-spacing:1px
    }
}

.attribution .contributorName + .label {
    margin-top:1.7rem
}

@media (min-width: 1024px) {
    .attribution .contributorName + .label {
        margin-top:2.7rem
    }
}

.attribution .contributorName a {
    color:currentColor
}

.attribution a.contributorName {
    text-decoration:none
}

.attribution .attribution-buttons-wrapper {
    align-self:flex-end
}

@media (min-width: 768px) {
    .attribution .attribution-buttons-wrapper {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items:flex-end
    }
}

.attribution .video-download-button-wrapper {
    position: relative;
    display:inline-block
}

@media (max-width: 768px) {
    .attribution .video-download-button-wrapper {
        margin-top:20px
    }
}

@media (min-width: 768px) {
    .attribution .video-download-button-wrapper {
        margin-left: 10px;
        margin-top:10px
    }
}

.attribution .video-download-button-wrapper .download-dropdown-wrapper {
    position: absolute;
    border: 0;
    height: 0;
    overflow: hidden;
    transition:.5s
}

.attribution .video-download-button-wrapper a, .attribution .video-download-button-wrapper button {
    border-radius:0
}

.attribution .video-download-button-wrapper button {
    padding-right:49px
}

.attribution .video-download-button-wrapper button svg {
    position: absolute;
    right: 10px;
    transition:.5s
}

.attribution .video-download-button-wrapper a {
    width: 100%;
    text-align: left;
    align-items: left;
    justify-content: left;
    padding-left:32px
}

.attribution .video-download-button-wrapper a:hover {
    background-color:#333
}

.attribution .video-download-button-wrapper.open-dropdown .download-dropdown-wrapper {
    height:auto
}

.attribution .video-download-button-wrapper.open-dropdown button svg {
    transform:rotate(180deg)
}

.article-headline {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    position: relative;
    overflow: hidden;
    color:var(--dominant-color, inherit)
}

.article-headline.containerFixed {
    max-width: 1920px;
    margin-left: auto;
    margin-right: auto;
    margin-top:85px
}

.article-headline.containerFixed .imageContainer {
    padding-bottom: 56.25%;
    position: relative;
    height:auto
}

.article-headline.containerFixed img {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top:0
}

.article-headline .headline-container {
    margin-top:6rem
}

@media (min-width: 768px) {
    .article-headline .headline-container {
        max-width:80%
    }
}

@media (min-width: 1024px) {
    .article-headline .headline-container {
        margin-top:7.7rem
    }
}

.article-headline .title {
    font-weight: 700;
    position: relative;
    opacity: 0;
    top: 100%;
    z-index: 3;
    padding: 16px 12px 30px 0;
    font-size: 4rem;
    line-height:1.1
}

@media (min-width: 1024px) {
    .article-headline .title {
        padding: 48px 24px 32px 0;
        font-size:8rem
    }
}

@media (min-width: 1440px) {
    .article-headline .title {
        font-size: 10rem;
        line-height: 1;
        padding-right:10%
    }
}

.article-headline .gradient:after {
    background-image: linear-gradient(197.37deg, hsla(0, 0%, 65.5%, 0), rgba(52, 52, 52, .56));
    content: "";
    height: 100%;
    left: 0;
    opacity: .9;
    position: absolute;
    top: 0;
    right: 0;
    z-index:2
}

.article-headline .imageContainer {
    position: relative;
    transition: transform .5s ease;
    overflow: hidden;
    width: 100%;
    height:85vh
}

.article-headline .image {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit:cover
}

.article-headline.is-visible .title {
    opacity: 1;
    top:0
}

.article-headline.is-visible .image {
    transform:scale(1.1)
}

img.image {
    -o-object-position: 50% 17.7%;
    object-position:50% 17.7%
}

.article-quote {
    position: relative;
    margin-top: 32px;
    padding-top: 32px;
    padding-bottom:32px
}

@media (min-width: 1024px) {
    .article-quote {
        margin-left: calc(var(--outer-margin) + var(--wide-inner-margin));
        margin-top: 64px;
        margin-bottom:64px
    }
}

.article-quote .quote {
    position: relative;
    width: 75%;
    margin-left: 25%;
    padding-right: var(--horizontal-margin);
    padding-bottom: 31px;
    border-bottom: 1px solid var(--color);
    font-size: 2.6rem;
    font-weight: 300;
    color: var(--color);
    line-height:1.54
}

@media (min-width: 1024px) {
    .article-quote .quote {
        padding-right: calc(var(--outer-margin) + var(--wide-inner-margin));
        padding-bottom: 49px;
        font-size: 3.6rem;
        line-height:1.56
    }
}

.article-quote .quote > :last-child:after {
    content: "\201D"
}

.article-quote .quote:before {
    position: absolute;
    left: -48px;
    top: -16px;
    content: "\201C";
    color: var(--color);
    font-size: 10rem;
    font-weight: 400;
    line-height:1
}

@media (min-width: 1024px) {
    .article-quote .quote:before {
        left:-64px
    }
}

.article-quote.isLight, .button {
    color:#fff
}

.button {
    align-items: center;
    background-color: #000;
    border: 0;
    border-radius: 35px;
    cursor: pointer;
    display: inline-flex;
    font-family: PlayboyVisuelt, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
    font-size: 1.2rem;
    font-weight: 500;
    justify-content: center;
    letter-spacing: .8px;
    line-height: 1;
    outline: none;
    padding: 0 32px;
    text-align: center;
    text-transform: uppercase;
    -webkit-font-smoothing: auto;
    -moz-osx-font-smoothing:auto
}

.button-text-only {
    padding: 0;
    border-radius: 0;
    background:none
}

.button-outline {
    background-color: transparent;
    border: 1px solid;
    padding-left: 35px;
    padding-right: 35px;
    transition:opacity .125s linear
}

.button-outline:hover {
    opacity:.67
}

.button.isLight {
    background-color: #fff;
    color:#000
}

.button.size-default {
    height:52px
}

.button.size-small {
    height: 42px;
    padding:0 44px
}

@media (min-width: 768px) and(max-width: 1023px) {
    .button.size-small {
        padding:0 22px
    }
}

.button.padding-xtra {
    padding:0 44px
}

@media (min-width: 768px) and(max-width: 1023px) {
    .button.padding-xtra {
        padding:0 22px
    }
}

.button.button-squared {
    border-radius:0
}

.button[disabled] {
    background-color: #d9d9d9;
    cursor: not-allowed;
    color:#7f7f7f
}

a.button {
    text-decoration:none
}

a.button[disabled] {
    pointer-events:none
}

.card {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    overflow: hidden;
    padding: 30px 26px;
    position: relative;
    width: 100%;
    transition: padding-bottom .75s ease;
    transition-delay:.15s
}

@media (update: slow), screen and(prefers-reduced-motion: reduce) {
    .card {
        transition:none
    }
}

.card.cardText:before {
    background:none
}

.card:before {
    background-image: linear-gradient(-180deg, transparent 10%, #000);
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    opacity: .5;
    position: absolute;
    right: 0;
    top: 55%;
    transition: background-color .75s ease, opacity .75s ease;
    transition-delay: .15s;
    z-index:1
}

@media (update: slow), screen and(prefers-reduced-motion: reduce) {
    .card:before {
        transition:none
    }
}

@media (min-width: 768px) {
    .card:before {
        background-image: linear-gradient(-180deg, transparent 60%, #000);
        opacity: .6;
        top:0
    }
}

.card .image {
    -o-object-fit: cover;
    object-fit: cover;
    bottom: 0;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    transition: transform .5s ease;
    transition-delay: .15s;
    top: 0;
    width:100%
}

@media (update: slow), screen and(prefers-reduced-motion: reduce) {
    .card .image {
        transition:none
    }
}

.card .text {
    position: relative;
    z-index:10
}

@media (min-width: 640px) {
    .card .text {
        max-width:50%
    }
}

@media (max-height: 901px) {
    .card .text {
        max-width:70%
    }
}

.card .title {
    color: #fff;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.2;
    margin:15px 0 0
}

.card .subtitle {
    color: #fff;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.4;
    display:block
}

.card .tag {
    position: relative;
    z-index:3
}

.card .date {
    color: #fff;
    font-size: 1.4rem;
    letter-spacing: .1rem;
    line-height: 1.357;
    margin-top:.3rem
}

.card .favorite {
    margin-bottom: auto;
    z-index:3
}

.cardLink {
    display: block;
    text-decoration:none
}

.cardLink:after {
    content: "";
    cursor: pointer;
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index:2
}

.cardCTA {
    z-index: 10;
    width: 210px;
    align-self:center
}

@media screen and (hover: hover) and(prefers-reduced-motion: no-preference) {
    .card:hover {
        padding-bottom:39px
    }
}

@media (hover: hover) {
    .card:hover .image {
        transform:scale(1.1)
    }
}

@media (hover: hover) and(update: slow), screen and(hover: hover) and(prefers-reduced-motion: reduce) {
    .card:hover .image {
        transform:none
    }
}

@media screen and (hover: hover) and(prefers-reduced-motion: no-preference) {
    .card.cardText:hover {
        padding-bottom:30px
    }
}

@media (hover: hover) {
    .card.cardText:hover:before {
        background-color:transparent
    }
}

@media (hover: hover) {
    .card.cardText:hover .image {
        transform:none
    }
}

.card.isCarouselItem {
    padding-bottom:6rem
}

@media (min-width: 768px) {
    .card.isCarouselItem {
        padding-bottom:10rem
    }
}

@media (min-width: 1024px) {
    .card.isCarouselItem {
        padding-bottom:12.8rem
    }
}

@media (min-width: 1024px) {
    .cardMedium {
        padding:26px 42px 27px 32px
    }
}

.cardMedium .title {
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.2;
    margin-top:1rem
}

@media (min-width: 768px) and(max-width: 1023px) {
    .cardMedium .title {
        font-size:2rem
    }
}

.cardMedium .button {
    margin-top:2rem
}

.cardHero {
    padding-left: calc(var(--outer-margin, 3.5vw) + var(--inner-margin, 5vw));
    padding-right:calc(var(--outer-margin, 3.5vw) + var(--inner-margin, 5vw))
}

.cardHero .title {
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.1;
    margin:11px 0 0
}

.cardHero .title.short {
    max-width:284px
}

@media (min-width: 768px) {
    .cardHero .title.short {
        max-width:412px
    }
}

.cardHero .button {
    margin-top: 1.6rem;
    position: relative;
    z-index:2
}

@media (min-width: 768px) {
    .cardHero .button {
        margin-top:5rem
    }
}

@media (max-width: 767px) {
    .cardHero .button {
        max-height:42px
    }
}

.cardHero .subtitle {
    line-height:1.43
}

@media (min-width: 768px) {
    .cardHero {
        padding-top: 109px;
        padding-bottom:109px
    }

    .cardHero .title {
        font-size: 6rem;
        line-height: 1;
        margin-top: 20px;
        margin-bottom:20px
    }

    .cardHero .subtitle {
        font-size: 1.8rem;
        line-height:1.56
    }
}

@media (min-width: 1440px) {
    .cardHero {
        padding-top: 204px;
        padding-bottom:204px
    }

    .cardHero .title {
        margin-top:2rem
    }

    .cardHero .subtitle {
        font-size: 2.4rem;
        line-height: 1.417;
        margin-top:1rem
    }
}

.card.cardXLarge {
    padding-left: calc(var(--outer-margin, 3.5vw) + var(--inner-margin, 5vw));
    padding-right:calc(var(--outer-margin, 3.5vw) + var(--inner-margin, 5vw))
}

.card.cardXLarge .tag {
    font-size:1.1rem
}

@media (min-width: 1440px) {
    .card.cardXLarge:not(.isCarouselItem) {
        padding-bottom:65px
    }

    .card.cardXLarge .subtitle {
        margin-top:.8rem
    }

    .card.cardXLarge .title {
        font-size: 8rem;
        line-height: 1;
        margin-top:3.1rem
    }
}

@media (max-width: 767px) {
    .card.cardXLarge:before {
        top:30%
    }
}

@media (min-width: 1440px) {
    .card.cardXLarge.titleLarge .title {
        font-size: 8rem;
        margin-top:2rem
    }
}

.card.cardXLargebefore {
    background:none
}

.card.cardCentered {
    justify-content:center
}

.card-cta {
    font-size: 1.6rem;
    text-align: center;
    margin-top: 64px;
    margin-bottom:64px
}

@media (min-width: 1024px) {
    .card-cta {
        align-items: center;
        margin-top: 80px;
        margin-bottom:80px
    }
}

.card-cta.full-bg {
    color: #fff;
    justify-content: center;
    align-items: center;
    height:var(--card-height-large)
}

@media (min-width: 768px) {
    .card-cta.full-bg {
        height:442px
    }
}

@media (min-width: 1024px) {
    .card-cta.full-bg {
        margin-top: 12.2rem;
        margin-bottom:12.2rem
    }
}

@media (max-width: 767px) {
    .card-cta.full-bg {
        position: relative;
        font-weight:500
    }

    .card-cta.full-bg:before {
        opacity:.2
    }
}

.card-cta.full-width {
    height: var(--card-height-xlarge);
    margin-bottom: 0;
    margin-top:80px
}

.card-cta.full-width .title {
    font-size:7rem
}

@media (min-width: 768px) {
    .card-cta.full-width .title {
        font-size:10rem
    }
}

.card-cta.full-width .text {
    max-width:80%
}

@media (min-width: 768px) {
    .card-cta.full-width .text {
        max-width:72rem
    }
}

.card-cta .text {
    width: 100%;
    max-width:71%
}

@media (min-width: 768px) {
    .card-cta .text {
        max-width:40rem
    }
}

.card-cta .title {
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 1rem;
    margin-top:3rem
}

.card-cta .button {
    margin-top:3rem
}

@media (min-width: 1024px) {
    .card-cta .title {
        margin-top: 1.6rem;
        margin-bottom:1.6rem
    }

    .card-cta .button {
        margin-top:2rem
    }
}

.card-desc {
    font-size: 1.6rem;
    text-align: center;
    margin-top: 64px;
    margin-bottom:64px
}

@media (min-width: 1024px) {
    .card-desc {
        display: flex;
        align-items: center;
        margin-top: 80px;
        margin-bottom:80px
    }
}

.card-desc.full-bg {
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: cover;
    text-align: center;
    width: 100%;
    height:var(--card-height-large)
}

@media (min-width: 768px) {
    .card-desc.full-bg {
        height:442px
    }
}

@media (min-width: 1024px) {
    .card-desc.full-bg {
        margin-top: 12.2rem;
        margin-bottom:12.2rem
    }
}

@media (max-width: 767px) {
    .card-desc.full-bg {
        position: relative;
        font-weight:500
    }

    .card-desc.full-bg:after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background:rgba(0, 0, 0, .2)
    }
}

.card-desc.full-width {
    height: var(--card-height-xlarge);
    margin-bottom: 0;
    margin-top:80px
}

.card-desc.full-width .title {
    font-size:7rem
}

@media (min-width: 768px) {
    .card-desc.full-width .title {
        font-size:10rem
    }
}

.card-desc.full-width .content {
    max-width:80%
}

@media (min-width: 768px) {
    .card-desc.full-width .content {
        max-width:72rem
    }
}

.card-desc .image {
    height: 192px;
    height: 50vw;
    max-height: 320px;
    width: 100%;
    -o-object-fit: cover;
    object-fit:cover
}

.card-desc .content {
    width: 100%;
    max-width: 71%;
    position: relative;
    z-index: 1;
    margin-left: auto;
    margin-right:auto
}

@media (min-width: 768px) {
    .card-desc .content {
        max-width:80rem
    }
}

.card-desc .title {
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 1rem;
    margin-top:3rem
}

.card-desc .button {
    margin-top:3rem
}

@media (min-width: 1024px) {
    .card-desc .image {
        height: 650px;
        max-height:none
    }

    .card-desc .title {
        margin-top: 1.6rem;
        margin-bottom:1.6rem
    }

    .card-desc .button {
        margin-top:2rem
    }
}

.cardList {
    list-style: none;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding:0 1rem
}

.cardList > li {
    height: 50px;
    line-height: 50px;
    margin-bottom: 19px;
    margin-left: 50px;
    position: relative;
    font-size: 1.6rem;
    letter-spacing:0
}

.cardList > li:before {
    content: "";
    position: absolute;
    left: -50px;
    height: 50px;
    width: 30px;
    background:url(/images/icons/check-bullet.svg) 50% no-repeat
}

@media (min-width: 1024px) {
    .upgrade-landing .card-desc {
        margin-top: 60px;
        margin-bottom:20px
    }

    .upgrade-landing .card-cta {
        margin-top:20px
    }
}

.upgrade-landing .section-title {
    margin-bottom:10px
}

@media (max-width: 480px) {
    .upgrade-landing .card-cta {
        margin-top:0
    }
}

.cardProfile {
    padding-left: 20px;
    padding-bottom:12px
}

@media (min-width: 1024px) {
    .cardProfile {
        padding-left: 45px;
        padding-bottom:45px
    }
}

@media (max-width: 767px) {
    .cardProfile {
        height:24.8rem
    }
}

.cardProfile .title {
    font-size: 2rem;
    line-height: 1.2;
    font-weight:500
}

@media (min-width: 1024px) {
    .cardProfile .title {
        font-weight: 700;
        font-size: 6rem;
        line-height:1
    }
}

@media (min-width: 1024px) {
    .gridFour li.item .cardProfile {
        padding-left: 25px;
        padding-bottom:25px
    }
}

.gridFour li.item .cardProfile .title {
    font-size: 2.5em;
    font-weight:400
}

.gridFour li.item .cardProfile.card .text {
    max-width:75%
}

.card-split {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    overflow: hidden;
    padding: 0 18px 0 0;
    position: relative;
    width: 100%;
    transition: padding-bottom .75s ease;
    transition-delay:.15s
}

@media (update: slow), screen and(prefers-reduced-motion: reduce) {
    .card-split {
        transition:none
    }
}

.card-split .card-section {
    display:flex
}

.card-split .card-section__image {
    flex-basis: 60%;
    position: relative;
    margin-bottom:24px
}

.card-split .card-section__image .image {
    -o-object-fit: cover;
    object-fit: cover;
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    transition: transform 1s ease;
    transition-delay: .15s;
    top: 0;
    width:100%
}

@media (update: slow), screen and(prefers-reduced-motion: reduce) {
    .card-split .card-section__image .image {
        transition:none
    }
}

.card-split .text {
    position: relative;
    z-index:10
}

@media (min-width: 640px) {
    .card-split .text {
        max-width:100%
    }
}

.card-split .title {
    color: #000;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.2;
    margin:24px 0 10px
}

.card-split .subtitle {
    color: #000;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.4;
    display:block
}

.card-split .tag {
    position: relative;
    z-index: 3;
    margin: 0 0 12px 12px;
    align-self:flex-end
}

.card-split .description {
    color: #4c4c4c;
    font-size: 1.6rem;
    letter-spacing: 0;
    line-height: 2.8rem;
    margin-top:.3rem
}

.card-split .favorite {
    margin-bottom: auto;
    z-index:3
}

.card-split-upgrade .card-section {
    position:relative
}

.card-split-upgrade .card-section .tag {
    position: absolute;
    bottom: 10px;
    left:10px
}

@media (max-width: 480px) {
    .card-split-upgrade .card-section .tag {
        left:20px
    }
}

.card-split-upgrade .card-section .title {
    color: #000;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.2;
    margin:24px 0 10px
}

.grid-small {
    overflow: hidden;
    width: 100%;
    --card-grid-small-item-width:calc(100%/var(--card-grid-small-row-count, 3) - var(--card-grid-item-gap))
}

.grid-small .col {
    height: var(--card-height-small);
    margin-bottom: 3px;
    margin-right: var(--card-grid-item-gap);
    position: relative;
    width: 33.33%;
    width: var(--card-grid-small-item-width);
    min-width: var(--card-grid-small-item-width);
    max-width:var(--card-grid-small-item-width)
}

@media (min-width: 768px) {
    .grid-small .col {
        flex:1 0
    }
}

@media (min-width: 1024px) {
    .grid-small .col {
        height:var(--card-height-medium)
    }
}

.grid-small .row {
    display: flex;
    flex-flow: row wrap;
    margin-right:calc(var(--card-grid-item-gap) * -1)
}

.grid-small .card {
    height: 100%;
    padding: 0;
    justify-content: center;
    align-items:center
}

.grid-small .text {
    color: #fff;
    text-transform: uppercase;
    white-space: nowrap;
    max-width:none
}

.grid-small .text h3 {
    font-size: 2.2rem;
    letter-spacing:.26px
}

.grid-small-4 {
    overflow: hidden;
    width: 100%;
    --card-grid-small-item-width:calc(100%/var(--card-grid-small-4-row-count, 4) - var(--card-grid-item-gap))
}

.grid-small-4 .col {
    height: var(--card-height-small);
    margin-bottom: 3px;
    margin-right: var(--card-grid-item-gap);
    position: relative;
    width: 25%;
    width: var(--card-grid-small-item-width);
    min-width: var(--card-grid-small-item-width);
    max-width:var(--card-grid-small-item-width)
}

@media (min-width: 768px) {
    .grid-small-4 .col {
        flex:1 0
    }
}

@media (min-width: 1024px) {
    .grid-small-4 .col {
        height:24.5vw
    }
}

.grid-small-4 .row {
    display: flex;
    flex-flow: row wrap;
    margin-right:calc(var(--card-grid-item-gap) * -1)
}

.grid-small-4 .card {
    height: 100%;
    padding: 0;
    justify-content: center;
    align-items:center
}

.grid-small-4 .text {
    color: #fff;
    text-transform: uppercase;
    white-space: nowrap;
    max-width:none
}

.grid-small-4 .text h3 {
    font-size: 2.2rem;
    letter-spacing:.26px
}

@media (max-width: 1023px) {
    .has_margin_on_mobile {
        margin-left: var(--outer-margin, 3.5vw);
        margin-right:var(--outer-margin, 3.5vw)
    }

    .has_padding_on_mobile {
        padding-left: var(--inner-margin, 5vw);
        padding-right:var(--inner-margin, 5vw)
    }
}

@media (min-width: 1024px) {
    .has_margin_on_desktop {
        margin-left: var(--outer-margin, 3.5vw);
        margin-right:var(--outer-margin, 3.5vw)
    }

    .has_padding_on_desktop {
        padding-left: var(--inner-margin, 5vw);
        padding-right:var(--inner-margin, 5vw)
    }

    .has_large_padding_on_desktop {
        padding-left: var(--wide-inner-margin, 18.1vw);
        padding-right:var(--wide-inner-margin, 18.1vw)
    }

    .has_top_margin_desktop {
        margin-top:120px
    }
}

@media (min-width: 1440px) {
    .has_large_padding_on_desktop {
        padding-left: var(--wide-inner-margin, 21.1vw);
        padding-right:var(--wide-inner-margin, 21.1vw)
    }
}

.carousel.carousel-slider .control-arrow, .carousel .control-arrow {
    transition: all .25s ease-in;
    position: absolute;
    z-index: 2;
    top: 20px;
    border: 0;
    font-size: 32px;
    width: 20%;
    cursor: pointer;
    opacity:.5
}

.carousel .control-disabled.control-arrow {
    opacity: 0;
    filter: alpha(opacity=0);
    cursor: inherit;
    display:none
}

.carousel .control-prev.control-arrow {
    background: url(/images/redesign/icons/previous.svg) 16px no-repeat;
    left:0
}

.carousel .control-prev.control-arrow:before {
    border-right:8px solid #fff
}

.carousel .control-next.control-arrow {
    background: url(/images/redesign/icons/next.svg) right 16px center no-repeat;
    right:0
}

.carousel .control-next.control-arrow:before {
    border-left:8px solid #fff
}

.carousel {
    position: relative;
    width:100%
}

.carousel * {
    box-sizing:border-box
}

.carousel img {
    display: inline-block;
    pointer-events:none
}

.carousel .carousel {
    position:relative
}

.carousel .control-arrow {
    outline: 0;
    border: 0;
    background: none;
    top: 50%;
    margin-top: -13px;
    font-size:18px
}

.carousel.carousel-slider {
    position: relative;
    margin: 0;
    overflow:hidden
}

.carousel.carousel-slider .control-arrow {
    top: 0;
    color: #fff;
    font-size: 26px;
    bottom: 0;
    margin-top: 0;
    padding:5px
}

.carousel .slider-wrapper {
    overflow: hidden;
    margin: auto;
    width: 100%;
    transition:height .15s ease-in
}

.carousel .slider {
    margin: 0;
    padding: 0;
    position: relative;
    list-style: none;
    width: 100%;
    overflow:hidden
}

.carousel-item {
    position: relative;
    display: none;
    float: left;
    width: 100%;
    margin-right: -100%;
    opacity: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition:opacity .6s ease-in-out
}

@media (prefers-reduced-motion: reduce) {
    .carousel-item {
        transition:none
    }
}

.carousel-item-next, .carousel-item-prev, .carousel-item.active {
    display:block
}

.carousel-item-next.carousel-item-left, .carousel-item-prev.carousel-item-right, .carousel-item.active {
    z-index: 1;
    opacity:1
}

.active.carousel-item-left, .active.carousel-item-right {
    z-index: 0;
    opacity: 0;
    transition:opacity 0s .6s
}

.carousel .carousel-item img {
    border: 0;
    vertical-align:top
}

.carousel .control-dots {
    bottom: 0;
    left: 0;
    margin-bottom: 39px;
    margin-left: calc(var(--outer-margin, 3.5vw) + var(--inner-margin, 5vw));
    position: absolute;
    width: 100%;
    z-index: 3;
    display: flex;
    list-style:none
}

@media (min-width: 1024px) {
    .carousel .control-dots {
        margin-bottom:60px
    }
}

@media (max-width: 768px) {
    .carousel .control-dots {
        display:none
    }
}

.carousel .control-dots .dot {
    background-color: hsla(0, 0%, 100%, .5);
    cursor: pointer;
    height: 2px;
    margin-right: 1.4rem;
    outline: none;
    position: relative;
    width:3rem
}

@media (min-width: 1024px) {
    .carousel .control-dots .dot {
        height: 3px;
        width:5rem
    }
}

.carousel .control-dots .dot:hover {
    background-color:#fff
}

.carousel .control-dots .dot:after {
    background-color: #fff;
    bottom: 0;
    content: "";
    height: 100%;
    position: absolute;
    width:0
}

.carousel .control-dots .dot.active:after {
    transition: width .35s linear;
    width:100%
}

.carousel .subtitle {
    display:none
}

@media (min-width: 1024px) {
    .carousel .subtitle {
        display: block;
        width:72%
    }
}

@media (max-height: 901px) {
    .carousel .subtitle {
        display: block;
        width:85%
    }
}

#tour-promo-video + img {
    display:none
}

@media (max-width: 480px) {
    #tour-promo-video {
        display:none
    }

    #tour-promo-video + img {
        display:block
    }
}

.videohero {
    display:block
}

.videoheromobile {
    display:none
}

@media (max-width: 480px) {
    .videohero {
        display:none
    }

    .videoheromobile {
        display:block
    }

    #tour-promo-video {
        display:none
    }

    #tour-promo-video + img {
        display:block
    }
}

.datasheet {
    color: #fff;
    margin: 33px 0;
    overflow:hidden
}

.datasheet.isLight {
    color:#000
}

.datasheet .titles {
    display: flex;
    flex-direction: column;
    justify-content:flex-end
}

.datasheet .titles:not(:empty) {
    padding: 20px 0;
    width: 100%;
    min-height:100px
}

.datasheet .titles:after {
    position: absolute;
    left: 0;
    opacity: .8;
    content: "";
    display: block;
    width: 55%;
    margin-top: 20px;
    border-bottom:.8px solid var(--color)
}

@media (min-width: 1024px) {
    .datasheet .titles:after {
        width:52%
    }
}

.datasheet .datasheetTitle {
    font-size: 1.4rem;
    font-weight: 500;
    line-height:1.43
}

@media (min-width: 1024px) {
    .datasheet .datasheetTitle {
        font-size:1.6rem
    }
}

.datasheet .datasheetSubtitle {
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1.43;
    opacity:.7
}

@media (min-width: 1024px) {
    .datasheet .datasheetSubtitle {
        font-size:1.4rem
    }
}

.datasheet .facts {
    padding-top: 31px;
    padding-bottom: 0;
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
    flex-wrap:wrap
}

@media (min-width: 1024px) {
    .datasheet .facts {
        padding-top: 33px;
        padding-bottom:27px
    }
}

.datasheet .fact {
    margin-bottom: 32px;
    flex:0 0 50%
}

@media (min-width: 1024px) {
    .datasheet .fact {
        flex: 0 0 33.333%;
        margin-bottom:40px
    }
}

.datasheet .fact a {
    color: inherit;
    text-decoration:underline
}

.datasheet .factTitle {
    font-size: 1.2rem;
    margin-bottom: 4px;
    text-transform: capitalize;
    line-height:1.5
}

@media (min-width: 768px) {
    .datasheet .factTitle {
        margin-bottom: 8px;
        font-size:1.6rem
    }
}

.datasheet .factContent {
    font-size: 1.6rem;
    opacity: .8;
    line-height: 1.75;
    white-space:pre
}

@media (min-width: 1024px) {
    .datasheet .factContent {
        font-size: 2rem;
        line-height:2
    }
}

.datasheet .tag {
    position: absolute;
    right: 20px;
    top:90px
}

.datasheet .rating {
    margin-bottom:48px
}

.datasheet.noTitles {
    padding-top:10px
}

.datasheet.noTitles .tag {
    top:-12px
}

.datasheet.noTitles:before {
    opacity: .8;
    content: "";
    display: block;
    width: 55%;
    height: 1px;
    border-bottom:.8px solid var(--color)
}

@media (min-width: 1024px) {
    .datasheet.noTitles:before {
        width:52%
    }
}

.dropdown {
    --text-color: #000;
    --background-color: #fff;
    color: var(--text-color);
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: .5px;
    line-height: 1.2;
    position: relative;
    text-transform:uppercase
}

@media (min-width: 1024px) {
    .dropdown {
        letter-spacing: 1px;
        font-weight:500
    }
}

.dropdown.isLight {
    --text-color: #fff;
    --background-color:#000
}

.dropdown.isLight .options {
    border-color:hsla(0, 0%, 100%, .2)
}

.dropdown[data-alignment=left] .options {
    left:0
}

.dropdown[data-alignment=right] {
    text-align:right
}

.has_dropdown .dropdown[data-alignment=right] {
    margin-left:auto
}

.dropdown[data-alignment=right] .options {
    right:0
}

.dropdown .selected {
    align-items: center;
    cursor: pointer;
    display: inline-flex;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    color: var(--text-color);
    font-size: inherit;
    font-weight:inherit
}

@media (max-width: 1023px) {
    .dropdown .selected {
        font-weight:700
    }
}

.dropdown .selectedLabel {
    margin-right:5px
}

@media (min-width: 1024px) {
    .dropdown .selectedLabel {
        font-size:1.2rem
    }
}

.dropdown .options {
    background-color: var(--background-color);
    color: var(--text-color);
    border: 1px solid hsla(0, 0%, 59.2%, .2);
    margin-top: 5px;
    min-width: 152px;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    text-align: left;
    top: 100%;
    transition: opacity .2s ease-out;
    visibility: hidden;
    z-index:3
}

.dropdown .options.show {
    opacity: 1;
    pointer-events: auto;
    visibility:visible
}

.dropdown .option {
    cursor: pointer;
    padding: 12px 20px 10px;
    white-space: nowrap;
    letter-spacing: .5px;
    font-weight:700
}

.dropdown .option:hover {
    background-color: var(--text-color);
    color:var(--background-color)
}

.has_dropdown {
    display: flex;
    align-items:baseline
}

.favorite {
    align-items: center;
    color: #4c4c4c;
    display: inline-flex;
    height: 48px;
    justify-content: center;
    width:48px
}

.favorite + .share {
    margin-top:36px
}

.favorite.isLight, .isLight > .favorite {
    color:#fff
}

.favorite.isLight .favoriteBorder, .isLight > .favorite .favoriteBorder {
    stroke:#fff
}

.favoriteBorder, .favoriteHeart {
    stroke-width:1.5px
}

.isFavorite .favoriteHeart {
    fill:currentColor
}

.favoriteLight {
    color:#fff
}

.mega-dropdown-filter-wrapper {
    position: relative;
    min-height: 60px;
    z-index:20
}

@media (max-width: 480px) {
    .mega-dropdown-filter-wrapper {
        margin-top:10px
    }
}

#mega-dropdown-filter {
    width: 100%;
    position: absolute;
    background:hsla(0, 0%, 100%, .93)
}

#mega-dropdown-filter ul.mega-dropdown-container {
    display: inline-block;
    width: 100%;
    list-style: none;
    padding-left: var(--outer-margin, 3.5vw);
    padding-right:var(--outer-margin, 3.5vw)
}

#mega-dropdown-filter ul.mega-dropdown-container > li {
    float: left;
    width:20%
}

@media (max-width: 568px) {
    #mega-dropdown-filter ul.mega-dropdown-container > li {
        width:33.33333%
    }

    #mega-dropdown-filter ul.mega-dropdown-container > li.desktop-filtering-only {
        display:none
    }
}

#mega-dropdown-filter ul.mega-dropdown-container > li h2 a {
    font-weight: 400;
    padding: 10px 0;
    display: inline-block;
    color: #000;
    font-size:15px
}

#mega-dropdown-filter ul.mega-dropdown-container > li h2 a svg {
    margin-left: 15px;
    transition:transform .5s
}

@media (max-width: 760px) {
    #mega-dropdown-filter ul.mega-dropdown-container > li h2 a svg {
        margin-left:5px
    }
}

@media (max-width: 480px) {
    #mega-dropdown-filter ul.mega-dropdown-container > li h2 a svg {
        margin-left:0
    }
}

#mega-dropdown-filter ul.mega-dropdown-container > li ul.mega-dropdown-options {
    list-style: none;
    height: 0;
    overflow:hidden
}

#mega-dropdown-filter ul.mega-dropdown-container > li ul.mega-dropdown-options li a {
    font-size: 14px;
    font-weight: 400;
    line-height: 25px;
    padding: 5px 0;
    display: inline-block;
    color:#000
}

#mega-dropdown-filter ul.mega-dropdown-container > li ul.mega-dropdown-options li a.active {
    font-weight:700
}

#mega-dropdown-filter ul.mega-dropdown-container > li ul.mega-dropdown-options.three-columns > li {
    margin-right: 0;
    float:left
}

#mega-dropdown-filter ul.mega-dropdown-container > li ul.mega-dropdown-options.three-columns > li ol > li {
    list-style: none;
    text-transform:uppercase
}

#mega-dropdown-filter ul.mega-dropdown-container > li ul.mega-dropdown-options.three-columns > li ol > li a {
    padding-right:25px
}

@media (max-width: 760px) {
    #mega-dropdown-filter ul.mega-dropdown-container > li ul.mega-dropdown-options.three-columns > li ol > li a {
        padding-right:15px
    }
}

#mega-dropdown-filter:not(.mega-dropdown-filter-open) ul.mega-dropdown-container > li.active h2 a {
    font-weight:500
}

@media (min-width: 1024px) {
    #mega-dropdown-filter ul.mega-dropdown-container {
        padding-left: var(--outer-margin, 3.5vw);
        padding-right: var(--outer-margin, 3.5vw);
        max-width:70vw
    }
}

#mega-dropdown-filter #filter-search {
    border: none;
    border-bottom: 1px solid #000;
    padding: 2px 3px 2px 0;
    width: 100%;
    font-size:15px
}

#mega-dropdown-filter #filter-search::-webkit-input-placeholder {
    color:#000
}

#mega-dropdown-filter #filter-search:-ms-input-placeholder {
    color:#000
}

#mega-dropdown-filter #filter-search::-moz-placeholder {
    color:#000
}

#mega-dropdown-filter #filter-search::-ms-input-placeholder {
    color:#000
}

#mega-dropdown-filter #filter-search::placeholder {
    color:#000
}

#mega-dropdown-filter.mega-dropdown-filter-open {
    padding-bottom:30px
}

#mega-dropdown-filter.mega-dropdown-filter-open ul.mega-dropdown-container li h2 a svg {
    transform:rotate(180deg)
}

#mega-dropdown-filter.mega-dropdown-filter-open ul.mega-dropdown-container li ul.mega-dropdown-options {
    height:auto
}

.footer {
    background: #000;
    padding-top: 60px;
    padding-bottom: 80px;
    position: relative;
    z-index:5
}

.footer, .footer a {
    color:#fff
}

.footer .header {
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom:20px
}

.footer .menu {
    list-style: none;
    padding:70px 30px 20px
}

.footer .menuItem {
    padding-bottom: 40px;
    text-align: center;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 1px;
    text-transform:uppercase
}

.footer .menuLink {
    color: #fff;
    text-decoration:none
}

.footer .buttons {
    text-align: center;
    padding:0 30px 50px
}

.footer .buttons > a, .footer .buttons button {
    width: 100%;
    margin-bottom:22px
}

.footer .copyright {
    margin-top: 60px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    list-style:none
}

.footer .copyrightLink {
    font-size: 1.2rem;
    letter-spacing: .5px;
    color: #fff;
    text-decoration:none
}

@media (min-width: 1280px) {
    .footer {
        padding-top: 80px;
        padding-bottom:64px
    }

    .footer .header {
        line-height:1.33
    }

    .footer .row {
        display: flex;
        justify-content:space-between
    }

    .footer .newsletter {
        flex:0 0 335px
    }

    .footer .links {
        display: flex;
        justify-content:flex-end
    }

    .footer .menu {
        flex-shrink: 0;
        padding: 0;
        margin-right:100px
    }

    .footer .menuItem {
        font-size: 1.4rem;
        letter-spacing: normal;
        line-height: 1.43;
        padding-bottom: 24px;
        text-align:left
    }

    .footer .menuItem:last-child {
        padding-bottom:0
    }

    .footer .buttons {
        flex: 0 0 210px;
        padding:0
    }

    .footer .additionalLinks, .footer .right-side-copyright {
        display: inline-flex;
        flex-direction: column;
        align-items: flex-start;
        padding-top:60px
    }

    .footer .copyright {
        margin-top:30px
    }

    .footer .copyrightLink {
        margin-right: 96px;
        letter-spacing:normal
    }
}

.footer .additionalLinks {
    max-width:725px
}

.footer .footercontainer {
    padding:0 15%
}

.checkbox input[type=checkbox] {
    height: 0;
    margin: 0;
    opacity: 0;
    outline: none;
    width:0
}

.boldLabel label {
    display: block;
    font-weight: 500;
    letter-spacing: .9px;
    padding-bottom: 12px;
    text-transform:uppercase
}

.boldLabel label, .checkbox label {
    font-size: 1.2rem;
    line-height:1.33
}

.checkbox label {
    display: inline-block;
    padding-left: 29px;
    position: relative;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select:none
}

.checkbox label:after, .checkbox label:before {
    content: "";
    display: inline-block;
    height: 14px;
    left: 0;
    position: absolute;
    top: 0;
    width:14px
}

.checkbox label:before {
    border: 1px solid #b2b2b2;
    border-radius:2px
}

.checkbox label:after {
    background: url(/images/redesign/icons/checkboxChecked.svg) 50% no-repeat;
    background-size:8px
}

.checkbox input[type=checkbox] + label:after {
    content:none
}

.checkbox input[type=checkbox]:checked + label:after {
    content: ""
}

.checkbox input[type=checkbox]:focus + label:before {
    border-color:#000
}

.checkbox.isLight {
    border-color:#fff
}

.checkbox.isLight label:after {
    border-color: #fff;
    -webkit-filter: invert(100%);
    filter:invert(100%)
}

.checkbox.checkbox.isLight input[type=checkbox]:focus + label:before {
    border-color:#fff
}

.formContainer {
    max-width: 735px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 32px;
    padding-right:32px
}

@media (min-width: 768px) {
    .formContainer {
        margin-top:40px
    }
}

.formContainer .content {
    padding: 32px;
    max-width: 655px;
    margin-left: auto;
    margin-right: auto;
    background:#000
}

.formContainer .footer {
    border-top: 1px solid hsla(0, 0%, 100%, .4);
    color: hsla(0, 0%, 100%, .5);
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: .9px;
    margin-top: 39px;
    padding-top:32px
}

.formContainer .footer h3 {
    color: #fff;
    font-size: 1.2rem;
    font-weight: 500;
    margin-bottom: 16px;
    text-transform:uppercase
}

.formContainer .footer a {
    color:hsla(0, 0%, 100%, .5)
}

@media (min-width: 1024px) {
    .formContainer .footer {
        text-align:center
    }

    .formContainer .footer br {
        display:none
    }
}

.selectMenu {
    font-size: 1.4rem;
    font-weight: 400;
    display: block;
    color: #444;
    line-height: 1.43;
    padding: 17px 16px;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0;
    border: 1px solid #d9d9d9;
    box-shadow: none;
    border-radius: 0;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-color: #fff;
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23000000%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
    background-repeat: no-repeat;
    background-position: right .7em top 50%;
    background-size:.65em auto
}

.selectMenu.isLight {
    background-color: transparent;
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
    color:#fff
}

.selectMenu.isLight:focus {
    background-color:#000
}

.selectMenu::-ms-expand {
    display:none
}

.shortText {
    position: relative;
    width:100%
}

.shortText .label {
    display: block;
    font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 1.33;
    padding-bottom: 8px;
    text-transform:uppercase
}

.shortText .required .label:after {
    content: " *"
}

.shortText .errorLabel {
    color: var(--error-label);
    display: block;
    font-size: 1.2rem;
    line-height: 1.33;
    margin-top:8px
}

.shortText .input {
    border: 1px solid #d9d9d9;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.43;
    outline: none;
    padding: 17px 16px;
    width: 100%;
    transition:background .3s
}

.shortText .input.isLight {
    background: transparent;
    color:#fff
}

.shortText .input.isLight:focus {
    background:#000
}

.shortText .input.isLight:not(.error) {
    border-color:#fff
}

.shortText .input.isLight:-webkit-autofill {
    -webkit-text-fill-color: #fff;
    box-shadow:inset 0 0 0 100px #000
}

.shortText .input.isLight::-webkit-input-placeholder {
    color:hsla(0, 0%, 100%, .5)
}

.shortText .input.isLight::-moz-placeholder {
    color:hsla(0, 0%, 100%, .5)
}

.shortText .input.isLight:-ms-input-placeholder {
    color:hsla(0, 0%, 100%, .5)
}

.shortText .input.isLight:-moz-placeholder {
    color:hsla(0, 0%, 100%, .5)
}

.shortText .input:focus {
    border-color:#000
}

.shortText .input:disabled {
    background-color: #d9d9d9;
    border-color: transparent;
    color:#7f7f7f
}

.shortText .input:-webkit-autofill {
    -webkit-text-fill-color: #000;
    box-shadow:inset 0 0 0 100px #fff
}

.shortText .error .input {
    border-color:var(--error-border)
}

.paymentForm {
    color: #fff;
    max-width: 1111px;
    margin-top:117px
}

@media (min-width: 768px) {
    .paymentForm {
        margin-top:10%
    }
}

@media (min-width: 1280px) {
    .paymentForm {
        padding-left: 0;
        padding-right:0
    }
}

.paymentForm .content {
    background: transparent;
    padding: 0;
    margin-left: 0;
    margin-right: 0;
    max-width:none
}

@media (min-width: 768px) {
    .paymentForm .content {
        display: flex;
        flex-wrap: wrap;
        margin-left: -20px;
        margin-right:-20px
    }
}

.paymentForm .content p {
    font-size: 1.2rem;
    line-height:1.33
}

.paymentForm .title {
    font-size: 4rem;
    font-weight: 700;
    line-height: 1.1;
    margin-bottom:13px
}

.paymentForm .title:before {
    content: "";
    display: block;
    height: 61px;
    width: 61px;
    margin-bottom: 20px;
    border: 1px solid #fff;
    border-radius: 50%;
    background: url(/images/redesign/icons/lock.svg) no-repeat 50%;
    background-size:18px 24px
}

@media (min-width: 1024px) {
    .paymentForm .title {
        font-size: 7rem;
        line-height:1.43
    }
}

.paymentForm .subtitle {
    color: #fff;
    font-size: 1.4rem;
    line-height: 1.45;
    margin-bottom:40px
}

@media (min-width: 1024px) {
    .paymentForm .subtitle {
        font-size: 2.2rem;
        margin-bottom:70px
    }
}

.paymentForm .shortText {
    margin-bottom:40px
}

@media (min-width: 768px) {
    .paymentForm .shortText {
        flex: 0 0 50%;
        max-width: 50%;
        padding-left: 20px;
        padding-right:20px
    }
}

@media (min-width: 768px) {
    .paymentForm .inputCC {
        flex: 0 0 40%;
        max-width: 40%;
        padding-right:10px
    }
}

@media (min-width: 768px) {
    .paymentForm .inputCheck {
        flex: 0 0 10%;
        max-width: 10%;
        padding-left:10px
    }
}

.paymentForm .inputRadio {
    border: 1px solid #d9d9d9;
    line-height: 1.43;
    padding: 17px 16px 17px 5px;
    width:100%
}

.paymentForm .buttons {
    margin-top:48px
}

@media (min-width: 1024px) {
    .paymentForm .buttons {
        margin-top:16px
    }
}

@media (max-width: 767px) {
    .paymentForm .buttons {
        text-align:center
    }
}

.paymentForm .list-cc {
    display: flex;
    position: absolute;
    right: 40px;
    top:4rem
}

.paymentForm .list-cc li + li {
    margin-left:10px
}

.paymentForm .list-cc img {
    max-height:20px
}

.paymentForm .footer {
    text-align: left;
    background: none;
    border: 0;
    max-width: 596px;
    padding-top:0
}

.paymentForm .footer p {
    margin-bottom:0
}

.signInForm .title {
    font-size: 4rem;
    font-weight: 700;
    line-height: 1.1;
    margin-bottom:46px
}

.signInForm .email {
    margin-bottom:28px
}

.signInForm .password {
    margin-bottom:25px
}

.signInForm .password a {
    color: hsla(0, 0%, 100%, .5);
    display: block;
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: .9px;
    margin-top: 13px;
    text-transform:uppercase
}

.signInForm .buttons {
    align-items: center;
    display: flex;
    flex-direction: column;
    margin-top: 50px;
    text-align:center
}

.signInForm .secondaryLink {
    color: #fff;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: .8px;
    margin-top: 23px;
    text-decoration: none;
    text-transform:uppercase
}

@media (min-width: 1024px) {
    .signInForm .title {
        font-size: 10rem;
        line-height:1
    }
}

.signUpForm {
    color: #fff;
    max-width: 1192px;
    margin-top:117px
}

@media (min-width: 768px) {
    .signUpForm {
        margin-top:20%
    }
}

@media (min-width: 1280px) {
    .signUpForm {
        padding-left: 0;
        padding-right:0
    }
}

.signUpForm .subscriptions {
    margin-top: 54px;
    margin-bottom:60px
}

@media (min-width: 768px) {
    .signUpForm .subscriptions {
        margin-top: 64px;
        margin-bottom:64px
    }
}

.signUpForm .subscriptions .subscription {
    background-color: #fff;
    border:0
}

.signUpForm .content {
    background: transparent;
    padding: 0;
    margin-left: 0;
    margin-right:0
}

.signUpForm .content p {
    font-size: 1.2rem;
    line-height:1.33
}

.signUpForm .title {
    font-size: 4rem;
    font-weight: 700;
    line-height: 1.1;
    margin-bottom:13px
}

.signUpForm .subtitle {
    color: #fff;
    font-size: 1.4rem;
    margin-bottom:40px
}

@media (min-width: 1024px) {
    .signUpForm .subtitle {
        font-size: 3rem;
        margin-bottom:27px
    }
}

.signUpForm .intro {
    margin-bottom:24px
}

.signUpForm .email {
    margin-bottom:28px
}

.signUpForm .password {
    margin-bottom:24px
}

@media (min-width: 1024px) {
    .signUpForm .password {
        margin-bottom:44px
    }
}

.signUpForm .password span {
    color: #b2b2b2;
    display: block;
    font-size: 1.2rem;
    line-height: 1.33;
    margin-top:8px
}

.signUpForm .confirmAge {
    margin-bottom:16px
}

.signUpForm .buttons {
    margin-top:48px
}

@media (min-width: 1024px) {
    .signUpForm .buttons {
        margin-top:32px
    }
}

@media (max-width: 767px) {
    .signUpForm .buttons {
        text-align:center
    }
}

.signUpForm .secondaryLink {
    color: #fff;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: .8px;
    margin-top: 23px;
    text-decoration: none;
    text-transform:uppercase
}

.signUpForm .footer {
    text-align: left;
    max-width:732px
}

.signUpForm .footer p {
    margin-bottom:15px
}

@media (min-width: 1024px) {
    .signUpForm .title {
        font-size: 10rem;
        line-height:1
    }
}

form#lp-signup button {
    display: block;
    height: 40px;
    border-radius:35px
}

form#lp-signup input#lpSignUpEmail {
    height: 40px;
    line-height: 40px;
    text-indent: 10px;
    margin-bottom: 20px;
    border: 1px solid #000;
    min-width:50%
}

form#lp-signup p.terms-wrapper {
    font-size:1.5rem
}

main.lp #lightgallery .card .image {
    -o-object-position: center;
    object-position:center
}

.lp-form-wrapper.form-complete form, .lp-form-wrapper .lp-message {
    display:none
}

.lp-form-wrapper.form-complete .lp-message {
    display:block
}

.feedback-wrapper {
    position: fixed;
    top: 0;
    right: 100%;
    width: 100%;
    height: 100%;
    background-color: #000;
    z-index: 200;
    text-align: center;
    padding: 10% 0;
    transition: .5s;
    font-family:PlayboyVisuelt, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif
}

.feedback-wrapper .feedback-input {
    width: 50%;
    display: inline-block;
    height: 30vh;
    background-color: #eaecee;
    border: none;
    text-indent: 15px;
    padding: 15px;
    color: #000;
    font-size: 16px;
    resize: none;
    border-radius:15px
}

.feedback-wrapper .feedback-button-wrapper {
    margin-top: 20px;
    width: 50%;
    margin-left:25%
}

.feedback-wrapper p.feedback-message {
    text-align: center;
    color: #fff;
    font-size: 16px;
    margin-top:15px
}

@media (max-width: 480px) {
    .feedback-wrapper .feedback-input {
        width: 90%;
        height:25vh
    }

    .feedback-wrapper .feedback-button-wrapper {
        width: 90%;
        margin-left:5%
    }
}

.feedback-button {
    position: fixed;
    bottom: 10%;
    right: -36px;
    transform: rotate(-90deg);
    color: #fff;
    background-color: #000;
    border: none;
    padding: 5px 10px;
    font-size: 18px;
    z-index: 90;
    font-family: PlayboyVisuelt, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
    cursor: pointer;
    transition:.5s
}

.feedback-button:hover {
    padding-bottom:5px
}

body.feeding-back .feedback-button {
    right:-70px
}

body.feeding-back .feedback-wrapper {
    right:0
}

button#feedback-modal-close {
    position: absolute;
    top: 25px;
    right: 15px;
    padding:5px
}

.gallery .mode {
    border-top: 1px solid #ebebeb;
    padding-top: 18px;
    padding-bottom: 18px;
    margin-top:10rem
}

.gallery .mode ul {
    display: flex;
    justify-content: center;
    align-items:center
}

.gallery .mode li + li {
    margin-left: 64px;
    padding-left: 4.9rem;
    position:relative
}

.gallery .mode li + li:before {
    content: "";
    border-left: 1px solid #ebebeb;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 21px;
    position:absolute
}

.gallery .mode [class * =icon-], .gallery .mode svg {
    margin-right:1rem
}

.gallery .button {
    color: #d8d8d8;
    letter-spacing: .1rem;
    height:3.3rem
}

.gallery .button.active {
    color:#000
}

.gallery .imageContainer {
    display:block
}

.gallery .image {
    width: 100%;
    -o-object-fit: cover;
    object-fit:cover
}

@media (min-width: 768px) {
    .gallery-grid {
        margin-top: 4px;
        display: grid;
        grid-gap: 4px;
        grid-template-columns: 1fr 1fr 1fr;
        grid-auto-flow:dense
    }

    .gallery-grid li:nth-child(odd) {
        grid-row-end:span 4
    }

    .gallery-grid li:nth-child(2n) {
        grid-row-end:span 3
    }

    .gallery-grid li:nth-child(3n + 1) {
        grid-column:1/2
    }

    .gallery-grid li:nth-child(3n + 2) {
        grid-column:2/3
    }

    .gallery-grid li:nth-child(3n + 3) {
        grid-column:3/4
    }

    .gallery-grid .image, .gallery-grid .imageContainer {
        height:100%
    }
}

@media (max-width: 768px) {
    .gallery-grid li {
        margin-top:4px
    }
}

.icon-block {
    width: 14px;
    height: 14px;
    background-color:currentColor
}

.gallery-full li + li {
    margin-top:4px
}

.image-fluid {
    max-width: none;
    width:100%
}

.play-video {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index:3
}

.sl-overlay {
    background: #000;
    opacity:.9
}

.sl-wrapper .sl-navigation button.sl-next, .sl-wrapper .sl-navigation button.sl-prev {
    color:#fff
}

.lg-outer #lg-download, .lg-outer #lg-share {
    display:none !important
}

.markup {
    font-size: 1.6rem;
    line-height: 1.75;
    letter-spacing: normal;
    color: #4c4c4c;
    margin:32px 0
}

.markup.isLight {
    color:#d9d9d9
}

@media (min-width: 1024px) {
    .markup.isLight {
        color:hsla(0, 0%, 100%, .8)
    }
}

@media (min-width: 768px) {
    .hasFirstParagraph p:first-child {
        font-size:1.25em
    }
}

@media (min-width: 1024px) {
    .markup {
        font-size: 2rem;
        line-height:2
    }

    .markup .button-text-only {
        font-size: 1.6rem;
        letter-spacing: .14rem;
        text-decoration:underline
    }

    .markup.isLight {
        opacity:1
    }
}

.markup ol, .markup p, .markup ul {
    margin:2.4rem 0
}

.markup b, .markup strong {
    font-weight:bolder
}

.markup a {
    color: inherit;
    text-decoration:underline
}

.markup h1, .markup h2, .markup h3 {
    margin: 4.8rem 0 2.4rem;
    color:#000
}

.markup h1 {
    line-height: 1.2;
    font-size: 3rem;
    font-weight:700
}

.markup h2 {
    line-height: 1.33;
    font-size: 1.8rem;
    font-weight:700
}

.markup h3 {
    line-height: 1.5;
    font-size: 1.6rem;
    font-weight:700
}

.markup ol, .markup ul {
    padding-left:3.4rem
}

.markup li {
    padding-left:1.4rem
}

.markup pre {
    margin: 2.4rem 0;
    padding: var(--inner-margin);
    background: #f2f2f2;
    font-size: 1.4rem;
    white-space:normal
}

.markup hr {
    margin: 2.4rem var(--outer-margin);
    border: 0;
    padding: 0;
    height: 1px;
    background:#d5d5d5
}

.markup table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
    table-layout:fixed
}

.markup table ol, .markup table ul {
    padding-left: 25px;
    margin-top:0
}

.markup table li {
    padding-left: 4px;
    margin-bottom:5px
}

.markup thead {
    line-height: 1.43;
    font-size: 1.6em;
    font-weight: 500;
    background:#d9d9d9
}

.markup td, .markup th {
    border: 1px solid #d9d9d9;
    padding: 18px 12px;
    font-size: 16px;
    text-align:left
}

.markup th {
    font-weight: 700;
    vertical-align: middle;
    background:rgba(0, 0, 0, .05)
}

.markup td:first-child, .markup th:first-child {
    text-align:left
}

.markup td {
    color: #7f7f7f;
    line-height: 1.33;
    font-size: 14px;
    font-weight: 400;
    vertical-align:top
}

@media (min-width: 768px) {
    .markup h1 {
        font-size: 4rem;
        line-height:1.1
    }

    .markup h2 {
        font-size: 3rem;
        line-height:1.2
    }

    .markup h3 {
        font-size: 2.3rem;
        line-height:1.33
    }
}

@media (min-width: 1024px) {
    .markup ol, .markup ul {
        padding-left:6.4rem
    }

    .markup li {
        padding-left:2.4rem
    }
}

@media (min-device-width: 768px) and(max-device-width: 1024px), only screen and(max-width: 760px) {
    .markup table, tbody, td, th, thead, tr {
        display:block
    }

    .markup th {
        display:none
    }

    .markup thead tr {
        position: absolute;
        top: -9999px;
        left:-9999px
    }

    .markup tr {
        border: 1px solid #ccc;
        border-top:0
    }

    .markup td {
        border: none;
        border-bottom: 1px solid #eee;
        position: relative;
        padding-top:50px
    }

    .markup td:before {
        position: absolute;
        top: 6px;
        left: 6px;
        padding-left: 10px;
        white-space: nowrap;
        content: attr(data-label);
        font-weight:700
    }
}

.menu-modal {
    background: #000;
    bottom: 0;
    color: #fff;
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    left: 0;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 0 0 20px;
    position: fixed;
    right: 0;
    top: 0;
    transform: translateX(100%);
    width: 100vw;
    z-index: 300;
    -webkit-overflow-scrolling: touch;
    transition:.25s linear
}

.menu-open .menu-modal {
    opacity: 1;
    transform:translateX(0) translateZ(0)
}

.menu-open.search-open .menu-modal {
    opacity: 0 !important;
    display:none !important
}

@media (max-height: 600px) {
    .menu-modal {
        padding-top:85px
    }
}

.menu-modal .menu {
    list-style: none;
    padding: 20px 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    flex:1
}

@media (min-width: 1024px) and(min-height: 800px) {
    .menu-modal .menu {
        padding: 0 30px;
        display: block;
        flex:none
    }
}

.menu-modal .menu .button {
    max-width: 255px;
    width:100%
}

@media (min-width: 1024px) and(min-height: 800px) {
    .menu-modal .menu .button {
        margin-bottom: 12px;
        margin-top:12px
    }
}

.menu-modal .menuItem {
    text-align: center;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 1px;
    margin-bottom: 17px;
    margin-top: 17px;
    text-transform: uppercase;
    transform: translateX(200px);
    opacity: 0;
    transition-duration: .25s;
    transition-timing-function:linear
}

.menu-modal .menuItem:first-child {
    margin-top:0
}

.menu-modal .menuItemBtn {
    align-self: stretch;
    margin-bottom:4px
}

.menu-modal .menuItem:first-child {
    transition-delay:.5s
}

.menu-modal .menuItem:nth-child(2) {
    transition-delay:.6s
}

.menu-modal .menuItem:nth-child(3) {
    transition-delay:.7s
}

.menu-modal .menuItem:nth-child(4) {
    transition-delay:.8s
}

.menu-modal .menuItem:nth-child(5) {
    transition-delay:.9s
}

.menu-modal .menuItem:nth-child(6) {
    transition-delay:1s
}

.menu-modal .menuItem:nth-child(7) {
    transition-delay:1.1s
}

.menu-modal .menuItem:nth-child(8) {
    transition-delay:1.2s
}

.menu-modal .menuItem:nth-child(9) {
    transition-delay:1.3s
}

.menu-modal .menuItem:nth-child(10) {
    transition-delay:1.4s
}

.menu-open .menu-modal .menuItem {
    transform: translateX(0);
    opacity:1
}

@media (min-width: 1024px) and(min-height: 800px) and(max-height: 899px) {
    .menu-modal .menuItem {
        margin-bottom: 35px;
        margin-top:35px
    }
}

@media (min-width: 1024px) and(min-height: 900px) {
    .menu-modal .menuItem {
        margin-bottom: 50px;
        margin-top:50px
    }
}

@media (min-width: 1600px) and(min-height: 900px) {
    .menu-modal .menuItem {
        font-size:2.7em
    }
}

@media (min-width: 1024px) and(min-height: 800px) {
    .menu-modal .menuItemBtn {
        margin-top: 0;
        margin-bottom:0
    }
}

.menu-modal .menuLink {
    color: #fff;
    text-decoration: none;
    transition:opacity .125s linear
}

.menu-modal .menuLink:hover {
    opacity:.67
}

.menu-horiz {
    display: flex;
    font-size: 1.4rem;
    font-weight: 500;
    margin-bottom: 60px;
    margin-top: 48px;
    overflow-x:auto
}

.menu-horiz::-webkit-scrollbar {
    display:none
}

@media (min-width: 1024px) {
    .menu-horiz {
        margin-bottom: 30px;
        margin-top:0
    }
}

.menu-horiz a {
    color: #7f7f7f;
    text-decoration: none;
    display:block
}

.menu-horiz li {
    padding-bottom: 12px;
    border-bottom: 1px solid transparent;
    white-space:nowrap
}

.menu-horiz li.active {
    border-bottom-color:#000
}

.menu-horiz li.active > a {
    color:#000
}

.menu-horiz li + li {
    margin-left:3.4rem
}

@media (min-width: 768px) {
    .menu-horiz li + li {
        margin-left:8rem
    }
}

.livemodels:before {
    display: inline-block;
    content: "";
    height: .6rem;
    width: .6rem;
    margin-right: .3em;
    margin-bottom: .2em;
    border-radius: 1em;
    background-color: red;
    color:red
}

.livemodels_topnav {
    margin-right: 16px;
    font-size: 1.3em;
    letter-spacing:1px
}

@media (max-width: 600px) {
    .livemodels {
        display:none
    }
}

.subMenuContainer {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 350;
    padding-top: 85px;
    height: 100vh;
    max-width: 100vw;
    overflow-y: auto;
    background: #000;
    color: #fff;
    -webkit-overflow-scrolling: touch;
    transform: translateX(100%);
    transition:.5s linear
}

.modal .headerWrapper {
    height:85px
}

.modal .header {
    right: 0;
    z-index: 301;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding:0 20px 0 30px
}

.modal .header, .modal .header:after {
    position: fixed;
    top: 0;
    left: 0;
    height:85px
}

.modal .header:after {
    content: "";
    display: block;
    width: 100%;
    background-image: linear-gradient(180deg, #000, rgba(0, 0, 0, .8), transparent);
    z-index:302
}

.modal .onlyBack {
    justify-content:flex-start
}

.modal .onlyClose {
    justify-content:flex-end
}

.modal button {
    display: block;
    z-index: 303;
    line-height: 0;
    color:#fff
}

.container:not(.isOverlay) {
    height:85px
}

.navigation {
    align-items: center;
    background-color: #fff;
    color: #000;
    display: flex;
    flex-direction: row;
    height: 85px;
    justify-content: space-between;
    left: 0;
    padding: 0 20px 0 24px;
    position: fixed;
    right: 0;
    top: 0;
    z-index:200
}

.navigation:after {
    background: #fff;
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    opacity: 1e-9;
    position: absolute;
    right: 0;
    top: 0;
    transition: transform .21s ease-in-out, opacity .21s ease-in-out;
    transform: translate3d(0, -100%, 0);
    z-index:-1
}

.navigation.isSticky:not(.isDark) {
    color: #000;
    transition:color .55s cubic-bezier(.075, .82, .165, 1)
}

.navigation.isSticky:not(.isDark):after {
    opacity: 1;
    opacity: .999999999;
    transform: translateZ(0);
    transition:transform .35s ease-in-out, opacity .35s ease-in-out
}

.navigation.isActive {
    color:#fff
}

.navigation.isActive .logo {
    border-right:none
}

.navigation .button, .navigation a {
    color:currentColor
}

.navigation .logo {
    align-items: center;
    display: inline-flex;
    flex-grow: 0;
    flex-shrink: 0;
    height: 40px;
    opacity: 1;
    position: relative;
    transition: opacity .3s ease-out;
    z-index: 210;
    padding-right:34px
}

.navigation .logo svg {
    width: 20px;
    height:31px
}

@media (min-width: 768px) {
    .navigation .logo svg {
        width: 26px;
        height:40px
    }
}

@media (max-width: 768px) {
    .navigation .logo {
        padding-right:0
    }
}

@media (min-width: 768px) {
    .navigation .logo.hasBorder {
        border-right:1px solid
    }
}

.navigation .logo.isHidden {
    opacity: 0;
    visibility:hidden
}

.navigation .center {
    align-items: center;
    display: flex;
    flex-grow:1
}

.navigation .header {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: .8px;
    line-height: 1.35;
    padding-left: 20px;
    text-transform:uppercase
}

@media (min-width: 768px) {
    .navigation .header {
        letter-spacing:.2px
    }
}

.navigation .toggleMenu {
    height: 24px;
    width: 24px;
    position: relative;
    display: block;
    margin-bottom:4px
}

.navigation .toggleMenu > * {
    position: absolute;
    top: 0;
    left:0
}

.navigation .icons {
    align-items: center;
    display: flex;
    flex-grow: 0;
    flex-shrink: 0;
    position: relative;
    z-index:210
}

.navigation .icons a {
    width: 24px;
    height: 24px;
    padding: 4px;
    box-sizing:content-box
}

.navigation .icons .button, .navigation .icons a {
    transition:opacity .3s ease-in-out
}

.navigation .icons .button:hover, .navigation .icons a:hover {
    opacity:.65
}

.navigation .icons > * {
    margin-left:8px
}

.navigation .icons svg {
    margin-right: 8px;
    display:block
}

@media (min-width: 768px) {
    .navigation .icons svg {
        margin-right:20px
    }
}

.navigation .icons svg[data-is-empty=true] circle {
    opacity:0
}

.navigation.isDark {
    position:absolute
}

.navigation.isDark.isSticky {
    position:fixed
}

.isOverlay .navigation, .navigation.isDark {
    color: #fff;
    background-color:transparent
}

.navigation.isDark {
    background-image:linear-gradient(180deg, #000, rgba(0, 0, 0, .8), transparent)
}

.isOverlay .navigation:before {
    background-image: linear-gradient(180deg, rgba(0, 0, 0, .43), transparent);
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    opacity: 1;
    position: absolute;
    right: 0;
    top: 0;
    transition: opacity, background .3s ease-out;
    z-index:-2
}

.searchModalContainer {
    position: relative;
    min-height: 50vh;
    max-width:100vw
}

.search-modal, .searchModalContainer {
    z-index: 300;
    background: #000;
    color:#fff
}

.search-modal {
    bottom: 0;
    left: 0;
    opacity: 0;
    overflow-x: hidden;
    overflow-y: auto;
    position: fixed;
    right: 0;
    top: 0;
    transform: translateX(100%);
    transition: .5s linear;
    width: 100vw;
    -webkit-overflow-scrolling: touch;
    display:block !important
}

.search-open .search-modal {
    opacity: 1;
    transform:translateX(0) translateZ(0)
}

.search-modal .menu-horiz {
    font-size:1.6rem
}

.search-modal .menu-horiz li {
    padding-bottom:8px
}

.search-modal .menu-horiz li.active {
    border-color:#fff
}

.search-modal .menu-horiz a {
    color:hsla(0, 0%, 100%, .7)
}

.search-form {
    width: 100%;
    color: #fff;
    overflow-x: hidden;
    padding-top: 85px;
    background: #000;
    transform: translateY(-50%);
    transition: .5s linear .5s;
    opacity:0
}

.search-open .search-form {
    transform: translateY(0);
    opacity:1
}

.search-form .phrase {
    padding-bottom:68px
}

.search-form .results {
    padding-top:26px
}

.search-form .title {
    padding: 48px var(--horizontal-margin) 24px;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.43;
    color:#fff
}

.search-form .bottomBorder {
    width: 0;
    transition: .5s linear .5s;
    border-bottom: 1px solid #fff;
    margin-top:-1.6rem
}

.search-open .search-form .bottomBorder {
    width:100%
}

.emptyResults {
    font-size: 1.2rem;
    line-height: 1.33;
    letter-spacing: .5px;
    color:#fff
}

.emptyResultsHeader {
    font-size: 1.4rem;
    font-weight: 500;
    margin-bottom:5px
}

.loadMoreButton {
    display: flex;
    justify-content: center;
    margin:46px auto 48px
}

.loadMoreButton.nomorepages {
    display:none
}

.search-results .grid {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    pointer-events: none;
    z-index:1
}

.search-results.active .grid {
    position: relative;
    opacity: 1;
    pointer-events: auto;
    z-index:2
}

#search-tags ul {
    text-align: left;
    margin: 0 30px;
    padding: 0;
    -webkit-column-count: 4;
    -moz-column-count: 4;
    column-count:4
}

#search-tags ul li {
    font-size: 2rem;
    padding: 10px 20px;
    margin: 10px;
    display:inline-block
}

#search-tags ul li a {
    color:#e3e3e3
}

@media (max-width: 1024px) {
    #search-tags ul {
        margin: 0;
        -webkit-column-count: 3;
        -moz-column-count: 3;
        column-count:3
    }

    #search-tags ul li {
        font-size:2.5rem
    }
}

@media (max-width: 640px) {
    #search-tags ul {
        -webkit-column-count: 2;
        -moz-column-count: 2;
        column-count:2
    }

    #search-tags ul li {
        padding:10px 0
    }
}

@media (max-width: 480px) {
    #search-tags ul li {
        font-size: 2rem;
        padding: 7px 0;
        margin:3px 10px
    }
}

.form {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 18px 20px 18px 16px;
    border:1px solid #d9d9d9
}

.form .button, .form .input {
    background: transparent;
    border: 0;
    padding: 0;
    outline: none;
    color: #fff;
    line-height:18px
}

.form .input {
    width: 100%;
    padding-right: 10px;
    font-size:1.4rem
}

.form .input::-webkit-input-placeholder {
    color:hsla(0, 0%, 100%, .7)
}

.form .input::-moz-placeholder {
    color:hsla(0, 0%, 100%, .7)
}

.form .input:-ms-input-placeholder {
    color:hsla(0, 0%, 100%, .7)
}

.form .input::-ms-input-placeholder {
    color:hsla(0, 0%, 100%, .7)
}

.form .input::placeholder {
    color:hsla(0, 0%, 100%, .7)
}

.form .button {
    cursor: pointer;
    font-size: 1rem;
    font-weight: 700;
    text-transform:uppercase
}

.profile-headline {
    align-items: center;
    color: #fff;
    display: flex;
    flex-direction: column;
    height: 100vh;
    justify-content: flex-end;
    max-height: 652px;
    padding: 60px var(--horizontal-margin);
    position:relative
}

@media (min-width: 1024px) {
    .profile-headline {
        min-height: 800px;
        max-height: 1024px;
        padding-bottom:128px
    }
}

.profile-headline .gradient {
    background-image: linear-gradient(0deg, rgba(0, 0, 0, .7), transparent);
    content: "";
    display: block;
    height: 100%;
    left: 0;
    opacity: .9;
    position: absolute;
    top: 100%;
    width: 100%;
    z-index:2
}

@media (min-width: 1024px) {
    .profile-headline .gradient {
        background-image:linear-gradient(0deg, transparent, rgba(0, 0, 0, .7) 0, transparent)
    }
}

.profile-headline .imageContainer {
    bottom: 0;
    height: 70vh;
    max-height: 652px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    overflow:hidden
}

@media (min-width: 1024px) {
    .profile-headline .imageContainer {
        min-height: 800px;
        max-height:1024px
    }
}

.profile-headline .pictureWrapper {
    width: 100%;
    height:100%
}

.profile-headline .image {
    bottom: 0;
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    z-index:1
}

.profile-headline .content {
    opacity: 0;
    position: relative;
    text-align: center;
    top: 100%;
    width: 100%;
    z-index:3
}

.profile-headline .name {
    max-height: 300px;
    width: 100%;
    font-size: 5rem;
    font-weight: 700;
    margin-top: 23px;
    text-transform:uppercase
}

@media (min-width: 768px) {
    .profile-headline .name {
        font-size: 7rem;
        margin-top:32px
    }
}

@media (min-width: 1024px) {
    .profile-headline .name {
        margin-top: 48px;
        font-size:12rem
    }
}

.profile-headline .name.textfit {
    font-size:medium
}

.profile-headline .subtitle {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.45;
    margin-top:16px
}

@media (min-width: 1024px) {
    .profile-headline .subtitle {
        margin-top: 28px;
        font-size:2.2rem
    }
}

.profile-headline .headlineCaption {
    position: absolute;
    right: var(--outer-margin);
    bottom: -32px;
    color: hsla(0, 0%, 100%, .6);
    text-align: right;
    font-size: 1.2rem;
    line-height:1.333333333
}

.modeldescription {
    color:#fff
}

.section-title {
    margin-top: 60px;
    margin-bottom: 24px;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing:.19px
}

@media (min-width: 1024px) {
    .section-title {
        margin-top: 64px;
        font-weight: 500;
        letter-spacing:normal
    }
}

[data-is-light=true] .section-title {
    color:#fff
}

.searchInput {
    width: 100%;
    height: auto;
    padding: 0;
    transition: all .3s;
    border: none;
    outline: none;
    font-size: 6rem;
    font-weight: 700;
    color: #fff;
    background: transparent;
    margin-bottom: 5px;
    font-family:PlayboyVisuelt, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif
}

@media (min-width: 1024px) {
    .searchInput {
        font-size: 10rem;
        margin-bottom:0
    }
}

.searchInput:-webkit-autofill {
    -webkit-text-fill-color: #fff;
    box-shadow:inset 0 0 0 100px #000
}

@media (max-width: 1024px) {
    .smallInputText {
        font-size: 2.5rem;
        padding-top:30px
    }

    .mediumInputText {
        font-size: 3.7rem;
        padding-top:20px
    }

    .largeInputText {
        font-size: 6rem;
        padding-top:5px
    }

    .hideMobile {
        display: none !important;
        color:#000
    }
}

#search-results li.active a {
    color:#fff !important
}

#searchsuggestions {
    max-width:900px
}

.share {
    align-items: center;
    border-radius: 24px;
    bottom: 0;
    color: #4c4c4c;
    cursor: pointer;
    display: flex;
    height: 48px;
    flex-direction: column;
    justify-content: flex-end;
    overflow: hidden;
    text-align: center;
    transition: height .25s ease;
    width:48px
}

.isLight > .share {
    color:#fff
}

.isLight > .share .shareBorder {
    stroke:currentColor
}

.share .services {
    display: none;
    width:24px
}

.share a {
    align-items: center;
    background: #fff;
    border-radius: 3px;
    display: inline-flex;
    height: 24px;
    justify-content: center;
    width:100%
}

.share a:first-child {
    margin-bottom:24px
}

.share.isOpen {
    background-color: #b2b2b2;
    border: 1px solid #b2b2b2;
    color: #fff;
    height: 138px;
    justify-content: space-between;
    opacity: 1;
    padding-top:17px
}

.share.isOpen .services {
    display:block
}

.share.isOpen svg {
    fill:#b2b2b2
}

.share .toggle {
    align-items: center;
    display: flex;
    height: 48px;
    justify-content: center;
    width:100%
}

.share .closed {
    font-size: 3rem;
    height: 100%;
    letter-spacing: -1px;
    line-height: 100%;
    padding-bottom: 44px;
    width:100%
}

.shareBorder {
    stroke-width: 1.5px;
    fill:transparent
}

.shareDot {
    fill:currentColor
}

.shareLight {
    color:#fff
}

.slideshow {
    position: relative;
    z-index:0
}

.carouselWrapper {
    background:#000
}

.carouselWrapper > div {
    align-items: center;
    display: flex;
    flex-direction: column;
    height: 100vh;
    justify-content: center;
    position: relative;
    z-index:1
}

.carouselWrapper .calloutWrapper {
    position:relative
}

.carouselWrapper .callout {
    align-items: center;
    background: linear-gradient(180deg, rgba(0, 0, 0, .43), transparent);
    bottom: 0;
    display: flex;
    height: 100%;
    justify-content: center;
    left: 0;
    padding: 35% 32px;
    position: absolute;
    right: 0;
    top: 0;
    width:100%
}

.carouselWrapper .imageContainer {
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content:center
}

.carouselWrapper .image {
    max-height:100%
}

.carousel-header {
    align-items: center;
    color: #fff;
    display: flex;
    justify-content: space-between;
    padding: 28px 21px;
    position: absolute;
    width: 100%;
    z-index:2
}

.carousel-header .status {
    color: hsla(0, 0%, 100%, .5);
    font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: .9px;
    line-height: 1.67;
    text-transform:uppercase
}

.carousel-header .status span {
    color:#fff
}

.social-icons {
    background: #000;
    text-align:center
}

.social-icons a {
    display: inline-block;
    margin-left:24px
}

.social-icons a:first-child {
    margin-left:0
}

@media (min-width: 1024px) {
    .social-icons a {
        margin-left:32px
    }
}

@media (min-width: 1024px) {
    .subscriptions {
        display: flex;
        margin:0 -13px
    }
}

.subscriptions .subscription {
    border: 1px solid #d9d9d9;
    border-radius: 4px;
    color: #000;
    display: block;
    margin-bottom: 40px;
    min-height: 84px;
    padding: 40px 35px 92px;
    position: relative;
    text-align: center;
    text-decoration: none;
    width:100%
}

@media (min-width: 1024px) {
    .subscriptions .subscription {
        margin:0 13px
    }
}

.subscriptions .subscription.active {
    color: #fff;
    background-color: rgba(0, 0, 0, .5);
    border:2px solid hsla(0, 0%, 100%, .31)
}

.subscriptions .title {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.56;
    margin-bottom:1px
}

.subscriptions .price {
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: .86px;
    line-height: 1.33;
    text-transform: uppercase;
    margin-bottom:30px
}

.subscriptions .description {
    font-size: 1.4rem;
    line-height: 1.33;
    max-width: 187px;
    margin:0 auto 40px
}

.subscriptions .button {
    position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
    width:180px
}

.tag {
    align-self: flex-start;
    color: #fff;
    display: inline-block;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: .8px;
    line-height: 1.2;
    padding: 4px 9px 2px;
    text-transform: uppercase;
    text-decoration:none
}

.tag:not([class * =bg-]) {
    background:#000
}

.tag.isLight {
    background: #fff;
    color:#000
}

@media (min-width: 1024px) and(min-height: 900px) {
    video#video {
        height:100vh
    }
}

@media (max-width: 1023px) {
    video#video {
        width: 100vh;
        height: auto;
        margin-top:100px
    }
}

.video-js .vjs-quality-selector .vjs-icon-placeholder:before {
    font-family: VideoJS;
    content: "\F110"
}

.vip-modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: #000;
    background-color:rgba(0, 0, 0, .4)
}

.vip-modal-content {
    background-color: #fefefe;
    margin: 15% auto;
    padding: 30px;
    border: 1px solid #888;
    width: 400px;
    font-size:16px
}

.vip-modal-content button, .vip-modal-content hr, .vip-modal-content p {
    margin-top:30px
}

.vip-modal-content input, .vip-modal-content select {
    margin-top: 20px;
    width: 100%;
    height: 50px;
    font-size: 15px;
    padding-left:15px
}

.vip-modal-close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: 700;
    position: relative;
    top:-5px
}

.vip-modal-close:focus, .vip-modal-close:hover {
    color: #000;
    text-decoration: none;
    cursor:pointer
}

#load-more-button-wrapper {
    position:relative
}

#load-more-button-wrapper #load-more-button-grid {
    z-index:100
}

#load-more-button-wrapper.loading #load-more-button-grid {
    opacity: 0;
    z-index:0
}

#load-more-button-wrapper #playboy-bunny-wrapper {
    display: block;
    position: absolute;
    top: -220px;
    left: 0;
    width: 100%;
    height:500px
}

.pagination-wrapper ul {
    width: 100%;
    text-align: center;
    padding:20px 0
}

.pagination-wrapper ul li {
    display:inline-block
}

.pagination-wrapper ul li.visible-xs-inline-block {
    display:none
}

.pagination-wrapper ul a {
    align-items: center;
    background-color: #000;
    border: 0;
    border-radius: 35px;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    font-family: PlayboyVisuelt, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
    font-size: 1.2rem;
    font-weight: 500;
    justify-content: center;
    letter-spacing: .8px;
    line-height: 1;
    outline: none;
    padding: 10px 12px;
    text-align: center;
    text-transform: uppercase;
    -webkit-font-smoothing: auto;
    -moz-osx-font-smoothing:auto
}

.pageni {
    font-size: 1.6rem;
    margin-bottom: 2rem;
    margin-top:3rem
}

@media (min-width: 768px) {
    .pageni {
        font-size: 1.4rem;
        margin-bottom:0
    }
}

.pageni ul {
    display: flex;
    padding-left: 0;
    list-style: none;
    justify-content:space-between
}

@media (min-width: 768px) {
    .pageni ul {
        justify-content:center
    }
}

.pageni li {
    text-align: center;
    font-weight: 500;
    height:3.6rem
}

@media (min-width: 768px) {
    .pageni li {
        height:3rem
    }
}

.pageni li + li {
    margin-left:1rem
}

@media (max-width: 767px) {
    .pageni li + li:nth-child(2) {
        margin-left:0
    }
}

.pageni li.active a {
    color: #fff;
    background:#000
}

@media (max-width: 767px) {
    .pageni li.disabled, .pageni li.disabled + li {
        margin-left:0
    }
}

.pageni li.disabled a {
    pointer-events:none
}

@media (max-width: 767px) {
    .pageni li.next {
        display:none
    }
}

.pageni li.next a {
    padding-top:4px
}

.pageni li a {
    position: relative;
    display: block;
    padding:3px 6px 0
}

@media (min-width: 768px) {
    .pageni li a {
        min-width: 3rem;
        line-height: 3rem;
        padding:2px 2px 0
    }
}

.pageni li a:focus, .pageni li a:hover {
    background: #888;
    color:#fff
}

@media (min-width: 1024px) {
    .age-gate-main-wrapper .age-gate {
        height:100vh
    }
}

@media (max-width: 1023px) {
    .age-gate-main-wrapper .age-gate .article-headline {
        position: absolute;
        top: 0;
        left:0
    }
}

.age-gate-main-wrapper .age-gate .article-headline .imageContainer {
    height:100vh
}

.age-gate-main-wrapper .confirmation-overlay {
    color: #fff;
    padding: 30px;
    text-align: center;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.5;
    overflow: hidden;
    position:relative
}

@media (min-width: 768px) {
    .age-gate-main-wrapper .confirmation-overlay {
        font-size: 1.6rem;
        padding:40px
    }
}

@media (min-width: 1024px) {
    .age-gate-main-wrapper .confirmation-overlay {
        border-radius: 4px;
        border: 2px solid hsla(0, 0%, 100%, .31);
        margin: 0 auto;
        width: 518px;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        position:absolute
    }
}

@media (max-width: 1023px) {
    .age-gate-main-wrapper .confirmation-overlay {
        min-height: 70vh;
        margin-top:30vh
    }
}

.age-gate-main-wrapper .confirmation-overlay:before {
    content: "";
    background: inherit;
    position: absolute;
    top: 0;
    left: -25px;
    right: -25px;
    bottom: 0;
    background: rgba(0, 0, 0, .5);
    -webkit-backdrop-filter: blur(28px);
    backdrop-filter: blur(28px);
    z-index:2
}

.age-gate-main-wrapper .confirmation-overlay > * {
    position: relative;
    z-index:2
}

.age-gate-main-wrapper .confirmation-overlay h1 {
    text-transform: uppercase;
    margin: 0 0 40px;
    font-size:2rem
}

.age-gate-main-wrapper .confirmation-overlay p {
    margin-bottom: 25px;
    padding-left: 17px;
    padding-right:17px
}

.age-gate-main-wrapper .confirmation-overlay .button {
    min-width:185px
}

@media (min-width: 768px) {
    .age-gate-main-wrapper .confirmation-overlay .button {
        margin-top:15px
    }
}

@media (min-width: 768px) {
    .age-gate-main-wrapper .confirmation-overlay .button + .button {
        min-width: 200px;
        margin-left:30px
    }
}

@media (max-width: 767px) {
    .age-gate-main-wrapper .confirmation-overlay .button + .button {
        margin-top:20px
    }
}

.subscriber-form {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: 60%;
    margin:0 auto 50px
}

@media (max-width: 768px) {
    .subscriber-form {
        align-items: flex-start;
        justify-content:left
    }
}

.subscriber-form .input {
    width: 60%;
    font-size:1.4rem
}

.subscriber-form .input, .subscriber-form .input-checkbox {
    background: transparent;
    outline: none;
    border: 1px solid #d9d9d9;
    color: #000;
    line-height: 18px;
    padding: 18px 10px 18px 16px;
    margin-bottom:2rem
}

.subscriber-form .input-checkbox {
    width:20px
}

@media (max-width: 768px) {
    .subscriber-form .input-checkbox {
        padding: 5px;
        margin:0
    }
}

.subscriber-form .label {
    font-size: 1.8rem;
    padding-bottom: 10px;
    line-height:20px
}

@media (max-width: 768px) {
    .subscriber-form .label {
        width:100%
    }
}

.subscriber-form .checkbox {
    width: 60%;
    padding-bottom:5px
}

.subscriber-form .error {
    padding: 0;
    margin-bottom: 20px;
    font-size: 1.25rem;
    color:red
}

.subscriber-form textarea {
    height:200px
}

.subscriber-form .input-left {
    width: 60%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom:2rem
}

@media (max-width: 768px) {
    .subscriber-form .input, .subscriber-form .input-left {
        width:100%
    }
}

.subscriber-form h1 {
    margin-top:10px
}

.subscriber-header {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top:75px
}

.subscriber-header li {
    margin-bottom:10px
}

.subscriber-header .subscriber {
    background: transparent;
    outline: none;
    color: #000;
    line-height: 18px;
    width: 100%;
    padding: 18px 0;
    font-size: 1.4rem;
    margin-bottom:2rem
}

.subscriber-header .subscriber-title {
    font-size: 3.25rem;
    font-weight: 700;
    margin-top:50px
}

.subscriber-header .subscriber-sub-title {
    font-size: 2.25rem;
    margin-top:50px
}

.subscriber-header .subscriber-text {
    font-size: 2rem;
    line-height:2.25rem
}

.subscriber-header .subscriber-text p {
    padding:10px
}

.subscriber-header .subscriber-text ul {
    padding: 20px;
    margin:20px
}

.subscriber-header .subscriber-left {
    width: 70%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom:2rem
}

@media (max-width: 768px) {
    .subscriber-header .subscriber, .subscriber-header .subscriber-left {
        width:100%
    }

    .subscriber-header .subscriber-title {
        display:none
    }
}

.subscriber-submit {
    margin:50px auto
}

.subscriber-submit li {
    padding: 50px
}

