@charset "UTF-8";
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
    line-height: 1.15;
    /* 1 */
    -webkit-text-size-adjust: 100%;
    /* 2 */
}

/* Sections
     ========================================================================== */
/**
   * Remove the margin in all browsers.
   */
body {
    margin: 0;
}

/**
   * Render the `main` element consistently in IE.
   */
main {
    display: block;
}

/**
   * Correct the font size and margin on `h1` elements within `section` and
   * `article` contexts in Chrome, Firefox, and Safari.
   */
h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

/* Grouping content
     ========================================================================== */
/**
   * 1. Add the correct box sizing in Firefox.
   * 2. Show the overflow in Edge and IE.
   */
hr {
    box-sizing: content-box;
    /* 1 */
    height: 0;
    /* 1 */
    overflow: visible;
    /* 2 */
}

/**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
pre {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
}

/* Text-level semantics
     ========================================================================== */
/**
   * Remove the gray background on active links in IE 10.
   */
a {
    background-color: transparent;
}

/**
   * 1. Remove the bottom border in Chrome 57-
   * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
   */
abbr[title] {
    border-bottom: none;
    /* 1 */
    text-decoration: underline;
    /* 2 */
    text-decoration: underline dotted;
    /* 2 */
}

/**
   * Add the correct font weight in Chrome, Edge, and Safari.
   */
b,
strong {
    font-weight: bolder;
}

/**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
code,
kbd,
samp {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
}

/**
   * Add the correct font size in all browsers.
   */
small {
    font-size: 80%;
}

/**
   * Prevent `sub` and `sup` elements from affecting the line height in
   * all browsers.
   */
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

/* Embedded content
     ========================================================================== */
/**
   * Remove the border on images inside links in IE 10.
   */
img {
    border-style: none;
}

/* Forms
     ========================================================================== */
/**
   * 1. Change the font styles in all browsers.
   * 2. Remove the margin in Firefox and Safari.
   */
button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    /* 1 */
    font-size: 100%;
    /* 1 */
    line-height: 1.15;
    /* 1 */
    margin: 0;
    /* 2 */
}

/**
   * Show the overflow in IE.
   * 1. Show the overflow in Edge.
   */
button,
input {
    /* 1 */
    overflow: visible;
}

/**
   * Remove the inheritance of text transform in Edge, Firefox, and IE.
   * 1. Remove the inheritance of text transform in Firefox.
   */
button,
select {
    /* 1 */
    text-transform: none;
}

/**
   * Correct the inability to style clickable types in iOS and Safari.
   */
button,
[type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button;
}

/**
   * Remove the inner border and padding in Firefox.
   */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0;
}

/**
   * Restore the focus styles unset by the previous rule.
   */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText;
}

/**
   * Correct the padding in Firefox.
   */
fieldset {
    padding: 0.35em 0.75em 0.625em;
}

/**
   * 1. Correct the text wrapping in Edge and IE.
   * 2. Correct the color inheritance from `fieldset` elements in IE.
   * 3. Remove the padding so developers are not caught out when they zero out
   *    `fieldset` elements in all browsers.
   */
legend {
    box-sizing: border-box;
    /* 1 */
    color: inherit;
    /* 2 */
    display: table;
    /* 1 */
    max-width: 100%;
    /* 1 */
    padding: 0;
    /* 3 */
    white-space: normal;
    /* 1 */
}

/**
   * Add the correct vertical alignment in Chrome, Firefox, and Opera.
   */
progress {
    vertical-align: baseline;
}

/**
   * Remove the default vertical scrollbar in IE 10+.
   */
textarea {
    overflow: auto;
}

/**
   * 1. Add the correct box sizing in IE 10.
   * 2. Remove the padding in IE 10.
   */
[type="checkbox"],
[type="radio"] {
    box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */
}

/**
   * Correct the cursor style of increment and decrement buttons in Chrome.
   */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

/**
   * 1. Correct the odd appearance in Chrome and Safari.
   * 2. Correct the outline style in Safari.
   */
[type="search"] {
    -webkit-appearance: textfield;
    /* 1 */
    outline-offset: -2px;
    /* 2 */
}

/**
   * Remove the inner padding in Chrome and Safari on macOS.
   */
