/*
Theme Name: Nezabutni
*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}nav ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}ins{background-color:#ff9;color:#000;text-decoration:none}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle;padding:0}.clearfix:after {content:'';display:block;clear:both}a,input,button,select,textarea,textarea:focus,input:focus{outline:none}input,button,select,textarea{border-radius:0;box-shadow:none}input[type="radio"]{border-radius:50%}textarea{overflow:auto;resize:none}:required{box-shadow:none}button::-moz-focus-inner{border:none}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}input[disabled],textarea[disabled],select[disabled='disabled']{-webkit-opacity:1}*,:after,:before{box-sizing: border-box;}

html{-webkit-text-size-adjust:100%;}
button,input[type="text"],input[type="submit"],input[type="button"],input[type="reset"],input[type="search"],input[type="email"],input[type="tel"],input[type="password"],textarea{-webkit-appearance:none;}

@font-face {
    font-family: 'Onest';
    src: url('assets/fonts/Onest-Light.woff2') format('woff2'),
    url('assets/fonts/Onest-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Onest';
    src: url('assets/fonts/Onest-Regular.woff2') format('woff2'),
    url('assets/fonts/Onest-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Onest';
    src: url('assets/fonts/Onest-Medium.woff2') format('woff2'),
    url('assets/fonts/Onest-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Onest';
    src: url('assets/fonts/Onest-SemiBold.woff2') format('woff2'),
    url('assets/fonts/Onest-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Inter';
    src: url('assets/fonts/Inter-Regular.woff2') format('woff2'),
    url('assets/fonts/Inter-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Inter';
    src: url('assets/fonts/Inter-Medium.woff2') format('woff2'),
    url('assets/fonts/Inter-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Inter';
    src: url('assets/fonts/Inter-Bold.woff2') format('woff2'),
    url('assets/fonts/Inter-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Tenor Sans';
    src: url('assets/fonts/TenorSans.woff2') format('woff2'),
    url('assets/fonts/TenorSans.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

html, body {
    min-width: 320px;
}
body {
    font-family: 'Onest', sans-serif;
    font-weight: 300;
    font-size: 20px;
    color: #1B1916;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}
main {
    flex: 1;
}
main.centered {
    flex: none;
    margin-top: auto;
    margin-bottom: auto;
}
body.no-scroll {
    width: 100%;
    overflow: hidden;
}
input, select, textarea {
    font-family: inherit;
    color: inherit;
}
input[type="text"], input[type="search"], input[type="email"], input[type="tel"], input[type="password"], input[type="date"], textarea {
    font-weight: normal;
    font-size: 20px;
    line-height: 28px;
    background: #fff;
    border: 1px solid #C9C3BC;
    border-radius: 12px;
    width: 100%;
    height: 52px;
    padding: 0 16px;
}
input::-webkit-credentials-auto-fill-button {
    visibility: hidden;
}
textarea {
    padding: 16px;
    height: 130px;
}
.search-field {
    position: relative;
}
.search-field i {
    content: '';
    background: url('assets/img/icons/search-icon.svg') no-repeat;
    width: 20px;
    height: 20px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 19px;
}
.search-field input:focus + i {
    background-position: 0 -20px;
}
.search-field input {
    padding-left: 48px;
}
.field {
    margin-top: 8px;
    position: relative;
}
.field label span {
    font-weight: normal;
    font-size: 14px;
    line-height: 22px;
    display: block;
    margin-bottom: 4px;
}
.password-field {
    position: relative;
}
.password-field .show-pass {
    width: 20px;
    height: 20px;
    position: absolute;
    right: 16px;
    bottom: 16px;
    overflow: hidden;
    cursor: pointer;
    user-select: none;
}
.password-field.show-pass svg {
    position: absolute;
    top: 3px;
    left: 1px;
}
.password-field .show-pass:hover path {
    fill: #AFA59A;
}
.password-field.show-pass:not(.active) .hide, .password-field .show-pass.active .show {
    display: none;
}
select {
    font-size: 16px;
    text-overflow: ellipsis;
    background: #fff url('assets/img/icons/arrow-select.svg') no-repeat right 15px center;
    border: 1px solid #C9C3BC;
    border-radius: 12px;
    overflow: hidden;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
    height: 44px;
    padding-left: 12px;
    padding-right: 65px;
}
select::-ms-expand {
    display: none;
}
input[type="text"]:hover, input[type="search"]:hover, input[type="email"]:hover, input[type="tel"]:hover, input[type="password"]:hover, input[type="date"]:hover textarea:hover, select:hover {
    border-color: #948779;
}
input[type="text"]:focus, input[type="search"]:focus, input[type="email"]:focus, input[type="tel"]:focus, input[type="password"]:focus, input[type="date"]:focus, textarea:focus {
    background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to left, var(--gradientColor1), var(--gradientColor2)) border-box;
    border: 1px solid transparent;
}
.file-upload {
    text-align: center;
    border: 2px dashed #AFA59A;
    border-radius: 8px;
    width: 224px;
    height: 224px;
    margin-left: auto;
    margin-right: auto;
}
.file-upload label {
    width: 100%;
    height: 100%;
    padding: 20px 15px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    cursor: pointer;
}
.file-upload .cap {
    font-weight: normal;
    font-size: 16px;
    line-height: 24px;
    background: url('assets/img/icons/plus-in-circle.svg') no-repeat center top;
    padding-top: 40px;
}
.file-upload .hint {
    font-size: 14px;
    line-height: 22px;
    color: #948779;
    margin-top: 8px;
}
.file-upload .hint span {
    display: block;
}
input[type="file"] {
    width: 0;
    height: 0;
    position: absolute;
    top: 0;
    left: 0;
    visibility: hidden;
}
.field.error input[type="text"], .field.error input[type="search"], .field.error input[type="email"], .field.error input[type="tel"], .field.error input[type="password"], .field.error textarea {
    border-color: #ED4D4D;
}
.field .error-text {
    font-weight: normal;
    font-size: 12px;
    line-height: 20px;
    color: #ED4D4D;
    margin-top: 4px;
}
.field:not(.error) .error-text {
    display: none;
}
.field-rating {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    position: relative;
}
.field-rating input {
    background: url('assets/img/icons/star-rating-empty.svg') no-repeat center;
    background-size: auto 85%;
    border: none;
    width: 52px;
    height: 52px;
    margin: 0;
    -webkit-appearance:none;
}
.field-rating input:checked, .field-rating input:checked ~ input {
    background-image: url('assets/img/icons/star-rating-filled.svg');
}
::-webkit-input-placeholder { color: #C9C3BC; }
:-moz-placeholder { color: #C9C3BC; opacity: 1; }
::-moz-placeholder { color: #C9C3BC; opacity: 1; }
:-ms-input-placeholder { color: #C9C3BC; }
::-ms-input-placeholder { color: #C9C3BC; }
::placeholder { color: #C9C3BC; }
[placeholder] {
    text-overflow:ellipsis;
}

.checkbox input[type="checkbox"] {
    visibility: hidden;
    position: absolute;
    left: 0;
}
.checkbox label span {
    display: inline-block;
    position: relative;
    padding-left: 28px;
    user-select: none;
}
.checkbox label span:before {
    content: '';
    background: url('assets/img/icons/checkbox.svg') no-repeat;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 0;
    left: 0;
}
.checkbox label input:not(:checked) + span:before {
    background-position: left -20px;
}

a {
    text-decoration: none;
    color: inherit;
}
img {
    display: block;
}

:root {
    --gradientColor1: #bf986f;
    --gradientColor2: #f1e796;
    --gradientColor1-light: #ECE1D4;
    --gradientColor2-light: #FAF7DF;
    --gradientColor1-same: #FAF6F1;
    --gradientColor2-same: #FAF6F1;
}
@property --gradientColor1 {
    syntax: '<color>';
    initial-value: #bf986f;
    inherits: false;
}
@property --gradientColor2 {
    syntax: '<color>';
    initial-value: #f1e796;
    inherits: false;
}
@property --gradientColor1-light {
    syntax: '<color>';
    initial-value: #ECE1D4;
    inherits: false;
}
@property --gradientColor2-light {
    syntax: '<color>';
    initial-value: #FAF7DF;
    inherits: false;
}
@property --gradientColor1-same {
    syntax: '<color>';
    initial-value: #FAF6F1;
    inherits: false;
}
@property --gradientColor2-same {
    syntax: '<color>';
    initial-value: #FAF6F1;
    inherits: false;
}

svg.hidden {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: 0; left: 0;
}

.nobr {
    white-space: nowrap;
}

.but, .wc-block-checkout__login-prompt, .button.wc-forward {
    font-weight: normal;
    font-size: 16px;
    text-align: center;
    color: #1B1916;
    background: linear-gradient(to left, var(--gradientColor1), var(--gradientColor2));
    border-radius: 40px;
    height: 44px;
    padding: 0 16px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    user-select: none;
    transition: --gradientColor1 1s, --gradientColor2 1s;
}
.but.large {
    font-size: 20px;
    padding: 0 20px;
    height: 52px;
	border: none;
}
.but.gray {
    background: #F2F0EE;
}
.but.gray:hover {
    background: #E4E1DD;
}
.but.icon {
    font-family: 'Inter', sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 22px;
    color: #fff;
    background: #948779;
    background-repeat: no-repeat;
    background-position: 12px center;
    height: 28px;
    padding-left: 32px;
    padding-right: 12px;
}
.but.icon.plus {
    background-image: url('assets/img/icons/plus-icon.svg');
}
.but.icon.download {
    background-image: url('assets/img/icons/download-icon.svg');
}
.but:hover, .wc-block-checkout__login-prompt:hover, .button.wc-forward:hover {
    --gradientColor1: #f1e796;
    --gradientColor2: #bf986f;
}
.but.icon:hover {
    background-color: #6A5A49;
}

.toggle-button {
    display: inline-block;
    user-select: none;
}
.toggle-button input {
    position: absolute;
    opacity: 0;
    visibility: hidden;
}
.toggle-button .icon {
    background: linear-gradient(to left, var(--gradientColor1-light), var(--gradientColor2-light));
    border-radius: 50px;
    width: 32px;
    height: 20px;
    position: relative;
    z-index: 2;
}
.toggle-button .icon:after {
    content: '';
    background: #fff;
    border-radius: 50%;
    width: 15px;
    height: 15px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 3px;
    transition: left 0.2s;
    will-change: transform;
}
.toggle-button input[type="checkbox"]:checked + .icon {
    background: linear-gradient(to left, var(--gradientColor1), var(--gradientColor2));
}
.toggle-button input[type="checkbox"]:checked + .icon:after {
    left: calc(100% - 18px);
}
.toggle-button.large .icon {
    width: 52px;
    height: 32px;
}
.toggle-button.large .icon:after {
    width: 26px;
    height: 26px;
}
.toggle-button.large input[type="checkbox"]:checked + .icon:after {
    left: calc(100% - 29px);
}

.rating-stars {
    background: url('assets/img/icons/star-rating-empty.svg') repeat-x;
    background-position: -2px;
    width: 116px;
    height: 22px;
    position: relative;
}
.rating-stars:after {
    content: '';
    background: url('assets/img/icons/star-rating-filled.svg') repeat-x;
    background-position: -2px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
}
.rating-stars[data-stars="5"]:after {
    right: 0;
}
.rating-stars[data-stars="4"]:after {
    right: 20%;
}
.rating-stars[data-stars="3"]:after {
    right: 40%;
}
.rating-stars[data-stars="2"]:after {
    right: 60%;
}
.rating-stars[data-stars="1"]:after {
    right: 80%;
}

.status-circle {
    width: 60px;
    height: 60px;
    position: relative;
}
.status-circle svg {
    width: 100%;
    height: 100%;
    transform: rotate(30deg);
}
.status-circle .progress-bar__background {
    fill: none;
    stroke: #ffffff80;
    stroke-width: 2;
}
.status-circle .progress-bar__progress {
    fill: none;
    stroke: #fff;
    stroke-dasharray: 100 100;
    stroke-dashoffset: 100;
    stroke-linecap: round;
    stroke-width: 2;
    /*transition: stroke-dashoffset 1s ease-in-out;*/
}
.status-circle .percent {
    font-weight: 600;
    font-size: 16px;
    line-height: 22px;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.wrap {
    max-width: 1280px;
    padding-left: 30px;
    padding-right: 30px;
    box-sizing: content-box;
    margin-left: auto;
    margin-right: auto;
}

.head.main {
    text-align: center;
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 52px;
    line-height: 1.2;
    text-transform: uppercase;
}

.head-wrap {
    display: flex;
    align-items: center;
}
.head-wrap .head {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 52px;
    line-height: 1.2;
    text-transform: uppercase;
}
.head-wrap .sub {
    font-size: 20px;
    line-height: 32px;
    margin-left: 75px;
}

header {
    font-weight: normal;
    font-size: 14px;
    color: #E4E1DD;
    background: #014056;
    padding: 18px 0;
    position: relative;
}
header:after {
    content: '';
    background: linear-gradient(to left, var(--gradientColor1), var(--gradientColor2));
    height: 2px;
    opacity: 0.1;
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    bottom: 0;
    will-change: transform;
}
header:not(.homepage):after {
    opacity: 1;
    top: 100%;
    bottom: auto;
}
header a {
    text-decoration: none;
    color: #E4E1DD;
}
header .menu a:hover, header .lang a:hover, header .account a:hover span {
    background: -webkit-linear-gradient(left, var(--gradientColor2), var(--gradientColor1));
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
header .box {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
header .menu li {
    text-transform: uppercase;
    display: inline-block;
}
header .menu li:not(:last-child) {
    margin-right: 25px;
}
header .lang {
    display: flex;
}
header .lang .item:not(:last-child):after {
    content: '|';
    color: #948779;
    margin: 0 6px;
}
header .lang .item.active span, header .lang .item.active a {
    background: -webkit-linear-gradient(left, var(--gradientColor2), var(--gradientColor1));
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
header .account {
    line-height: 1.4;
    text-transform: uppercase;
    display: flex;
    align-items: center;
}
header .login a {
    display: flex;
    align-items: center;
}
header .login a:hover svg path {
    stroke: url(#icon-gradient);
}
header .login span {
    margin-left: 12px;
}
header .logged a {
    display: flex;
    align-items: center;
}
header .logged span {
    margin-left: 8px;
}
header .cart {
    margin-left: 34px;
}
header .cart a {
    display: flex;
    align-items: center;
}
header .cart a:hover svg path {
    stroke: url(#icon-gradient);
}
header .cart .icon {
    position: relative;
    top: 2px;
}
header .cart .icon i {
    font-weight: 600;
    font-size: 12px;
    font-style: normal;
    color: #1B1916;
    background: linear-gradient(to left, var(--gradientColor1), var(--gradientColor2));
    border-radius: 20px;
    height: 18px;
    min-width: 18px;
    padding: 0 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 5px;
    right: -10px;
}
header .cart span {
    margin-left: 20px;
}
header .mmenu {
    display: none;
}

.sect-main-offer {
    background: #014056;
    position: relative;
}
.sect-main-offer .content {
    max-width: 564px;
    padding-top: 155px;
    padding-bottom: 200px;
}
.sect-main-offer .head {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 80px;
    line-height: 1.2;
    text-transform: uppercase;
    background: -webkit-linear-gradient(left, var(--gradientColor2), var(--gradientColor1));
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.sect-main-offer .sub {
    font-size: 24px;
    line-height: 36px;
    color: #DDEEF5;
    max-width: 406px;
    margin-top: 44px;
}
.sect-main-offer .but {
    margin-top: 44px;
}
.sect-main-offer .image {
    position: absolute;
    bottom: 0;
    right: 0;
}
.sect-main-offer .image img {
    display: block;
}
.sect-main-offer .image .caption {
    font-size: 16px;
    line-height: 24px;
    color: #fff;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 12px;
    width: 170px;
    padding: 10px 12px;
    margin-right: -10px;
    position: absolute;
    top: 17px;
    right: 100%;
}
.sect-main-offer .image .caption:after {
    content: '';
    background: url('assets/img/icons/arrow-qr.svg') no-repeat;
    width: 70px;
    height: 51px;
    margin-top: 12px;
    margin-left: -20px;
    position: absolute;
    top: 100%;
    left: 100%;
}
.sect-main-offer .image .qr {
    background: linear-gradient(to right, #002F40, #15495C);
    border-radius: 8px;
    padding: 9px;
    position: absolute;
    top: 88px;
    left: 155px;
}
.sect-main-offer .image .qr img {
    display: block;
}

.sect-moments {
    background: linear-gradient(to left, #bf986f1A, #f1e7961A);
    padding-top: 72px;
    padding-bottom: 62px;
}
.sect-moments .head-wrap .sub {
    margin-left: 120px;
}
.sect-moments .moments {
    display: flex;
    margin-top: 52px;
    margin-left: -10px;
    margin-right: -10px;
}
.sect-moments .moments .item {
    padding: 0 10px;
    flex: 1;
}
.sect-moments .moments .bg {
    background: #BF986F33;
    border-radius: 24px;
    height: 100%;
    padding: 26px;
    padding-bottom: 22px;
}
.sect-moments .moments .cap-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.sect-moments .moments .cap {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 24px;
    line-height: 28px;
    text-transform: uppercase;
}
.sect-moments .moments .desc {
    font-size: 16px;
    line-height: 24px;
    margin-top: 18px;
}
.sect-moments .words {
    background: #fff;
    border-radius: 24px;
    padding: 32px;
    margin-top: 20px;
}
.sect-moments .box {
    display: flex;
    justify-content: space-between;
}
.sect-moments .text {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 20px;
    line-height: 32px;
    background: url('assets/img/icons/quote.svg') no-repeat 0 0;
    padding-top: 44px;
}
.sect-moments .name {
    font-weight: 600;
    font-size: 16px;
    line-height: 24px;
    margin-top: 24px;
}
.sect-moments .years {
    font-size: 14px;
    line-height: 22px;
}
.sect-moments .image {
    margin-left: 175px;
}
.sect-moments .image img {
    border-radius: 24px;
    width: 271px;
    height: 100%;
    object-fit: cover;
    display: block;
}

.sect-steps {
    margin-top: 92px;
    margin-bottom: 84px;
}
.sect-steps .head-wrap .sub {
    margin-left: 100px;
}
.sect-steps .steps {
    margin-top: 39px;
}
.sect-steps .step:not(:last-child) {
    border-bottom: 1px solid #ECEAE6;
    padding-bottom: 39px;
    margin-bottom: 39px;
}
.sect-steps .step .box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}
.sect-steps .step .content {
    max-width: 534px;
}
.sect-steps .step .number {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 70px;
    line-height: 1.2;
    margin-bottom: 24px;
}
.sect-steps .step .number span {
    background: -webkit-linear-gradient(left, var(--gradientColor2), var(--gradientColor1));
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.sect-steps .step .cap {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 32px;
    line-height: 40px;
    text-transform: uppercase;
}
.sect-steps .step .desc {
    max-width: 370px;
    margin-top: 150px;
}
.sect-steps .step .number ~ .desc {
    max-width: 496px;
    margin-top: 24px;
}
.sect-steps .step .desc p {
    font-size: 16px;
    line-height: 24px;
    margin-top: 24px;
}
.sect-steps .step .desc .but {
    margin-top: 24px;
}
.sect-steps .step img {
    max-width: 100%;
}
.sect-steps .step .image img {
    border-radius: 24px;
    display: block;
}
.sect-steps .step .image.registration {
    width: 426px;
}
.sect-steps .step .image.registration img {
    border: 2px solid #E4E1DD;
    margin: auto;
}
.sect-steps .step .slider-bg, .sect-steps .step .image-bg {
    background: linear-gradient(to left, var(--gradientColor1-light), var(--gradientColor2-light));
    border-radius: 24px;
    width: 673px;
    padding: 38px;
    overflow: hidden;
}
.sect-steps .step .slider-bg {
    padding-bottom: 0;
}
.sect-steps .step .slider {
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
    overflow: hidden;
}
.sect-steps .step .slider img {
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
}
.sect-steps .step .image-bg img {
    border-radius: 16px;
}
.sect-steps .step .slider-wrap {
    position: relative;
}
.sect-steps .step .slick-arrow {
    background: #1B191699;
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 50%;
    width: 32px;
    height: 32px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    cursor: pointer;
    transition: background 0.5s;
}
.sect-steps .step .slick-arrow:hover {
    background-color: #1B1916;
}
.sect-steps .step .slick-arrow:after {
    content: '';
    width: 9px;
    height: 15px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.sect-steps .step .slick-arrow.slick-prev {
    left: -14px;
}
.sect-steps .step .slick-arrow.slick-prev:after {
    background: url('assets/img/icons/arrow-left.svg') no-repeat;
    right: 2px;
}
.sect-steps .step .slick-arrow.slick-next {
    right: -14px;
}
.sect-steps .step .slick-arrow.slick-next:after {
    background: url('assets/img/icons/arrow-right.svg') no-repeat;
    left: 2px;
}
.sect-steps .step .slick-arrow.slick-disabled {
    opacity: 0.2;
    pointer-events: none;
}
.sect-steps .slick-dots {
    display: flex !important;
    position: absolute;
    left: -15px;
    right: -15px;
    bottom: 1px;
}
.sect-steps .slick-dots li {
    flex: 1;
    margin: 4px;
}
.sect-steps .slick-dots li button {
    background: #C9C3BC;
    border-radius: 100px;
    height: 4px;
    width: 100%;
}
.sect-steps .slick-dots li.slick-active button {
    background: #1B191680;
}

.sect-memories {
    background: linear-gradient(to left, #bf986f1A, #f1e7961A);
    padding-top: 79px;
    padding-bottom: 119px;
}
.sect-memories .head-wrap .sub {
    margin-left: 150px;
}
.sect-memories .head-wrap .but {
    margin-top: 32px;
}
.sect-memories .slider-wrap {
    overflow: hidden;
}
.sect-memories .slider {
    max-width: 933px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 63px;
}
.sect-memories .memory {
    background: #00425A;
    border-radius: 24px;
    padding: 32px;
}
.sect-memories .memory .box {
    display: flex;
    justify-content: space-between;
}
.sect-memories .memory .title {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 24px;
    line-height: 36px;
    text-transform: uppercase;
    background: -webkit-linear-gradient(left, var(--gradientColor2), var(--gradientColor1));
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.sect-memories .memory .text {
    font-size: 20px;
    line-height: 28px;
    color: #ECF0F2;
    margin-top: 32px;
}
.sect-memories .memory .name {
    font-weight: 600;
    font-size: 16px;
    line-height: 24px;
    color: #fff;
    margin-top: 32px;
}
.sect-memories .memory .years {
    font-weight: 300;
    font-size: 14px;
    line-height: 22px;
    color: #C3D7DE;
}
.sect-memories .memory .image {
    margin-left: 48px;
    position: relative;
}
.sect-memories .memory .image:before {
    content: '';
    background: url('assets/img/icons/memories-heart.svg') no-repeat;
    width: 58px;
    height: 73px;
    position: absolute;
    top: -4px;
    left: -25px;
}
.sect-memories .memory .image img {
    border-radius: 24px;
    width: 323px;
    height: 100%;
    object-fit: cover;
    display: block;
}
.sect-memories .slide {
    margin: 0 12px;
    transition: opacity 0.5s;
}
.sect-memories .slide:not(.slick-current) {
    opacity: 0.1;
    cursor: pointer;
}
.sect-memories .slide:not(.slick-current):hover {
    opacity: 0.3;
}
.sect-memories .slick-list {
    overflow: visible;
}

.sect-reviews {
    padding-top: 95px;
    margin-bottom: 96px;
}
.sect-reviews .head-wrap .sub {
    margin-left: 110px;
}
.sect-reviews .head-wrap .but {
    margin-top: 24px;
}
.sect-reviews .reviews {
    margin-top: 52px;
    margin-left: -10px;
    margin-right: -10px;
}
.sect-reviews .reviews .item {
    padding-left: 10px;
    padding-right: 10px;
}
.sect-reviews .reviews .item-bg {
    background: #FAF6F1;
    border-radius: 24px;
    height: 100%;
    padding: 29px 22px 25px 30px;
    display: flex;
    flex-direction: column;
}
.sect-reviews .reviews .text {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 20px;
    line-height: 32px;
    background: url('assets/img/icons/quote.svg') no-repeat 0 0;
    padding-top: 51px;
}
.sect-reviews .reviews .name {
    font-weight: 600;
    font-size: 16px;
    line-height: 24px;
    padding-top: 35px;
    margin-top: auto;
}
.sect-reviews .reviews .date {
    font-size: 14px;
    line-height: 22px;
}
.sect-reviews .slick-track {
    display: flex;
}
.slick-track:before, .slick-track:after {
    display: none;
}
.sect-reviews .slick-slide {
    height: auto;
    float: none;
}

.sect-faq {
    margin-top: 96px;
    margin-bottom: 102px;
}
.sect-faq .head-wrap {
    align-items: flex-start;
}
.sect-faq .head-wrap .head {
    flex-shrink: 0;
}
.sect-faq .head-wrap .questions {
    margin-left: 148px;
}
.sect-faq .head-wrap .questions .item {
    border-top: 1px solid #E4E1DD;
    padding-top: 24px;
    padding-bottom: 3px;
}
.sect-faq .head-wrap .question {
    font-weight: 500;
    font-size: 20px;
    line-height: 1.2;
    padding-bottom: 20px;
    padding-right: 40px;
    position: relative;
    user-select: none;
    cursor: pointer;
}
.sect-faq .head-wrap .question:hover {
    background: -webkit-linear-gradient(left, var(--gradientColor2), var(--gradientColor1));
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.sect-faq .head-wrap .question i {
    width: 18px;
    height: 18px;
    position: absolute;
    top: 4px;
    right: 6px;
    will-change: transform;
}
.sect-faq .head-wrap .question:hover i:before, .sect-faq .head-wrap .question:hover i:after {
    background: linear-gradient(to left, var(--gradientColor1), var(--gradientColor2));
}
.sect-faq .head-wrap .question i:before, .sect-faq .head-wrap .question i:after {
    content: '';
    background: #1B1916;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.sect-faq .head-wrap .question i:before {
    width: 2px;
}
.sect-faq .head-wrap .question i:after {
    height: 2px;
}
.sect-faq .head-wrap .item.active .question i:before {
    display: none;
}
.sect-faq .head-wrap .answer {
    font-weight: normal;
    font-size: 16px;
    line-height: 24px;
    color: #948779;
    padding-bottom: 24px;
    transition: margin 0.5s;
}
.sect-faq .head-wrap .questions:not(.ready) .answer {
    transition: none;
}
.sect-faq .head-wrap .answer p:not(:last-child) {
    margin-bottom: 20px;
}
.sect-faq .head-wrap .answer-wrap {
    overflow: hidden;
}
.sect-faq .head-wrap .questions:not(.ready) .answer-wrap {
    height: 0;
}
.sect-faq .head-wrap .item.active .answer {
    margin-top: 0 !important;
}

.sect-create {
    margin-top: 102px;
}
.sect-create .create-bg {
    background: #014056;
    border-radius: 24px;
    padding: 39px 47px 55px 47px;
    position: relative;
}
.sect-create .content {
    max-width: 645px;
    position: relative;
    z-index: 1;
}
.sect-create .head {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 48px;
    line-height: 1.2;
    text-transform: uppercase;
    background: -webkit-linear-gradient(left, var(--gradientColor2), var(--gradientColor1));
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.sect-create .sub {
    font-size: 20px;
    line-height: 28px;
    color: #D3DFE3;
    max-width: 485px;
    margin-top: 32px;
}
.sect-create .but {
    margin-top: 32px;
}
.sect-create .image {
    background: url('assets/img/heart-large.svg') no-repeat center -20px;
    background-size: 100% auto;
    width: 560px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 25px;
}
.sect-create .image img {
    position: absolute;
    right: 50px;
    bottom: 0;
}

.sect-memorial-creation {
    background: linear-gradient(to left, var(--gradientColor1-light), var(--gradientColor2-light));
    padding: 80px 0;
}
.sect-memorial-creation .steps {
    display: flex;
    padding: 0 48px;
    margin-left: -6px;
    margin-right: -6px;
    margin-top: 40px;
}
.sect-memorial-creation .steps .item {
    background: #fff;
    border-radius: 16px;
    width: calc(25% - 12px);
    padding: 8px 20px 8px 12px;
    display: flex;
    align-items: center;
    margin-left: 6px;
    margin-right: 6px;
}
.sect-memorial-creation .steps .number {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 70px;
    line-height: 1.2;
    background: -webkit-linear-gradient(left, var(--gradientColor2), var(--gradientColor1));
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-right: 16px;
}
.sect-memorial-creation .steps .desc {
    font-size: 20px;
    line-height: 28px;
}

.sect-video {
    margin: 81px 0;
}
.sect-video .video {
    height: 725px;
    margin-top: 40px;
    position: relative;
}
.sect-video .video:not(.go) iframe {
    visibility: hidden;
}
.sect-video .video .cover {
    background: url('assets/img/video-bg.jpg') no-repeat center;
    background-size: cover;
    border-radius: 32px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    cursor: pointer;
}
.sect-video .video .cover:after {
    content: '';
    background: #1B191699 url('assets/img/icons/icon-play.svg') no-repeat 55% center;
    border-radius: 50%;
    width: 80px;
    height: 80px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    transition: background-color 0.3s;
}
.sect-video .video .cover:hover:after {
    background-color: #1B1916;
}
.sect-video .video.go .cover {
    display: none;
}

.product-page {
    margin-top: 62px;
    margin-bottom: 80px;
}
.product-page .product {
    display: flex;
}
.product-page .images {
    display: flex;
}
.product-page .images .thumbs {
    padding: 8px 0;
    margin-right: 12px;
}
.product-page .images .thumb:not(:last-child) {
    margin-bottom: 8px;
}
.product-page .images .thumb:not(.active) {
    cursor: pointer;
}
.product-page .images .thumb img {
    border: 1px solid #BF986F33;
    border-radius: 12px;
    width: 96px;
    height: 85px;
    object-fit: cover;
}
.product-page .images .thumb.active img {
    border-color: #BF986F;
}
.product-page .images .thumb:not(.active):hover img {
    border-color: #BF986F80;
}
.product-page .images .main {
    background: radial-gradient(ellipse at center, #F1E79633 0%, #BF986F33 100%);
    border-radius: 24px;
    width: 775px;
    height: 690px;
    padding: 43px 60px 0;
    position: relative;
}
.product-page .images .main .image {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: 43px;
    left: 60px;
    right: 60px;
    bottom: 0;
    transition: opacity 1s, visibility 1s;
}
.product-page .images .main .image.active {
    opacity: 1;
    visibility: visible;
}
.product-page .images .main img {
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    bottom: 0;
}
.product-page .data {
    padding: 8px 0;
    margin-left: 64px;
}
.product-page .data .head {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 32px;
    line-height: 1.2;
    text-transform: uppercase;
}
.product-page .data .type {
    margin-top: 20px;
}
.product-page .data .price {
    font-weight: 500;
    font-size: 24px;
    line-height: 1.2;
    margin-top: 20px;
}
.product-page .data .price span {
    font-size: 32px;
}
.product-page .data .price-info {
    font-size: 14px;
    line-height: 22px;
}
.product-page .data .to-cart {
    margin-top: 20px;
}
.product-page .data .description {
    font-size: 16px;
    line-height: 24px;
    margin-top: 20px;
}
.product-page .data .description p:not(:last-child) {
    margin-bottom: 10px;
}
.product-page .data .additional-info {
    margin-top: 20px;
}
.product-page .data .additional-info .item {
    border-top: 1px solid #E0E3DF;
}
.product-page .data .additional-info .item .caption {
    font-weight: normal;
    font-size: 16px;
    line-height: 22px;
    padding: 11px 0;
    padding-right: 30px;
    position: relative;
    user-select: none;
    cursor: pointer;
}
.product-page .data .additional-info .item .caption:hover span {
    background: -webkit-linear-gradient(left, var(--gradientColor2), var(--gradientColor1));
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.product-page .data .additional-info .item .caption i {
    width: 12px;
    height: 12px;
    position: absolute;
    top: 16px;
    right: 3px;
    will-change: transform;
}
.product-page .data .additional-info .item .caption i:before, .product-page .data .additional-info .item .caption i:after {
    content: '';
    background: #1B1916;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.product-page .data .additional-info .item .caption i:before {
    width: 2px;
}
.product-page .data .additional-info .item .caption i:after {
    height: 2px;
}
.product-page .data .additional-info .item.active .caption i:before {
    display: none;
}
.product-page .data .additional-info .item .caption:hover i:before, .product-page .data .additional-info .item .caption:hover i:after {
    background: linear-gradient(to left, var(--gradientColor1), var(--gradientColor2));
}
.product-page .data .additional-info .info-data-wrap {
    overflow: hidden;
}
.product-page .data .additional-info:not(.ready) .info-data-wrap {
    height: 0px;
}
.product-page .data .additional-info .info-data {
    font-size: 14px;
    line-height: 22px;
    color: #948779;
    padding-bottom: 20px;
    transition: margin 0.5s;
}
.product-page .data .additional-info:not(.ready) .info-data {
    transition: none;
}
.product-page .data .additional-info .info-data p:not(:last-child) {
    margin-bottom: 10px;
}
.product-page .data .additional-info .item.active .info-data {
    margin-top: 0 !important;
}
.product-page .reviews {
    max-width: 920px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 112px;
}
.product-page .reviews .row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
}
.product-page .reviews .head {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 52px;
    line-height: 1.2;
    text-transform: uppercase;
}
.product-page .reviews .rating .number {
    font-weight: 600;
    font-size: 20px;
    line-height: 24px;
    margin-right: 4px;
}
.product-page .reviews .rating .number, .product-page .reviews .rating .rating-stars {
    display: inline-block;
    vertical-align: middle;
}
.product-page .reviews .rating .hint {
    font-size: 14px;
    line-height: 1.2;
    text-align: right;
    color: #9F9F9F;
    margin-top: 8px;
}
.product-page .reviews .sort-by select {
    width: 200px;
}
.product-page .reviews .item {
    border-top: 1px solid #EBEBEB;
    padding: 20px 0;
}
.product-page .reviews .item-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.product-page .reviews .item .date {
    font-size: 14px;
    line-height: 22px;
}
.product-page .reviews .item .text {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 16px;
    line-height: 24px;
    margin-top: 16px;
}
.product-page .reviews .item .author {
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    padding-right: 30px;
    display: inline-block;
    margin-top: 16px;
    position: relative;
}
.product-page .reviews .item .author:after {
    content: '';
    background: linear-gradient(to left, var(--gradientColor1), var(--gradientColor2));
    width: 18px;
    height: 1px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    will-change: transform;
}

.cart-page {
    margin: 40px 0;
}
.cart-page .head {
    text-align: left;
}
.cart-page .cart {
    display: flex;
    margin-top: 35px;
}
.cart-page .cart .list {
    flex-grow: 1;
}
.cart-page .cart .item {
    display: flex;
}
.cart-page .cart .item:not(:last-child) {
    margin-bottom: 40px;
}
.cart-page .cart .item .image-wrap {
    width: 130px;
    margin-right: 32px;
    position: relative;
}
.cart-page .cart .item .image {
    background: radial-gradient(ellipse at center, #F1E79633 0%, #BF986F33 100%);
    border-radius: 12px;
    padding-top: 88%;
    position: relative;
}
.cart-page .cart .item .image img {
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    width: calc(100% - 24px);
    height: calc(100% - 11px);
    object-fit: cover;
    margin: auto;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
}
.cart-page .cart .item .data {
    margin-right: 30px;
}
.cart-page .cart .item .data .cap {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 20px;
    line-height: 1.2;
    text-transform: uppercase;
}
.cart-page .cart .item .data .params {
    margin-top: 16px;
}
.cart-page .cart .item .data .params li {
    font-size: 14px;
    line-height: 1.2;
    background: url('assets/img/icons/tick-gradient.svg') no-repeat left 0;
    display: block;
    padding-left: 23px;
}
.cart-page .cart .item .data .params li:not(:last-child) {
    margin-bottom: 8px;
}
.cart-page .cart .item .amount {
    margin-left: auto;
}
.cart-page .cart .item .amount .price {
    font-weight: 500;
    font-size: 16px;
    line-height: 1.2;
}
.cart-page .cart .item .amount .price span {
    font-size: 20px;
}
.cart-page .cart .item .amount .controls {
    display: flex;
    align-items: center;
    margin-top: 16px;
}
.cart-page .cart .item .amount .controls .minus, .cart-page .cart .item .amount .controls .plus {
    border: 1px solid #C3C6C2;
    border-radius: 6px;
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    position: relative;
    cursor: pointer;
    will-change: transform;
    user-select: none;
}
.cart-page .cart .item .amount .controls .minus:hover, .cart-page .cart .item .amount .controls .plus:hover {
    background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to left, var(--gradientColor1), var(--gradientColor2)) border-box;
    border: 1px solid transparent;
}
.cart-page .cart .item .amount .controls .minus:after, .cart-page .cart .item .amount .controls .plus:before, .cart-page .cart .item .amount .controls .plus:after {
    content: '';
    background: #C3C6C2;
    border-radius: 5px;
    width: 10px;
    height: 1.5px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    will-change: transform;
}
.cart-page .cart .item .amount .controls .plus:before {
    width: 1.5px;
    height: 10px;
}
.cart-page .cart .item .amount .controls .minus:hover:after, .cart-page .cart .item .amount .controls .plus:hover:before, .cart-page .cart .item .amount .controls .plus:hover:after {
    background: linear-gradient(to left, var(--gradientColor1), var(--gradientColor2));
}
.cart-page .cart .item .amount input {
    font-weight: 500;
    font-size: 16px;
    text-align: center;
    border: none;
    background: none;
    width: 46px;
    height: 24px;
    padding: 0;
}
.cart-page .cart .order {
    background: linear-gradient(to left, #bf986f33, #f1e79633);
    border-radius: 20px;
    width: 330px;
    flex-shrink: 0;
    align-self: flex-start;
    padding: 20px;
    margin-left: 132px;
}
.cart-page .cart .order .cap {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 20px;
    line-height: 1.2;
    margin-bottom: 16px;
}
.cart-page .cart .order .row {
    font-size: 14px;
    line-height: 1.2;
    display: flex;
    margin-bottom: 8px;
}
.cart-page .cart .order .col:first-child {
    margin-right: 24px;
}
.cart-page .cart .order .col:last-child {
    width: 92px;
    flex-shrink: 0;
    margin-left: auto;
}
.cart-page .cart .order .row.total {
    font-size: 20px;
    line-height: 1.2;
    padding-top: 16px;
    margin-top: 16px;
    position: relative;
}
.cart-page .cart .order .row.total:before {
    content: '';
    background: linear-gradient(to left, var(--gradientColor1), var(--gradientColor2));
    height: 1px;
    position: absolute;
    top: 0;
    left: 0;
    right: 7px;
}
.cart-page .cart .order .row.total .price {
    font-weight: 500;
    font-size: 16px;
}
.cart-page .cart .order .row.total .price span {
    font-size: 20px;
}
.cart-page .cart .order .button {
    margin-top: 16px;
}
.cart-page .cart .order .button .but {
    width: 100%;
}

.auth-page {
    margin: 50px 0;
}
.auth-page .auth {
    max-width: 350px;
    margin-left: auto;
    margin-right: auto;
}
.auth-page .auth .head {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 32px;
    line-height: 1.2;
    text-transform: uppercase;
    text-align: center;
}
.auth-page .auth form {
    margin-top: 32px;
}
.auth-page .auth select {
    font-size: 20px;
    height: 52px;
    padding-left: 16px;
}
.auth-page .auth .field {
    margin-top: 16px;
}
.auth-page .auth .field .error-text {
    margin-bottom: -8px;
}
.auth-page .auth .terms {
    margin-top: 12px;
}
.auth-page .auth .terms .checkbox {
    font-size: 14px;
}
.auth-page .auth .terms a {
    background: -webkit-linear-gradient(left, var(--gradientColor2), var(--gradientColor1));
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
    position: relative;
}
.auth-page .auth .terms a:hover:after {
    content: '';
    background: linear-gradient(to left, var(--gradientColor1), var(--gradientColor2));
    height: 1px;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    will-change: transform;
}
.auth-page .auth .cols {
    display: flex;
    justify-content: space-between;
    margin-top: 16px;
}
.auth-page .auth .checkbox {
    font-size: 16px;
    line-height: 22px;
}
.auth-page .auth .link {
    font-size: 16px;
    line-height: 22px;
    background: -webkit-linear-gradient(left, var(--gradientColor2), var(--gradientColor1));
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    position: relative;
}
.auth-page .auth .link:hover:after {
    content: '';
    background: linear-gradient(to left, var(--gradientColor1), var(--gradientColor2));
    height: 1px;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    will-change: transform;
}
.auth-page .auth .button {
    margin-top: 16px;
}
.auth-page .auth .but {
    width: 100%;
}

.memorials-page {
   /* margin: 80px 0; */
}
.memorials-page .box {
    max-width: 632px;
    margin-left: auto;
    margin-right: auto;
}
.memorials-page .head {
    margin-bottom: 34px;
}
.memorials-page .memorials .item {
    background: #FAF6F1;
    border-radius: 20px;
    padding: 16px;
    display: flex;
    align-items: center;
    margin-top: 12px;
    position: relative;
}
.memorials-page .memorials .item .image {
    background: linear-gradient(to left, var(--gradientColor1), var(--gradientColor2));
    border-radius: 50%;
    width: 144px;
    height: 144px;
    padding: 2px;
    flex-shrink: 0;
}
.memorials-page .memorials .item .image.no-photo {
    background: none;
    padding: 0;
}
.memorials-page .memorials .item .image img {
    border-radius: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.memorials-page .memorials .item .data {
    margin-left: 20px;
}
.memorials-page .memorials .item .name {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 24px;
    line-height: 1.2;
}
.memorials-page .memorials .item .type {
    font-weight: normal;
    font-size: 14px;
    line-height: 22px;
    margin-top: 12px;
}
.memorials-page .memorials .item .type span {
    border-radius: 16px;
    padding: 0 8px;
    display: inline-block;
}
.memorials-page .memorials .item .type span.public {
    color: #07A925;
    background: #07A9251A;
}
.memorials-page .memorials .item .type span.hidden {
    background: #E4E1DD;
}
.memorials-page .memorials .item .code {
    font-size: 14px;
    line-height: 1.2;
    margin-top: 12px;
}
.memorials-page .memorials .item .code .value {
    font-weight: 500;
    margin-top: 4px;
}
.memorials-page .memorials .item .code .value span {
    display: inline-block;
}
.memorials-page .memorials .item .controls {
    display: flex;
    position: absolute;
    top: 10px;
    right: 10px;
}
.memorials-page .memorials .item .control {
    position: relative;
    margin-left: 4px;
}
.memorials-page .memorials .item .controls .circle {
    background: #F2F0EE;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 50%;
    width: 32px;
    height: 32px;
    cursor: pointer;
    user-select: none;
}
.memorials-page .memorials .item .controls .circle:hover {
    background-color: #E4E1DD;
}
.memorials-page .memorials .item .controls .options .circle {
    background-image: url('assets/img/icons/dots-icon.svg');
}
.memorials-page .memorials .item .controls .edit .circle {
    background-image: url('assets/img/icons/pencil-icon.svg');
}
.memorials-page .memorials .item .controls .dropdown {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 6px 16px 0 rgba(0, 0, 0, 0.07);
    padding: 4px;
    margin-top: 15px;
    position: absolute;
    z-index: 1;
    left: 0;
    top: 100%;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s, visibility 0.5s, margin 0.5s;
}
.memorials-page .memorials .item .controls .dropdown.active {
    margin-top: 7px;
    opacity: 1;
    visibility: visible;
}
.memorials-page .memorials .item .controls .dropdown li {
    display: block;
}
.memorials-page .memorials .item .controls .dropdown li a {
    font-size: 14px;
    line-height: 1.2;
    white-space: nowrap;
    padding: 5px 8px;
    display: block;
}
.memorials-page .memorials .item .controls .dropdown li a:hover {
    background: #F2F0EE;
    border-radius: 8px;
}
.memorials-page .nav {
    max-width: 920px;
    display: flex;
    align-items: center;
    margin-left: auto;
    margin-right: auto;
    margin-top: -44px;
}
.memorials-page .nav .go-back a:hover svg path {
    stroke: url(#icon-gradient);
}
.memorials-page .nav .memorial {
    display: flex;
    align-items: center;
    margin-left: 24px;
}
.memorials-page .nav .memorial .image {
    background: linear-gradient(to left, var(--gradientColor1), var(--gradientColor2));
    border-radius: 50%;
    width: 48px;
    height: 48px;
    padding: 2px;
    flex-shrink: 0;
}
.memorials-page .nav .memorial .image img {
    border-radius: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.memorials-page .nav .memorial .name {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 20px;
    line-height: 1.2;
    margin-left: 12px;
}
.memorials-page .privacy {
    max-width: 666px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 53px;
}
.memorials-page .privacy .settings {
    margin-top: 52px;
}
.memorials-page .privacy .settings .item {
    padding-right: 147px;
    position: relative;
}
.memorials-page .privacy .settings .item:not(:last-child) {
    border-bottom: 1px solid #F2F0EE;
    padding-bottom: 16px;
}
.memorials-page .privacy .settings .item:not(:first-child) {
    padding-top: 16px;
}
.memorials-page .privacy .settings .item .cap {
    font-weight: 500;
    font-size: 20px;
    line-height: 1.2;
}
.memorials-page .privacy .settings .item .desc {
    font-size: 14px;
    line-height: 22px;
    margin-top: 12px;
}
.memorials-page .privacy .settings .item .switch {
    display: flex;
    align-items: center;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
}
.memorials-page .qr {
    text-align: center;
    margin-top: 53px;
}
.memorials-page .qr .image {
    margin-top: 52px;
}
.memorials-page .qr .image img {
    max-width: 100%;
    margin: auto;
}
.memorials-page .qr .image .download {
    margin-top: -11px;
}

.profile-page {
    margin-bottom: 80px;
}
.profile-page .cover {
    background: radial-gradient(ellipse at center, #F1E79633 0%, #BF986F33 100%);
    height: 237px;
    position: relative;
}
.profile-page .cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
}
.profile-page .cover:not(.added) img {
    display: none;
}
.profile-page .cover .wrap {
    height: 100%;
}
.profile-page .cover .box {
    height: 100%;
    padding: 30px 0;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    position: relative;
    z-index: 1;
}
.profile-page .top-controls-wrap {
    position: relative;
}
.profile-page .top-controls {
    padding-top: 26px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}
.profile-page .top-controls .share, .profile-page .top-controls .options {
    position: relative;
    z-index: 2;
}
.profile-page .top-controls .share .btn {
    font-weight: normal;
    font-size: 14px;
    line-height: 22px;
    border: 1px solid #E4E1DD;
    border-radius: 50px;
    height: 32px;
    padding: 4px 10px 4px 34px;
    position: relative;
    cursor: pointer;
    user-select: none;
}
.profile-page .top-controls .share .btn:before {
    content: '';
    background: url('assets/img/icons/share-icon.svg') no-repeat;
    width: 14px;
    height: 14px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 12px;
}
.profile-page .top-controls .share .btn:hover {
    background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to left, var(--gradientColor1), var(--gradientColor2)) border-box;
    border: 1px solid transparent;
}
.profile-page .top-controls .share .dropdown {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 8px 24px 0 rgba(0, 0, 0, 0.08);
    padding: 8px;
    margin-top: 15px;
    position: absolute;
    z-index: 1;
    left: 0;
    top: 100%;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s, visibility 0.5s, margin 0.5s;
}
.profile-page .top-controls .share .dropdown.active {
    margin-top: 7px;
    opacity: 1;
    visibility: visible;
}
.profile-page .top-controls .share a {
    display: inline-block;
    cursor: pointer;
}
.profile-page .top-controls .share .icons {
    font-size: 0;
    white-space: nowrap;
    margin-right: -8px;
}
.profile-page .top-controls .share .icon {
    border-radius: 50%;
    background: #F2F0EE;
    background-repeat: no-repeat;
    background-position: center;
    width: 32px;
    height: 32px;
    display: inline-block;
    margin-right: 8px;
}
.profile-page .top-controls .share .icon:hover {
    background-color: #E4E1DD;
}
.profile-page .top-controls .share .facebook {
    background-color: #DCEBFD;
    background-image: url('assets/img/icons/facebook-icon.svg');
}
.profile-page .top-controls .share .telegram {
    background-color: #37AEE226;
    background-image: url('assets/img/icons/telegram-icon.svg');
    background-position: 5px center;
}
.profile-page .top-controls .share .twitter {
    background-color: #55ACEE26;
    background-image: url('assets/img/icons/twitter-icon.svg');
}
.profile-page .top-controls .share .link {
    background-image: url('assets/img/icons/link-icon.svg');
}
.profile-page .top-controls .share .facebook:hover {
    background-color: #C7DEFB;
}
.profile-page .top-controls .share .telegram:hover {
    background-color: #37AEE24D;
}
.profile-page .top-controls .share .twitter:hover {
    background-color: #55ACEE4D;
}
.profile-page .top-controls .options .item {
    font-size: 0;
}
.profile-page .top-controls .options .item span {
    font-weight: normal;
    font-size: 14px;
    line-height: 22px;
    margin-right: 12px;
}
.profile-page .top-controls .options .item span, .profile-page .top-controls .options .item .toggle-button {
    display: inline-block;
    vertical-align: middle;
}
.profile-page .profile {
    max-width: 920px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}
.profile-page .main-info {
    text-align: center;
    max-width: 420px;
    margin-top: -118px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    z-index: 1;
}
.profile-page.edit .main-info {
    max-width: 332px;
}
.profile-page .main-info .image {
    background: #fff;
    border-radius: 50%;
    width: 226px;
    height: 226px;
    margin: auto;
    padding: 8px;
}
.profile-page .main-info .image img {
    border-radius: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.profile-page .main-info .photo .add {
    margin-top: -35px;
}
.profile-page .main-info .name {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 32px;
    line-height: 1.2;
    text-transform: uppercase;
    margin-top: 20px;
}
.profile-page .main-info .info-cols {
    text-align: center;
    display: flex;
    justify-content: space-between;
    margin-top: 32px;
}
.profile-page.edit .main-info .info-cols {
    padding: 0 16px;
}
.profile-page .main-info .col .label {
    font-weight: normal;
    font-size: 12px;
    line-height: 1.2;
    text-transform: uppercase;
    color: #948779;
}
.profile-page.edit .main-info .col .label {
    color: #1B1916;
}
.profile-page .main-info .col .value {
    font-size: 16px;
    line-height: 1.2;
    margin-top: 8px;
}
.profile-page.edit .main-info .col .value {
    font-weight: normal;
    font-size: 14px;
    color: #C9C3BC;
    margin-top: 20px;
}
.profile-page .main-info .col .place {
    margin-top: 8px;
}
.profile-page .tabs-links {
    text-align: center;
    margin-top: 64px;
}
.profile-page .tabs-links .bg {
    background: linear-gradient(to left, var(--gradientColor1-light), var(--gradientColor2-light));
    border-radius: 100px;
    padding: 4px;
    display: inline-block;
}
.profile-page .tabs-links ul {
    list-style: none;
    display: inline-flex;
}
.profile-page .tabs-links li:not(:last-child) {
    margin-right: 4px;
}
.profile-page .tabs-links li span {
    font-weight: normal;
    font-size: 16px;
    line-height: 24px;
    padding: 6px 12px;
    display: block;
}
.profile-page .tabs-links li.active span {
    background: #fff;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.08);
    border-radius: 50px;
}
.profile-page .tabs-links li:not(.active) a:hover span {
    background: rgba(255, 255, 255, 0.5);
    border-radius: 50px;
}
.profile-page .text-description {
    margin-top: 54px;
}
.profile-page .text-description .cap {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 32px;
    line-height: 1.2;
    text-transform: uppercase;
    margin-bottom: 32px;
}
.profile-page .text-description p {
    font-size: 16px;
    line-height: 24px;
    margin-top: 20px;
}
.profile-page .form {
    margin-top: 49px;
}
.profile-page .form .cap {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 28px;
    line-height: 1.2;
    text-transform: uppercase;
    margin-top: 44px;
}
.profile-page .form .field {
    margin-top: 20px;
}
.profile-page .form .row {
    display: flex;
    margin-left: -8px;
    margin-right: -8px;
}
.profile-page .form div[class^="col"] {
    padding-left: 8px;
    padding-right: 8px;
}
.profile-page .form .col-33 {
    width: calc(100% / 3);
}
.profile-page .form .col-25 {
    width: 25%;
}
.profile-page .form .col-75 {
    width: 75%;
}
.profile-page .form textarea {
    height: 249px;
}
.profile-page .form .save {
    margin-top: 44px;
}
.profile-page .gallery {
    padding-top: 50px;
    display: flex;
    flex-wrap: wrap;
    margin: -4px;
}
.profile-page .gallery .item {
    width: 25%;
    padding: 4px;
}
.profile-page .gallery .item.sample {
    display: none;
}
.profile-page .gallery .item-wrap {
    padding-top: 100%;
    position: relative;
}
.profile-page .gallery .file-upload, .profile-page .gallery .image {
    width: auto;
    height: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.profile-page .gallery .image img {
    border-radius: 8px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.profile-page .gallery .image .delete {
    background: #1B191699 url('assets/img/icons/trash-icon.svg') no-repeat center;
    border-radius: 50%;
    width: 32px;
    height: 32px;
    position: absolute;
    top: 13px;
    right: 13px;
    cursor: pointer;
}
.profile-page .gallery .image.loading .delete {
    display: none;
}
.profile-page .gallery .image .delete:hover {
    background-color: #1B1916E6;
}
.profile-page .gallery .image.loading:after {
    content: '';
    background: linear-gradient(to left, #BF986FB3, #F1E796B3);
    border-radius: 8px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.profile-page .gallery .image.loading .status-circle {
    margin: auto;
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.profile-page .family {
    overflow: hidden;
}
.profile-page .family .add-form {
    margin-top: 57px;
}
.profile-page .family .add-form .row {
    display: flex;
}
.profile-page .family .add-form .field {
    margin-top: 0;
    margin-right: 16px;
}
.profile-page .family .add-form .input {
    width: 432px;
}
.profile-page .family .add-form .select {
    width: 345px;
}
.profile-page .family .add-form select {
    font-size: 20px;
    height: 52px;
}
.profile-page .family .list {
    display: flex;
    flex-wrap: wrap;
    margin-top: 40px;
    margin-right: -70px;
    margin-bottom: -52px;
}
.profile-page .family .col {
    margin-right: 70px;
    margin-bottom: 52px;
}
.profile-page .family .list .cap {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 32px;
    line-height: 1.2;
    padding-right: 94px;
}
.profile-page .family .list .cap span {
    position: relative;
}
.profile-page .family .list .cap span:after {
    content: '';
    background: linear-gradient(to left, var(--gradientColor1), var(--gradientColor2));
    width: 78px;
    height: 1px;
    margin: auto;
    margin-left: 16px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 100%;
    will-change: transform;
}
.profile-page .family .list ul {
    margin-top: 20px;
}
.profile-page .family .list li {
    font-size: 16px;
    line-height: 24px;
    display: block;
    margin-top: 12px;
}
.profile-page .guests {
    max-width: 699px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 47px;
}
.profile-page .guests .add-record {
    margin-bottom: 12px;
}
.profile-page .guests .item {
    background: #FAF6F1;
    border-radius: 24px;
    padding: 20px;
}
.profile-page .guests .item:not(:last-child) {
    margin-bottom: 12px;
}
.profile-page .guests .item .text {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 20px;
    line-height: 32px;
    background: url('assets/img/icons/quote.svg') no-repeat 0 0;
    background-size: 22px auto;
    padding-top: 40px;
}
.profile-page .guests .item .name {
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    margin-top: 20px;
}
.profile-page .guests .item .date {
    font-size: 14px;
    line-height: 22px;
    margin-top: 4px;
}

.search-page {
    margin: 77px 0;
}
.search-page .box {
    max-width: 608px;
    margin-left: auto;
    margin-right: auto;
}
.search-page .string {
    margin-top: 32px;
}
.search-page .string .row {
    display: flex;
}
.search-page .string .search-field {
    flex: 1;
    margin-right: 12px;
}
.search-page .results {
    margin-top: 32px;
}
.search-page .results .item:not(:last-child) {
    margin-bottom: 12px;
}
.search-page .results .item .bg {
    background: linear-gradient(to left, var(--gradientColor1-same), var(--gradientColor2-same));
    border-radius: 20px;
    padding: 16px;
    display: flex;
    align-items: center;
    transition: --gradientColor1-same 1s, --gradientColor2-same 1s;
}
.search-page .results .item a:hover .bg {
    --gradientColor1-same: var(--gradientColor1-light);
    --gradientColor2-same: var(--gradientColor2-light);
}
.search-page .results .item .image {
    width: 90px;
    height: 90px;
    flex-shrink: 0;
}
.search-page .results .item .image img {
    border-radius: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.search-page .results .item .data {
    margin-left: 20px;
}
.search-page .results .item .name {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 20px;
    line-height: 1.2;
}
.search-page .results .item .years {
    font-size: 16px;
    line-height: 24px;
    margin-top: 8px;
}

.contacts-page {
    margin: 77px 0;
}
.contacts-page .box {
    max-width: 805px;
    margin-left: auto;
    margin-right: auto;
}
.contacts-page .cols {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 40px;
}
.contacts-page .info {
    font-size: 16px;
    line-height: 24px;
}
.contacts-page .info p:not(:last-child) {
    margin-bottom: 32px;
}
.contacts-page .info .mail, .contacts-page .info .tel {
    font-weight: 500;
    font-size: 20px;
    line-height: 28px;
    display: block;
    margin-top: 8px;
}
.contacts-page .info .mail a {
    background: -webkit-linear-gradient(left, var(--gradientColor2), var(--gradientColor1));
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    position: relative;
}
.contacts-page .info .mail a:after {
    content: '';
    background: linear-gradient(to left, var(--gradientColor1), var(--gradientColor2));
    height: 1px;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    will-change: transform;
}
.contacts-page .info .mail a:hover {
    background: var(--gradientColor2);
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.contacts-page .info .mail a:hover:after {
    background: var(--gradientColor2);
}
.contacts-page .form {
    width: 379px;
    flex-shrink: 0;
    margin-left: 95px;
}
.contacts-page .form .cap {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 24px;
    line-height: 1.2;
}
.contacts-page .form .button {
    margin-top: 16px;
}
.contacts-page .form .but {
    width: 100%;
}

footer {
    border-top: 1px solid #F2F0EE;
    padding: 45px 0;
}
.sect-create + footer {
    border-top: none;
}
footer a {
    position: relative;
}
footer a:hover {
    background: -webkit-linear-gradient(left, var(--gradientColor2), var(--gradientColor1));
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
footer a:hover:after {
    content: '';
    background: linear-gradient(to left, var(--gradientColor1), var(--gradientColor2));
    height: 1px;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    will-change: transform;
}
footer .logo a:after {
    display: none;
}
footer .top-row, footer .bottom-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
footer .menu, footer .social {
    font-size: 16px;
    line-height: 24px;
}
footer .menu ul, footer .social ul, footer .sub-menu ul {
    list-style: none;
    display: flex;
}
footer .menu li:not(:last-child), footer .social li:not(:last-child), footer .sub-menu li:not(:last-child) {
    margin-right: 24px;
}
footer .bottom-row {
    margin-top: 35px;
}
footer .copy {
    font-size: 14px;
    line-height: 24px;
    color: #948779;
}
footer .sub-menu {
    font-size: 14px;
    line-height: 24px;
}

.popup {
    background: #042F3F4D;
    min-width: 320px;
    display: flex;
    position: fixed;
    z-index: 9999;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    cursor: pointer;
}
.popup:not(.active) {
    display: none;
}
.popup-wrap {
    max-height: 100%;
    padding: 30px;
    margin: auto;
    overflow-y: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}
.popup-wrap::-webkit-scrollbar {
    display: none;
}
.popup-content {
    background: #fff;
    border-radius: 20px;
    width: 474px;
    max-width: 100%;
    padding: 24px;
    position: relative;
    cursor: auto;
}
.popup-content .close {
    position: absolute;
    top: 15px;
    right: 15px;
    cursor: pointer;
}
.popup-content .close:hover path {
    stroke: var(--gradientColor1);
}
.popup-content .head {
    font-family: 'Tenor Sans', sans-serif;
    font-weight: normal;
    font-size: 32px;
    line-height: 1.2;
    text-transform: uppercase;
    text-align: center;
}
.popup-content .sub {
    text-align: center;
    font-size: 14px;
    line-height: 22px;
    margin-top: 16px;
    margin-bottom: 16px;
}
.popup-content .cols {
    display: flex;
    margin: 16px -8px;
}
.popup-content .cols .field {
    width: 50%;
    margin: 0;
    padding: 0 8px;
}
.popup-content .field-rating {
    margin-top: 16px;
}
.popup-content .act {
    margin-top: 16px;
}
.popup-content .act.buttons {
    display: flex;
    justify-content: center;
}
.popup-content .act.buttons .but {
    width: auto;
    margin: 0 4px;
}
.popup-content .but {
    width: 100%;
}
.popup-content textarea {
    height: 213px;
}
.popup-content .image-upload {
    margin-top: 16px;
}
.popup-content .image-upload .uploaded, .popup-content .image-upload .file-upload {
    width: 344px;
    max-width: 100%;
    height: 344px;
}
.popup-content .image-upload .uploaded img {
    border-radius: 8px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.popup-content .image-upload.added .file-upload, .popup-content .image-upload:not(.added) .uploaded {
    display: none;
}
#popup-add-photo .popup-content {
    width: 392px;
}
#popup-guest-record .popup-content {
    width: 584px;
}
#popup-guest-record .popup-content textarea {
    height: 266px;
}

@media screen and (max-width: 1400px) {
    .product-page .images {
        width: 60%;
        flex-shrink: 0;
    }
    .product-page .images .main-wrap {
        flex-grow: 1;
    }
    .product-page .images .main {
        padding-top: 100%;
        height: auto;
        width: auto;
    }
    .product-page .images .main .image {
        top: 30px;
        left: 30px;
        right: 30px;
    }
    .product-page .images .thumbs {
        width: 13%;
    }
    .product-page .images .thumb-wrap {
        padding-top: 88%;
        position: relative;
    }
    .product-page .images .thumb img {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        bottom: 0;
    }
}
@media screen and (max-width: 1300px) {
    .sect-main-offer .image .caption {
        top: -17px;
    }
    .sect-memorial-creation .steps {
        padding: 0;
    }
}
@media screen and (max-width: 1200px) {
    header .login span, header .logged span, header .cart span {
        display: none;
    }
    .head-wrap .head br, .head-wrap .sub br {
        display: none;
    }
    .head-wrap .sub {
        width: 70%;
    }
    .sect-main-offer {
        overflow: hidden;
    }
    .sect-main-offer .image {
        right: auto;
        left: 590px;
    }
    .sect-steps .step .image, .sect-steps .step .slider-bg, .sect-steps .step .image-bg {
        max-width: 50%;
        flex-shrink: 0;
        margin-left: 30px;
    }
    .sect-moments .moments .cap {
        font-size: 20px;
        margin-right: 10px;
    }
    .sect-moments .moments .icon img {
        width: 40px;
    }
    .sect-moments .moments .bg {
        padding: 20px;
    }
    .sect-moments .moments .desc {
        margin-top: 8px;
    }
    .sect-faq .head-wrap .head {
        max-width: 410px;
    }
    .sect-faq .head-wrap .questions {
        margin-left: 100px;
    }
    .sect-create .image {
        background-position: center bottom -40px;
        width: 40%;
    }
    .sect-create .image img {
        width: 120%;
        right: 0;
    }
    .sect-create .content {
        width: 60%;
    }
    .sect-memorial-creation .steps {
        flex-wrap: wrap;
        margin-bottom: -12px;
    }
    .sect-memorial-creation .steps .item {
        width: calc(50% - 12px);
        margin-bottom: 12px;
    }
    .cart-page .cart .order {
        margin-left: 70px;
    }
}
@media screen and (max-width: 1024px) {
    .wrap {
        padding-left: 15px;
        padding-right: 15px;
    }
    header .logo img {
        height: 27px;
    }
    header .menu, header .lang {
        font-size: 12px;
    }
    header .menu li:not(:last-child) {
        margin-right: 15px;
    }
    header .account svg {
        height: 25px;
    }
    header .cart {
        margin-left: 15px;
    }
    header .cart .icon i {
        top: 0px;
        right: -7px;
    }
    .sect-main-offer .head {
        font-size: 62px;
    }
    .sect-main-offer .sub {
        font-size: 21px;
    }
    .sect-main-offer .image {
        max-height: 95%;
        left: 450px;
    }
    .sect-main-offer .image img {
        max-height: 100%;
        margin-left: auto;
    }
    .head-wrap {
        display: block;
    }
    .head-wrap .sub {
        width: auto;
        margin-top: 30px;
        margin-left: 0 !important;
    }
    .head-wrap .head, .head-wrap .sub {
        max-width: 700px;
    }
    .sect-moments .moments {
        flex-wrap: wrap;
        margin-bottom: -20px;
    }
    .sect-moments .moments .item {
        width: 50%;
        padding-bottom: 20px;
        flex: 0 1 auto;
    }
    .sect-moments .moments .icon img {
        width: auto;
    }
    .sect-moments .image {
        margin-left: 40px;
    }
    .sect-memories .slider {
        max-width: 85%;
    }
    .sect-memories .memory .image {
        width: 50%;
        flex-shrink: 0;
        margin-left: 30px;
    }
    .sect-memories .memory .image img {
        width: 100%;
    }
    .sect-reviews .reviews .item-bg {
        border-radius: 20px;
        padding: 16px;
    }
    .sect-reviews .reviews .text {
        background-size: 22px auto;
        padding-top: 43px;
    }
    .sect-reviews .reviews .text {
        font-size: 16px;
        line-height: 24px;
    }
    .sect-reviews .reviews .name {
        font-size: 14px;
        line-height: 22px;
        padding-top: 16px;
    }
    .sect-reviews .reviews .date {
        font-size: 14px;
        line-height: 22px;
    }
    .sect-faq .head-wrap .head {
        max-width: none;
    }
    .sect-faq .head-wrap .questions {
        margin-left: 0;
        margin-top: 50px;
    }
    .sect-create .head {
        font-size: 35px;
    }
    .sect-create .sub {
        font-size: 16px;
        margin-top: 20px;
        max-width: 90%;
    }
    .sect-video .video {
        height: auto;
        padding-top: 57%;
    }
    .sect-video .video iframe {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
    }
    .product-page .images {
        flex-shrink: 0;
        flex-direction: column;
    }
    .product-page .images .main {
        width: auto;
    }
    .product-page .images .thumbs {
        width: auto;
        order: 1;
        display: flex;
        flex-wrap: wrap;
        margin-right: 0;
    }
    .product-page .images .thumb, .product-page .images .thumb:not(:last-child) {
        width: calc(20% - 8px);
        margin-left: 4px;
        margin-right: 4px;
        margin-bottom: 8px;
    }
    .product-page .images .main-wrap {
        flex-grow: 0;
    }
    .product-page .data {
        margin-left: 30px;
    }
    .cart-page .cart .order {
        margin-left: 40px;
        flex-shrink: 1;
    }
    .cart-page .cart .order .col:first-child {
        margin-right: 10px;
    }
    .cart-page .cart .item .image-wrap {
        margin-right: 20px;
    }
    .memorials-page .memorials .item .controls .dropdown {
        left: auto;
        right: 0;
    }
    .profile-page .gallery .item {
        width: calc(100% / 3);
    }
    footer .top-row {
        flex-wrap: wrap;
    }
    footer .menu, footer .social {
        margin-left: auto;
        padding-left: 30px;
    }
    footer .social {
        padding-top: 10px;
        padding-bottom: 10px;
    }
    footer .bottom-row {
        margin-top: 25px;
    }
}
@media screen and (min-width: 768.01px) {
    .mobile {
        display: none !important;
    }
}
@media screen and (max-width: 768px) {
    input[type="text"], input[type="search"], input[type="email"], input[type="tel"], input[type="password"], textarea {
        font-size: 16px;
        line-height: 24px;
    }
    select {
        font-size: 14px;
    }
    .auth-page .auth select {
        font-size: 16px;
    }
    .field-rating input {
        width: 44px;
        height: 44px;
    }
    .desktop {
        display: none !important;
    }
    .mmenu {
        text-align: left;
        width: 24px;
        height: 24px;
        position: relative;
        cursor: pointer;
    }
    .mmenu:after, .mmenu:before, .mmenu div {
        content: '';
        background: #fff;
        border-radius: 2px;
        height: 2px;
        width: 100%;
        position: absolute;
        right: 0;
        will-change: transform;
    }
    .mmenu:before {
        width: 65%;
        top: 3px;
        transition: width 0.5s, transform 0.5s, top 0.5s;
    }
    .mmenu:after {
        width: 85%;
        bottom: 3px;
        transition: width 0.5s, transform 0.5s, bottom 0.5s;
    }
    .mmenu div {
        margin: auto;
        top: 0;
        bottom: 0;
        transition: opacity 0.5s, height 0.5s;
    }
    .menu-active .mmenu:before {
        width: 100%;
        top: 11px;
        transform: rotate(-45deg);
    }
    .menu-active .mmenu:after {
        width: 100%;
        bottom: 11px;
        transform: rotate(45deg);
    }
    .menu-active .mmenu div {
        opacity: 0;
        height: 0;
    }
    header {
        padding: 12px 0;
    }
    header.menu-active {
        background: #014056;
        position: fixed;
        min-width: 320px;
        z-index: 999;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
    }
    header:after {
        height: 1px;
        top: 53px;
        bottom: auto;
        z-index: 9991;
    }
    header:not(.homepage):after {
        top: 54px;
        opacity: 0.1;
    }
    header .mmenu {
        display: block;
    }
    header .menu {
        display: flex;
        justify-content: center;
        align-items: center;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        position: absolute;
        z-index: 999;
        top: 80px;
        bottom: 80px;
        left: 0;
        right: 0;
    }
    header:not(.menu-active) .menu {
        display: none;
    }
    header .menu ul {
        text-align: center;
        margin: auto;
		display: block;
    }
    header .menu li {
        font-family: 'Tenor Sans', sans-serif;
        font-weight: normal;
        font-size: 20px;
        line-height: 28px;
        text-transform: uppercase;
        display: block;
    }
    header .menu li:not(:last-child) {
        margin-bottom: 20px;
        margin-right: 0;
    }
    header .logo img {
        height: 30px;
    }
    header .account {
        margin-left: auto;
        margin-right: 30px;
    }
    header .login span, header .logged span, header .cart span {
        font-size: 12px;
        display: block;
    }
    header .login span {
        margin-left: 7px;
    }
    header .cart span {
        margin-left: 14px;
    }
    header:not(.menu-active) .lang {
        display: none;
    }
    header .lang {
        font-size: 14px;
        line-height: 22px;
        justify-content: center;
        position: absolute;
        z-index: 9991;
        left: 0;
        right: 0;
        bottom: 35px;
    }
    header .lang .item:not(:last-child):after {
        margin: 0 8px;
    }
    .head-wrap .head, .head.main {
        font-size: 24px;
    }
    .head-wrap .sub {
        font-size: 14px;
        line-height: 22px;
        margin-top: 12px;
    }
    .head-wrap .head, .head-wrap .sub {
        text-align: center;
        max-width: 500px;
        margin-left: auto !important;
        margin-right: auto;
    }
    .sect-main-offer .content {
        max-width: none;
        padding-top: 40px;
        padding-bottom: 40px;
        padding-right: 220px;
    }
    .sect-main-offer .head {
        font-size: 32px;
    }
    .sect-main-offer .sub {
        font-size: 14px;
        line-height: 22px;
        margin-top: 16px;
    }
    .sect-main-offer .but {
        font-size: 16px;
        height: 44px;
        padding: 0 16px;
        white-space: nowrap;
        margin-top: 16px;
    }
    .sect-main-offer .image .caption {
        display: none;
    }
    .sect-main-offer .image {
        height: 95%;
        left: auto;
        right: 0;
    }
    .sect-main-offer .image .qr {
        padding: 5px;
        top: 25px;
        left: 55px;
    }
    .sect-main-offer .image .qr img {
        height: 30px;
    }
    .sect-moments {
        padding-top: 32px;
        padding-bottom: 32px;
    }
    .sect-moments .moments {
        margin-top: 16px;
        margin-left: -4px;
        margin-right: -4px;
        margin-bottom: -8px;
    }
    .sect-moments .moments .item {
        padding: 0 4px 8px;
    }
    .sect-moments .moments .desc {
        font-size: 14px;
        line-height: 22px;
    }
    .sect-moments .words {
        padding: 16px;
        margin-top: 16px;
    }
    .sect-moments .box {
        flex-direction: column;
    }
    .sect-moments .image {
        order: -1;
        margin-left: 0;
    }
    .sect-moments .image img {
        width: auto;
        height: auto;
        max-width: 100%;
        margin: auto;
    }
    .sect-moments .content {
        margin-top: 16px;
    }
    .sect-moments .text {
        font-size: 14px;
        line-height: 22px;
        background-size: 22px auto;
        padding-top: 36px;
    }
    .sect-moments .name {
        font-size: 14px;
        line-height: 22px;
        margin-top: 16px;
    }
    .sect-moments .years {
        font-size: 12px;
        line-height: 20px;
    }
    .sect-steps {
        margin-top: 32px;
        margin-bottom: 32px;
    }
    .sect-steps .steps {
        margin-top: 24px;
    }
    .sect-steps .step:not(:last-child) {
        padding-bottom: 24px;
        margin-bottom: 24px;
    }
    .sect-steps .step .number {
        font-size: 40px;
        margin-bottom: 12px;
    }
    .sect-steps .step .cap {
        font-size: 20px;
        line-height: 28px;
    }
    .sect-steps .step .desc, .sect-steps .step .number ~ .desc {
        margin-top: 12px;
    }
    .sect-steps .step .desc p {
        font-size: 14px;
        line-height: 22px;
        margin-top: 12px;
    }
    .sect-steps .step .desc p br {
        display: none;
    }
    .sect-steps .step .desc .but {
        margin-top: 12px;
    }
    .sect-steps .step .image img, .sect-steps .step .image-bg img {
        border-radius: 12px;
    }
    .sect-steps .step .slider-bg {
        border-radius: 20px;
        padding: 15px 15px 0;
    }
    .sect-steps .step .image-bg {
        border-radius: 20px;
        padding: 15px;
    }
    .sect-steps .step .slider, .sect-steps .step .slider img {
        border-top-left-radius: 12px;
        border-top-right-radius: 12px;
    }
    .sect-steps .slick-dots {
        left: -5px;
        right: -5px;
        bottom: 3px;
    }
    .sect-memories {
        padding-top: 32px;
        padding-bottom: 32px;
    }
    .sect-memories .head-wrap .but {
        margin-top: 12px;
    }
    .sect-memories .slider {
        max-width: 90%;
        margin-top: 24px;
        margin-left: 8px;
    }
    .sect-memories .slide {
        margin: 0 6px;
    }
    .sect-memories .memory {
        padding: 16px;
    }
    .sect-memories .memory .title {
        font-size: 20px;
        line-height: 28px;
    }
    .sect-memories .memory .text {
        font-size: 14px;
        line-height: 22px;
        margin-top: 16px;
    }
    .sect-memories .memory .name {
        font-size: 14px;
        line-height: 22px;
        margin-top: 16px;
    }
    .sect-memories .memory .years {
        font-size: 12px;
        line-height: 20px;
    }
    .sect-memories .memory .image:before {
        background-size: contain;
        width: 41px;
        height: 52px;
        top: -9px;
        left: -10px;
    }
    .sect-reviews {
        padding-top: 32px;
        margin-bottom: 32px;
        overflow: hidden;
    }
    .sect-reviews .head-wrap .but {
        margin-top: 12px;
    }
    .sect-reviews .reviews {
        padding-right: 25px;
        margin-top: 24px;
        margin-left: -6px;
        margin-right: -6px;
    }
    .sect-reviews .reviews .item {
        padding-left: 6px;
        padding-right: 6px;
    }
    .sect-reviews .slick-list {
        overflow: visible;
    }
    .sect-faq {
        margin-top: 64px;
        margin-bottom: 82px;
    }
    .sect-faq .head-wrap .questions {
        margin-top: 24px;
    }
    .sect-faq .head-wrap .questions .item {
        padding-top: 16px;
        padding-bottom: 6px;
    }
    .sect-faq .head-wrap .question {
        font-size: 16px;
        line-height: 24px;
        padding-bottom: 10px;
    }
    .sect-faq .head-wrap .answer {
        font-size: 14px;
        line-height: 22px;
        padding-bottom: 10px;
    }
    .sect-faq .head-wrap .question i {
        width: 15px;
        height: 15px;
        top: 5px;
    }
    .sect-create {
        margin-top: 82px;
    }
    .sect-create .create-bg {
        border-radius: 20px;
        padding: 0;
    }
    .sect-create .content {
        text-align: center;
        width: auto;
        padding: 18px;
    }
    .sect-create .head {
        font-size: 20px;
        line-height: 28px;
    }
    .sect-create .sub {
        font-size: 14px;
        margin-top: 22px;
        max-width: none;
        margin-top: 12px;
    }
    .sect-create .but {
        margin-top: 12px;
    }
    .sect-create .image, .sect-create .image img {
        position: static;
    }
    .sect-create .image {
        background-position: center top;
        background-size: 400px;
        width: auto;
    }
    .sect-create .image img {
        width: 100%;
        max-width: 400px;
        margin: auto;
    }
    .sect-memorial-creation {
        padding: 32px 0;
    }
    .sect-memorial-creation .head {
        font-size: 36px;
    }
    .sect-memorial-creation .steps {
        margin-top: 12px;
        margin-left: -4px;
        margin-right: -4px;
        margin-bottom: -8px;
    }
    .sect-memorial-creation .steps .item {
        width: calc(50% - 8px);
        margin-left: 4px;
        margin-right: 4px;
        margin-bottom: 8px;
    }
    .sect-memorial-creation .steps .number {
        font-size: 52px;
        width: 62px;
    }
    .sect-memorial-creation .steps .desc {
        font-size: 16px;
        line-height: 24px;
    }
    .sect-video {
        margin: 32px 0;
    }
    .sect-video .video {
        margin-top: 12px;
    }
    .sect-video .video .cover {
        border-radius: 20px;
        z-index: 1;
        pointer-events: none;
    }
    .sect-video .video:not(.go) iframe {
        visibility: visible;
        opacity: 0;
    }
    .sect-video .video .cover:after {
        background-size: 35%;
        width: 52px;
        height: 52px;
    }
    .product-page {
        margin-top: 0;
        margin-bottom: 32px;
    }
    .product-page .product {
        display: block;
    }
    .product-page .images {
        width: auto;
    }
    .product-page .images .main-wrap {
        margin-left: -15px;
        margin-right: -15px;
    }
    .product-page .images .main {
        border-radius: 0;
        padding-top: 90%;
    }
    .product-page .images .main .image {
        top: 7%;
        left: 8%;
        right: 8%;
    }
    .product-page .images .thumbs {
        flex-wrap: unset;
        padding-left: 10px;
        padding-right: 10px;
        padding-bottom: 0;
        margin-left: -15px;
        margin-right: -15px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .product-page .images .thumb, .product-page .images .thumb:not(:last-child) {
        width: 19%;
        flex-shrink: 0;
        margin-left: 0.5%;
        margin-right: 0.5%;
        margin-bottom: 0;
    }
    .product-page .images .thumb img {
        border-radius: 10%;
    }
    .product-page .data {
        padding: 0;
        margin-left: 0;
        margin-top: 24px;
    }
    .product-page .data .head {
        font-size: 24px;
        line-height: 32px;
    }
    .product-page .data .type {
        margin-top: 8px;
    }
    .product-page .data .price {
        font-size: 20px;
        line-height: 32px;
        margin-top: 8px;
    }
    .product-page .data .price span {
        font-size: 24px;
    }
    .product-page .data .price-info {
        font-size: 12px;
        line-height: 20px;
    }
    .product-page .data .to-cart {
        margin-top: 8px;
    }
    .product-page .data .to-cart .but {
        font-size: 20px;
        height: 52px;
        width: 100%;
    }
    .product-page .data .description {
        font-size: 14px;
        line-height: 22px;
        margin-top: 16px;
    }
    .product-page .reviews {
        margin-top: 32px;
    }
    .product-page .reviews .row {
        margin-bottom: 14px;
    }
    .product-page .reviews .head {
        font-size: 24px;
    }
    .product-page .reviews .rating .number {
        font-size: 16px;
    }
    .product-page .reviews .rating .hint {
        font-size: 12px;
    }
    .product-page .reviews .item {
        padding: 16px 0;
    }
    .product-page .reviews .item:first-child {
        border-top: none;
    }
    .product-page .reviews .item .text {
        font-size: 14px;
        line-height: 22px;
    }
    .product-page .reviews .item .author {
        font-size: 14px;
        line-height: 22px;
    }
    .cart-page {
        margin-top: 24px;
        margin-bottom: 32px;
    }
    .cart-page .head {
        font-size: 36px;
        text-align: center;
    }
    .cart-page .cart .item:not(:last-child) {
        margin-bottom: 16px;
    }
    .cart-page .cart .item .data .params li {
        font-size: 12px;
        background-position: 0 -1px;
    }
    .cart-page .cart {
        display: block;
        margin-top: 16px;
    }
    .cart-page .cart .order {
        width: auto;
        padding: 16px;
        margin-left: 0;
        margin-top: 16px;
    }
    .cart-page .cart .order .button .but {
        padding: 0;
    }
    .auth-page {
        margin: 32px 0;
    }
    .auth-page .auth form {
        margin-top: 20px;
    }
    .auth-page .auth .checkbox, .auth-page .auth .link {
        font-size: 14px;
    }
    .auth-page .auth .terms .checkbox {
        font-size: 12px;
        line-height: 20px;
    }
    .memorials-page {
        margin: 32px 0;
    }
    .memorials-page .head {
        font-size: 36px;
        margin-bottom: 20px;
    }
    .memorials-page .privacy .head {
        font-size: 24px;
    }
    .memorials-page .memorials .item .name {
        font-size: 20px;
        line-height: 24px;
    }
    .memorials-page .memorials .item .code .label {
        font-size: 12px;
    }
    .memorials-page .memorials .item .code .value {
        line-height: 22px;
    }
    .memorials-page .nav {
        margin-top: -8px;
    }
    .memorials-page .nav .go-back svg {
        height: 10px;
    }
    .memorials-page .nav .memorial .image {
        height: 40px;
        width: 40px;
    }
    .memorials-page .nav .memorial .name {
        font-size: 16px;
    }
    .memorials-page .privacy {
        margin-top: 20px;
    }
    .memorials-page .privacy .settings {
        margin-top: 20px;
    }
    .memorials-page .privacy .settings .item {
        padding-right: 100px;
    }
    .memorials-page .privacy .settings .item .cap {
        font-size: 16px;
        line-height: 24px;
    }
    .memorials-page .privacy .settings .item .desc {
        font-size: 12px;
        line-height: 20px;
    }
    .memorials-page .qr {
        margin-top: 20px;
    }
    .memorials-page .qr .head {
        font-size: 32px;
    }
    .memorials-page .qr .image {
        margin-top: 20px;
    }
    .profile-page {
        margin-bottom: 32px;
    }
    .profile-page .cover {
        height: 200px;
    }
    .profile-page .cover .box {
        padding: 50px 0;
        justify-content: center;
        align-items: flex-start;
    }
    .profile-page .top-controls {
        padding-top: 15px;
    }
    .profile-page .top-controls .options .item span {
        font-size: 12px;
        margin-right: 7px;
    }
    .profile-page .main-info .info-cols .col:first-child {
        margin-right: 20px;
    }
    .profile-page:not(.edit) .main-info .col .value {
        font-size: 14px;
        line-height: 22px;
    }
    .profile-page .main-info {
        margin-top: -91px;
    }
    .profile-page .main-info .image {
        width: 182px;
        height: 182px;
    }
    .profile-page .main-info .name {
        font-size: 24px;
        margin-top: 16px;
    }
    .profile-page .main-info .info-cols {
        margin-top: 20px;
    }
    .profile-page .main-info .col .value {
        margin-top: 16px;
    }
    .profile-page .tabs-links {
        margin-top: 40px;
        margin-left: -15px;
        margin-right: -15px;
        padding-left: 15px;
        padding-right: 15px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .profile-page .tabs-links ul {
        white-space: nowrap;
    }
    .profile-page .tabs-links li {
        flex-shrink: 0;
    }
    .profile-page .tabs-links li span {
        font-size: 14px;
        line-height: 22px;
    }
    .profile-page .text-description {
        margin-top: 24px;
    }
    .profile-page .text-description .cap {
        font-size: 20px;
        line-height: 28px;
        margin-bottom: 20px;
    }
    .profile-page .text-description p {
        font-size: 14px;
        line-height: 22px;
        margin-top: 16px;
    }
    .profile-page .form {
        margin-top: 24px;
    }
    .profile-page .form .cap {
        font-size: 20px;
        line-height: 28px;
        margin-top: 20px;
        margin-bottom: 4px;
    }
    .profile-page .form .field {
        margin-top: 8px;
    }
    .profile-page .form .save {
        margin-top: 20px;
    }
    .profile-page .gallery {
        padding-top: 24px;
    }
    .profile-page .gallery .item {
        width: 50%;
    }
    .profile-page .family .add-form {
        margin-top: 24px;
    }
    .profile-page .family .add-form select {
        font-size: 16px;
    }
    .profile-page .family .list {
        margin-top: 24px;
        margin-right: -30px;
    }
    .profile-page .family .col {
        margin-right: 30px;
        margin-bottom: 20px;
    }
    .profile-page .family .list .cap {
        font-size: 20px;
    }
    .profile-page .family .list ul {
        margin-top: 12px;
    }
    .profile-page .family .list li {
        font-size: 14px;
        line-height: 22px;
        margin-top: 8px;
    }
    .profile-page .guests {
        margin-top: 24px;
    }
    .profile-page .guests .item {
        padding: 16px;
    }
    .profile-page .guests .item:not(:last-child) {
        margin-bottom: 8px;
    }
    .profile-page .guests .item .text {
        font-size: 16px;
        line-height: 24px;
    }
    .profile-page .guests .item .name {
        font-size: 14px;
        line-height: 22px;
        margin-top: 16px;
    }
    .search-page {
        margin: 32px 0;
    }
    .search-page .head {
        font-size: 36px;
    }
    .search-page .string {
        margin-top: 20px;
    }
    .search-page .results {
        margin-top: 20px;
    }
    .search-page .results .item:not(:last-child) {
        margin-bottom: 8px;
    }
    .search-page .results .item .years {
        font-size: 14px;
        line-height: 22px;
    }
    .contacts-page {
        margin: 32px 0;
    }
    .contacts-page .head {
        font-size: 36px;
    }
    .contacts-page .cols {
        margin-top: 20px;
    }
    .contacts-page .info {
        font-size: 12px;
        line-height: 20px;
    }
    .contacts-page .info p:not(:last-child) {
        margin-bottom: 16px;
    }
    .contacts-page .info .mail, .contacts-page .info .tel {
        font-size: 16px;
        margin-top: 4px;
    }
    .contacts-page .form {
        width: 52%;
        margin-left: 40px;
    }
    .contacts-page .form .cap {
        font-size: 20px;
        line-height: 28px;
    }
    footer {
        padding: 32px 0;
    }
    footer .top-row {
        display: block;
    }
    footer .logo {
        margin-bottom: 16px;
    }
    footer .logo img {
        margin: auto;
    }
    footer .menu, footer .social {
        padding-left: 0;
    }
    footer .menu ul, footer .social ul, footer .sub-menu ul {
        flex-wrap: wrap;
        justify-content: center;
    }
    footer .menu li, footer .social li, footer .sub-menu li {
        margin: 4px 8px !important;
    }
    footer .menu, footer .social {
        font-size: 14px;
        line-height: 22px;
        margin-top: 8px;
    }
    footer .social {
        padding: 0;
    }
    footer .bottom-row {
        flex-direction: column;
        margin-top: 8px;
    }
    footer .sub-menu {
        font-size: 12px;
        line-height: 20px;
    }
    footer .copy {
        font-size: 12px;
        text-align: center;
        order: 1;
        margin-top: 8px;
    }
    .popup-wrap {
        background: #fff;
        width: 100%;
        height: 100%;
        padding: 0;
        display: flex;
    }
    .popup-content {
        padding: 16px;
        margin: auto;
    }
    .popup-content .head {
        font-size: 24px;
        max-width: 240px;
        margin-left: auto;
        margin-right: auto;
    }
    .popup-content .field-rating {
        margin-top: 12px;
    }
    .popup-content textarea {
        height: 126px;
    }
    .popup-content .act {
        margin-top: 12px;
    }
    .popup-content .but.large {
        font-size: 20px;
        height: 52px;
    }
    #popup-guest-record .popup-content textarea {
        height: 126px;
    }
}
@media screen and (max-width: 600px) {
    .sect-moments .moments .item {
        width: 100%;
    }
    .sect-memories .memory .box {
        flex-direction: column;
    }
    .sect-memories .memory .image {
        width: 100%;
        order: -1;
        margin-left: 0;
        margin-bottom: 16px;
    }
    .profile-page .form .row {
        flex-wrap: wrap;
    }
    .profile-page .form div[class^="col"] {
        width: 100%;
    }
    .profile-page .form textarea {
        height: 355px;
    }
    .profile-page .form .save .but {
        width: 100%;
    }
    .profile-page .family .add-form .row {
        display: block;
    }
    .profile-page .family .add-form .field {
        width: auto;
        margin-right: 0;
        margin-bottom: 12px;
    }
    .profile-page .family .add-form .but {
        width: 100%;
    }
    .contacts-page .cols {
        display: block;
    }
    .contacts-page .info p br {
        display: none;
    }
    .contacts-page .form {
        width: auto;
        margin-left: 0;
        margin-top: 20px;
    }
}
@media screen and (max-width: 500px) {
    header .account {
        margin-right: 20px;
    }
    header .logged span {
        display: none;
    }
    .sect-main-offer .content {
        padding-right: 0;
        width: 260px;
        position: relative;
        z-index: 1;
    }
    .sect-main-offer .sub {
        max-width: 200px;
    }
    .sect-steps .step .box {
        flex-direction: column;
    }
    .sect-steps .step .image, .sect-steps .step .slider-bg, .sect-steps .step .image-bg {
        width: 100%;
        max-width: none;
        order: -1;
        margin-left: 0;
    }
    .sect-steps .step .content {
        width: 100%;
    }
    .sect-steps .step .content {
        margin-top: 24px;
    }
    .sect-steps .step .cap br {
        display: none;
    }
    .sect-steps .step .image img {
        margin: auto;
    }
    .sect-memorial-creation .steps .item {
        width: calc(100% - 8px);
    }
    .sect-steps .step .image.registration {
        width: auto;
    }
    .sect-steps .step .image.registration img {
        max-width: 80%;
    }
    .product-page .reviews .row {
        flex-direction: column;
    }
    .product-page .reviews .rating {
        margin-top: 14px;
    }
    .product-page .reviews .sort-by {
        order: 1;
        margin-top: 16px;
    }
    .product-page .reviews .sort-by, .product-page .reviews .write-review {
        width: 100%;
    }
    .product-page .reviews .sort-by select, .product-page .reviews .write-review .but {
        width: 100%;
    }
    .cart-page .cart .item {
        display: block;
    }
    .cart-page .cart .item .image-wrap {
        margin-left: auto;
        margin-right: auto;
    }
    .cart-page .cart .item .data {
        margin-right: 0;
        margin-top: 16px;
    }
    .cart-page .cart .item .amount {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-top: 16px;
    }
    .cart-page .cart .item .amount .controls {
        margin-top: 0;
    }
    .memorials-page .memorials .item {
        display: block;
    }
    .memorials-page .memorials .item .image {
        width: 71px;
        height: 71px;
        float: left;
        margin-right: 12px;
    }
    .memorials-page .memorials .item .data {
        margin-left: 0;
    }
    .memorials-page .memorials .item .name {
        height: 71px;
        padding-right: 40px;
        display: flex;
        align-items: center;
    }
    .memorials-page .memorials .item .controls {
        display: block;
    }
    .memorials-page .memorials .item .control {
        margin-left: 4px;
        margin-bottom: 4px;
    }
    .memorials-page .privacy .settings .item {
        padding-right: 0;
    }
    .memorials-page .privacy .settings .item .cap-box {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .memorials-page .privacy .settings .item .cap {
        margin-right: 12px;
    }
    .memorials-page .privacy .settings .item .switch {
        position: static;
    }
    .profile-page .top-controls .share .btn {
        width: 32px;
        padding: 0;
    }
    .profile-page .top-controls .share .btn:before {
        left: 0;
        right: 0;
    }
    .profile-page .top-controls .share .btn span {
        display: none;
    }
    .profile-page .top-controls .options {
        text-align: center;
        position: absolute;
        left: 0;
        right: 0;
        top: 104px;
    }
    .profile-page:not(.edit) .main-info .name {
        margin-top: 50px;
    }
    .profile-page .gallery .item {
        width: 100%;
    }
    .popup-content .sub {
        margin-bottom: 12px;
    }
    .popup-content .cols {
        flex-wrap: wrap;
        margin: 0 -8px;
    }
    .popup-content .cols:first-child {
        margin-top: -8px;
    }
    .popup-content .cols .field {
        width: 100%;
        margin-top: 8px;
    }
}
@media screen and (max-width: 400px) {
    header .account {
        margin-right: 30px;
    }
    header .login span, header .cart span {
        display: none;
    }
    .sect-main-offer .image {
        height: 85%;
        left: 200px;
        right: 0;
    }
    .sect-create .image {
        background-size: 122%;
    }
    .search-page .string .row {
        display: block;
    }
    .search-page .string .search-field {
        margin-right: 0;
        margin-bottom: 12px;
    }
    .search-page .string .but {
        width: 100%;
    }
    .popup-content .act.buttons {
        flex-direction: column;
        margin-bottom: -8px;
    }
    .popup-content .act.buttons .but {
        width: 100%;
        margin: 0;
    }
    .popup-content .act.buttons .but {
        margin-bottom: 8px;
    }
    .popup-content .act.buttons .but.save {
        order: -1;
    }
}

:root{--f-spinner-width: 36px;--f-spinner-height: 36px;--f-spinner-color-1: rgba(0, 0, 0, 0.1);--f-spinner-color-2: rgba(17, 24, 28, 0.8);--f-spinner-stroke: 2.75}.f-spinner{margin:auto;padding:0;width:var(--f-spinner-width);height:var(--f-spinner-height)}.f-spinner svg{width:100%;height:100%;vertical-align:top;animation:f-spinner-rotate 2s linear infinite}.f-spinner svg *{stroke-width:var(--f-spinner-stroke);fill:none}.f-spinner svg *:first-child{stroke:var(--f-spinner-color-1)}.f-spinner svg *:last-child{stroke:var(--f-spinner-color-2);animation:f-spinner-dash 2s ease-in-out infinite}@keyframes f-spinner-rotate{100%{transform:rotate(360deg)}}@keyframes f-spinner-dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}100%{stroke-dasharray:90,150;stroke-dashoffset:-124}}.f-throwOutUp{animation:.175s ease-out both f-throwOutUp}.f-throwOutDown{animation:.175s ease-out both f-throwOutDown}@keyframes f-throwOutUp{to{transform:translate3d(0, -150px, 0);opacity:0}}@keyframes f-throwOutDown{to{transform:translate3d(0, 150px, 0);opacity:0}}.f-zoomInUp{animation:var(--f-transition-duration, 0.2s) ease-out .1s both f-zoomInUp}.f-zoomOutDown{animation:var(--f-transition-duration, 0.2s) ease-out both f-zoomOutDown}@keyframes f-zoomInUp{from{transform:scale(0.975) translate3d(0, 16px, 0);opacity:0}to{transform:scale(1) translate3d(0, 0, 0);opacity:1}}@keyframes f-zoomOutDown{to{transform:scale(0.975) translate3d(0, 16px, 0);opacity:0}}.f-fadeIn{animation:var(--f-transition-duration, 0.2s) ease both f-fadeIn;z-index:2}.f-fadeOut{animation:var(--f-transition-duration, 0.2s) ease both f-fadeOut;z-index:1}@keyframes f-fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes f-fadeOut{100%{opacity:0}}.f-fadeSlowIn{animation:var(--f-transition-duration, 0.5s) ease both f-fadeSlowIn;z-index:2}.f-fadeSlowOut{animation:var(--f-transition-duration, 0.5s) ease both f-fadeSlowOut;z-index:1}@keyframes f-fadeSlowIn{0%{opacity:0}100%{opacity:1}}@keyframes f-fadeSlowOut{100%{opacity:0}}.f-fadeFastIn{animation:var(--f-transition-duration, 0.2s) ease-out both f-fadeFastIn;z-index:2}.f-fadeFastOut{animation:var(--f-transition-duration, 0.2s) ease-out both f-fadeFastOut;z-index:2}@keyframes f-fadeFastIn{0%{opacity:.75}100%{opacity:1}}@keyframes f-fadeFastOut{100%{opacity:0}}.f-crossfadeIn{animation:var(--f-transition-duration, 0.2s) ease-out both f-crossfadeIn;z-index:2}.f-crossfadeOut{animation:calc(var(--f-transition-duration, 0.2s)*.5) linear .1s both f-crossfadeOut;z-index:1}@keyframes f-crossfadeIn{0%{opacity:0}100%{opacity:1}}@keyframes f-crossfadeOut{100%{opacity:0}}.f-slideIn.from-next{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInNext}.f-slideIn.from-prev{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInPrev}.f-slideOut.to-next{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutNext}.f-slideOut.to-prev{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutPrev}@keyframes f-slideInPrev{0%{transform:translateX(100%)}100%{transform:translate3d(0, 0, 0)}}@keyframes f-slideInNext{0%{transform:translateX(-100%)}100%{transform:translate3d(0, 0, 0)}}@keyframes f-slideOutNext{100%{transform:translateX(-100%)}}@keyframes f-slideOutPrev{100%{transform:translateX(100%)}}.f-classicIn.from-next{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicInNext;z-index:2}.f-classicIn.from-prev{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicInPrev;z-index:2}.f-classicOut.to-next{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicOutNext;z-index:1}.f-classicOut.to-prev{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicOutPrev;z-index:1}@keyframes f-classicInNext{0%{transform:translateX(-75px);opacity:0}100%{transform:translate3d(0, 0, 0);opacity:1}}@keyframes f-classicInPrev{0%{transform:translateX(75px);opacity:0}100%{transform:translate3d(0, 0, 0);opacity:1}}@keyframes f-classicOutNext{100%{transform:translateX(-75px);opacity:0}}@keyframes f-classicOutPrev{100%{transform:translateX(75px);opacity:0}}:root{--f-button-width: 40px;--f-button-height: 40px;--f-button-border: 0;--f-button-border-radius: 0;--f-button-color: #374151;--f-button-bg: #f8f8f8;--f-button-hover-bg: #e0e0e0;--f-button-active-bg: #d0d0d0;--f-button-shadow: none;--f-button-transition: all 0.15s ease;--f-button-transform: none;--f-button-svg-width: 20px;--f-button-svg-height: 20px;--f-button-svg-stroke-width: 1.5;--f-button-svg-fill: none;--f-button-svg-filter: none;--f-button-svg-disabled-opacity: 0.65}.f-button{display:flex;justify-content:center;align-items:center;box-sizing:content-box;position:relative;margin:0;padding:0;width:var(--f-button-width);height:var(--f-button-height);border:var(--f-button-border);border-radius:var(--f-button-border-radius);color:var(--f-button-color);background:var(--f-button-bg);box-shadow:var(--f-button-shadow);pointer-events:all;cursor:pointer;transition:var(--f-button-transition)}@media(hover: hover){.f-button:hover:not([disabled]){color:var(--f-button-hover-color);background-color:var(--f-button-hover-bg)}}.f-button:active:not([disabled]){background-color:var(--f-button-active-bg)}.f-button:focus:not(:focus-visible){outline:none}.f-button:focus-visible{outline:none;box-shadow:inset 0 0 0 var(--f-button-outline, 2px) var(--f-button-outline-color, var(--f-button-color))}.f-button svg{width:var(--f-button-svg-width);height:var(--f-button-svg-height);fill:var(--f-button-svg-fill);stroke:currentColor;stroke-width:var(--f-button-svg-stroke-width);stroke-linecap:round;stroke-linejoin:round;transition:opacity .15s ease;transform:var(--f-button-transform);filter:var(--f-button-svg-filter);pointer-events:none}.f-button[disabled]{cursor:default}.f-button[disabled] svg{opacity:var(--f-button-svg-disabled-opacity)}.f-carousel__nav .f-button.is-prev,.f-carousel__nav .f-button.is-next,.fancybox__nav .f-button.is-prev,.fancybox__nav .f-button.is-next{position:absolute;z-index:1}.is-horizontal .f-carousel__nav .f-button.is-prev,.is-horizontal .f-carousel__nav .f-button.is-next,.is-horizontal .fancybox__nav .f-button.is-prev,.is-horizontal .fancybox__nav .f-button.is-next{top:50%;transform:translateY(-50%)}.is-horizontal .f-carousel__nav .f-button.is-prev,.is-horizontal .fancybox__nav .f-button.is-prev{left:var(--f-button-prev-pos)}.is-horizontal .f-carousel__nav .f-button.is-next,.is-horizontal .fancybox__nav .f-button.is-next{right:var(--f-button-next-pos)}.is-horizontal.is-rtl .f-carousel__nav .f-button.is-prev,.is-horizontal.is-rtl .fancybox__nav .f-button.is-prev{left:auto;right:var(--f-button-next-pos)}.is-horizontal.is-rtl .f-carousel__nav .f-button.is-next,.is-horizontal.is-rtl .fancybox__nav .f-button.is-next{right:auto;left:var(--f-button-prev-pos)}.is-vertical .f-carousel__nav .f-button.is-prev,.is-vertical .f-carousel__nav .f-button.is-next,.is-vertical .fancybox__nav .f-button.is-prev,.is-vertical .fancybox__nav .f-button.is-next{top:auto;left:50%;transform:translateX(-50%)}.is-vertical .f-carousel__nav .f-button.is-prev,.is-vertical .fancybox__nav .f-button.is-prev{top:var(--f-button-next-pos)}.is-vertical .f-carousel__nav .f-button.is-next,.is-vertical .fancybox__nav .f-button.is-next{bottom:var(--f-button-next-pos)}.is-vertical .f-carousel__nav .f-button.is-prev svg,.is-vertical .f-carousel__nav .f-button.is-next svg,.is-vertical .fancybox__nav .f-button.is-prev svg,.is-vertical .fancybox__nav .f-button.is-next svg{transform:rotate(90deg)}html.with-fancybox{width:auto;overflow:visible;scroll-behavior:auto}html.with-fancybox body{touch-action:none}html.with-fancybox body.hide-scrollbar{width:auto;margin-right:calc(var(--fancybox-body-margin, 0px) + var(--fancybox-scrollbar-compensate, 0px));overflow:hidden !important;overscroll-behavior-y:none}.fancybox__container{--fancybox-color: #dbdbdb;--fancybox-hover-color: #fff;--fancybox-bg: rgba(24, 24, 27, 0.98);--fancybox-slide-gap: 10px;--f-spinner-width: 50px;--f-spinner-height: 50px;--f-spinner-color-1: rgba(255, 255, 255, 0.1);--f-spinner-color-2: #bbb;--f-spinner-stroke: 3.65;position:fixed;top:0;left:0;bottom:0;right:0;direction:ltr;display:flex;flex-direction:column;box-sizing:border-box;margin:0;padding:0;color:#f8f8f8;-webkit-tap-highlight-color:rgba(0,0,0,0);overflow:visible;z-index:1050;outline:none;transform-origin:top left;-webkit-text-size-adjust:100%;-moz-text-size-adjust:none;-ms-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior-y:contain}.fancybox__container *,.fancybox__container *::before,.fancybox__container *::after{box-sizing:inherit}.fancybox__backdrop{position:fixed;top:0;left:0;bottom:0;right:0;z-index:-1;background:var(--fancybox-bg);opacity:var(--fancybox-opacity, 1);will-change:opacity}.fancybox__carousel{position:relative;box-sizing:border-box;flex:1;min-height:0;z-index:10;overflow-y:visible;overflow-x:clip}.fancybox__viewport{width:100%;height:100%}.fancybox__track{display:flex;margin:0 auto;height:100%}.fancybox__slide{flex:0 0 auto;position:relative;display:flex;flex-direction:column;align-items:center;width:100%;height:100%;margin:0 var(--fancybox-slide-gap) 0 0;padding:4px;overflow:auto;transform:translate3d(0, 0, 0);backface-visibility:hidden}.fancybox__container:not(.is-compact) .fancybox__slide.has-close-btn{padding-top:40px}.fancybox__slide.has-iframe,.fancybox__slide.has-video,.fancybox__slide.has-html5video{overflow:hidden}.fancybox__slide.has-image{overflow:hidden}.fancybox__slide.has-image.is-animating,.fancybox__slide.has-image.is-selected{overflow:visible}.fancybox__slide::before,.fancybox__slide::after{content:"";flex:0 0 0;margin:auto}.fancybox__content{align-self:center;display:flex;flex-direction:column;position:relative;margin:0;padding:2rem;max-width:100%;color:var(--fancybox-content-color, #374151);background:var(--fancybox-content-bg, #fff);cursor:default;border-radius:0;z-index:20}.is-loading .fancybox__content{opacity:0}.is-draggable .fancybox__content{cursor:move;cursor:grab}.can-zoom_in .fancybox__content{cursor:zoom-in}.can-zoom_out .fancybox__content{cursor:zoom-out}.is-dragging .fancybox__content{cursor:move;cursor:grabbing}.fancybox__content [data-selectable],.fancybox__content [contenteditable]{cursor:auto}.fancybox__slide.has-image>.fancybox__content{padding:0;background:rgba(0,0,0,0);min-height:1px;background-repeat:no-repeat;background-size:contain;background-position:center center;transition:none;transform:translate3d(0, 0, 0);backface-visibility:hidden}.fancybox__slide.has-image>.fancybox__content>picture>img{width:100%;height:auto;max-height:100%}.is-zooming-in .fancybox__viewport:not(.is-dragging) .fancybox__slide:not(.is-selected) .fancybox__content,.is-zooming-out .fancybox__slide:not(.is-selected) .fancybox__content{visibility:hidden}.is-animating .fancybox__content,.is-dragging .fancybox__content{filter:blur(0px);will-change:transform,width,height}.fancybox-image{margin:auto;display:block;width:100%;height:100%;min-height:0;object-fit:contain;user-select:none}.fancybox__caption{align-self:center;max-width:100%;flex-shrink:0;margin:0;padding:14px 0 4px 0;overflow-wrap:anywhere;line-height:1.375;color:var(--fancybox-color, currentColor);opacity:var(--fancybox-opacity, 1);cursor:auto;visibility:visible}.is-loading .fancybox__caption,.is-closing .fancybox__caption{opacity:0;visibility:hidden}.is-compact .fancybox__caption{padding-bottom:0}.f-button.is-close-btn{--f-button-svg-stroke-width: 2;position:absolute;top:0;right:8px;z-index:40}.fancybox__content>.f-button.is-close-btn{--f-button-width: 34px;--f-button-height: 34px;--f-button-border-radius: 4px;--f-button-color: var(--fancybox-color, #fff);--f-button-hover-color: var(--fancybox-color, #fff);--f-button-bg: transparent;--f-button-hover-bg: transparent;--f-button-active-bg: transparent;--f-button-svg-width: 22px;--f-button-svg-height: 22px;position:absolute;top:-38px;right:0;opacity:.75}.is-loading .fancybox__content>.f-button.is-close-btn{visibility:hidden}.is-zooming-out .fancybox__content>.f-button.is-close-btn{visibility:hidden}.fancybox__content>.f-button.is-close-btn:hover{opacity:1}.fancybox__footer{padding:0;margin:0;position:relative}.fancybox__footer .fancybox__caption{width:100%;padding:24px;opacity:var(--fancybox-opacity, 1);transition:all .25s ease}.is-compact .fancybox__footer{position:absolute;bottom:0;left:0;right:0;z-index:20;background:rgba(24,24,27,.5)}.is-compact .fancybox__footer .fancybox__caption{padding:12px}.is-compact .fancybox__content>.f-button.is-close-btn{--f-button-border-radius: 50%;--f-button-color: #fff;--f-button-hover-color: #fff;--f-button-outline-color: #000;--f-button-bg: rgba(0, 0, 0, 0.6);--f-button-active-bg: rgba(0, 0, 0, 0.6);--f-button-hover-bg: rgba(0, 0, 0, 0.6);--f-button-svg-width: 18px;--f-button-svg-height: 18px;--f-button-svg-filter: none;top:5px;right:5px}.fancybox__nav{--f-button-width: 50px;--f-button-height: 50px;--f-button-border: 0;--f-button-border-radius: 50%;--f-button-color: var(--fancybox-color);--f-button-hover-color: var(--fancybox-hover-color);--f-button-bg: transparent;--f-button-hover-bg: rgba(24, 24, 27, 0.3);--f-button-active-bg: rgba(24, 24, 27, 0.5);--f-button-shadow: none;--f-button-transition: all 0.15s ease;--f-button-transform: none;--f-button-svg-width: 26px;--f-button-svg-height: 26px;--f-button-svg-stroke-width: 2.5;--f-button-svg-fill: none;--f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, 0.5));--f-button-svg-disabled-opacity: 0.65;--f-button-next-pos: 1rem;--f-button-prev-pos: 1rem;opacity:var(--fancybox-opacity, 1)}.fancybox__nav .f-button:before{position:absolute;content:"";top:-30px;right:-20px;left:-20px;bottom:-30px;z-index:1}.is-idle .fancybox__nav{animation:.15s ease-out both f-fadeOut}.is-idle.is-compact .fancybox__footer{pointer-events:none;animation:.15s ease-out both f-fadeOut}.fancybox__slide>.f-spinner{position:absolute;top:50%;left:50%;margin:var(--f-spinner-top, calc(var(--f-spinner-width) * -0.5)) 0 0 var(--f-spinner-left, calc(var(--f-spinner-height) * -0.5));z-index:30;cursor:pointer}.fancybox-protected{position:absolute;top:0;left:0;right:0;bottom:0;z-index:40;user-select:none}.fancybox-ghost{position:absolute;top:0;left:0;width:100%;height:100%;min-height:0;object-fit:contain;z-index:40;user-select:none;pointer-events:none}.fancybox-focus-guard{outline:none;opacity:0;position:fixed;pointer-events:none}.fancybox__container:not([aria-hidden]){opacity:0}.fancybox__container.is-animated[aria-hidden=false]>*:not(.fancybox__backdrop,.fancybox__carousel),.fancybox__container.is-animated[aria-hidden=false] .fancybox__carousel>*:not(.fancybox__viewport),.fancybox__container.is-animated[aria-hidden=false] .fancybox__slide>*:not(.fancybox__content){animation:.25s ease .1s backwards f-fadeIn}.fancybox__container.is-animated[aria-hidden=false] .fancybox__backdrop{animation:.35s ease backwards f-fadeIn}.fancybox__container.is-animated[aria-hidden=true]>*:not(.fancybox__backdrop,.fancybox__carousel),.fancybox__container.is-animated[aria-hidden=true] .fancybox__carousel>*:not(.fancybox__viewport),.fancybox__container.is-animated[aria-hidden=true] .fancybox__slide>*:not(.fancybox__content){animation:.15s ease forwards f-fadeOut}.fancybox__container.is-animated[aria-hidden=true] .fancybox__backdrop{animation:.35s ease forwards f-fadeOut}.has-iframe .fancybox__content,.has-map .fancybox__content,.has-pdf .fancybox__content,.has-youtube .fancybox__content,.has-vimeo .fancybox__content,.has-html5video .fancybox__content{max-width:100%;flex-shrink:1;min-height:1px;overflow:visible}.has-iframe .fancybox__content,.has-map .fancybox__content,.has-pdf .fancybox__content{width:100%;height:100%}.fancybox__container:not(.is-compact) .has-iframe .fancybox__content,.fancybox__container:not(.is-compact) .has-map .fancybox__content,.fancybox__container:not(.is-compact) .has-pdf .fancybox__content{width:calc(100% - 120px);height:90%}.has-youtube .fancybox__content,.has-vimeo .fancybox__content,.has-html5video .fancybox__content{width:960px;height:540px;max-width:100%;max-height:100%}.has-map .fancybox__content,.has-pdf .fancybox__content,.has-youtube .fancybox__content,.has-vimeo .fancybox__content,.has-html5video .fancybox__content{padding:0;background:rgba(24,24,27,.9);color:#fff}.has-map .fancybox__content{background:#e5e3df}.fancybox__html5video,.fancybox__iframe{border:0;display:block;height:100%;width:100%;background:rgba(0,0,0,0)}.fancybox-placeholder{border:0 !important;clip:rect(1px, 1px, 1px, 1px) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;height:1px !important;margin:-1px !important;overflow:hidden !important;padding:0 !important;position:absolute !important;width:1px !important;white-space:nowrap !important}.f-carousel__thumbs{--f-thumb-width: 96px;--f-thumb-height: 72px;--f-thumb-outline: 0;--f-thumb-outline-color: #5eb0ef;--f-thumb-opacity: 1;--f-thumb-hover-opacity: 1;--f-thumb-selected-opacity: 1;--f-thumb-border-radius: 2px;--f-thumb-offset: 0px;--f-button-next-pos: 0;--f-button-prev-pos: 0}.f-carousel__thumbs.is-classic{--f-thumb-gap: 8px;--f-thumb-opacity: 0.5;--f-thumb-hover-opacity: 1;--f-thumb-selected-opacity: 1}.f-carousel__thumbs.is-modern{--f-thumb-gap: 4px;--f-thumb-extra-gap: 20px;--f-thumb-clip-width: 46px}.f-thumbs{position:relative;flex:0 0 auto;margin:0;overflow:hidden;-webkit-tap-highlight-color:rgba(0,0,0,0);user-select:none;perspective:1000px;transform:translateZ(0)}.f-thumbs .f-spinner{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:2px;background-image:linear-gradient(#ebeff2, #e2e8f0);z-index:-1}.f-thumbs .f-spinner svg{display:none}.f-thumbs.is-vertical{height:100%}.f-thumbs__viewport{width:100%;height:auto;overflow:hidden}.f-thumbs__track{display:flex;will-change:transform}.f-thumbs__slide{position:relative;flex:0 0 auto;box-sizing:content-box;display:flex;align-items:center;justify-content:center;padding:0;margin:0;width:var(--f-thumb-width);min-width:var(--f-thumb-width);height:var(--f-thumb-height);overflow:visible;cursor:pointer}.f-thumbs__slide.is-loading img{opacity:0}.is-classic .f-thumbs__viewport{height:100%}.is-modern .f-thumbs__track{width:max-content}.is-modern .f-thumbs__track::before{content:"";position:absolute;top:0;bottom:0;left:calc(var(--left, 0)*1px);width:calc(100% - var(--width, 0)*1px);cursor:pointer}.is-modern .f-thumbs__slide{--clip-path: inset( 0 calc( (var(--f-thumb-width, 0) - var(--f-thumb-clip-width, 0)) * 0.5 * (1 - var(--progress, 0)) ) round var(--f-thumb-border-radius, 0) );transform:translate3d(calc(var(--shift, 0) * -1px), 0, 0);transition:none;pointer-events:none}.is-modern .f-thumbs__slide:focus-within:not(.is-selected){filter:drop-shadow(-1px 0px 0px var(--f-thumb-outline-color)) drop-shadow(2px 0px 0px var(--f-thumb-outline-color)) drop-shadow(0px -1px 0px var(--f-thumb-outline-color)) drop-shadow(0px 2px 0px var(--f-thumb-outline-color))}.is-modern .f-thumbs__slide>*{clip-path:var(--clip-path)}.is-modern.in-touch .f-thumbs__slide{filter:none}.is-modern.is-resting .f-thumbs__slide{transition:all .33s ease}.is-modern.is-resting .f-thumbs__slide>*{transition:all .33s ease}.f-thumbs__slide__button{appearance:none;width:100%;height:100%;margin:0;padding:0;border:0;position:relative;border-radius:var(--f-thumb-border-radius);overflow:hidden;background:rgba(0,0,0,0);outline:none;cursor:pointer;pointer-events:auto;touch-action:manipulation;opacity:var(--f-thumb-opacity);transition:opacity .2s ease}.f-thumbs__slide__button:hover{opacity:var(--f-thumb-hover-opacity)}.f-thumbs__slide__button:focus:not(:focus-visible){outline:none}.f-thumbs__slide__button:focus-visible{outline:none;opacity:var(--f-thumb-selected-opacity)}.is-nav-selected .f-thumbs__slide__button{opacity:var(--f-thumb-selected-opacity)}.is-nav-selected .f-thumbs__slide__button::after{content:"";position:absolute;top:0;left:0;right:0;height:auto;bottom:0;border:var(--f-thumb-outline, 0) solid var(--f-thumb-outline-color, transparent);border-radius:var(--f-thumb-border-radius);animation:f-fadeIn .2s ease-out;z-index:10}.f-thumbs__slide__img{position:absolute;overflow:hidden;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:var(--f-thumb-offset);box-sizing:border-box;pointer-events:none;object-fit:cover}.f-thumbs.is-horizontal .f-thumbs__track{margin:0 auto;padding:8px 0 12px 0}.f-thumbs.is-horizontal .f-thumbs__slide{margin:0 var(--f-thumb-gap) 0 0}.f-thumbs.is-vertical .f-thumbs__track{flex-wrap:wrap;margin:auto 0;padding:0 8px}.f-thumbs.is-vertical .f-thumbs__slide{margin:0 0 var(--f-thumb-gap) 0}.fancybox__thumbs{--f-thumb-width: 96px;--f-thumb-height: 72px;--f-thumb-border-radius: 2px;--f-thumb-outline: 2px;--f-thumb-outline-color: #ededed;position:relative;opacity:var(--fancybox-opacity, 1);transition:max-height .35s cubic-bezier(0.23, 1, 0.32, 1)}.fancybox__thumbs.is-classic{--f-thumb-gap: 8px;--f-thumb-opacity: 0.5;--f-thumb-hover-opacity: 1}.fancybox__thumbs.is-classic .f-spinner{background-image:linear-gradient(rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05))}.fancybox__thumbs.is-modern{--f-thumb-gap: 4px;--f-thumb-extra-gap: 20px;--f-thumb-clip-width: 46px;--f-thumb-opacity: 1;--f-thumb-hover-opacity: 1}.fancybox__thumbs.is-modern .f-spinner{background-image:linear-gradient(rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05))}.fancybox__thumbs.is-horizontal{padding:0 var(--f-thumb-gap)}.fancybox__thumbs.is-vertical{padding:var(--f-thumb-gap) 0}.is-compact .fancybox__thumbs{--f-thumb-width: 64px;--f-thumb-clip-width: 32px;--f-thumb-height: 48px;--f-thumb-extra-gap: 10px}.fancybox__thumbs.is-masked{max-height:0px !important}.is-closing .fancybox__thumbs{transition:none !important}.fancybox__toolbar{--f-progress-color: var(--fancybox-color, rgba(255, 255, 255, 0.94));--f-button-width: 46px;--f-button-height: 46px;--f-button-color: var(--fancybox-color);--f-button-hover-color: var(--fancybox-hover-color);--f-button-bg: rgba(24, 24, 27, 0.65);--f-button-hover-bg: rgba(70, 70, 73, 0.65);--f-button-active-bg: rgba(90, 90, 93, 0.65);--f-button-border-radius: 0;--f-button-svg-width: 24px;--f-button-svg-height: 24px;--f-button-svg-stroke-width: 1.5;--f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, 0.15));--f-button-svg-fill: none;--f-button-svg-disabled-opacity: 0.65;display:flex;flex-direction:row;justify-content:space-between;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI Adjusted","Segoe UI","Liberation Sans",sans-serif;color:var(--fancybox-color, currentColor);opacity:var(--fancybox-opacity, 1);text-shadow:var(--fancybox-toolbar-text-shadow, 1px 1px 1px rgba(0, 0, 0, 0.5));pointer-events:none;z-index:20}.fancybox__toolbar :focus-visible{z-index:1}.fancybox__toolbar.is-absolute,.is-compact .fancybox__toolbar{position:absolute;top:0;left:0;right:0}.is-idle .fancybox__toolbar{pointer-events:none;animation:.15s ease-out both f-fadeOut}.fancybox__toolbar__column{display:flex;flex-direction:row;flex-wrap:wrap;align-content:flex-start}.fancybox__toolbar__column.is-left,.fancybox__toolbar__column.is-right{flex-grow:1;flex-basis:0}.fancybox__toolbar__column.is-right{display:flex;justify-content:flex-end;flex-wrap:nowrap}.fancybox__infobar{padding:0 5px;line-height:var(--f-button-height);text-align:center;font-size:17px;font-variant-numeric:tabular-nums;-webkit-font-smoothing:subpixel-antialiased;cursor:default;user-select:none}.fancybox__infobar span{padding:0 5px}.fancybox__infobar:not(:first-child):not(:last-child){background:var(--f-button-bg)}[data-fancybox-toggle-slideshow]{position:relative}[data-fancybox-toggle-slideshow] .f-progress{height:100%;opacity:.3}[data-fancybox-toggle-slideshow] svg g:first-child{display:flex}[data-fancybox-toggle-slideshow] svg g:last-child{display:none}.has-slideshow [data-fancybox-toggle-slideshow] svg g:first-child{display:none}.has-slideshow [data-fancybox-toggle-slideshow] svg g:last-child{display:flex}[data-fancybox-toggle-fullscreen] svg g:first-child{display:flex}[data-fancybox-toggle-fullscreen] svg g:last-child{display:none}:fullscreen [data-fancybox-toggle-fullscreen] svg g:first-child{display:none}:fullscreen [data-fancybox-toggle-fullscreen] svg g:last-child{display:flex}.f-progress{position:absolute;top:0;left:0;right:0;height:3px;transform:scaleX(0);transform-origin:0;transition-property:transform;transition-timing-function:linear;background:var(--f-progress-color, var(--f-carousel-theme-color, #0091ff));z-index:30;user-select:none;pointer-events:none}
/* Slider */
.slick-slider {
    box-sizing: border-box;
    display: block;
    position: relative;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}
.slick-list {
    padding: 0;
    overflow: hidden;
    display: block;
    margin: 0;
    position: relative;
}
.slick-list:focus {
    outline: none;
}
.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .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 {
    display: block;
    position: relative;
    top: 0;
    left: 0;
}
.slick-track:before,
.slick-track:after {
    content: '';
    display: table;
}
.slick-track:after {
    clear: both;
}
.slick-loading .slick-track {
    visibility: hidden;
}
.slick-slide {
    display: none;
    height: 100%;
    min-height: 1px;
    float: left;
}
[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 {
    border: 1px solid transparent;
    height: auto;
    display: block;
}
.slick-arrow.slick-hidden {
    display: none;
}
.slick-dots {
    font-size: 0;
    text-align: center;
}
.slick-dots li {
    display: inline-block;
    margin: 5px;
}
.slick-dots li button {
    font-size: 0;
    background: #eee;
    border: none;
    border-radius: 50%;
    width: 15px;
    height: 15px;
    padding: 0;
    cursor: pointer;
}
.slick-dots li.slick-active button {
    background: #ccc;
}
.cart-page .product {
    display: flex;
}

/*
Croppie
*/
.croppie-container {
    width: 100%;
    height: 100%;
}

.croppie-container .cr-image {
    z-index: -1;
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: 0 0;
    max-height: none;
    max-width: none;
}

.croppie-container .cr-boundary {
    position: relative;
    overflow: hidden;
    margin: 0 auto;
    z-index: 1;
    width: 100%;
    height: 100%;
}

.croppie-container .cr-viewport {
    position: absolute;
    border: 2px solid #fff;
    margin: auto;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    box-shadow: 0 0 2000px 2000px rgba(0, 0, 0, 0.5);
    z-index: 0;
}

.croppie-container .cr-original-image {
    display: none;
}

.croppie-container .cr-vp-circle {
    border-radius: 50%;
}

.croppie-container .cr-overlay {
    z-index: 1;
    position: absolute;
    cursor: move;
}

.croppie-container .cr-slider-wrap {
    width: 75%;
    margin: 15px auto;
    text-align: center;
}

.croppie-result {
    position: relative;
    overflow: hidden;
}

.croppie-result img {
    position: absolute;
}

.croppie-container .cr-image,
.croppie-container .cr-overlay,
.croppie-container .cr-viewport {
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
}

/*************************************/
/***** STYLING RANGE INPUT ***********/
/*************************************/
/*http://brennaobrien.com/blog/2014/05/style-input-type-range-in-every-browser.html */
/*************************************/

.cr-slider {
    -webkit-appearance: none;
    /*removes default webkit styles*/
    /*border: 1px solid white; *//*fix for FF unable to apply focus style bug */
    width: 300px;
    /*required for proper track sizing in FF*/
    max-width: 100%;
    padding-top: 8px;
    padding-bottom: 8px;
    background-color: transparent;
}

.cr-slider::-webkit-slider-runnable-track {
    width: 100%;
    height: 3px;
    background: rgba(0, 0, 0, 0.5);
    border: 0;
    border-radius: 3px;
}

.cr-slider::-webkit-slider-thumb {
    -webkit-appearance: none;
    border: none;
    height: 16px;
    width: 16px;
    border-radius: 50%;
    background: #ddd;
    margin-top: -6px;
}

.cr-slider:focus {
    outline: none;
}
/*
.cr-slider:focus::-webkit-slider-runnable-track {
background: #ccc;
}
*/

.cr-slider::-moz-range-track {
    width: 100%;
    height: 3px;
    background: rgba(0, 0, 0, 0.5);
    border: 0;
    border-radius: 3px;
}

.cr-slider::-moz-range-thumb {
    border: none;
    height: 16px;
    width: 16px;
    border-radius: 50%;
    background: #ddd;
    margin-top: -6px;
}

/*hide the outline behind the border*/
.cr-slider:-moz-focusring {
    outline: 1px solid white;
    outline-offset: -1px;
}

.cr-slider::-ms-track {
    width: 100%;
    height: 5px;
    background: transparent;
    /*remove bg colour from the track, we'll use ms-fill-lower and ms-fill-upper instead */
    border-color: transparent;/*leave room for the larger thumb to overflow with a transparent border */
    border-width: 6px 0;
    color: transparent;/*remove default tick marks*/
}
.cr-slider::-ms-fill-lower {
    background: rgba(0, 0, 0, 0.5);
    border-radius: 10px;
}
.cr-slider::-ms-fill-upper {
    background: rgba(0, 0, 0, 0.5);
    border-radius: 10px;
}
.cr-slider::-ms-thumb {
    border: none;
    height: 16px;
    width: 16px;
    border-radius: 50%;
    background: #ddd;
    margin-top:1px;
}
.cr-slider:focus::-ms-fill-lower {
    background: rgba(0, 0, 0, 0.5);
}
.cr-slider:focus::-ms-fill-upper {
    background: rgba(0, 0, 0, 0.5);
}
/*******************************************/

/***********************************/
/* Rotation Tools */
/***********************************/
.cr-rotate-controls {
    position: absolute;
    bottom: 5px;
    left: 5px;
    z-index: 1;
}
.cr-rotate-controls button {
    border: 0;
    background: none;
}
.cr-rotate-controls i:before {
    display: inline-block;
    font-style: normal;
    font-weight: 900;
    font-size: 22px;
}
.cr-rotate-l i:before {
    content: '↺';
}
.cr-rotate-r i:before {
    content: '↻';
}


/**
 * Upload
 */
:root{
    --file-container-bg:  #eeeeee;
    --file-bg:  #f8f8f8;
    --file-border-color: #606060;
    --file-rounded: 15px;
    --file-color: #2b2b2b;
    --table-border-color: #dbdbdb;
    --delete-button-bg: #f53636;
    --delete-button-color: #ffffff;
    --font-size: 0.875em;
    --font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    --shadow: 0px 8px 15px -8px rgba(0, 0, 0, 0.5);
}

.file-container {
    width: 100%;
    font-family: var(--font-family);

    .file-upload {
        width: 100%;
        display: flex;
        background-color: var(--file-container-bg);
        border-radius: var(--file-rounded);
        transition: all 0.3s;

        &:hover {
            box-shadow: var(--shadow);
        }

        >div {
            width: 100%;
            background-color: var(--file-bg);
            padding: 25px;
            margin: 25px;
            border-radius: 10px;
            border: 1px dashed var(--file-border-color);
            text-align: center;
            cursor: pointer;

            >i {
                font-size: 3.125em;
                color: var(--file-color);
            }

            >p,
            span,
            div {
                font-size: var(--font-size);
                line-height: 30px;
                color: var(--file-color);
            }

            >div {
                width: max-content;
                padding: 0 10px;
                margin: 0 auto;
                border: 1px solid var(--file-border-color);
                border-radius: 8px;
            }
        }
    }

    >table {
        width: 100%;
        border-collapse: collapse;
        font-size: var(--font-size);
        margin-top: 20px;

        & th,
        td {
            border-bottom: 1px solid var(--table-border-color);
            padding: 8px;
            text-align: left;
        }

        >tbody {
            >tr {
                >td {
                    &:nth-child(1) {
                        font-weight: bold;
                    }

                    &:nth-child(2) {
                        white-space: nowrap;
                        text-overflow: ellipsis;
                        overflow: hidden;
                        max-width: 1px;
                    }

                    &:nth-child(3) {
                        text-align: center;
                    }

                    >img {
                        border-radius: 5px;
                        box-shadow: var(--shadow);
                    }

                    &.no-file {
                        text-align: center;
                        font-weight: normal;
                    }

                    > i{
                        font-size: 1.125em;
                    }
                }
            }
        }

        & button {
            background-color: var(--delete-button-bg);
            width: 30px;
            height: 30px;
            border: none;
            border-radius: 50%;
            display: flex;
            justify-content: center;
            align-items: center;
            cursor: pointer;

            &:hover {
                box-shadow: var(--shadow);
            }

            >i {
                color: var(--delete-button-color);
                font-size: 1.125em;
            }
        }
    }
}