[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

/**
   * 1. Correct the inability to style clickable types in iOS and Safari.
   * 2. Change font properties to `inherit` in Safari.
   */
::-webkit-file-upload-button {
    -webkit-appearance: button;
    /* 1 */
    font: inherit;
    /* 2 */
}

/* Interactive
     ========================================================================== */
/*
   * Add the correct display in Edge, IE 10+, and Firefox.
   */
details {
    display: block;
}

/*
   * Add the correct display in all browsers.
   */
summary {
    display: list-item;
}

/* Misc
     ========================================================================== */
/**
   * Add the correct display in IE 10+.
   */
template {
    display: none;
}

/**
   * Add the correct display in IE 10.
   */
[hidden] {
    display: none;
}

@font-face {
    font-family: "icomoon";
    src: url("../themes/my3dgirlfriends2/assets/fonts/icomoon.eot?9eec2s");
    src: url("../themes/my3dgirlfriends2/assets/fonts/icomoon.eot?9eec2s#iefix") format("embedded-opentype"),
        url("../themes/my3dgirlfriends2/assets/fonts/icomoon.ttf?9eec2s") format("truetype"),
        url("../themes/my3dgirlfriends2/assets/fonts/icomoon.woff?9eec2s") format("woff"),
        url("../themes/my3dgirlfriends2/assets/fonts/icomoon.svg?9eec2s#icomoon") format("svg");
    font-weight: normal;
    font-style: normal;
    font-display: block;
}
[class^="icon-"],
[class*=" icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: "icomoon" !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-icon-01:before {
    content: "\e900";
}

.icon-icon-02:before {
    content: "\e901";
}

.icon-icon-03:before {
    content: "\e902";
}

.icon-icon-04:before {
    content: "\e903";
}

.icon-icon-05:before {
    content: "\e904";
}

.icon-icon-06:before {
    content: "\e905";
}

.icon-icon-07:before {
    content: "\e906";
}

.icon-icon-08:before {
    content: "\e907";
}

.icon-icon-09:before {
    content: "\e908";
}

.icon-icon-10:before {
    content: "\e909";
}

.icon-icon-11:before {
    content: "\e90a";
}

.icon-icon-12:before {
    content: "\e90b";
}

.icon-icon-13:before {
    content: "\e90c";
}

.icon-icon-14:before {
    content: "\e90d";
}

.icon-icon-15:before {
    content: "\e90e";
}

.icon-icon-hover:before {
    content: "\e90f";
}

.icon-sound-01:before {
    content: "\e910";
}

.icon-sound:before {
    content: "\e911";
}

body.compensate-for-scrollbar {
    overflow: hidden;
}

.fancybox-active {
    height: auto;
}

.fancybox-is-hidden {
    left: -9999px;
    margin: 0;
    position: absolute !important;
    top: -9999px;
    visibility: hidden;
}

.fancybox-container {
    -webkit-backface-visibility: hidden;
    height: 100%;
    left: 0;
    outline: none;
    position: fixed;
    -webkit-tap-highlight-color: transparent;
    top: 0;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    transform: translateZ(0);
    width: 100%;
    z-index: 99992;
}

.fancybox-container * {
    box-sizing: border-box;
}

.fancybox-outer,
.fancybox-inner,
.fancybox-bg,
.fancybox-stage {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.fancybox-outer {
    -webkit-overflow-scrolling: touch;
    overflow-y: auto;
}

.fancybox-bg {
    background: rgb(30, 30, 30);
    opacity: 0;
    transition-duration: inherit;
    transition-property: opacity;
    transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71);
}

.fancybox-is-open .fancybox-bg {
    opacity: 0.9;
    transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

.fancybox-infobar,
.fancybox-toolbar,
.fancybox-caption,
.fancybox-navigation .fancybox-button {
    direction: ltr;
    opacity: 0;
    position: absolute;
    transition: opacity 0.25s ease, visibility 0s ease 0.25s;
    visibility: hidden;
    z-index: 99997;
}

.fancybox-show-infobar .fancybox-infobar,
.fancybox-show-toolbar .fancybox-toolbar,
.fancybox-show-caption .fancybox-caption,
.fancybox-show-nav .fancybox-navigation .fancybox-button {
    opacity: 1;
    transition: opacity 0.25s ease 0s, visibility 0s ease 0s;
    visibility: visible;
}

.fancybox-infobar {
    color: #ccc;
    font-size: 13px;
    -webkit-font-smoothing: subpixel-antialiased;
    height: 44px;
    left: 0;
    line-height: 44px;
    min-width: 44px;
    mix-blend-mode: difference;
    padding: 0 10px;
    pointer-events: none;
    top: 0;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.fancybox-toolbar {
    right: 0;
    top: 0;
}

.fancybox-stage {
    direction: ltr;
    overflow: visible;
    transform: translateZ(0);
    z-index: 99994;
}

.fancybox-is-open .fancybox-stage {
    overflow: hidden;
}

.fancybox-slide {
    -webkit-backface-visibility: hidden;
    /* Using without prefix would break IE11 */
    display: none;
    height: 100%;
    left: 0;
    outline: none;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding: 44px;
    position: absolute;
    text-align: center;
    top: 0;
    transition-property: transform, opacity;
    white-space: normal;
    width: 100%;
    z-index: 99994;
}

.fancybox-slide::before {
    content: "";
    display: inline-block;
    font-size: 0;
    height: 100%;
    vertical-align: middle;
    width: 0;
}

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--previous,
.fancybox-slide--current,
.fancybox-slide--next {
    display: block;
}

.fancybox-slide--image {
    overflow: hidden;
    padding: 44px 0;
}

.fancybox-slide--image::before {
    display: none;
}

.fancybox-slide--html {
    padding: 6px;
}

.fancybox-content {
    background: #fff;
    display: inline-block;
    margin: 0;
    max-width: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding: 44px;
    position: relative;
    text-align: left;
    vertical-align: middle;
}

.fancybox-slide--image .fancybox-content {
    animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
    -webkit-backface-visibility: hidden;
    background: transparent;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    left: 0;
    max-width: none;
    overflow: visible;
    padding: 0;
    position: absolute;
    top: 0;
    -ms-transform-origin: top left;
    transform-origin: top left;
    transition-property: transform, opacity;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    z-index: 99995;
}

.fancybox-can-zoomOut .fancybox-content {
    cursor: zoom-out;
}

.fancybox-can-zoomIn .fancybox-content {
    cursor: zoom-in;
}

.fancybox-can-swipe .fancybox-content,
.fancybox-can-pan .fancybox-content {
    cursor: -webkit-grab;
    cursor: grab;
}

.fancybox-is-grabbing .fancybox-content {
    cursor: -webkit-grabbing;
    cursor: grabbing;
}

.fancybox-container [data-selectable="true"] {
    cursor: text;
}

.fancybox-image,
.fancybox-spaceball {
    background: transparent;
    border: 0;
    height: 100%;
    left: 0;
    margin: 0;
    max-height: none;
    max-width: none;
    padding: 0;
    position: absolute;
    top: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    width: 100%;
}

.fancybox-spaceball {
    z-index: 1;
}

.fancybox-slide--video .fancybox-content,
.fancybox-slide--map .fancybox-content,
.fancybox-slide--pdf .fancybox-content,
.fancybox-slide--iframe .fancybox-content {
    height: 100%;
    overflow: visible;
    padding: 0;
    width: 100%;
}

.fancybox-slide--video .fancybox-content {
    background: #000;
}

.fancybox-slide--map .fancybox-content {
    background: #e5e3df;
}

.fancybox-slide--iframe .fancybox-content {
    background: #fff;
}

.fancybox-video,
.fancybox-iframe {
    background: transparent;
    border: 0;
    display: block;
    height: 100%;
    margin: 0;
    overflow: hidden;
    padding: 0;
    width: 100%;
}

/* Fix iOS */
.fancybox-iframe {
    left: 0;
    position: absolute;
    top: 0;
}

.fancybox-error {
    background: #fff;
    cursor: default;
    max-width: 400px;
    padding: 40px;
    width: 100%;
}

.fancybox-error p {
    color: #444;
    font-size: 16px;
    line-height: 20px;
    margin: 0;
    padding: 0;
}

/* Buttons */
.fancybox-button {
    background: rgba(30, 30, 30, 0.6);
    border: 0;
    border-radius: 0;
    box-shadow: none;
    cursor: pointer;
    display: inline-block;
    height: 44px;
    margin: 0;
    padding: 10px;
    position: relative;
    transition: color 0.2s;
    vertical-align: top;
    visibility: inherit;
    width: 44px;
}

.fancybox-button,
.fancybox-button:visited,
.fancybox-button:link {
    color: #ccc;
}

.fancybox-button:hover {
    color: #fff;
}

.fancybox-button:focus {
    outline: none;
}

.fancybox-button.fancybox-focus {
    outline: 1px dotted;
}

.fancybox-button[disabled],
.fancybox-button[disabled]:hover {
    color: #888;
    cursor: default;
    outline: none;
}

/* Fix IE11 */
.fancybox-button div {
    height: 100%;
}

.fancybox-button svg {
    display: block;
    height: 100%;
    overflow: visible;
    position: relative;
    width: 100%;
}

.fancybox-button svg path {
    fill: currentColor;
    stroke-width: 0;
}

.fancybox-button--play svg:nth-child(2),
.fancybox-button--fsenter svg:nth-child(2) {
    display: none;
}

.fancybox-button--pause svg:nth-child(1),
.fancybox-button--fsexit svg:nth-child(1) {
    display: none;
}

.fancybox-progress {
    background: #ff5268;
    height: 2px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -ms-transform-origin: 0;
    transform-origin: 0;
    transition-property: transform;
    transition-timing-function: linear;
    z-index: 99998;
}

/* Close button on the top right corner of html content */
.fancybox-close-small {
    background: transparent;
    border: 0;
    border-radius: 0;
    color: #ccc;
    cursor: pointer;
    opacity: 0.8;
    padding: 8px;
    position: absolute;
    right: -12px;
    top: -44px;
    z-index: 401;
}

.fancybox-close-small:hover {
    color: #fff;
    opacity: 1;
}

.fancybox-slide--html .fancybox-close-small {
    color: currentColor;
    padding: 10px;
    right: 0;
    top: 0;
}

.fancybox-slide--image.fancybox-is-scaling .fancybox-content {
    overflow: hidden;
}

.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small {
    display: none;
}

/* Navigation arrows */
.fancybox-navigation .fancybox-button {
    background-clip: content-box;
    height: 100px;
    opacity: 0;
    position: absolute;
    top: calc(50% - 50px);
    width: 70px;
}

.fancybox-navigation .fancybox-button div {
    padding: 7px;
}

.fancybox-navigation .fancybox-button--arrow_left {
    left: 0;
    left: env(safe-area-inset-left);
    padding: 31px 26px 31px 6px;
}

.fancybox-navigation .fancybox-button--arrow_right {
    padding: 31px 6px 31px 26px;
    right: 0;
    right: env(safe-area-inset-right);
}

/* Caption */
.fancybox-caption {
    background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.85) 0%,
        rgba(0, 0, 0, 0.3) 50%,
        rgba(0, 0, 0, 0.15) 65%,
        rgba(0, 0, 0, 0.075) 75.5%,
        rgba(0, 0, 0, 0.037) 82.85%,
        rgba(0, 0, 0, 0.019) 88%,
        rgba(0, 0, 0, 0) 100%
    );
    bottom: 0;
    color: #eee;
    font-size: 14px;
    font-weight: 400;
    left: 0;
    line-height: 1.5;
    padding: 75px 44px 25px 44px;
    pointer-events: none;
    right: 0;
    text-align: center;
    z-index: 99996;
}

@supports (padding: max(0px)) {
    .fancybox-caption {
        padding: 75px max(44px, env(safe-area-inset-right))
            max(25px, env(safe-area-inset-bottom))
            max(44px, env(safe-area-inset-left));
    }
}
.fancybox-caption--separate {
    margin-top: -50px;
}

.fancybox-caption__body {
    max-height: 50vh;
    overflow: auto;
    pointer-events: all;
}

.fancybox-caption a,
.fancybox-caption a:link,
.fancybox-caption a:visited {
    color: #ccc;
    text-decoration: none;
}

.fancybox-caption a:hover {
    color: #fff;
    text-decoration: underline;
}

/* Loading indicator */
.fancybox-loading {
    animation: fancybox-rotate 1s linear infinite;
    background: transparent;
    border: 4px solid #888;
    border-bottom-color: #fff;
    border-radius: 50%;
    height: 50px;
    left: 50%;
    margin: -25px 0 0 -25px;
    opacity: 0.7;
    padding: 0;
    position: absolute;
    top: 50%;
    width: 50px;
    z-index: 99999;
}

@keyframes fancybox-rotate {
    100% {
        transform: rotate(360deg);
    }
}
/* Transition effects */
.fancybox-animated {
    transition-timing-function: cubic-bezier(0, 0, 0.25, 1);
}

/* transitionEffect: slide */
.fancybox-fx-slide.fancybox-slide--previous {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--next {
    opacity: 0;
    transform: translate3d(100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--current {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

/* transitionEffect: fade */
.fancybox-fx-fade.fancybox-slide--previous,
.fancybox-fx-fade.fancybox-slide--next {
    opacity: 0;
    transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.fancybox-fx-fade.fancybox-slide--current {
    opacity: 1;
}

/* transitionEffect: zoom-in-out */
.fancybox-fx-zoom-in-out.fancybox-slide--previous {
    opacity: 0;
    transform: scale3d(1.5, 1.5, 1.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--next {
    opacity: 0;
    transform: scale3d(0.5, 0.5, 0.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--current {
    opacity: 1;
    transform: scale3d(1, 1, 1);
}

/* transitionEffect: rotate */
.fancybox-fx-rotate.fancybox-slide--previous {
    opacity: 0;
    -ms-transform: rotate(-360deg);
    transform: rotate(-360deg);
}

.fancybox-fx-rotate.fancybox-slide--next {
    opacity: 0;
    -ms-transform: rotate(360deg);
    transform: rotate(360deg);
}

.fancybox-fx-rotate.fancybox-slide--current {
    opacity: 1;
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
}

/* transitionEffect: circular */
.fancybox-fx-circular.fancybox-slide--previous {
    opacity: 0;
    transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--next {
    opacity: 0;
    transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--current {
    opacity: 1;
    transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
}

/* transitionEffect: tube */
.fancybox-fx-tube.fancybox-slide--previous {
    transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
}

.fancybox-fx-tube.fancybox-slide--next {
    transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
}

.fancybox-fx-tube.fancybox-slide--current {
    transform: translate3d(0, 0, 0) scale(1);
}

/* Styling for Small-Screen Devices */
@media all and (max-height: 576px) {
    .fancybox-slide {
        padding-left: 6px;
        padding-right: 6px;
    }
    .fancybox-slide--image {
        padding: 6px 0;
    }
    .fancybox-close-small {
        right: -6px;
    }
    .fancybox-slide--image .fancybox-close-small {
        background: #4e4e4e;
        color: #f2f4f6;
        height: 36px;
        opacity: 1;
        padding: 6px;
        right: 0;
        top: 0;
        width: 36px;
    }
    .fancybox-caption {
        padding-left: 12px;
        padding-right: 12px;
    }
    @supports (padding: max(0px)) {
        .fancybox-caption {
            padding-left: max(12px, env(safe-area-inset-left));
            padding-right: max(12px, env(safe-area-inset-right));
        }
    }
}
/* Share */
.fancybox-share {
    background: #f4f4f4;
    border-radius: 3px;
    max-width: 90%;
    padding: 30px;
    text-align: center;
}

.fancybox-share h1 {
    color: #222;
    font-size: 35px;
    font-weight: 700;
    margin: 0 0 20px 0;
}

.fancybox-share p {
    margin: 0;
    padding: 0;
}

.fancybox-share__button {
    border: 0;
    border-radius: 3px;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    line-height: 40px;
    margin: 0 5px 10px 5px;
    min-width: 130px;
    padding: 0 15px;
    text-decoration: none;
    transition: all 0.2s;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    white-space: nowrap;
}

.fancybox-share__button:visited,
.fancybox-share__button:link {
    color: #fff;
}

.fancybox-share__button:hover {
    text-decoration: none;
}

.fancybox-share__button--fb {
    background: #3b5998;
}

.fancybox-share__button--fb:hover {
    background: #344e86;
}

.fancybox-share__button--pt {
    background: #bd081d;
}

.fancybox-share__button--pt:hover {
    background: #aa0719;
}

.fancybox-share__button--tw {
    background: #1da1f2;
}

.fancybox-share__button--tw:hover {
    background: #0d95e8;
}

.fancybox-share__button svg {
    height: 25px;
    margin-right: 7px;
    position: relative;
    top: -1px;
    vertical-align: middle;
    width: 25px;
}

.fancybox-share__button svg path {
    fill: #fff;
}

.fancybox-share__input {
    background: transparent;
    border: 0;
    border-bottom: 1px solid #d7d7d7;
    border-radius: 0;
    color: #5d5b5b;
    font-size: 14px;
    margin: 10px 0 0 0;
    outline: none;
    padding: 10px 15px;
    width: 100%;
}

/* Thumbs */
.fancybox-thumbs {
    background: #ddd;
    bottom: 0;
    display: none;
    margin: 0;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    padding: 2px 2px 4px 2px;
    position: absolute;
    right: 0;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    top: 0;
    width: 212px;
    z-index: 99995;
}

.fancybox-thumbs-x {
    overflow-x: auto;
    overflow-y: hidden;
}

.fancybox-show-thumbs .fancybox-thumbs {
    display: block;
}

.fancybox-show-thumbs .fancybox-inner {
    right: 212px;
}

.fancybox-thumbs__list {
    font-size: 0;
    height: 100%;
    list-style: none;
    margin: 0;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 0;
    position: absolute;
    position: relative;
    white-space: nowrap;
    width: 100%;
}

.fancybox-thumbs-x .fancybox-thumbs__list {
    overflow: hidden;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar {
    width: 7px;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track {
    background: #fff;
    border-radius: 10px;
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb {
    background: #2a2a2a;
    border-radius: 10px;
}

.fancybox-thumbs__list a {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background-color: rgba(0, 0, 0, 0.1);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    cursor: pointer;
    float: left;
    height: 75px;
    margin: 2px;
    max-height: calc(100% - 8px);
    max-width: calc(50% - 4px);
    outline: none;
    overflow: hidden;
    padding: 0;
    position: relative;
    -webkit-tap-highlight-color: transparent;
    width: 100px;
}

.fancybox-thumbs__list a::before {
    border: 6px solid #ff5268;
    bottom: 0;
    content: "";
    left: 0;
    opacity: 0;
    position: absolute;
    right: 0;
    top: 0;
    transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    z-index: 99991;
}

.fancybox-thumbs__list a:focus::before {
    opacity: 0.5;
}

.fancybox-thumbs__list a.fancybox-thumbs-active::before {
    opacity: 1;
}

/* Styling for Small-Screen Devices */
@media all and (max-width: 576px) {
    .fancybox-thumbs {
        width: 110px;
    }
    .fancybox-show-thumbs .fancybox-inner {
        right: 110px;
    }
    .fancybox-thumbs__list a {
        max-width: calc(100% - 10px);
    }
}
/* custom range input styles */
.jcf-range {
    display: block;
    width: 100%;
    margin: 0;
    height: 20px;
}

.jcf-range .jcf-range-track {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    height: 1px;
    background: linear-gradient(
        to right,
        white 0%,
        white 2px,
        rgba(255, 255, 255, 0) 2px,
        rgba(255, 255, 255, 0) 100%
    );
    background-repeat: repeat-x;
    background-size: 7px 100%;
}

.jcf-range .jcf-range-wrapper {
    display: block;
    margin: 5px 0;
    height: 10px;
}

.jcf-range.jcf-vertical {
    width: auto;
}

.jcf-range.jcf-vertical .jcf-range-wrapper {
    margin: 0;
    width: 10px;
    height: auto;
    padding: 20px 0 0;
}

.jcf-range.jcf-vertical .jcf-range-track {
    height: 180px;
    width: 10px;
}

.jcf-range.jcf-vertical .jcf-range-handle {
    left: -5px;
}

.jcf-range .jcf-range-handle {
    position: absolute;
    background: #f01919;
    border: 2px solid #fff;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    margin: 0;
    z-index: 1;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.jcf-range .jcf-range-mark {
    position: absolute;
    overflow: hidden;
    background: #000;
    width: 1px;
    height: 3px;
    top: -7px;
    margin: 0 0 0 9px;
}

.jcf-range.jcf-vertical .jcf-range-mark {
    margin: 0 0 9px;
    left: 14px;
    top: auto;
    width: 3px;
    height: 1px;
}

.jcf-range.jcf-disabled {
    background: none !important;
    opacity: 0.3;
}

/* common custom form elements styles */
.jcf-disabled {
    background: #ddd !important;
}

/* Slick slider styles */
.gallery_img {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0;
}
.slick-list:focus {
    outline: none;
}
.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}

.gallery_img .slick-track,
.gallery_img .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block;
}
.slick-track:before,
.slick-track:after {
    content: "";
    display: table;
}
.slick-track:after {
    clear: both;
}
.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none;
}
[dir="rtl"] .slick-slide {
    float: right;
}
.slick-slide img {
    display: block;
}
.slick-slide.slick-loading img {
    display: none;
}
.slick-slide.dragging img {
    pointer-events: none;
}
.slick-initialized .slick-slide {
    display: block;
}
.slick-loading .slick-slide {
    visibility: hidden;
}
.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}

.slick-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    background: #f01919;
    padding: 0;
    margin: 0;
    font-size: 0;
    line-height: 0;
}
.slick-arrow:after {
    position: absolute;
    content: "";
    width: 10px;
    height: 10px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    left: 50%;
    top: 50%;
    margin-top: 1px;
    transform: translate(-50%, -50%);
}
@media (min-width: 992px) {
    .slick-arrow:after {
        width: 13px;
        height: 13px;
    }
}
.slick-arrow:hover {
    background: #7e7772;
}

.slick-prev {
    left: -18px;
}
.slick-prev:after {
    margin-left: 3px;
    transform: translate(-50%, -50%) rotate(45deg);
}

.slick-next {
    right: -18px;
}
.slick-next:after {
    margin-left: -3px;
    transform: translate(-50%, -50%) rotate(-135deg);
}

html {
    box-sizing: border-box;
    -webkit-text-size-adjust: 100%;
}

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

* {
    max-height: 1000000px;
}

main,
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

ul,
ol,
dl,
p,
h1,
h2,
h3,
h4,
h5,
h6,
address,
form,
table,
blockquote,
applet,
embed,
object,
iframe,
frameset {
    margin: 0 0 18px;
}

blockquote {
    border-left: 4px solid #ddd;
    padding-left: 10px;
    margin-left: 0;
}

table {
    border-collapse: collapse;
}

th,
td {
    border: 1px solid #ddd;
    padding: 3px;
    text-align: left;
    vertical-align: top;
}

th {
    text-align: center;
    vertical-align: middle;
}

ul,
ol {
    padding-left: 20px;
}

ul ul,
ul ol,
ol ul,
ol ol {
    padding-left: 20px;
    margin: 0;
}

ul {
    list-style-type: disc;
}

dl dt {
    float: left;
    clear: left;
    padding-right: 0.3em;
    font-weight: bold;
}
dl dd {
    overflow: hidden;
}

pre {
    max-width: 100%;
    overflow: auto;
}

body {
    color: #fff;
    background: #000;
    font: 14px/18px "Aleo", "Times New Roman", "Times", "Baskerville", "Georgia",
        serif;
    min-width: 320px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin: 0;
}
@media (min-width: 768px) {
    body {
        font-size: 16px;
        line-height: 21px;
    }
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: top;
    display: inline-block;
}

.gm-style img {
    max-width: none;
}

@media (max-width: 991px) {
    iframe {
        width: 100%;
    }
}

.resize-active * {
    transition: none !important;
}

[id="nav"]:after,
.clearfix:after,
dl:after {
    content: "";
    display: block;
    clear: both;
}

.ellipsis {
    white-space: nowrap;
    /* 1 */
    text-overflow: ellipsis;
    /* 2 */
    overflow: hidden;
}

.df-row {
    display: flex;
    flex-wrap: wrap;
}
@media (min-width: 576px) {
    .df-row.df-rr-ph {
        flex-direction: row-reverse;
    }
}
@media (min-width: 576px) {
    .df-row.df-aic-ph {
        align-items: center;
    }
}
@media (min-width: 768px) {
    .df-row.df-rr-sm {
        flex-direction: row-reverse;
    }
}
@media (min-width: 768px) {
    .df-row.df-aic-sm {
        align-items: center;
    }
}
@media (min-width: 992px) {
    .df-row.df-rr-md {
        flex-direction: row-reverse;
    }
}
@media (min-width: 992px) {
    .df-row.df-aic-md {
        align-items: center;
    }
}
@media (min-width: 576px) {
    .df-row .col-ph-1 {
        flex: 1 0 calc(100% / 12 * 1);
        max-width: calc(100% / 12 * 1);
    }
}
@media (min-width: 576px) {
    .df-row .col-ph-2 {
        flex: 1 0 calc(100% / 12 * 2);
        max-width: calc(100% / 12 * 2);
    }
}
@media (min-width: 576px) {
    .df-row .col-ph-3 {
        flex: 1 0 calc(100% / 12 * 3);
        max-width: calc(100% / 12 * 3);
    }
}
@media (min-width: 576px) {
    .df-row .col-ph-4 {
        flex: 1 0 calc(100% / 12 * 4);
        max-width: calc(100% / 12 * 4);
    }
}
@media (min-width: 576px) {
    .df-row .col-ph-5 {
        flex: 1 0 calc(100% / 12 * 5);
        max-width: calc(100% / 12 * 5);
    }
}
@media (min-width: 576px) {
    .df-row .col-ph-6 {
        flex: 1 0 calc(100% / 12 * 6);
        max-width: calc(100% / 12 * 6);
    }
}
@media (min-width: 576px) {
    .df-row .col-ph-7 {
        flex: 1 0 calc(100% / 12 * 7);
        max-width: calc(100% / 12 * 7);
    }
}
@media (min-width: 576px) {
    .df-row .col-ph-8 {
        flex: 1 0 calc(100% / 12 * 8);
        max-width: calc(100% / 12 * 8);
    }
}
@media (min-width: 576px) {
    .df-row .col-ph-9 {
        flex: 1 0 calc(100% / 12 * 9);
        max-width: calc(100% / 12 * 9);
    }
}
@media (min-width: 576px) {
    .df-row .col-ph-10 {
        flex: 1 0 calc(100% / 12 * 10);
        max-width: calc(100% / 12 * 10);
    }
}
@media (min-width: 576px) {
    .df-row .col-ph-11 {
        flex: 1 0 calc(100% / 12 * 11);
        max-width: calc(100% / 12 * 11);
    }
}
@media (min-width: 576px) {
    .df-row .col-ph-12 {
        flex: 1 0 calc(100% / 12 * 12);
        max-width: calc(100% / 12 * 12);
    }
}
@media (min-width: 576px) {
    .df-row .col-offset-ph-0 {
        margin-left: calc(100% / 12 * 0);
    }
}
@media (min-width: 576px) {
    .df-row .col-offset-ph-1 {
        margin-left: calc(100% / 12 * 1);
    }
}
@media (min-width: 576px) {
    .df-row .col-offset-ph-2 {
        margin-left: calc(100% / 12 * 2);
    }
}
@media (min-width: 576px) {
    .df-row .col-offset-ph-3 {
        margin-left: calc(100% / 12 * 3);
    }
}
@media (min-width: 576px) {
    .df-row .col-offset-ph-4 {
        margin-left: calc(100% / 12 * 4);
    }
}
@media (min-width: 576px) {
    .df-row .col-offset-ph-5 {
        margin-left: calc(100% / 12 * 5);
    }
}
@media (min-width: 576px) {
    .df-row .col-offset-ph-6 {
        margin-left: calc(100% / 12 * 6);
    }
}
@media (min-width: 576px) {
    .df-row .col-offset-ph-7 {
        margin-left: calc(100% / 12 * 7);
    }
}
@media (min-width: 576px) {
    .df-row .col-offset-ph-8 {
        margin-left: calc(100% / 12 * 8);
    }
}
@media (min-width: 576px) {
    .df-row .col-offset-ph-9 {
        margin-left: calc(100% / 12 * 9);
    }
}
@media (min-width: 576px) {
    .df-row .col-offset-ph-10 {
        margin-left: calc(100% / 12 * 10);
    }
}
@media (min-width: 576px) {
    .df-row .col-offset-ph-11 {
        margin-left: calc(100% / 12 * 11);
    }
}
@media (min-width: 768px) {
    .df-row .col-sm-1 {
        flex: 1 0 calc(100% / 12 * 1);
        max-width: calc(100% / 12 * 1);
    }
}
@media (min-width: 768px) {
    .df-row .col-sm-2 {
        flex: 1 0 calc(100% / 12 * 2);
        max-width: calc(100% / 12 * 2);
    }
}
@media (min-width: 768px) {
    .df-row .col-sm-3 {
        flex: 1 0 calc(100% / 12 * 3);
        max-width: calc(100% / 12 * 3);
    }
}
@media (min-width: 768px) {
    .df-row .col-sm-4 {
        flex: 1 0 calc(100% / 12 * 4);
        max-width: calc(100% / 12 * 4);
    }
}
@media (min-width: 768px) {
    .df-row .col-sm-5 {
        flex: 1 0 calc(100% / 12 * 5);
        max-width: calc(100% / 12 * 5);
    }
}
@media (min-width: 768px) {
    .df-row .col-sm-6 {
        flex: 1 0 calc(100% / 12 * 6);
        max-width: calc(100% / 12 * 6);
    }
}
@media (min-width: 768px) {
    .df-row .col-sm-7 {
        flex: 1 0 calc(100% / 12 * 7);
        max-width: calc(100% / 12 * 7);
    }
}
@media (min-width: 768px) {
    .df-row .col-sm-8 {
        flex: 1 0 calc(100% / 12 * 8);
        max-width: calc(100% / 12 * 8);
    }
}
@media (min-width: 768px) {
    .df-row .col-sm-9 {
        flex: 1 0 calc(100% / 12 * 9);
        max-width: calc(100% / 12 * 9);
    }
}
@media (min-width: 768px) {
    .df-row .col-sm-10 {
        flex: 1 0 calc(100% / 12 * 10);
        max-width: calc(100% / 12 * 10);
    }
}
@media (min-width: 768px) {
    .df-row .col-sm-11 {
        flex: 1 0 calc(100% / 12 * 11);
        max-width: calc(100% / 12 * 11);
    }
}
@media (min-width: 768px) {
    .df-row .col-sm-12 {
        flex: 1 0 calc(100% / 12 * 12);
        max-width: calc(100% / 12 * 12);
    }
}
@media (min-width: 768px) {
    .df-row .col-offset-sm-0 {
        margin-left: calc(100% / 12 * 0);
    }
}
@media (min-width: 768px) {
    .df-row .col-offset-sm-1 {
        margin-left: calc(100% / 12 * 1);
    }
}
@media (min-width: 768px) {
    .df-row .col-offset-sm-2 {
        margin-left: calc(100% / 12 * 2);
    }
}
@media (min-width: 768px) {
    .df-row .col-offset-sm-3 {
        margin-left: calc(100% / 12 * 3);
    }
}
@media (min-width: 768px) {
    .df-row .col-offset-sm-4 {
        margin-left: calc(100% / 12 * 4);
    }
}
@media (min-width: 768px) {
    .df-row .col-offset-sm-5 {
        margin-left: calc(100% / 12 * 5);
    }
}
@media (min-width: 768px) {
    .df-row .col-offset-sm-6 {
        margin-left: calc(100% / 12 * 6);
    }
}
@media (min-width: 768px) {
    .df-row .col-offset-sm-7 {
        margin-left: calc(100% / 12 * 7);
    }
}
@media (min-width: 768px) {
    .df-row .col-offset-sm-8 {
        margin-left: calc(100% / 12 * 8);
    }
}
@media (min-width: 768px) {
    .df-row .col-offset-sm-9 {
        margin-left: calc(100% / 12 * 9);
    }
}
@media (min-width: 768px) {
    .df-row .col-offset-sm-10 {
        margin-left: calc(100% / 12 * 10);
    }
}
@media (min-width: 768px) {
    .df-row .col-offset-sm-11 {
        margin-left: calc(100% / 12 * 11);
    }
}
@media (min-width: 992px) {
    .df-row .col-md-1 {
        flex: 1 0 calc(100% / 12 * 1);
        max-width: calc(100% / 12 * 1);
    }
}
@media (min-width: 992px) {
    .df-row .col-md-2 {
        flex: 1 0 calc(100% / 12 * 2);
        max-width: calc(100% / 12 * 2);
    }
}
@media (min-width: 992px) {
    .df-row .col-md-3 {
        flex: 1 0 calc(100% / 12 * 3);
        max-width: calc(100% / 12 * 3);
    }
}
@media (min-width: 992px) {
    .df-row .col-md-4 {
        flex: 1 0 calc(100% / 12 * 4);
        max-width: calc(100% / 12 * 4);
    }
}
@media (min-width: 992px) {
    .df-row .col-md-5 {
        flex: 1 0 calc(100% / 12 * 5);
        max-width: calc(100% / 12 * 5);
    }
}
@media (min-width: 992px) {
    .df-row .col-md-6 {
        flex: 1 0 calc(100% / 12 * 6);
        max-width: calc(100% / 12 * 6);
    }
}
@media (min-width: 992px) {
    .df-row .col-md-7 {
        flex: 1 0 calc(100% / 12 * 7);
        max-width: calc(100% / 12 * 7);
    }
}
@media (min-width: 992px) {
    .df-row .col-md-8 {
        flex: 1 0 calc(100% / 12 * 8);
        max-width: calc(100% / 12 * 8);
    }
}
@media (min-width: 992px) {
    .df-row .col-md-9 {
        flex: 1 0 calc(100% / 12 * 9);
        max-width: calc(100% / 12 * 9);
    }
}
@media (min-width: 992px) {
    .df-row .col-md-10 {
        flex: 1 0 calc(100% / 12 * 10);
        max-width: calc(100% / 12 * 10);
    }
}
@media (min-width: 992px) {
    .df-row .col-md-11 {
        flex: 1 0 calc(100% / 12 * 11);
        max-width: calc(100% / 12 * 11);
    }
}
@media (min-width: 992px) {
    .df-row .col-md-12 {
        flex: 1 0 calc(100% / 12 * 12);
        max-width: calc(100% / 12 * 12);
    }
}
@media (min-width: 992px) {
    .df-row .col-offset-md-0 {
        margin-left: calc(100% / 12 * 0);
    }
}
@media (min-width: 992px) {
    .df-row .col-offset-md-1 {
        margin-left: calc(100% / 12 * 1);
    }
}
@media (min-width: 992px) {
    .df-row .col-offset-md-2 {
        margin-left: calc(100% / 12 * 2);
    }
}
@media (min-width: 992px) {
    .df-row .col-offset-md-3 {
        margin-left: calc(100% / 12 * 3);
    }
}
@media (min-width: 992px) {
    .df-row .col-offset-md-4 {
        margin-left: calc(100% / 12 * 4);
    }
}
@media (min-width: 992px) {
    .df-row .col-offset-md-5 {
        margin-left: calc(100% / 12 * 5);
    }
}
@media (min-width: 992px) {
    .df-row .col-offset-md-6 {
        margin-left: calc(100% / 12 * 6);
    }
}
@media (min-width: 992px) {
    .df-row .col-offset-md-7 {
        margin-left: calc(100% / 12 * 7);
    }
}
@media (min-width: 992px) {
    .df-row .col-offset-md-8 {
        margin-left: calc(100% / 12 * 8);
    }
}
@media (min-width: 992px) {
    .df-row .col-offset-md-9 {
        margin-left: calc(100% / 12 * 9);
    }
}
@media (min-width: 992px) {
    .df-row .col-offset-md-10 {
        margin-left: calc(100% / 12 * 10);
    }
}
@media (min-width: 992px) {
    .df-row .col-offset-md-11 {
        margin-left: calc(100% / 12 * 11);
    }
}
@media (min-width: 768px) {
    .df-row {
        margin: 0 -40px;
    }
}

h1,
.h1 {
    font-size: 20px;
}

h2,
.h2 {
    font-size: 22px;
}

h3,
.h3 {
    font-size: 15px;
}

h4,
.h4 {
    font-size: 14px;
}

h5,
.h5 {
    font-size: 14px;
}

h6,
.h6 {
    font-size: 14px;
}

@media (min-width: 768px) {
    h1,
    .h1 {
        font-size: 40px;
    }
    h2,
    .h2 {
        font-size: 26px;
    }
    h3,
    .h3 {
        font-size: 28px;
    }
    h4,
    .h4 {
        font-size: 20px;
    }
    h5,
    .h5 {
        font-size: 18px;
    }
    h6,
    .h6 {
        font-size: 16px;
    }
}
@media (min-width: 992px) {
    h1,
    .h1 {
        font-size: 40px;
    }
    h2,
    .h2 {
        font-size: 30px;
    }
    h3,
    .h3 {
        font-size: 28px;
    }
    h4,
    .h4 {
        font-size: 20px;
    }
    h5,
    .h5 {
        font-size: 18px;
    }
    h6,
    .h6 {
        font-size: 16px;
    }
}
@media (min-width: 1200px) {
    h1,
    .h1 {
        font-size: 40px;
    }
    h2,
    .h2 {
        font-size: 30px;
    }
    h3,
    .h3 {
        font-size: 28px;
    }
    h4,
    .h4 {
        font-size: 20px;
    }
    h5,
    .h5 {
        font-size: 18px;
    }
    h6,
    .h6 {
        font-size: 16px;
    }
}
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6,
.h {
    font-family: "Aleo", "Times New Roman", "Times", "Baskerville", "Georgia",
        serif;
    color: inherit;
    font-weight: bold;
    margin: 0 0 10px;
}
@media (min-width: 768px) {
    h1,
    .h1,
    h2,
    .h2,
    h3,
    .h3,
    h4,
    .h4,
    h5,
    .h5,
    h6,
    .h6,
    .h {
        margin-bottom: 20px;
    }
}

.admin h1 {
    margin: 0 0 1em;
    font-weight: 400;
    font-size: 22px;
    line-height: 1.1333333333;
    text-transform: uppercase;
}
@media (min-width: 768px) {
    .admin h1 {
        font-size: 26px;
    }
}
@media (min-width: 992px) {
    .admin h1 {
        font-size: 30px;
    }
}

h2,
.h2 {
    position: relative;
    margin: 0 0 1em;
    padding: 0 0 0 22px;
    font-weight: 400;
    line-height: 1.1333333333;
    text-transform: uppercase;
}
h2:after,
.h2:after {
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    content: "";
    background: #f01919;
}

p {
    margin: 0 0 1.2em;
}

a {
    color: #007bff;
    text-decoration: none;
}
a:hover,
a:focus {
    color: #000;
    text-decoration: none;
}

a[href*="mailto:"] {
    word-wrap: break-word;
}

form,
fieldset {
    margin: 0;
    padding: 0;
    border-style: none;
}

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="search"],
input[type="password"],
input[type="url"],
textarea {
    -webkit-appearance: none;
    -webkit-border-radius: 0;
    padding: 10px 20px;
    font-size: 14px;
    line-height: 16px;
    font-family: "Aleo", "Times New Roman", "Times", "Baskerville", "Georgia",
        serif;
    box-sizing: border-box;
    border: 1px solid #000;
    border-radius: 0;
}
input[type="text"]:not(textarea),
input[type="tel"]:not(textarea),
input[type="email"]:not(textarea),
input[type="search"]:not(textarea),
input[type="password"]:not(textarea),
input[type="url"]:not(textarea),
textarea:not(textarea) {
    height: 38px;
}
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
input[type="password"]:focus,
input[type="url"]:focus,
textarea:focus {
    outline: none;
    border-color: #000;
}
input[type="text"]::-webkit-input-placeholder,
input[type="tel"]::-webkit-input-placeholder,
input[type="email"]::-webkit-input-placeholder,
input[type="search"]::-webkit-input-placeholder,
input[type="password"]::-webkit-input-placeholder,
input[type="url"]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    color: #ddd;
}
input[type="text"]::-moz-placeholder,
input[type="tel"]::-moz-placeholder,
input[type="email"]::-moz-placeholder,
input[type="search"]::-moz-placeholder,
input[type="password"]::-moz-placeholder,
input[type="url"]::-moz-placeholder,
textarea::-moz-placeholder {
    opacity: 1;
    color: #ddd;
}
input[type="text"]:-moz-placeholder,
input[type="tel"]:-moz-placeholder,
input[type="email"]:-moz-placeholder,
input[type="search"]:-moz-placeholder,
input[type="password"]:-moz-placeholder,
input[type="url"]:-moz-placeholder,
textarea:-moz-placeholder {
    color: #ddd;
}
input[type="text"]:-ms-input-placeholder,
input[type="tel"]:-ms-input-placeholder,
input[type="email"]:-ms-input-placeholder,
input[type="search"]:-ms-input-placeholder,
input[type="password"]:-ms-input-placeholder,
input[type="url"]:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    color: #ddd;
}
input[type="text"].placeholder,
input[type="tel"].placeholder,
input[type="email"].placeholder,
input[type="search"].placeholder,
input[type="password"].placeholder,
input[type="url"].placeholder,
textarea.placeholder {
    color: #ddd;
}

input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;
}

textarea {
    resize: vertical;
    vertical-align: top;
    overflow: auto;
}

button,
input[type="button"],
input[type="reset"],
input[type="file"],
input[type="submit"] {
    transition: background 0.5s ease-in-out;
    -webkit-appearance: none;
    -webkit-border-radius: 0;
    height: 38px;
    padding: 10px 20px;
    font-size: 14px;
    line-height: 16px;
    color: #fff;
    outline: none;
    cursor: pointer;
    border: #000;
    border-radius: 0;
    background: #000;
}
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="file"]:hover,
input[type="submit"]:hover {
    background: black;
    color: #fff;
}

[id="header"] {
    position: absolute;
    inset: 0 0 auto;
    padding: 20px 0;
    z-index: 999;
    text-transform: uppercase;
}
@media (min-width: 992px) {
    [id="header"] {
        padding: 30px 0;
    }
}
@media (min-width: 1200px) {
    [id="header"] {
        padding: 50px 0;
    }
}
[id="header"] a {
    color: #7e7772;
}
[id="header"] a:hover {
    color: #fff;
}
[id="header"] .active a {
    color: #fff;
    text-decoration: underline;
}
[id="header"].header-01 {
    padding: 37px 0;
}
[id="header"].header-01 .container {
    max-width: 100%;
}
@media (min-width: 992px) {
    [id="header"].header-01 .container {
        padding: 0 80px;
    }
}
@media (min-width: 1500px) {
    [id="header"].header-01 .container {
        padding: 0 157px;
    }
}
@media (min-width: 1200px) {
    [id="header"].header-02 {
        padding: 37px 0;
    }
}
[id="header"].header-02 .header-holder {
    align-items: center;
}
@media (min-width: 992px) {
    [id="header"].header-02 .header-holder {
        flex-direction: column;
    }
}
@media (min-width: 1200px) {
    [id="header"].header-02 .header-holder {
        flex-direction: row;
    }
}
[id="header"].header-02 .logo {
    width: 200px;
}
@media (min-width: 768px) {
    [id="header"].header-02 .logo {
        width: 300px;
    }
}
@media (min-width: 992px) {
    [id="header"].header-02 .logo {
        width: 250px;
        margin-bottom: 10px;
    }
}
@media (min-width: 1200px) {
    [id="header"].header-02 .logo {
        margin-bottom: 0;
    }
}
@media (min-width: 1500px) {
    [id="header"].header-02 .logo {
        width: 300px;
    }
}
@media (min-width: 992px) {
    [id="header"].header-02 .nav-drop {
        justify-content: flex-end;
    }
}

.header-logo {
    width: 150px;
}
@media (min-width: 992px) {
    .header-logo {
        width: 300px;
    }
}

.header-holder {
    display: flex;
}

[id="nav"] {
    flex-grow: 1;
}

.nav-active {
    overflow: hidden;
}

.nav-drop {
    transition: all 0.5s ease-in-out;
    position: fixed;
    inset: 0 0 0 0;
    opacity: 0;
    padding: 60px 20px;
    background: rgba(0, 0, 0, 0.9);
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-size: 20px;
    line-height: 24px;
    visibility: hidden;
}
@media (min-width: 992px) {
    .nav-drop {
        padding: 0;
        position: static;
        opacity: 1;
        visibility: visible;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        background: none;
        font-size: 16px;
        line-height: 21px;
    }
}
.nav-active .nav-drop {
    opacity: 1;
    visibility: visible;
}
.nav-drop__hold {
    margin: 0 auto;
    padding: 15px 0;
    width: 100%;
    max-width: 300px;
    display: flex;
    justify-content: space-between;
}
@media (min-width: 992px) {
    .nav-drop__hold {
        width: auto;
        margin: 0;
        padding: 0;
    }
}

.primary-menu {
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: center;
}
@media (min-width: 992px) {
    .primary-menu {
        display: flex;
    }
}
.primary-menu > li {
    padding: 10px 0;
}
@media (min-width: 992px) {
    .primary-menu > li {
        padding: 0 17px;
    }
}

.language {
    position: relative;
    padding: 0 17px;
}
.language:hover .language__drop {
    opacity: 1;
    visibility: visible;
}
.language a {
    display: flex;
    align-items: center;
}
.language a img {
    margin-left: 5px;
}
.language__drop {
    position: absolute;
    left: 50%;
    top: 100%;
    transform: translateX(-50%);
    width: 80px;
    background: #000;
    border: 1px solid #7e7772;
    padding: 8px;
    border-radius: 8px;
    opacity: 0;
    visibility: hidden;
    transition: all 0.5s;
}
.language__drop a {
    justify-content: center;
}
.language__list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.button-play-wrap {
    padding: 0 17px;
}
.button-play-wrap a {
    color: #f01919;
    text-decoration: underline;
}
.button-play-wrap a:hover {
    color: #f01919;
    text-decoration: none;
}

.nav-opener {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 999;
    width: 30px;
    height: 30px;
    font-size: 0;
    line-height: 0;
}
@media (min-width: 992px) {
    .nav-opener {
        display: none;
    }
}
.nav-opener:before,
.nav-opener:after,
.nav-opener span {
    transition: transform 0.5s ease-in-out, opacity 0.5s ease-in-out;
    background: #f01919;
    position: absolute;
    top: 50%;
    left: 15%;
    right: 15%;
    height: 3px;
    transform: translateY(-50%);
}
.nav-opener:before,
.nav-opener:after {
    content: "";
}
.nav-opener:before {
    transform: translateY(-9px);
}
.nav-opener:after {
    transform: translateY(6px);
}
.nav-opener:hover:before,
.nav-opener:hover:after,
.nav-opener:hover span {
    background-color: gray;
}
.nav-active .nav-opener span {
    opacity: 0;
    transform: rotate(45deg);
}
.nav-active .nav-opener:before {
    transform: rotate(45deg) translateY(0);
}
.nav-active .nav-opener:after {
    transform: rotate(-45deg) translateY(0);
}

.header-row {
    display: flex;
    align-items: center;
}
.header-row .sound {
    margin-left: 24px;
}

[id="wrapper"] {
    display: flex;
    flex-direction: column;
    width: 100%;
    background: #000;
    min-height: 100vh;
}
.admin [id="wrapper"] {
    padding-top: 100px;
    background-color: #000;
    background-image: url("../themes/my3dgirlfriends2/assets/images/admin/bg-top.jpg");
    background-position: 50% 0;
    background-repeat: no-repeat;
}
@media (min-width: 768px) {
    .admin [id="wrapper"] {
        padding-top: 130px;
    }
}
@media (min-width: 992px) {
    .admin [id="wrapper"] {
        padding-top: 190px;
    }
}

main {
    flex-grow: 1;
}

.container {
    width: 100%;
    max-width: 1380px;
    padding: 0 20px;
    margin: 0 auto;
}
@media (min-width: 768px) {
    .container {
        padding: 0 40px;
    }
}
.admin .container {
    max-width: 1300px;
}

.text-red {
    color: #f01919;
}

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

.admin-list-banners {
    margin: 0;
    padding: 30px 0;
    list-style: none;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
}
@media (min-width: 768px) {
    .admin-list-banners {
        display: block;
        width: 190px;
        margin: 0 auto;
        padding: 119px 0;
    }
}
.admin-list-banners > li {
    width: 50%;
    margin-bottom: 54px;
    padding: 0 15px;
}
@media (min-width: 768px) {
    .admin-list-banners > li {
        width: 100%;
    }
}
.admin-list-banners > li:only-child {
    width: 100%;
}

@media (min-width: 768px) {
    .admin-columns {
        display: flex;
        justify-content: space-between;
    }
}
.admin-columns__col {
    width: 100%;
}
@media (min-width: 768px) {
    .admin-columns__col {
        width: auto;
    }
}
@media (min-width: 768px) {
    .admin-columns__col:first-child {
        padding: 0 5% 0 2%;
        flex-grow: 1;
    }
}
@media (min-width: 992px) {
    .admin-columns__col:first-child {
        padding: 0 16% 0 2.2%;
    }
}
@media (min-width: 768px) {
    .admin_visual .admin-columns__col:first-child {
        padding: 0;
    }
}
@media (min-width: 768px) {
    .admin-columns__col:last-child {
        width: 200px;
        min-width: 200px;
    }
}
@media (min-width: 992px) {
    .admin-columns__col:last-child {
        width: 340px;
        min-width: 340px;
    }
}
@media (min-width: 992px) {
    .admin_visual .admin-columns__col:last-child {
        width: 328px;
        min-width: 328px;
    }
}
.admin-columns__col:only-child {
    padding: 0 2%;
}

.admin-heading {
    margin-bottom: 85px;
}

.text-bottom {
    padding: 28px 0;
}

.admin_content-page {
    margin-bottom: 50px;
}
.admin_content-page .container {
    max-width: 1190px;
}
.admin_content-page h2 {
    margin: 0 0 2.6em;
    color: #7e7772;
    font-size: 16px;
    line-height: 1.25;
    padding-left: 14px;
}
.admin_content-page ul.list-red-bullet,
.admin_content-page ul:not([class]) {
    margin: 0 0 60px;
    padding: 0;
    list-style: none;
}
.admin_content-page ul.list-red-bullet > li:before,
.admin_content-page ul:not([class]) > li:before {
    content: "—";
    margin: 0 5px 0 0;
}
.admin_content-page ul.list-red-bullet > li:before {
    color: #f01919;
}
@media (min-width: 992px) {
    .admin_content-page--home .admin-columns__col:first-child {
        padding: 0 1.6% 0 0;
    }
}
.admin_content-page--home ul.list-red-bullet {
    margin-bottom: 0;
}
.admin_content-page--home ul.list-red-bullet > li {
    margin-bottom: 20px;
}

blockquote {
    padding: 0;
    margin: 0;
    border: 0;
}
blockquote p {
    margin: 0;
}
blockquote cite {
    font-style: normal;
    font-size: 12px;
}

[id="footer"] {
    padding: 20px 0;
    background: url("../themes/my3dgirlfriends2/assets/images/bg-footer.jpg") no-repeat 50% 0;
}
@media (min-width: 992px) {
    [id="footer"] {
        padding: 50px 0;
    }
}
@media (min-width: 1200px) {
    [id="footer"] {
        padding: 100px 0;
    }
}
@media (min-width: 1500px) {
    [id="footer"] {
        padding: 160px 0;
    }
}
@media (min-width: 1200px) {
    [id="footer"] .btn {
        min-width: 300px;
    }
}

@media (min-width: 992px) {
    .footer-columns {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
}
.footer-columns__col:first-child {
    text-align: center;
    padding: 20px;
}
@media (min-width: 992px) {
    .footer-columns__col:last-child {
        padding-left: 20px;
        flex-grow: 1;
    }
}
@media (min-width: 1200px) {
    .footer-columns__col:last-child {
        padding-left: 8%;
    }
}
@media (min-width: 1500px) {
    .footer-columns__col:last-child {
        padding-left: 16%;
    }
}

.footer-menu {
    font-size: 14px;
    line-height: 1.5;
    font-family: "Open Sans", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
    color: #767676;
    margin: 0 -15px;
    display: flex;
    flex-wrap: wrap;
}
@media (min-width: 992px) {
    .footer-menu {
        font-size: 16px;
    }
}
.footer-menu__col {
    width: 50%;
    padding: 0 15px;
    margin-bottom: 20px;
    text-align: center;
}
@media (min-width: 768px) {
    .footer-menu__col {
        width: 25%;
    }
}
@media (min-width: 992px) {
    .footer-menu__col {
        margin-bottom: 0;
        text-align: left;
    }
}
.footer-menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.footer-menu a {
    color: #767676;
}
.footer-menu a:hover {
    color: #767676;
    text-decoration: underline;
}
.footer-menu .active {
    color: #767676;
    text-decoration: underline;
}
.footer-menu h5 {
    margin: 0 0 0.6em;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 700;
    font-family: "Open Sans", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
    text-transform: uppercase;
}
@media (min-width: 992px) {
    .footer-menu h5 {
        margin: 0 0 1em;
        font-size: 16px;
    }
}

.btn {
    padding: 12px 15px;
    min-width: 200px;
    border-radius: 99px;
    display: inline-block;
    font-size: 16px;
    line-height: 24px;
    vertical-align: top;
    text-align: center;
    background: rgba(240, 25, 25, 0.8);
    color: #fff;
    text-transform: uppercase;
    text-shadow: 0 2px 0 rgba(130, 10, 9, 0.25);
    transition: all 0.5s;
}
@media (min-width: 992px) {
    .btn {
        padding: 18px 15px;
        min-width: 250px;
        font-size: 20px;
        line-height: 24px;
    }
}
@media (min-width: 1500px) {
    .btn {
        padding: 24px 30px;
        min-width: 308px;
        font-size: 24px;
        line-height: 28px;
    }
}
.btn:focus,
.btn:hover {
    color: #fff;
    box-shadow: 0 0 30px rgba(240, 25, 25, 0.3);
}
.btn--gray {
    background: #615b58;
}
.btn--download {
    position: relative;
    display: inline-flex;
    align-items: center;
    padding: 9px 25px;
}
@media (min-width: 1500px) {
    .btn--download {
        padding: 9px 37px;
    }
}
.btn--download:after {
    margin-left: 20px;
    display: block;
    width: 30px;
    height: 30px;
    content: "";
    background: url("../themes/my3dgirlfriends2/assets/images/icon-04.png") no-repeat;
    background-size: contain;
}
@media (min-width: 1500px) {
    .btn--download:after {
        width: 46px;
        height: 46px;
    }
}
.btn--download span {
    position: relative;
    top: 2px;
}
.btn-sm {
    border-radius: 0;
    padding: 4px 10px;
}

.btn-group {
    margin: 0 -5px -10px;
    display: flex;
    flex-wrap: wrap;
}
.btn-group .btn {
    margin: 0 5px 10px;
}

.hero-section {
    position: relative;
    height: 100vh;
    min-height: 400px;
}
.hero-section video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
}
.hero-section__button {
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    text-align: center;
}
.hero-section__footer {
    position: absolute;
    inset: auto 0 7vh 0;
    text-align: center;
}
.hero-section__footer img {
    width: 100px;
}
@media (min-width: 992px) {
    .hero-section__footer img {
        width: 150px;
    }
}
@media (min-width: 1200px) {
    .hero-section__footer img {
        width: auto;
    }
}

.full-image {
    display: flex;
    align-items: center;
    position: relative;
    background-size: cover;
    background-position: 50% 50%;
    padding: 80px 0;
}
@media (min-width: 992px) {
    .full-image {
        min-height: 100vh;
    }
}
.full-image:after {
    pointer-events: none;
    position: absolute;
    inset: 0 0 0 0;
    content: "";
    background: linear-gradient(
        to right,
        rgba(0, 0, 0, 0.6) 0%,
        rgba(0, 0, 0, 0.6) 30%,
        rgba(0, 0, 0, 0) 100%
    );
}
@media (min-width: 768px) {
    .full-image:after {
        background: linear-gradient(
            to right,
            rgba(0, 0, 0, 0.6) 0%,
            rgba(0, 0, 0, 0.6) 30%,
            rgba(0, 0, 0, 0) 70%,
            rgba(0, 0, 0, 0) 100%
        );
    }
}
.full-image--reverse .container {
    flex-direction: row-reverse;
}
.full-image--reverse:after {
    background: linear-gradient(
        to left,
        rgba(0, 0, 0, 0.6) 0%,
        rgba(0, 0, 0, 0.6) 30%,
        rgba(0, 0, 0, 0) 100%
    );
}
@media (min-width: 768px) {
    .full-image--reverse:after {
        background: linear-gradient(
            to left,
            rgba(0, 0, 0, 0.6) 0%,
            rgba(0, 0, 0, 0.6) 30%,
            rgba(0, 0, 0, 0) 70%,
            rgba(0, 0, 0, 0) 100%
        );
    }
}
@media (min-width: 992px) {
    .full-image--small {
        min-height: 450px;
    }
}
@media (min-width: 1200px) {
    .full-image--small {
        min-height: 650px;
    }
}
@media (max-width: 767px) {
    .full-image--small:after {
        background: linear-gradient(
            to right,
            rgba(0, 0, 0, 0.6) 0%,
            rgba(0, 0, 0, 0.6) 90%,
            rgba(0, 0, 0, 0) 100%
        );
    }
}
@media (max-width: 767px) {
    .full-image--small.full-image--reverse:after {
        background: linear-gradient(
            to left,
            rgba(0, 0, 0, 0.6) 0%,
            rgba(0, 0, 0, 0.6) 90%,
            rgba(0, 0, 0, 0) 100%
        );
    }
}
.full-image .container {
    display: flex;
}
.full-image__content {
    position: relative;
    z-index: 2;
    width: 100%;
}
@media (min-width: 768px) {
    .full-image__content {
        width: 65%;
    }
}
@media (min-width: 992px) {
    .full-image__content {
        width: 50%;
    }
}
.full-image p:last-child {
    margin-bottom: 0;
}

.popup-holder {
    position: relative;
    overflow: hidden;
    height: 0;
}

.fancybox-is-open .fancybox-bg {
    opacity: 0.7;
}

.fancybox-bg {
    background: #000;
}

.fancybox-slide--html .fancybox-close-small {
    padding: 0;
    position: fixed;
    top: 12px;
    right: 12px;
}

.play-now {
    padding: 30px;
    max-width: 468px;
    width: 90%;
    border-radius: 20px;
    background: #1d1d1d;
}
@media (min-width: 992px) {
    .play-now {
        border-radius: 30px;
    }
}
@media (min-width: 1200px) {
    .play-now {
        border-radius: 50px;
        padding: 76px 80px;
    }
}

.buttons {
    display: grid;
    grid-gap: 16px;
}
@media (min-width: 992px) {
    .buttons {
        grid-gap: 24px;
    }
}

.settings-modal-wrap {
    max-width: 340px;
    padding: 15px;
    width: 90%;
    background: rgba(32, 32, 32, 0.9);
    box-shadow: 0 0 30px rgba(16, 25, 32, 0.3);
    border-radius: 20px;
}
@media (min-width: 768px) {
    .settings-modal-wrap {
        max-width: 350px;
    }
}
@media (min-width: 992px) {
    .settings-modal-wrap {
        padding: 20px;
        border-radius: 30px;
        max-width: 400px;
    }
}
@media (min-width: 1200px) {
    .settings-modal-wrap {
        padding: 30px;
    }
}
@media (min-width: 1500px) {
    .settings-modal-wrap {
        padding: 34px 50px;
        max-width: 590px;
        border-radius: 50px;
    }
}
.settings-modal-wrap--congratulations .create-profile-text__title {
    margin-bottom: 15px;
    display: block;
}
.settings-modal-wrap--congratulations .settings-modal__footer {
    justify-content: center;
}

.settings-modal__header {
    text-align: center;
    border-bottom: 1px solid #615b58;
    padding-bottom: 15px;
}
@media (min-width: 992px) {
    .settings-modal__header {
        padding-bottom: 34px;
    }
}
.settings-modal__content {
    padding: 15px 4%;
}
@media (min-width: 992px) {
    .settings-modal__content {
        padding: 35px 5%;
    }
}
@media (min-width: 1500px) {
    .settings-modal__content {
        padding: 35px 12%;
    }
}
.settings-modal__footer {
    padding-top: 15px;
    display: flex;
    align-items: center;
    flex-direction: column-reverse;
    justify-content: space-between;
    border-top: 1px solid #615b58;
}
@media (min-width: 576px) {
    .settings-modal__footer {
        flex-direction: row;
    }
}
@media (min-width: 992px) {
    .settings-modal__footer {
        padding-top: 40px;
    }
}
.settings-modal .back {
    display: inline-block;
    color: #615b58;
    text-decoration: underline;
    margin-top: 15px;
}
@media (min-width: 576px) {
    .settings-modal .back {
        margin: 0 10px 0 0;
    }
}

.settings-title {
    display: inline-flex;
    align-items: center;
    color: #fff;
    font-size: 12px;
    line-height: 22px;
}
@media (min-width: 1500px) {
    .settings-title {
        font-size: 16px;
    }
}
.settings-title__visual {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    width: 18px;
    height: 18px;
    margin: 0 5px 0 0;
}
@media (min-width: 1500px) {
    .settings-title__visual {
        min-width: 22px;
        width: 22px;
        height: 22px;
    }
}
.settings-title__text {
    font-style: italic;
}

.settings-list {
    margin: 0;
    padding: 0;
    list-style: none;
    text-transform: uppercase;
    font-size: 12px;
    line-height: 1.5;
}
@media (min-width: 992px) {
    .settings-list {
        font-size: 16px;
    }
}
.settings-list > li {
    position: relative;
    padding-left: 24px;
}
.settings-list > li:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "—";
    color: #fff;
}
.settings-list a {
    color: #fff;
}
.settings-list a:hover {
    text-decoration: underline;
    color: #f01919;
}

.create-profile-text {
    text-align: center;
    font-size: 24px;
    line-height: 1;
    color: #fff;
    padding: 25px 0;
}
@media (min-width: 768px) {
    .create-profile-text {
        font-size: 28px;
    }
}
@media (min-width: 1500px) {
    .create-profile-text {
        font-size: 34px;
        padding: 52px 0;
    }
}
.create-profile-text__title {
    text-transform: uppercase;
    color: #f01919;
}
.create-profile-text p {
    margin: 0;
}

@media (min-width: 1500px) {
    .list-settings-wrap {
        padding: 0 0 0 19px;
    }
}

.create-your-sex-doll {
    position: relative;
    min-height: 100vh;
    padding: 80px 0 50px;
}
@media (min-width: 992px) {
    .create-your-sex-doll {
        padding: 117px 0 50px;
    }
}
.create-your-sex-doll video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 0;
}
.create-your-sex-doll .container {
    max-width: 100%;
    position: relative;
    z-index: 2;
}
@media (min-width: 1200px) {
    .create-your-sex-doll .container {
        padding: 0 80px;
    }
}
.create-your-sex-doll .container--flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.box-settings {
    max-width: 350px;
    width: 100%;
    background: rgba(32, 32, 32, 0.9);
    box-shadow: 0 0 30px rgba(16, 25, 32, 0.3);
    border-radius: 20px;
    overflow: hidden;
}
@media (min-width: 768px) {
    .box-settings {
        max-width: 440px;
    }
}
@media (min-width: 992px) {
    .box-settings {
        border-radius: 30px;
        max-width: 500px;
    }
}
@media (min-width: 1200px) {
    .box-settings {
        border-radius: 50px;
    }
}
@media (min-width: 1500px) {
    .box-settings {
        max-width: 727px;
    }
}
.box-settings__head-element {
    padding: 5px 20px;
    display: inline-block;
    vertical-align: top;
    background: #5c5c5c;
    color: #fff;
    text-transform: uppercase;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 18px;
    line-height: 1;
    border-radius: 0 0 20px 0;
}
@media (min-width: 992px) {
    .box-settings__head-element {
        font-size: 20px;
        padding: 15px 30px;
        border-radius: 0 0 30px 0;
    }
}
@media (min-width: 1500px) {
    .box-settings__head-element {
        font-size: 24px;
        padding: 19px 55px;
        border-radius: 0 0 40px 0;
    }
}
.box-settings__container {
    padding: 15px 15px;
}
@media (min-width: 992px) {
    .box-settings__container {
        padding: 20px 20px;
    }
}
@media (min-width: 1200px) {
    .box-settings__container {
        padding: 20px 30px 25px;
    }
}
@media (min-width: 1500px) {
    .box-settings__container {
        padding: 42px 80px 50px;
    }
}
.box-settings__row {
    padding: 0 0 20px;
    border-bottom: 1px solid #615b58;
    margin-bottom: 20px;
}
@media (min-width: 768px) {
    .box-settings__row {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }
}
@media (min-width: 1200px) {
    .box-settings__row {
        padding: 0 0 40px;
        margin-bottom: 40px;
    }
}
.box-settings__row--add {
    border: 0;
    margin: 0 0 3px;
}
.box-settings__col:first-child {
    width: 100%;
    margin-bottom: 15px;
}
@media (min-width: 768px) {
    .box-settings__col:first-child {
        width: 30%;
        min-width: 30%;
        padding: 0 10px 0 2.6%;
        margin-bottom: 0;
    }
}
@media (min-width: 1500px) {
    .box-settings__col:first-child {
        width: 25%;
        min-width: 25%;
    }
}
.box-settings__col:nth-child(2) {
    width: 100%;
}
@media (min-width: 768px) {
    .box-settings__col:nth-child(2) {
        width: 70%;
        flex-grow: 1;
    }
}
@media (min-width: 1500px) {
    .box-settings__col:nth-child(2) {
        width: 75%;
    }
}
.box-settings__point-result {
    text-align: center;
}
.box-settings input.box-settings__name {
    display: block;
    width: 100%;
    padding: 15px;
    text-align: center;
    text-transform: uppercase;
    background: #141414;
    color: #fff;
    border-radius: 99px;
    font-size: 24px;
    line-height: 1.25;
    border: 0;
}
.box-settings input.box-settings__name:not(textarea) {
    height: 60px;
}
.box-settings__footer {
    display: flex;
    align-items: center;
    flex-direction: column-reverse;
    justify-content: space-between;
}
@media (min-width: 768px) {
    .box-settings__footer {
        flex-direction: row;
    }
}
.box-settings .back {
    display: inline-block;
    color: #615b58;
    text-decoration: underline;
    margin-top: 15px;
}
@media (min-width: 768px) {
    .box-settings .back {
        margin: 0 10px 0 0;
    }
}
.box-settings .btn {
    min-width: 220px;
    padding: 16px 15px;
}
@media (min-width: 1500px) {
    .box-settings .btn {
        font-size: 30px;
        line-height: 30px;
        padding: 23px 30px;
    }
}

.settings-box {
    width: 100%;
    font-size: 12px;
    line-height: 1.2;
    padding: 20px 0 0;
}
@media (min-width: 576px) {
    .settings-box {
        font-size: 16px;
    }
}
@media (min-width: 1200px) {
    .settings-box {
        padding: 40px 0 0 0;
    }
}
.settings-box #list-range {
    margin: 0;
    padding: 0;
    list-style: none;
}
.settings-box #list-range > li {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin: 0 0 18px;
}
.settings-box #list-range .range {
    height: 20px;
    display: block;
    width: 170px;
}
@media (min-width: 768px) {
    .settings-box #list-range .range {
        width: 230px;
    }
}
@media (min-width: 1500px) {
    .settings-box #list-range .range {
        width: 305px;
    }
}
.settings-box #list-range .range-text {
    margin-right: 15px;
    text-transform: uppercase;
    pointer-events: none;
}
.settings-box #list-range .range-num {
    display: block;
    min-width: 40px;
    text-align: right;
    pointer-events: none;
}
@media (min-width: 576px) {
    .settings-box #list-range .range-num {
        min-width: 55px;
    }
}
.settings-box #list-range .range-handle {
    height: 100%;
    display: block;
    cursor: pointer;
    position: relative;
}
.settings-box #list-range .hendler {
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(50%, -50%);
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #f01919;
    border: 2px solid #fff;
    pointer-events: initial;
    cursor: pointer;
}
.settings-box__row {
    margin: 0 0 13px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.settings-box__row-col:first-child {
    width: 31%;
    padding: 0 8px 0 0;
    text-align: right;
}
.settings-box__row-col:nth-child(2) {
    flex-grow: 1;
}
.settings-box__row-col:last-child {
    width: 65px;
    padding: 0 0 0 5px;
    text-align: right;
}
.settings-box__label {
    text-transform: uppercase;
}

.number-settings {
    color: #f01919;
    font-weight: 700;
}

.list-settings {
    margin: 0 -10px -20px;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
}
@media (min-width: 1500px) {
    .list-settings {
        margin: 0 -19px -30px;
    }
}
.list-settings > li {
    width: 33.3333333333%;
    padding: 0 10px 20px;
}
@media (min-width: 1500px) {
    .list-settings > li {
        width: 130px;
        padding: 0 19px 24px;
    }
}

.avatar {
    position: relative;
    display: block;
    width: 100%;
    padding-top: 100%;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid transparent;
    transition: all 0.5s;
}
.avatar img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
}
.disabled .avatar img {
    filter: blur(3px);
}
.avatar:hover {
    border-color: #f01919;
    box-shadow: 0 0 30px rgba(255, 255, 255, 0.4);
}
.active .avatar {
    border-color: #fff;
}

.step-title {
    position: relative;
    display: flex;
    font-weight: 700;
    font-size: 12px;
    line-height: 1.125;
}
@media (min-width: 992px) {
    .step-title {
        font-size: 14px;
    }
}
@media (min-width: 1200px) {
    .step-title {
        font-size: 16px;
    }
}
.step-title__num {
    color: #f01919;
    margin: 0 4px 0 0;
}
.step-title i {
    margin: 0 0 0 4px;
}

.box-fantasy {
    padding: 15px;
    max-width: 350px;
    width: 100%;
    overflow: hidden;
    text-align: center;
    border-radius: 20px;
    background: rgba(32, 32, 32, 0.9);
    box-shadow: 0 0 30px rgba(16, 25, 32, 0.3);
    font-size: 20px;
    line-height: 1.3;
}
@media (min-width: 768px) {
    .box-fantasy {
        padding: 20px;
        max-width: 330px;
    }
}
@media (min-width: 992px) {
    .box-fantasy {
        max-width: 400px;
        padding: 30px;
        border-radius: 30px;
        font-size: 23px;
    }
}
@media (min-width: 1200px) {
    .box-fantasy {
        font-size: 30px;
        max-width: 480px;
    }
}
@media (min-width: 1500px) {
    .box-fantasy {
        font-size: 30px;
        padding: 74px 80px 78px;
        border-radius: 40px;
        max-width: 600px;
    }
}
.box-fantasy__content {
    padding: 0 5%;
}
@media (min-width: 1200px) {
    .box-fantasy__content {
        padding: 0 5% 35px;
    }
}
.box-fantasy__footer {
    padding: 30px 0 0;
    border-top: 1px solid #615b58;
}
.box-fantasy .btn {
    min-width: 220px;
    padding: 16px 20px;
    width: 90%;
}
@media (min-width: 1500px) {
    .box-fantasy .btn {
        font-size: 30px;
        line-height: 30px;
        padding: 23px 20px;
        max-width: 308px;
    }
}

.upload {
    display: flex;
    z-index: 999;
    inset: 0 0 0 0;
    align-items: center;
    position: fixed;
    background-image: url("../themes/my3dgirlfriends2/assets/images/bg-upload.jpg");
    background-size: cover;
    background-position: 50% 50%;
    opacity: 1;
    transition: all 0.5s;
}
.loaded .upload {
    opacity: 0;
    visibility: hidden;
}
.upload__box {
    width: 90%;
    margin: 0 auto;
}
@media (min-width: 1500px) {
    .upload__box {
        width: auto;
        padding-left: 40px;
    }
}
.upload__head {
    display: flex;
    align-items: flex-end;
}
.upload__txt {
    font-size: 8px;
    color: #615b58;
    min-width: 73px;
    margin-left: 8px;
    padding-bottom: 35px;
    font-style: italic;
    display: none;
}
@media (min-width: 992px) {
    .upload__txt {
        display: inline-block;
        min-width: 112px;
        font-size: 8px;
    }
}
.upload__footer {
    padding: 15px 0 0;
    font-size: 9px;
    line-height: 1.875;
    color: #615b58;
    text-align: center;
}
@media (min-width: 768px) {
    .upload__footer {
        padding: 20px 0 0;
        font-size: 13px;
    }
}
@media (min-width: 992px) {
    .upload__footer {
        padding: 30px 0 0;
        font-size: 16px;
    }
}
@media (min-width: 1500px) {
    .upload__footer {
        padding: 43px 0 0;
    }
}
.upload__footer span {
    display: inline-block;
    vertical-align: middle;
    border-left: 4px solid #f01919;
    padding: 0 12px;
}

.progress-bar-wrap {
    position: relative;
    display: flex;
    align-items: center;
    padding-left: 15%;
    margin: -8px 0 0;
}
@media (min-width: 992px) {
    .progress-bar-wrap {
        margin: -18px 0 0;
    }
}
.progress-bar-wrap .proress-line {
    position: relative;
    width: calc(100% - 73px);
    height: 8px;
    border-radius: 20px;
    background: #141414;
    padding: 2px;
    position: relative;
    overflow: hidden;
}
@media (min-width: 992px) {
    .progress-bar-wrap .proress-line {
        padding: 9px;
        height: 26px;
        width: calc(100% - 128px);
    }
}
@media (min-width: 1500px) {
    .progress-bar-wrap .proress-line {
        width: calc(100% - 147px);
    }
}
.progress-bar-wrap #progress-number {
    color: #fff;
    margin: 0 0 0 8px;
    font-size: 25px;
    min-width: 65px;
}
@media (min-width: 992px) {
    .progress-bar-wrap #progress-number {
        font-size: 40px;
        margin: 0 0 0 15px;
        min-width: 112px;
    }
}
@media (min-width: 1500px) {
    .progress-bar-wrap #progress-number {
        font-size: 54px;
    }
}
.progress-bar-wrap #progress-bar {
    position: relative;
    height: 4px;
    background: radial-gradient(
        circle at center,
        #f01919 0%,
        #f01919 2px,
        rgba(240, 25, 25, 0) 2px,
        rgba(240, 25, 25, 0) 100%
    );
    background-repeat: repeat-x;
    background-size: 7px 4px;
}
@media (min-width: 992px) {
    .progress-bar-wrap #progress-bar {
        height: 8px;
        background: radial-gradient(
            circle at center,
            #f01919 0%,
            #f01919 4px,
            rgba(240, 25, 25, 0) 4px,
            rgba(240, 25, 25, 0) 100%
        );
        background-repeat: repeat-x;
        background-size: 13px 8px;
    }
}
.progress-bar-wrap #progress-bar:after {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    content: "";
    background: linear-gradient(
        to right,
        rgb(20, 20, 20) 0%,
        rgba(20, 20, 20, 0) 100%
    );
}

.js-tab-hidden {
    display: block !important;
    left: -9999px !important;
    position: absolute !important;
    top: -9999px !important;
}

.create-your-sex-doll .tab-content {
    position: fixed;
    inset: 0 0 0 0;
}
.create-your-sex-doll .tab-content .tab-hold {
    position: absolute;
    inset: 0 0 0 0;
}
.create-your-sex-doll .tab-content .tab-hold video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
}

@media (min-width: 992px) {
    .settings {
        max-width: 350px;
        overflow: hidden;
        padding: 20px;
        border-radius: 30px;
        max-width: 400px;
        box-shadow: 0 0 30px rgba(16, 25, 32, 0.3);
        background: rgba(32, 32, 32, 0.9);
        border-radius: 20px;
    }
}
@media (min-width: 1200px) {
    .settings {
        padding: 30px;
    }
}
@media (min-width: 1500px) {
    .settings {
        padding: 34px 50px;
        max-width: 590px;
        border-radius: 50px;
    }
}
.settings__row {
    padding: 0 0 20px;
    border-bottom: 1px solid #615b58;
    margin-bottom: 20px;
}
@media (min-width: 768px) {
    .settings__row {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }
}
@media (min-width: 1200px) {
    .settings__row {
        padding: 0 0 40px;
        margin-bottom: 40px;
    }
}
.settings__header {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #615b58;
}
@media (min-width: 1500px) {
    .settings__header {
        padding-bottom: 35px;
        margin-bottom: 36px;
    }
}
.settings__center {
    padding: 0 0 20px;
    margin-bottom: 20px;
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #615b58;
}
@media (min-width: 1500px) {
    .settings__center {
        padding: 0 5% 31px;
        margin-bottom: 34px;
    }
}
.settings__title {
    display: block;
}
@media (max-width: 991px) {
    .settings__footer {
        position: fixed;
        bottom: 0;
        left: 105px;
        right: 105px;
        overflow: auto;
        padding: 0 0 20px;
    }
}
@media (max-width: 767px) {
    .settings__footer {
        left: 55px;
        right: 55px;
    }
}
@media (max-width: 991px) {
    .settings__footer .settings__title {
        display: none;
    }
}

.range {
    position: relative;
    height: 20px;
    background: linear-gradient(
        to right,
        rgba(255, 255, 255, 0.8) 0%,
        rgba(255, 255, 255, 0.8) 2px,
        rgba(255, 255, 255, 0) 2px,
        rgba(255, 255, 255, 0) 100%
    );
    background-repeat: repeat-x;
    background-size: 7px 2px;
    background-position: 0 50%;
}
.range__handler {
    position: absolute;
    width: 20px;
    height: 20px;
    margin: 0;
    z-index: 1;
    top: 50%;
    border-radius: 50%;
    background: #f01919;
    border: 3px solid #948b87;
    box-shadow: inset 0 0 0 3px #141414;
    transform: translate(-50%, -50%);
}

.camera {
    padding: 15px 0;
    position: absolute;
    left: 0;
    top: 10vh;
    border-radius: 0 15px 15px 0;
    width: 48px;
}
@media (min-width: 768px) {
    .camera {
        top: 0;
        padding: 22px 0;
        width: 100px;
        border-radius: 0 40px 40px 0;
    }
}
@media (min-width: 992px) {
    .camera {
        padding: 0;
        width: auto;
        position: static;
        border-radius: 0;
    }
}
@media (orientation: landscape) and (max-width: 767px) {
    .camera {
        top: 0;
    }
}
.camera__visual {
    display: block;
}
@media (min-width: 992px) {
    .camera__visual {
        margin: 24px 0 0;
        width: 200px;
    }
}
@media (min-width: 1500px) {
    .camera__visual {
        width: auto;
    }
}
@media (max-width: 991px) {
    .camera {
        display: block;
        background: rgba(32, 32, 32, 0.9);
        box-shadow: 0 0 30px rgba(16, 25, 32, 0.3);
    }
}
@media (max-width: 991px) {
    .camera .settings__title {
        text-align: center;
        padding: 0 5px;
        margin-bottom: 20px;
        line-height: 1.2;
    }
}
@media (max-width: 767px) {
    .camera .settings__title {
        margin-bottom: 10px;
        font-size: 12px;
    }
}
@media (max-width: 991px) {
    .camera .mob-hidden {
        display: none;
    }
}

.camera-settings-mobile {
    text-align: center;
}
@media (min-width: 992px) {
    .camera-settings-mobile {
        display: none;
    }
}

.list-camera-point {
    margin: 0 0 10px;
    padding: 0 0 10px;
    list-style: none;
    border-bottom: 1px solid #615b58;
}
@media (min-width: 768px) {
    .list-camera-point {
        margin: 0 0 20px;
        padding: 0 0 22px;
    }
}
.list-camera-point > li + li {
    margin-top: 8px;
}
@media (min-width: 768px) {
    .list-camera-point > li + li {
        margin-top: 13px;
    }
}
.list-camera-point span {
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #615b58;
    color: #fff;
}
@media (min-width: 768px) {
    .list-camera-point span {
        width: 30px;
        height: 30px;
    }
}
.list-camera-point .active span {
    background: #f01919;
}

.zoom-list {
    margin: 0 0 10px;
    padding: 0 0 10px;
    list-style: none;
    border-bottom: 1px solid #615b58;
}
@media (min-width: 768px) {
    .zoom-list {
        margin: 0 0 20px;
        padding: 0 0 22px;
    }
}
.zoom-list > li + li {
    margin-top: 8px;
}
@media (min-width: 768px) {
    .zoom-list > li + li {
        margin-top: 13px;
    }
}
.zoom-list span {
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #615b58;
    color: #fff;
}
@media (min-width: 768px) {
    .zoom-list span {
        width: 30px;
        height: 30px;
    }
}

.controller {
    padding: 0 5px;
}

.camera-title {
    display: inline-block;
    margin: 0 0 10px;
    color: #fff;
    font-size: 10px;
    line-height: 1.2;
}
@media (min-width: 768px) {
    .camera-title {
        font-size: 12px;
        margin: 0 0 22px;
    }
}

.intensity {
    padding: 25px 0;
    position: absolute;
    right: 0;
    top: 30vh;
    border-radius: 15px 0 0 15px;
    width: 48px;
}
@media (min-width: 768px) {
    .intensity {
        padding: 45px 0;
        width: 100px;
        border-radius: 40px 0 0 40px;
    }
}
@media (min-width: 992px) {
    .intensity {
        padding: 0;
        right: auto;
        top: auto;
        position: relative;
        border-radius: 0;
    }
}
@media (orientation: landscape) and (max-width: 991px) {
    .intensity {
        top: 200px;
    }
}
@media (orientation: landscape) and (max-width: 767px) {
    .intensity {
        top: 130px;
    }
}
@media (max-width: 991px) {
    .intensity .settings__title {
        display: none;
    }
}
.intensity__visual {
    text-align: center;
    display: block;
    width: 20px;
    margin: 0 auto;
}
@media (min-width: 768px) {
    .intensity__visual {
        width: 24px;
    }
}
@media (min-width: 992px) {
    .intensity__visual {
        width: 28px;
    }
}
@media (min-width: 1500px) {
    .intensity__visual {
        width: auto;
    }
}
.intensity__list {
    pointer-events: none;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin: 0;
    padding: 0;
    list-style: none;
    position: absolute;
    right: calc(100% - 5px);
    top: 68px;
    bottom: 40px;
    text-align: right;
    font-size: 12px;
    line-height: 1;
    font-style: italic;
}
@media (max-width: 991px) {
    .intensity__list {
        top: 12px;
        bottom: 12px;
        right: 50%;
        transform: translateX(50%);
    }
}
@media (max-width: 767px) {
    .intensity__list {
        font-size: 10px;
    }
}
@media (max-width: 991px) {
    .intensity__list > li:nth-child(2) {
        display: none;
    }
}
@media (max-width: 991px) {
    .intensity {
        display: block;
        position: absolute;
        right: 0;
        background: rgba(32, 32, 32, 0.9);
        box-shadow: 0 0 30px rgba(16, 25, 32, 0.3);
    }
}

.list-openers {
    margin: 0;
    padding: 15px 0;
    list-style: none;
    top: 10vh;
    width: 48px;
    border-radius: 15px 0 0 15px;
}
@media (min-width: 768px) {
    .list-openers {
        top: 0;
        padding: 33px 0;
        border-radius: 40px 0 0 40px;
        width: 100px;
    }
}
@media (min-width: 992px) {
    .list-openers {
        width: auto;
        top: auto;
        display: flex;
        flex-wrap: wrap;
        padding: 0;
        margin: 0 -10px;
        border-radius: 0;
    }
}
@media (orientation: landscape) and (max-width: 767px) {
    .list-openers {
        top: 0;
    }
}
.list-openers > li {
    padding: 0 15px;
}
@media (min-width: 768px) {
    .list-openers > li {
        padding: 0 39px;
    }
}
@media (min-width: 992px) {
    .list-openers > li {
        width: 33.3333333333%;
        padding: 0 10px;
    }
}
.list-openers > li + li {
    margin-top: 15px;
}
@media (min-width: 768px) {
    .list-openers > li + li {
        margin-top: 35px;
    }
}
@media (min-width: 992px) {
    .list-openers > li + li {
        margin-top: 0;
    }
}
@media (max-width: 991px) {
    .list-openers {
        display: block;
        position: absolute;
        right: 0;
        background: rgba(32, 32, 32, 0.9);
        box-shadow: 0 0 30px rgba(16, 25, 32, 0.3);
    }
}

.opener-settings {
    display: flex;
    align-items: center;
    color: #fff;
    font-size: 12px;
    line-height: 22px;
}
@media (min-width: 1500px) {
    .opener-settings {
        font-size: 16px;
    }
}
.opener-settings:focus {
    color: #fff;
}
.opener-settings:hover {
    color: #f01919;
}
.opener-settings__visual {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    width: 18px;
    height: 18px;
}
@media (min-width: 992px) {
    .opener-settings__visual {
        margin: 0 5px 0 0;
    }
}
@media (min-width: 1500px) {
    .opener-settings__visual {
        min-width: 22px;
        width: 22px;
        height: 22px;
    }
}
.opener-settings__text {
    display: none;
    font-style: italic;
}
@media (min-width: 992px) {
    .opener-settings__text {
        display: inline;
    }
}

.tabset-settings {
    margin: 18px 0 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
}
@media (max-width: 991px) {
    .tabset-settings {
        flex-wrap: nowrap;
    }
}
.tabset-settings > li {
    width: 20%;
    margin: 0 0 7px;
}
@media (max-width: 991px) {
    .tabset-settings > li {
        min-width: 48px;
        margin: 0;
    }
}
.tabset-settings > li:hover .disabled {
    color: #948b87;
}
@media (min-width: 992px) {
    .tabset-settings > li:hover .disabled:before {
        opacity: 1;
        visibility: visible;
    }
}
.tabset-settings a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    font-size: 40px;
    width: 40px;
    height: 40px;
    color: #fff;
    transition: all 0.5s;
}
@media (min-width: 1500px) {
    .tabset-settings a {
        font-size: 81px;
        width: 81px;
        height: 81px;
    }
}
.tabset-settings a:after {
    content: "\e90f";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.8);
    font-size: inherit;
    line-height: inherit;
    color: #fff;
    font-family: "icomoon";
    opacity: 0;
    transition: all 0.5s;
}
.tabset-settings a:hover {
    color: #fff;
    text-shadow: 0 0 30px rgba(240, 25, 25, 0.5);
}
.tabset-settings a.active {
    color: #f01919;
    text-shadow: 0 0 30px rgba(240, 25, 25, 0.5);
}
.tabset-settings a.active:after {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
}
.tabset-settings a.active:before,
.tabset-settings a:hover:before {
    opacity: 1;
    visibility: visible;
}
.tabset-settings a.disabled {
    color: #615b58;
}
@media (min-width: 992px) {
    .tabset-settings a.disabled:before {
        color: #202020;
        opacity: 0;
        visibility: hidden;
        background: #948b87;
    }
}
@media (min-width: 992px) {
    .tabset-settings a:before {
        opacity: 0;
        visibility: hidden;
        position: absolute;
        z-index: 5;
        left: 50%;
        bottom: calc(100% + 4px);
        transform: translateX(-50%);
        padding: 5px 8px;
        text-transform: uppercase;
        white-space: nowrap;
        font-size: 10px;
        font-weight: 700;
        color: #fff;
        letter-spacing: 0.05em;
        line-height: 1;
        content: attr(data-title);
        background: #f01919;
        border-radius: 8px;
        transition: all 0.5s;
    }
}

.my-profile {
    display: none;
    max-width: 250px;
    padding: 15px;
    width: 100%;
    background: rgba(32, 32, 32, 0.9);
    box-shadow: 0 0 30px rgba(16, 25, 32, 0.3);
    border-radius: 20px;
    overflow: hidden;
}
@media (min-width: 768px) {
    .my-profile {
        max-width: 250px;
    }
}
@media (min-width: 992px) {
    .my-profile {
        display: block;
        padding: 20px;
        border-radius: 30px;
        max-width: 350px;
    }
}
@media (min-width: 1200px) {
    .my-profile {
        padding: 30px;
    }
}
@media (min-width: 1500px) {
    .my-profile {
        padding: 38px 50px 40px;
        max-width: 496px;
        border-radius: 50px;
        margin-right: 104px;
    }
}
.my-profile .avatar {
    display: block;
    padding: 0;
    margin: 0 auto 15px;
    width: 100px;
    height: 100px;
    border: 5px solid #1a1a1a;
}
@media (min-width: 1200px) {
    .my-profile .avatar {
        margin: 0 auto 26px;
        width: 168px;
        height: 168px;
        border-width: 10px;
    }
}
.my-profile__name {
    margin: 0 0 15px;
    text-align: center;
    font-size: 18px;
    line-height: 1.2;
    text-transform: uppercase;
    font-weight: 700;
}
@media (min-width: 1200px) {
    .my-profile__name {
        margin: 0 0 41px;
        font-size: 24px;
    }
}
.my-profile .settings-box {
    padding: 0;
    margin: 0 0 24px;
    font-size: 11px;
}
@media (min-width: 1200px) {
    .my-profile .settings-box {
        font-size: 16px;
    }
}
.my-profile .settings-box__row-col:first-child {
    padding-right: 20px;
    width: 35%;
}
@media (min-width: 1500px) {
    .my-profile .settings-box__row-col:first-child {
        width: 28%;
    }
}
.my-profile .settings-box__row-col:last-child {
    width: 34px;
}
@media (min-width: 1200px) {
    .my-profile .settings-box__row-col:last-child {
        width: 54px;
    }
}
.my-profile .settings-box__row {
    margin-bottom: 5px;
}
@media (min-width: 1200px) {
    .my-profile .settings-box__row {
        margin-bottom: 13px;
    }
}
.my-profile .jcf-range .jcf-range-handle {
    width: 20px;
    height: 20px;
    border: 3px solid #948b87;
    box-shadow: inset 0 0 0 3px #141414;
    transform: translate(-50%, -50%);
}
@media (min-width: 1200px) {
    .my-profile .jcf-range .jcf-range-handle {
        width: 30px;
        height: 30px;
        border-width: 5px;
        box-shadow: inset 0 0 0 4px #141414;
    }
}
.my-profile__footer {
    text-align: center;
    padding: 20px 0 0;
    border-top: 1px solid #615b58;
}
@media (min-width: 1200px) {
    .my-profile__footer {
        padding: 42px 0 0;
    }
}

.create-account {
    padding: 25px 15px;
    max-width: 300px;
    width: 90%;
    overflow: hidden;
    text-align: center;
    border-radius: 20px;
    font-size: 20px;
    line-height: 1;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background: rgba(32, 32, 32, 0.9);
    box-shadow: 0 0 30px rgba(16, 25, 32, 0.3);
}
@media (min-width: 768px) {
    .create-account {
        padding: 25px 20px;
    }
}
@media (min-width: 992px) {
    .create-account {
        padding: 30px;
        border-radius: 30px;
        font-size: 20px;
    }
}
@media (min-width: 1200px) {
    .create-account {
        font-size: 24px;
        max-width: 400px;
    }
}
@media (min-width: 1500px) {
    .create-account {
        padding: 74px 80px 78px;
        border-radius: 40px;
        max-width: 495px;
    }
}
.create-account .avatar {
    display: block;
    padding: 0;
    margin: 0 auto 25px;
    width: 100px;
    height: 100px;
    border: 5px solid #1a1a1a;
}
@media (min-width: 1200px) {
    .create-account .avatar {
        margin: 0 auto 30px;
        width: 168px;
        height: 168px;
        border-width: 10px;
    }
}
.create-account__name {
    margin: 0 0 20px;
    text-align: center;
    font-size: 18px;
    line-height: 1.2;
    text-transform: uppercase;
    font-weight: 700;
}
@media (min-width: 1200px) {
    .create-account__name {
        margin: 0 0 41px;
        font-size: 24px;
    }
}
.create-account__footer {
    padding: 30px 0 0;
    border-top: 1px solid #615b58;
}
.create-account .btn {
    min-width: 220px;
    padding: 16px 20px;
    width: 90%;
}
@media (min-width: 1500px) {
    .create-account .btn {
        font-size: 30px;
        line-height: 30px;
        padding: 23px 20px;
        max-width: 308px;
    }
}

.form-box {
    position: relative;
    padding: 25px 15px;
    max-width: 1104px;
    margin: 0 auto;
    width: 90%;
    overflow: hidden;
    background: rgba(32, 32, 32, 0.9);
    box-shadow: 0 0 30px rgba(16, 25, 32, 0.3);
    border-radius: 20px;
}
@media (min-width: 768px) {
    .form-box {
        padding: 25px 20px;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }
}
@media (min-width: 992px) {
    .form-box {
        padding: 30px;
        border-radius: 30px;
    }
}
@media (min-width: 1500px) {
    .form-box {
        padding: 25px 55px 45px;
        border-radius: 40px;
    }
}
.form-box__row {
    padding: 25px 0;
    border-bottom: 1px solid #615b58;
}
@media (min-width: 992px) {
    .form-box__row {
        display: flex;
        align-items: center;
    }
}
@media (min-width: 1200px) {
    .form-box__row {
        padding: 35px 0;
    }
}
.form-box__row-col:first-child {
    margin-bottom: 15px;
}
@media (min-width: 992px) {
    .form-box__row-col:first-child {
        margin-bottom: 0;
        min-width: 170px;
        width: 170px;
    }
}
@media (min-width: 1200px) {
    .form-box__row-col:first-child {
        min-width: 207px;
        width: 207px;
    }
}
@media (min-width: 992px) {
    .form-box__row-col:last-child {
        flex-grow: 1;
        padding-left: 38px;
    }
}
.form-box__title {
    display: block;
    text-align: center;
    font-size: 20px;
    line-height: 1;
    font-weight: 700;
    text-transform: uppercase;
}
@media (min-width: 1200px) {
    .form-box__title {
        font-size: 24px;
    }
}
.form-box__description {
    display: block;
    margin-bottom: 10px;
}
@media (min-width: 768px) {
    .form-box__description {
        margin: 0 15px 0 0;
    }
}
.form-box__footer {
    padding: 35px 0 0;
    font-size: 12px;
    text-align: center;
}
@media (min-width: 768px) {
    .form-box__footer {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
}
@media (min-width: 992px) {
    .form-box__footer {
        font-size: 14px;
    }
}
@media (min-width: 1200px) {
    .form-box__footer {
        font-size: 16px;
    }
}

.radio-pay-list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.radio-pay-list > li {
    width: 100%;
    padding: 10px 0;
}
@media (min-width: 576px) {
    .radio-pay-list > li {
        width: 50%;
        padding: 5px 15px;
    }
}

.radio-plan-list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
}
.radio-plan-list > li {
    display: flex;
    padding: 5px;
    width: 100%;
}
@media (min-width: 576px) {
    .radio-plan-list > li {
        width: 50%;
    }
}
@media (min-width: 768px) {
    .radio-plan-list > li {
        width: 33.3333333333%;
    }
}
@media (max-width: 767px) {
    .radio-plan-list > li:last-child {
        width: 100%;
    }
}

.radio-custom {
    font-size: 14px;
}
@media (min-width: 1200px) {
    .radio-custom {
        font-size: 16px;
    }
}
.radio-custom input[type="radio"] {
    position: absolute;
    opacity: 0;
}
.radio-custom input[type="radio"]:checked + .radio-custom__label:before {
    background: #f01919;
    box-shadow: inset 0 0 0 4px #141414;
}
.radio-custom__label {
    display: block;
    padding-left: 46px;
    position: relative;
}
.radio-custom__label:before {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    border-radius: 50%;
    content: "";
    background: #948b87;
    border: 3px solid #948b87;
}

.radio-plan {
    display: flex;
    width: 100%;
}
.radio-plan input[type="radio"] {
    position: absolute;
    opacity: 0;
}
.radio-plan input[type="radio"]:checked + .radio-plan__hold {
    background: #615b58;
}
.radio-plan
    input[type="radio"]:checked
    + .radio-plan__hold
    .radio-plan__mounths:before {
    background: #f01919;
    box-shadow: inset 0 0 0 4px #141414;
}
.radio-plan input[type="radio"]:checked + .radio-plan__hold .radio-plan__text {
    border-color: #1b1b1b;
}
.radio-plan__hold {
    display: block;
    width: 100%;
    background: #1b1b1b;
    color: #fff;
    text-align: center;
    border-radius: 18px;
    padding: 20px 20px 15px;
}
@media (min-width: 1200px) {
    .radio-plan__hold {
        padding: 30px 22px 18px;
    }
}
.radio-plan__mounths {
    display: inline-flex;
    align-items: center;
    font-size: 14px;
}
@media (min-width: 1200px) {
    .radio-plan__mounths {
        font-size: 16px;
    }
}
.radio-plan__mounths:before {
    position: relative;
    top: -1px;
    margin: 0 10px 0 0;
    display: inline-block;
    vertical-align: middle;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    content: "";
    background: #948b87;
    border: 3px solid #948b87;
}
.radio-plan__text {
    margin: 5px 0 0;
    padding: 17px 3% 15px;
    display: block;
    font-size: 10px;
    line-height: 1.1666666667;
    text-transform: uppercase;
    font-weight: 400;
    border-top: 1px solid #363636;
}
@media (min-width: 1200px) {
    .radio-plan__text {
        font-size: 12px;
    }
}
.radio-plan__price {
    margin: 0 0 0.3em;
    display: block;
    font-size: 18px;
    line-height: 1;
    text-transform: uppercase;
    font-weight: 400;
}
@media (min-width: 1200px) {
    .radio-plan__price {
        font-size: 24px;
    }
}
.radio-plan__best {
    font-size: 12px;
    line-height: 1;
}
@media (min-width: 1200px) {
    .radio-plan__best {
        font-size: 14px;
    }
}

.page-heading {
    padding: 100px 0 50px;
    color: #fff;
    text-align: center;
    background-position: 50% 50%;
    background-size: auto 100%;
}
@media (min-width: 768px) {
    .page-heading {
        padding: 130px 0 50px;
    }
}
@media (min-width: 992px) {
    .page-heading {
        padding: 180px 0 86px;
    }
}
.page-heading__wrap {
    display: flex;
    justify-content: center;
    text-align: center;
}
.page-heading h1 {
    font-weight: 400;
    font-size: 22px;
    line-height: 1.1333333333;
    margin: 0;
    text-transform: uppercase;
}
@media (min-width: 768px) {
    .page-heading h1 {
        font-size: 25px;
    }
}
@media (min-width: 992px) {
    .page-heading h1 {
        font-size: 30px;
    }
}
.page-heading__sub-title {
    display: block;
    padding: 0 0 0 18px;
    text-transform: none;
    vertical-align: baseline;
    border-left: 4px solid #f01919;
}
@media (min-width: 768px) {
    .page-heading__sub-title {
        display: inline-block;
        margin: 0 0 0 17px;
    }
}

.fantasies-section {
    padding: 100px 0;
    overflow: hidden;
}
.fantasies-section .container {
    max-width: 1450px;
}

.grid-fantasies {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    grid-gap: 50px 0;
}
@media (min-width: 768px) {
    .grid-fantasies {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 100px 20px;
    }
}
@media (min-width: 992px) {
    .grid-fantasies {
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 155px 20px;
    }
}
.grid-fantasies > li:nth-child(3n + 2) .fantasie__visual:before {
    left: 79%;
    top: 42%;
    width: 66.8%;
    height: 111.1%;
    background-image: url("../themes/my3dgirlfriends2/assets/images/decor-02-1.png");
}
.grid-fantasies > li:nth-child(3n + 3) .fantasie__visual:before {
    left: 88%;
    top: 114%;
    width: 104.3%;
    height: 64.7%;
    background-image: url("../themes/my3dgirlfriends2/assets/images/decor-03-1.png");
}

.fantasie__visual {
    position: relative;
    width: 280px;
    height: 280px;
    margin: 0 auto 40px;
}
.fantasie__visual:after {
    position: absolute;
    left: 46%;
    top: 43%;
    transform: translate(-50%, -50%);
    width: 148%;
    height: 148%;
    content: "";
    background: url("../themes/my3dgirlfriends2/assets/images/decor-01.png") no-repeat;
    background-size: contain;
}
.fantasie__visual:before {
    position: absolute;
    z-index: 3;
    left: 26%;
    top: 51%;
    transform: translate(-50%, -50%);
    width: 73%;
    height: 104.6%;
    content: "";
    background-image: url("../themes/my3dgirlfriends2/assets/images/decor-01-1.png");
    background-repeat: no-repeat;
    background-size: contain;
}
.fantasie__visual-hold {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    overflow: hidden;
    background: #1d1d1d;
    position: relative;
    z-index: 1;
}
.fantasie__visual-hold img {
    display: block;
    max-width: none;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
}
.fantasie h3 {
    font-size: 24px;
    line-height: 1.17;
    padding: 0 0 0 0.4em;
    margin: 0 0 1.5em;
    text-transform: uppercase;
    border-left: 4px solid #f01919;
}
@media (min-width: 1200px) {
    .fantasie h3 {
        font-size: 28px;
    }
}
.fantasie__body {
    padding: 0 13%;
}

.play-list {
    margin: 0;
    padding: 0;
    list-style: none;
    width: 100%;
}
.play-list > li {
    padding: 40px 0;
    margin-bottom: 27px;
}
.play-list > li:first-child {
    padding-top: 0;
}

.play-item {
    width: 100%;
    font-size: 16px;
    line-height: 1.3125;
}
@media (min-width: 768px) {
    .play-item__columns {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
    }
}
@media (min-width: 768px) {
    .play-item__col {
        width: 41%;
    }
}
.play-item__col:first-child {
    margin-bottom: 20px;
}
@media (min-width: 768px) {
    .play-item__col:first-child {
        margin-bottom: 0;
        width: 56%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }
}
.play-item h2 {
    margin-bottom: 1.2em;
    padding-left: 13px;
    font-size: 24px;
    line-height: 1.4166666667;
}
.play-item__meta {
    padding: 0;
    margin: 0 0 13px;
}
.play-item__meta dd,
.play-item__meta dt {
    padding: 0;
    margin: 0;
    overflow: visible;
}
.play-item__meta dt {
    color: #7e7772;
    margin-right: 4px;
}
.play-item__text dd,
.play-item__text dt {
    float: none;
    padding: 0;
    margin: 0;
    overflow: visible;
}
.play-item__text dt {
    color: #7e7772;
}
.play-item .link {
    color: #7e7772;
    text-decoration: underline;
}
.play-item .link:hover {
    text-decoration: none;
}
.play-item__video {
    position: relative;
    overflow: hidden;
    padding-top: 60.5%;
}
.play-item video {
    position: absolute;
    inset: 0 0 0 0;
    object-fit: cover;
    object-position: 50% 50%;
    display: block;
    width: 100%;
    height: 100%;
}
.play-item img {
    position: absolute;
    inset: 0 0 0 0;
    object-fit: cover;
    object-position: 50% 50%;
    display: block;
    width: 100%;
    height: 100%;
}

.gallery_img__visual {
    position: relative;
    padding-top: 60.5%;
}
.gallery_img__visual img {
    position: absolute;
    inset: 0 0 0 0;
    object-fit: cover;
    object-position: 50% 50%;
    display: block;
    width: 100%;
    height: 100%;
}

.admin_cams {
    text-align: center;
}
@media (min-width: 768px) {
    .admin_cams {
        margin: -9px 0 0;
    }
}
.admin_cams .container {
    max-width: 1380px;
}

.box-cams {
    padding: 30px 0;
}
@media (min-width: 768px) {
    .box-cams {
        padding: 54px 0;
    }
}

.admin_visual {
    padding: 30px 0 0;
}
.admin_visual .container {
    max-width: 1380px;
}

.photo-section {
    margin: 0 0 60px;
}

.grid-photo {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 6px;
}
@media (min-width: 768px) {
    .grid-photo {
        grid-template-columns: repeat(3, 1fr);
    }
}

.image-wrap {
    position: relative;
    display: block;
    border-radius: 4px;
    padding-top: 95%;
    overflow: hidden;
}
.image-wrap:hover img {
    transform: scale(1.05);
}
.image-wrap img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
    transform: scale(1);
    transition: transform 0.5s;
}

.fancybox-slide--image .fancybox-content {
    border-radius: 11px;
    overflow: hidden;
}

.video-section {
    margin-bottom: 60px;
}
@media (min-width: 992px) {
    .video-section {
        margin-bottom: 96px;
    }
}

.video-grid {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 6px;
}
@media (min-width: 768px) {
    .video-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

.video {
    border-radius: 4px;
    overflow: hidden;
    position: relative;
    padding-top: 47.3%;
}
.video video {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border-radius: 4px;
    object-fit: cover;
    object-position: 50% 50%;
}

.box-download {
    margin: 52px 0 45px;
    position: relative;
    border-radius: 10px;
    overflow: hidden;
    color: #7e7772;
}
.box-download svg {
    display: block;
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}
.box-download rect {
    display: block;
    width: 100%;
    height: 100%;
    stroke: #615b58;
    stroke-width: 3;
    stroke-dasharray: 10;
    fill: transparent;
    pointer-events: none;
}
.box-download__panel {
    margin: 0;
    padding: 20px 4px 16px;
    list-style: none;
    background: #1a1a1a;
    display: flex;
    flex-wrap: wrap;
    position: relative;
}
.box-download__panel:after {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    content: "";
    background: linear-gradient(
        to right,
        #615b58 0%,
        #615b58 10px,
        rgba(97, 91, 88, 0) 10px,
        rgba(97, 91, 88, 0) 100%
    );
    background-size: 14px 100%;
    background-repeat: repeat-x;
}
.box-download__panel > li {
    width: 100%;
    padding: 8px 16px;
    display: flex;
}
@media (min-width: 768px) {
    .box-download__panel > li {
        width: 50%;
        padding: 16px;
    }
}
.box-download__panel > li:first-child {
    position: relative;
}
@media (min-width: 768px) {
    .box-download__panel > li:first-child:after {
        position: absolute;
        right: 0;
        top: 50%;
        transform: translate(50%, -50%);
        width: 4px;
        height: 34px;
        content: "";
        background: #f01919;
    }
}
.box-download__panel a {
    width: 100%;
    padding: 10px 15px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    color: inherit;
    border-radius: 99px;
    background: #0d0d0d;
    line-height: 20px;
}
.box-download__body {
    padding: 49px 20px;
    text-align: center;
}
.box-download h3 {
    margin: 0 0 0.2em;
    color: #fff;
    text-transform: uppercase;
    font-size: 18px;
    font-weight: 400;
}
@media (min-width: 768px) {
    .box-download h3 {
        font-size: 24px;
    }
}
.box-download p {
    margin: 0 0 0.65em;
}

.ps5_section {
    overflow: hidden;
}

.ps5_form {
    position: relative;
    z-index: 1;
}

.ps5_container {
    max-width: 1100px;
    width: 100%;
    padding: 0 15px;
    margin: 0 auto;
}

.ps5_header {
    margin: 0 auto 40px;
    max-width: 700px;
    color: #a0a0a0;
}
.ps5_header__text {
    margin: 0 auto;
    max-width: 520px;
}
.ps5_header p {
    margin: 0;
}

h1.ps5_title {
    margin: 0 0 1em;
    line-height: 1;
}
h1.ps5_title mark {
    padding: 0;
    margin: 0;
    background: none;
    color: #f01919;
}

.ps5_counter {
    overflow: hidden;
    max-width: 896px;
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

#timer {
    position: relative;
    display: inline-flex;
    justify-content: center;
    padding: 0 19px;
}
#timer:before,
#timer:after {
    position: absolute;
    top: 36px;
    width: 100vw;
    height: 2px;
    background: #f01919;
    content: "";
}
#timer:before {
    right: 100%;
    background-position: 100% 0;
}
#timer:after {
    left: 100%;
}

.timer_el {
    display: block;
    text-align: center;
    padding: 0 8px;
    font-size: 12px;
    line-height: 1;
}
@media (min-width: 768px) {
    .timer_el {
        padding: 0 10px;
        font-size: 16px;
    }
}

#seconds {
    display: none;
}

.timer_number {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    min-width: 60px;
    height: 60px;
    margin-bottom: 15px;
    font-size: 30px;
    border-radius: 8px;
    line-height: 1;
    font-weight: 400;
    color: #fff;
    background: #615b58;
}
@media (min-width: 768px) {
    .timer_number {
        min-width: 75px;
        height: 75px;
        margin-bottom: 18px;
        font-size: 44px;
        border-radius: 10px;
    }
}

.ps5_content {
    position: relative;
    padding: 220px 0 70px;
}
@media (min-width: 768px) {
    .ps5_content {
        padding: 194px 0 478px;
    }
}
.ps5_content:after {
    position: absolute;
    left: 50%;
    top: -140px;
    transform: translateX(-50%);
    width: 1500px;
    height: 1243px;
    content: "";
    background: url("../themes/my3dgirlfriends2/assets/images/admin/ps5_bg-01.png") no-repeat;
    background-position: 50% 0;
    background-size: 100% auto;
}
@media (min-width: 768px) {
    .ps5_content:after {
        top: 32.8%;
        width: 2132px;
        height: 1243px;
        transform: translate(-50%, -50%);
        background-position: 50% 50%;
    }
}

.ps5_contest {
    position: relative;
    max-width: 468px;
    padding: 26px 10px 0;
    width: 90%;
    margin: 0 auto 110px;
    color: #fff;
    border-radius: 15px;
    background: rgba(0, 0, 0, 0.9);
    text-align: center;
}
@media (min-width: 768px) {
    .ps5_contest {
        margin: 0 auto 133px;
    }
}
@media (max-width: 575px) {
    .ps5_contest br {
        display: none;
    }
}
.ps5_contest mark {
    color: #f01919;
    background: none;
}
.ps5_contest__title {
    display: block;
    margin-bottom: 20px;
    font-size: 14px;
    line-height: 1.25;
    font-weight: 400;
}
@media (min-width: 992px) {
    .ps5_contest__title {
        font-size: 16px;
    }
}
.ps5_contest__wrap {
    position: relative;
    z-index: 2;
}
.ps5_contest__wrap:before {
    position: absolute;
    left: 50%;
    bottom: -146px;
    transform: translateX(-50%);
    width: 514px;
    height: 320px;
    content: "";
    background: url("../themes/my3dgirlfriends2/assets/images/admin/ps5_dashed.png") no-repeat;
}
.ps5_contest:after {
    position: absolute;
    top: -4px;
    left: -4px;
    right: -4px;
    bottom: -4px;
    content: "";
    border-radius: 20px;
    box-shadow: 0 1px 1px 0 rgba(6, 77, 173, 0.3);
}
.ps5_contest input[type="email"] {
    display: block;
    margin: 0 auto 16px;
    max-width: 310px;
    width: 100%;
    height: 46px;
    padding: 13px 10px;
    font-size: 16px;
    line-height: 20px;
    font-weight: 400;
    text-align: center;
    color: #1a1a1a;
    background: #fff;
    border: 0;
    border-radius: 99px;
}
.ps5_contest input[type="email"]::placeholder {
    color: #1a1a1a;
}
.ps5_contest .btn {
    display: inline-block;
    vertical-align: top;
    border: 0;
    margin-bottom: -36px;
    max-width: 310px;
    width: 100%;
    height: 64px;
    background: #f01919;
}
@media (min-width: 1200px) {
    .ps5_contest .btn {
        font-size: 24px;
    }
}

.ps5_info {
    position: relative;
    z-index: 2;
    max-width: 468px;
    width: 100%;
    margin: 0 auto;
    padding: 18px 2.8%;
    font-size: 12px;
    line-height: 1.17;
    text-align: center;
    font-weight: 300;
    border-radius: 20px;
    background: rgba(0, 0, 0, 0.9);
    color: #a0a0a0;
}
@media (max-width: 575px) {
    .ps5_info br {
        display: none;
    }
}
.ps5_info p {
    margin: 0;
}
.ps5_info mark {
    background: none;
    color: #f01919;
}

.modal-block {
    position: fixed;
    z-index: 999;
    top: 0;
    left: 0;

    display: -ms-flexbox;
    display: flex;

    width: 100%;
    height: 100vh;

    background: rgba(0, 0, 0, 0.7);

    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.modal-block * {
    box-sizing: border-box;
}
.modal-block__container {
    font-family: "museo", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
    font-size: 16px;
    font-weight: 900;
    line-height: 1.22;

    position: relative;

    width: 90%;
    max-width: 700px;
    padding: 54px 15px 45px;

    text-align: center;
    text-transform: uppercase;

    color: #fff;
    border: 2px solid #292929;
    border-radius: 10px;
    background: #1a1a1a;
}
@media (min-width: 768px) {
    .modal-block__container {
        font-size: 18px;
    }
}
.modal-block__close {
    position: absolute;
    top: 0;
    right: 0;

    width: 20px;
    height: 20px;

    transition: background 0.5s;

    background: #4d4d4d;
}
.modal-block__close:hover {
    background: #1a1a1a;
}
.modal-block__close:before,
.modal-block__close:after {
    position: absolute;
    top: 50%;
    left: 50%;

    width: 10px;
    height: 1px;

    content: "";
    transform: translate(-50%, -50%) rotate(45deg);

    background: #fff;
}
.modal-block__close:before {
    transform: translate(-50%, -50%) rotate(-45deg);
}
.modal-block__title {
    display: block;

    margin: 0 0 20px;
}
.modal-block p {
    margin: 0 0 47px;
}
.modal-block a {
    text-decoration: underline;

    color: #fff;
}
.modal-block a:hover {
    text-decoration: none;
}
.modal-block mark {
    padding: 0;

    color: #db161c;
    background: none;
}
.modal-block__btn {
    font-size: 14px;
    line-height: 1.3125;

    display: inline-block;

    min-width: 236px;
    padding: 12px 20px;

    transition: background 0.5s;
    vertical-align: top;
    text-decoration: none !important;

    color: #fff;
    border-radius: 8px;
    background: #e92327;
}
@media (min-width: 768px) {
    .modal-block__btn {
        font-size: 16px;
    }
}
.modal-block__btn:hover {
    background: #4d4d4d;
}

.box-cams iframe {
    width: 100%;
    height: 80vh;
    border: 0;
}

.ptop-60 {
    padding-top: 60px;
}
.w30perc {
 width: 30%;
}

.footer-text {
    text-align: center;
    font-style: italic;
    font-size: 12px;
    margin-top: 70px;
    color: #767676;
}

.footer-text a {
    color: #f01919;
    text-decoration: underline;
}
.miny-games {
    /*padding: 80px 0*/
}
@media (min-width:992px) {
    .miny-games {
        /*padding: 176px 0*/
    }
}
.rows-games {
    margin: 0 auto;
    max-width: 1066px
}
.row-game {
    padding: 41px 0;
    font-size: 16px;
    line-height: 1.1666666667;
    color: #fff
}
@media (min-width:480px) {
    .row-game {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }
}
@media (min-width:768px) {
    .row-game {
        font-size: 18px
    }
}
.row-game + .row-game {
    border-top: 2px dashed #4a4a4a
}
.row-game__visual {
    margin: 0 auto 15px;
    width: 150px;
    min-width: 150px;
    height: 150px;
    border-radius: 50%;
    overflow: hidden
}
@media (min-width:480px) {
    .row-game__visual {
        margin: 0
    }
}
@media (min-width:768px) {
    .row-game__visual {
        width: 255px;
        min-width: 255px;
        height: 255px
    }
}
.row-game__visual img {
    display: block;
    max-width: none;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%
}
.row-game__content {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding-left: 15px
}
@media (min-width:768px) {
    .row-game__content {
        padding-left: 35px
    }
}
.row-game h2 {
    font-weight: 400;
    margin: 0 0 .8em;
    font-size: 24px;
    line-height: 1;
    font-family: "neuron","Arial","Helvetica Neue","Helvetica",sans-serif;
    text-shadow: 0 4px 0 rgba(14,17,19,.2);
    text-transform: uppercase
}
@media (min-width:768px) {
    .row-game h2 {
        font-size: 30px
    }
}
.row-game p {
    margin: 0 0 2.1em
}
.row-game .btn {
    min-width: 0;
    padding-left: 25px;
    padding-right: 25px
}
.mini-game-page {
    padding: 39px 0 25px
}
@media (min-width:768px) {
    .mini-game-page {
        padding: 39px 0
    }
}
.mini-game-page__header {
    position: relative;
    margin: 0 0 2.3em;
    color: #fff
}
@media (min-width:768px) {
    .mini-game-page__header {
        text-align: center;
        padding: 0 70px
    }
}
.mini-game-page .back-link {
    display: inline-block;
    vertical-align: top;
    margin-bottom: 15px;
    text-decoration: underline;
    color: #fff;
    font-size: 16px;
    line-height: 1.2;
    -webkit-transition: .5s;
    transition: .5s
}
@media (min-width:768px) {
    .mini-game-page .back-link {
        position: absolute;
        left: 0;
        top: 8px;
        margin-bottom: 0
    }
}
.mini-game-page .back-link:hover {
    color: #eb2e28;
    text-decoration: none
}
.mini-game-page h1 {
    text-align: center;
    margin: 0;
    font-weight: 400;
    font-size: 24px;
    line-height: 1;
    font-family: "neuron","Arial","Helvetica Neue","Helvetica",sans-serif;
    text-shadow: 0 4px 0 rgba(14,17,19,.2);
    text-transform: uppercase
}
@media (min-width:768px) {
    .mini-game-page h1 {
        font-size: 30px
    }
}
.game-wrap {
    position: relative;
    padding-bottom: 25px
}
@media (min-width:768px) {
    .game-wrap {
        padding-bottom: 44px
    }
}
.game-wrap .game-hold {
    border-radius: 10px;
    overflow: hidden
}
.game-wrap:after {
    position: absolute;
    bottom: 0;
    left: 25px;
    right: 25px;
    height: 0;
    content: "";
    border-bottom: 2px dashed #4a4a4a
}
@media (min-width:768px) {
    .game-wrap:after {
        left: 60px;
        right: 60px
    }
}
.character-art h2 {
    font-weight: 400;
    margin: 0 0 1.1em;
    font-size: 24px;
    line-height: 1;
    font-family: "neuron","Arial","Helvetica Neue","Helvetica",sans-serif;
    text-shadow: 0 4px 0 rgba(14,17,19,.2);
    text-transform: uppercase
}
@media (min-width:768px) {
    .character-art h2 {
        font-size: 30px
    }
}
.list-image {
    margin: -11px;
    padding: 0;
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}
.list-image > li {
    width: 100%;
    padding: 11px
}
@media (min-width:480px) {
    .list-image > li {
        width: 50%
    }
}
@media (min-width:768px) {
    .list-image > li {
        width: 33.3333333333%
    }
}
@media (min-width:992px) {
    .list-image > li {
        width: 20%
    }
}
.list-image .visual-wrap {
    display: block;
    width: 100%;
    padding-top: 120%;
    position: relative;
    overflow: hidden;
    border-radius: 10px
}
.list-image .visual-wrap img {
    position: absolute;
    inset: 0;
    max-width: none;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%
}
.game-hold {
    display: flex;
}
.game-hold iframe {
    border: none;
    width: 100%;
    aspect-ratio: 16/9;
}
.miny-games .container--sm {
    max-width: 1236px
}
/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8; }

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden; }

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  box-sizing: border-box; }

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

.mfp-align-top .mfp-container:before {
  display: none; }

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045; }

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto; }

.mfp-ajax-cur {
  cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out; }

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in; }

.mfp-auto-cursor .mfp-content {
  cursor: auto; }

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

.mfp-loading.mfp-figure {
  display: none; }

.mfp-hide {
  display: none !important; }

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044; }
  .mfp-preloader a {
    color: #CCC; }
    .mfp-preloader a:hover {
      color: #FFF; }

.mfp-s-ready .mfp-preloader {
  display: none; }

.mfp-s-error .mfp-content {
  display: none; }

button.mfp-close,
button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  box-shadow: none;
  touch-action: manipulation; }

button::-moz-focus-inner {
  padding: 0;
  border: 0; }

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: #FFF;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace; }
  .mfp-close:hover,
  .mfp-close:focus {
    opacity: 1; }
  .mfp-close:active {
    top: 1px; }

.mfp-close-btn-in .mfp-close {
  color: #333; }

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%; }

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap; }

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: transparent; }
  .mfp-arrow:active {
    margin-top: -54px; }
  .mfp-arrow:hover,
  .mfp-arrow:focus {
    opacity: 1; }
  .mfp-arrow:before,
  .mfp-arrow:after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent; }
  .mfp-arrow:after {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px; }
  .mfp-arrow:before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7; }

.mfp-arrow-left {
  left: 0; }
  .mfp-arrow-left:after {
    border-right: 17px solid #FFF;
    margin-left: 31px; }
  .mfp-arrow-left:before {
    margin-left: 25px;
    border-right: 27px solid #3F3F3F; }

.mfp-arrow-right {
  right: 0; }
  .mfp-arrow-right:after {
    border-left: 17px solid #FFF;
    margin-left: 39px; }
  .mfp-arrow-right:before {
    border-left: 27px solid #3F3F3F; }

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px; }
  .mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px; }
  .mfp-iframe-holder .mfp-close {
    top: -40px; }

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%; }
  .mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #000; }

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure {
  line-height: 0; }
  .mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #444; }
  .mfp-figure small {
    color: #BDBDBD;
    display: block;
    font-size: 12px;
    line-height: 14px; }
  .mfp-figure figure {
    margin: 0; }

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto; }

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 36px; }

.mfp-image-holder .mfp-content {
  max-width: 100%; }

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
       * Remove all paddings around the image on small screen
       */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0; }
  .mfp-img-mobile img.mfp-img {
    padding: 0; }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0; }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px; }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    box-sizing: border-box; }
    .mfp-img-mobile .mfp-bottom-bar:empty {
      padding: 0; }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px; }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0; } }

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75); }
  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0; }
  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%; }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px; } }
