@font-face {
    font-family: 'PFDin';
    src: url(../fonts/pfdintextcondpro-thin.eot);
    src: url(../fonts/pfdintextcondpro-thin-.eot?#iefix) format('embedded-opentype'), url(../fonts/pfdintextcondpro-thin.woff.html) format('woff');
    font-weight: 100;
    font-style: normal;
}
@font-face {
    font-family: 'PFDin';
    src: url(../fonts/pfdintextcondpro-regular.eot);
    src: url(../fonts/pfdintextcondpro-regular-.eot?#iefix) format('embedded-opentype'), url(../fonts/pfdintextcondpro-regular.woff.html) format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'PFDin';
    src: url(../fonts/pfdintextcondpro-italic.eot);
    src: url(../fonts/pfdintextcondpro-italic-.eot?#iefix) format('embedded-opentype'), url(../fonts/pfdintextcondpro-italic.woff.html) format('woff'), url('../fonts/pfdintextcondpro-italic.ttf.html') format('truetype');
    font-weight: normal;
    font-style: italic;
}
@font-face {
    font-family: 'PFDin';
    src: url(../fonts/pfdintextcondpro-medium.eot);
    src: url(../fonts/pfdintextcondpro-medium-.eot?#iefix) format('embedded-opentype'), url(../fonts/pfdintextcondpro-medium.woff.html) format('woff'), url('../fonts/pfdintextcondpro-medium.ttf.html') format('truetype');
    font-weight: bold;
    font-style: normal;
}
* {
    box-sizing: border-box;
    -webkit-overflow-scrolling: touch;
}

/* Please do not use this import in production. You could download this font from here https://fontstorage.com/font/open-sans */
@import "http://fonts.fontstorage.com/import/opensans.css";
/*
	Open Sans, 300, 300 italic, 400, 400 italic, 600, 600 italic, 700, 700 italic, 800, 800 italic
*/

body {
    min-width: 320px;
    font-size: 16px;
    color: black;
    font-family: 'PFDin', sans-serif;
    background-color: white;
    position: relative;
    line-height: 1.5;
    overflow-x: hidden;
}

img {
    max-width: 100%;
    height: auto;
}

a, a:hover {
    text-decoration: none;
}

.hidHtml {
    overflow: hidden;
}

button:focus {
    outline: none;
}

section > h2 {
    font-size: 24px;
    text-align: center;
    font-weight: 700;
    text-transform: uppercase;
}

/* =================== ШАПКА */
header {
    background-color: #663366;
    padding: 10px 0;
}

.headerLogo {
    display: flex;
    align-items: center;
}

.righrHead {
    color: white;
    text-align: right;
}

.righrHead a {
    color: white;
    border-bottom: dashed 1px white;
    margin: 0 5px;
    cursor: pointer;
}

.headerTel {
    font-size: 25px;
}

.headerTel a {
    margin-right: 10px;
}

/* =================== МЕНЮ */
.menuDecstop {
    position: relative;
    border-bottom: solid 8px #636;
    background-color: white;
    z-index: 9999;
}

.menuDecstop.headrFixed {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
}

.menu {
    width: 97%;
    justify-content: space-around;
    padding: 8px 0;
    margin: 0 auto;
}

.menu ul {
    display: flex;
    justify-content: space-around;
}

.menu a {
    color: #636;
    text-transform: uppercase;
    border-bottom: 1px dashed #636;
}

.menuDecstop img {
    position: absolute;
    top: 26px;
    left: 50%;
    transform: translateX(-50%);
}

/*========================= МОБИЛЬНОЕ МЕНЮ МЕНЮ*/
.left-side {
    display: none;
    background-color: #9a4985;
    position: fixed;
    top: 0;
    left: 0;
    width: 0px;
    height: 100%;
    outline: none;
    z-index: 999;
    overflow-x: hidden;
    transition: all .5s ease;
}

.left-side a {
    color: white;
    font-size: 18px;
}

.left-side.active {
    width: 300px;
}

.hamburger {
    display: none;
    position: fixed;
    top: 20px;
    left: 20px;
    width: 50px;
    height: 50px;
    text-align: center;
    background-color: #9a4985;
    padding: 0;
    border-radius: 50%;
    line-height: 60px;
    z-index: 999;
    transition: .5s ease;
}

.hamburger:hover {
    opacity: 1;
}

.hamburger.hamRight {
    left: 320px;
}

.hamburger-inner {
    margin-top: 0;
}

.hamburger-box {
    width: 25px;
}

.hamburger-inner, .hamburger-inner:after, .hamburger-inner:before {
    width: 25px;
    background-color: white;
}

.logoMobile {
    opacity: 0;
    margin: 25px;
    transition: .5s ease;
}

.logoMobile img {
    width: 255px;
    height: 41px;
    max-width: none;
}

nav.mobmenu {
    opacity: 0;
    padding: 12px 28px 0 28px;
    transition: .5s ease;
}

nav.mobmenu li {
    padding: 5px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.09);
}

nav.mobmenu li a {
    white-space: nowrap;
    display: block;
}

nav.mobmenu li:last-child {
    border-bottom: none;
}

nav.mobmenu.opas, .logoMobile.opas {
    opacity: 1;
}

.contentBody {
    position: relative;
    left: 0;
    transition: .5s ease;
}

.contentBody::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.left-side.active + .contentBody {
    left: 300px;
    transition-delay: .5s;
    filter: blur(1px) brightness(50%);
}

.left-side.active + .contentBody::after {
    z-index: 998;
}

/* =================== КНОПКА НА ВЕРХ */
#naVerx {
    position: fixed;
    right: -70px;
    bottom: 70px;
    background-image: url(../images/knopkaUp.png);
    background-size: 100%;
    background-repeat: no-repeat;
    width: 58px;
    height: 70px;
    transition: .25s;
    z-index: 999;
}

/* =================== ЗАГОЛОВОК ПОСЛЕ МЕНЮ */
#org {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 32px;
    text-align: center;
    margin: 50px 0 105px 0;
    color: #636;
    font-weight: 700;
}

#org::before, #org::after {
    content: '';
    width: 146px;
    height: 1px;
    background-color: #9a4985;
    display: block;
    margin: 0 20px;
}

/* =================== СЕКЦИЯ "ОРГАНИЗАЦИЯ ПРЕДЛОЖЕНИЙ РУКИ И СЕРДЦА" */
#rk {
    position: relative;
    background: linear-gradient(rgba(255, 255, 255, 0) 25%, #636 25%, #636 75%, rgba(255, 255, 255, 0) 75%);
}

#rk::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(-45deg, rgba(0, 0, 0, 0) 50%, rgba(255, 255, 255, 0.05) 50%, rgba(255, 255, 255, 0.05) 60%, rgba(0, 0, 0, 0) 60%), linear-gradient(-45deg, rgba(255, 255, 255, 0.05) 10%, rgba(0, 0, 0, 0) 10%);
    background-size: 0.375rem 0.375rem;
    display: block;
}

.videoCarusel {
    position: relative;
    max-width: 890px;
    background-color: #636;
    padding: 17px 0 12px 2px;
    border-radius: 10px;
    box-shadow: 0 0 30px 0px #000000;
    margin: 0 auto;
    z-index: 20;
}

.socVideo {
    position: absolute;
    top: 8px;
    right: 27px;
    z-index: 1;
}

.item-video > span {
    color: white;
    font-size: 25px;
}

.socVideo a:first-child {
    background-image: url("../images/icons.png");
    background-repeat: no-repeat;
    background-position: 0px 0px;
    width: 32px;
    height: 32px;
    display: block;
    margin-bottom: 5px;
    cursor: pointer;
}

.socVideo a:last-child {
    background-image: url("../images/icons.png");
    background-repeat: no-repeat;
    background-position: -64px 0px;
    width: 32px;
    height: 32px;
    display: block;
    cursor: pointer;
}

.formCarusel {
    position: absolute;
    top: -50px;
    right: 15px;
    background-image: url("../images/bg_form-min.png");
    width: 300px;
    height: 480px;
    z-index: 1;
}

.formCarusel > div {
    font-size: 20px;
    color: #636;
    text-align: center;
    padding: 10px 70px;
    font-weight: 700;
    line-height: 1.3;
}

.formCarusel > p {
    color: white;
    font-size: 16px;
    text-align: center;
    padding: 0 45px;
    margin-top: 6px;
    line-height: 1.3;
}

.formCarusel > p:last-child {
    margin-top: -2px;
}

.formVideo {
    padding: 0 35px;
    margin: 15px 0 0 0;
}

.slick-dotted.slick-slider {
    margin-bottom: 0;
}

.preloadText {
    position: relative;
    top: 3px;
    color: white;
    font-size: 23px;
}

.caruselVideo .slick-dots {
    width: 30%;
    right: 0;
    bottom: 0;
    text-align: right;
    background-color: #663366;
    padding-right: 25px;
}

.caruselVideo .slick-dots li {
    margin: 0;
}

.caruselVideo .slick-dots li button:before {
    font-size: 12px;
    opacity: .8;
    color: #555555;
}

.caruselVideo .slick-dots li.slick-active button:before {
    color: #ffffff;
}

.caruselVideo .slick-dots li button:hover:before, .caruselVideo .slick-dots li button:focus {
    color: #ffffff;
}

input:not([type='submit']) {
    width: 100%;
    font-family: 'PFDin', sans-serif;
    color: #636;
    padding: 5px 20px;
    border-radius: 0.5rem;
    border: none;
    margin-bottom: 15px;
}

input[type='tel'] {
    margin-bottom: 0 !important;
}

.formMargin {
    margin-bottom: 15px;
}

input::placeholder {
    color: #636;
}

.knopka {
    background: transparent url(../images/perezvonite-mne.png) no-repeat;
    background-position: 0px 1px;
    background-size: 100%;
    width: 172px;
    height: 63px;
    color: white;
    font-size: 20px;
    border: none;
    outline: none;
    display: block;
    margin: -6px auto 0 auto;
}

.knopka:hover {
    background-position: 0px -60px;
}

.knopka:active {
    background-position: 0px -123px;
}

/* КНОПКА "ОСТАВИТЬ ЗАЯВКУ" */
#ostZ {
    background-image: url("../images/ostavit-zayavku.png");
}
/* /КНОПКА "ОСТАВИТЬ ЗАЯВКУ" */

/* КНОПКА "Уточнить детали" */
.scenKnopki > button:first-child {
    background-image: url("../images/utochnit-detali.png");
}
/* /КНОПКА "ОСТАВИТЬ ЗАЯВКУ" */

/* КНОПКА "Забронировать" */
.scenKnopki > button:last-child {
    background-image: url("../images/zabronirovat.png");
}
/* /КНОПКА "ОСТАВИТЬ ЗАЯВКУ" */

.errorTel {
    display: none;
    color: white;
    float: right;
}

.voskl {
    background-image: url("../images/vosklic-min.png");
    background-size: 25px;
    background-repeat: no-repeat;
    background-position: 195px 5px;
}

/* =================== ВСПЛЫВАЮЩЕЕ ОКНО ФОРМ */
.mySuccessForm {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.92);
    z-index: 1999999999;
}

.formMessage {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-image: url(../images/fonForm.jpg);
    color: white;
    border-radius: 15px;
    text-align: center;
    padding: 40px 50px;
}

.formMessage h4 {
    font-size: 30px;
}

.formMessage p {
    font-size: 18px;
    display: block;
    line-height: 2;
    margin: 0;
}

.mySuccessForm a {
    color: white;
}

.modalVk {
    text-decoration: underline;
}

.modalFormClased, .closeScenary {
    position: absolute;
    top: -14px;
    right: -14px;
    background-image: url("../images/close3.png");
    background-size: 100%;
    width: 30px;
    height: 30px;
    cursor: pointer;
}

/* /ВСПЛЫВАЮЩЕЕ ОКНО ФОРМ */

/* =================== СЕКЦИЯ "О НАС В ЦИФРАХ" */
#about {
    margin-top: 100px;
}

#about > h2 {
    color: #6e3275;
    margin-bottom: 30px;
}

.obcifrax {
    display: flex;
    justify-content: center;
    align-items: center;
    /*flex-wrap: wrap;*/
    margin: 20px auto 20px auto;
}

.cifrsOdd, .cifrsEven {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.cifrsOdd {
    position: relative;
    width: 200px;
    height: 200px;
    background-image: url("../images/backcifrs-min.png");
    background-color: #863270;
    border-radius: 50%;
    box-shadow: 0 0 25px 0px rgba(0, 0, 0, 0.91);
    z-index: 10;
}

.oneC {
    left: 25px;
    margin-left: 45px;
}

.twoC {
    padding-top: 8px;
}

.twoC .cfr {
    line-height: 0.9;
}

.twoC .strC {
    line-height: 0.9;
}

.freeC {
    left: -25px;
    padding-top: 13px;
}

.foC {
    left: -48px;
}

.fiC {
    left: -70px;
    padding-top: 8px;
}

.cfr {
    font-size: 65px;
    color: #d6a4c8;
    font-weight: bold;
    text-shadow: -1px -1px 0 black;
    padding: 0 0 0 0;
    margin: 0 0 0 0;
    line-height: .8;
}

.cifrsOdd:first-child .cfr {
    color: #febfd3;
}

.cifrsEven {
    position: relative;
    background-image: url("../images/backcifrs-min.png");
    background-color: #63266a;
    width: 225px;
    height: 225px;
    border-radius: 50%;
    box-shadow: 0 0 25px 0px rgba(0, 0, 0, 0.91);
    z-index: 5;
}

.strC {
    font-size: 20px;
    color: white;
    opacity: .90;
    line-height: 1.2;
    font-weight: 100;
}

.aboutDop {
    width: 100%;
    text-align: center;
    color: #63266a;
    margin: 18px auto 0 auto;
}

.aboutDop h4 {
    font-size: 27px;
    font-weight: 600;
}

.aboutDop p {
    font-size: 27px;
    font-weight: 400;
    line-height: 1.2;
}

/* ФОРМА, ВСПЛЫВАЮЩАЯ ПО КЛИКУ НА КНОПКУ */
.formKnopka, .formKnopkaZakazZvonka, .formKnopka2, .contFormScenary {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.92);
    overflow: auto;
    z-index: 1999999999;
}

.formKnopkaBody {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 340px;
    color: white;
    text-align: center;
    background-image: url("../images/fonForm.jpg");
    padding: 20px 40px 36px 40px;
    border-radius: 10px;
}

.formKnopkaBody h4 {
    font-size: 24px;
    line-height: 48px;
}

.formKnopkaBody p {
    margin-bottom: 20px;
}

.formKnopkaBody input:not([type='submit']) {
    padding: 8px 20px;
    box-shadow: 3px 3px 0 0 rgba(0, 0, 0, 0.64);
}

.formKnopkaBody .voskl {
    background-image: url("../images/vosklic-min.png");
    background-size: 25px;
    background-repeat: no-repeat;
    background-position: 215px center;
}

.aboutDop button {
    margin-top: 15px;
    margin-bottom: 50px;
}

.knopka.otd {
    height: 56px;
    background-position: 0px -3px;
}

.knopka.otd:hover {
    background-position: 0 -64px;
}

.knopka.otd:active {
    background-position: 0px -126px;
}

.aboutMobile {
    width: 100%;
}

/* КНОПКА "ЗАКАЗАТЬ ЗВОНОК" */
.zakazZvonka {
    position: fixed;
    top: 190px;
    right: -100px;
    background-color: transparent;
    background-image: url(../images/zakazatZvonok.png);
    background-repeat: no-repeat;
    background-size: 80% 334px;
    background-position: 0 -16px;
    width: 293px;
    height: 90px;
    font-size: 22px;
    color: white;
    text-align: left;
    text-indent: 30px;
    border: none;
    z-index: 998;
}

.zakazZvonka:hover {
    background-position: 0 -119px;
}

.zakazZvonka:active {
    background-position: 0 -226px;
}

/* ====================== СЕКЦИЯ "ЧТО МЫ ДЕЛАЕМ?"*/
#make {
    background-color: #9a4985;
    background-image: url("../images/nizWhat.jpg");
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: left bottom;
    padding: 50px 0;
}

#make h2 {
    color: white;
    margin-bottom: 60px;
}

.makeContent {
    justify-content: center;
}

.makeContent > div {
    text-align: center;
    color: white;
    margin-bottom: 30px;
    line-height: 1.2;
}

.makeContent > div > img {
    position: relative;
    top: 0;
    border-radius: 50%;
    margin-bottom: 5px;
    transition: .3s;
}

.makeContent > div > img:hover {
    top: -10px;
    box-shadow: 0 6px 20px 0px rgba(0, 0, 0, 0.50);
}

/* ================ ДЛЯ РОЛИКОВ С ЮТУБА ================ */
.youtube {
    position: relative;
    padding-top: 56.25%;
    overflow: hidden;
    cursor: pointer;
}

.youtube img {
    width: 100%;
    top: -16.82%;
    left: 0;
    opacity: 1;
}

.youtube .play-button {
    width: 90px;
    height: 60px;
    background-color: #333;
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.6);
    z-index: 1;
    opacity: 1;
    border-radius: 6px;
}

.youtube .play-button:before {
    content: "";
    border-style: solid;
    border-width: 15px 0 15px 26.0px;
    border-color: transparent transparent transparent #fff;
}

.youtube img,
.youtube .play-button {
    cursor: pointer;
}

.youtube img,
.youtube iframe,
.youtube .play-button,
.youtube .play-button:before {
    position: absolute;
}

.youtube .play-button,
.youtube .play-button:before {
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
}

.youtube iframe {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
}

/* ================ /ДЛЯ РОЛИКОВ С ЮТУБА ================ */

.videoCarusel .youtube .play-button {
    width: 64px;
    height: 64px;
    background-image: url("../images/playKnopka.png");
    background-repeat: no-repeat;
    background-color: transparent;
    box-shadow: none;
}

.videoCarusel .youtube .play-button:before {
    background-image: none;
    background-color: transparent;
    box-shadow: none;
    border: none;
}

/* ========================== СЕКЦИЯ "ГДЕ СДЕЛАТЬ ПРЕДЛОЖЕНИЕ РУКИ И СЕРДЦА?" */
#offer {
    padding: 60px 0;
}

#offer h2 {
    color: black;
    padding: 0 30px;
    margin-bottom: 20px;
}

#offer h2:nth-child(2) {
    margin-bottom: 30px;
}

.scenSil {
    position: relative;
    display: block;
}

.scenSil i {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    font-size: 70px;
    opacity: .4;
    transition: .25s;
}

.scenSil:hover .fa-search {
    opacity: .7;
}

.descScenary a:nth-child(2) {
    font-size: 23px;
    color: black;
    line-height: 1;
    margin: 6px 0;
}

.descScenary p {
    padding: 0 15px;
    line-height: 1.3;
}

#offer .row > .col-6 {
    margin-bottom: 30px;
}

#offer #ajax-loader {
    margin: 0 auto;
}

/* ==================== ВСПЛЫВАЮЩЕЕ ОКНО СЦЕНАРИЕВ */

/* КЛАСС ДЛЯ body. ПРИ ПОЯВЛЕНИИ МОДАЛЬНОГО ОКНА. */
.overflowScen {
    overflow: hidden;
    margin-right: 17px;
}

.obscenNone {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.92);
    z-index: 10000;
}

.scenaAbsolute {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
}

.scenNone {
    position: absolute;
    top: 45px;
    left: 50%;
    transform: translateX(-50%);
    width: 90%;
    padding: 25px;
    margin: 0 auto;
    color: rgba(0, 0, 0, 0.88);
    font-family: PFDin, sans-serif;
    background-color: white;
    border: 4px solid #636;
}

.scenNone h3 {
    font-size: 25px;
    font-weight: 500;
    margin-bottom: 20px;
}

.scenNone p {
    margin-bottom: 15px;
    line-height: 1.1;
}

table {
    border-collapse: collapse;
    font-size: 16px;
}

.table td, .table th {
    text-align: center;
    vertical-align: middle;
    padding: 0;
    /*white-space: nowrap;*/
}

.table th {
    font-size: 16px;
    color: black;
    font-weight: 700;
    padding: 2px 0;
    white-space: nowrap;
}

/* Названия пакетов, галочки и цены всегда остаются в одну строку. */
.table td:nth-child(n+3) {
    white-space: nowrap;
}

.scenNone tr td:first-child {
    padding: 0 8px;
    font-weight: bold;
    color: #a11651;
}

.table td:nth-child(2) {
    text-align: left;
    padding: 5px 0 5px 6px;
    line-height: 1.2;
}

.table td > img {
    position: relative;
    top: 4px;
    max-width: 20px;
    max-height: 20px;
}

.packageCheck {
    display: inline-block;
    width: 10px;
    height: 8px;
    vertical-align: middle;
}

.scenKnopki {
    display: flex;
    justify-content: flex-end;
    margin: 0 -10px 0 0;
}

.scenKnopki .knopka {
    margin: 0;
}

.scenaryKnopkaText {
    display: none;
    background-image: url("../images/knopkiUtochnit.png");
}
.scenaryKnopkaText2 {
    display: none;
    background-image: url("../images/knopkiZabronirovat.png");
}

.dopUslugy {
    text-align: center;
    margin: 30px 0 0 0;
}

.dopUslugy > .row > div {
    margin-bottom: 25px;
}

.dopUslugy p {
    margin-bottom: 0;
}

.scenNone .youtube {
    width: 98%;
    margin: 0 auto;
}

/* /ВСПЛЫВАЮЩЕЕ ОКНО СЦЕНАРИЕВ */

/* ГАЛЕРЕЯ */
.obGalScenary {
    position: relative;
    margin-top: 7px;
}

.poyasneniya {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    color: white;
    font-size: 30px;
    text-align: center;
    padding-top: 70px;
    background-color: rgba(0, 0, 0, 0.72);
    display: block;
    z-index: 4;
}

.closeScenary {
    top: 10px;
    right: 10px;
    z-index: 10;
    transition: .25s;
}

.closeScenary:hover {
    opacity: .95;
}

.scenCart {
    width: 98%;
    margin: 0 auto;
}

.galScenary .asd {
    width: 48%;
    border: 1px solid #A9A9A9;
    padding: 5px;
    margin: 1%;
    float: left;
}

.galleryVideoLink {
    position: relative;
    display: block;
    overflow: hidden;
    background: #111;
}

.scenarioTopVideo {
    width: 98%;
    margin: 0 auto;
}

.scenarioTopVideo .galleryVideoLink {
    width: 100%;
    aspect-ratio: 16 / 9;
}

.scenarioTopVideo .galleryVideoLink video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.secretRoomGallery .asd,
.roofNewGallery .asd,
.tangoGallery .asd,
.daivingGallery .asd {
    aspect-ratio: 3 / 2;
    box-sizing: border-box;
    overflow: hidden;
}

.secretRoomGallery .asd > a,
.roofNewGallery .asd > a,
.tangoGallery .asd > a,
.daivingGallery .asd > a {
    display: block;
    width: 100%;
    height: 100%;
}

.secretRoomGallery .asd img,
.roofNewGallery .asd img,
.tangoGallery .asd img,
.daivingGallery .asd img,
.secretRoomGallery .galleryVideoLink video,
.roofNewGallery .galleryVideoLink video,
.tangoGallery .galleryVideoLink video {
    display: block;
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    object-fit: cover;
}

.galleryVideoLink video {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

.galleryVideoPlay {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    background: rgba(0, 0, 0, .72);
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.galleryVideoPlay::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 53%;
    border-top: 11px solid transparent;
    border-bottom: 11px solid transparent;
    border-left: 17px solid #fff;
    transform: translate(-50%, -50%);
}

.fancybox-slide--video .fancybox-content {
    width: min(90vw, 1200px);
    aspect-ratio: 16 / 9;
    padding: 0;
    overflow: hidden;
    background: #000;
}

.fancybox-slide--video .fancybox-content video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: #000;
}

/* В установленной версии Fancybox HTML5-video вставляется прямо в слайд. */
.fancybox-slide--video > video {
    width: 90%;
    max-width: 1200px;
    aspect-ratio: 16 / 9;
    padding: 0;
    object-fit: contain;
    background: #000;
}

/* ДЛЯ ТОЧЕК В ГАЛЕРЕИ */
.obGalScenary .owl-dots {
    margin-top: 15px;
}
.scenNone .owl-dot span {
    background-color: rgba(0, 0, 0, 0.64);
}

/* ========================= СЕКЦИЯ "5 ПРОБЛЕМ ОТ КОТОРЫХ МЫ ВАС ИЗБАВЛЯЕМ"*/
#five {
    text-align: center;
    background-image: url("../images/five/fon5probl.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    padding: 50px 0 60px 0;
}

#five h2 {
    color: white;
    padding: 0 20px;
    line-height: 1.3;
    margin-bottom: 50px;
}

#five .reshenie {
    background-color: white;
    box-shadow: 0 0 96px 16px rgba(255, 255, 255, 0.5);
    padding: 30px 20px 30px 20px;
    border-radius: 3px;
    margin: 0 10px;
}

#five .reshenie img {
    max-width: 64px;
    display: block;
    margin: 0 auto 10px auto;
}

#five .reshenie h4 {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 10px;
}

/* ==================== СЕКЦИЯ "ПОЧЕМУ 1250 ПАР УЖЕ ВЫБРАЛИ НАС"*/
#what {
    text-align: center;
    padding: 50px 0;
}

#what h2 {
    color: black;
    padding: 0 30px;
    margin: 10px 0 30px 0;
}

.obvodka {
    background-image: url('../images/what/obvodka2.png');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    padding: 18px 0 33px 0;
    margin: 50px 0 0 0;
}

#what .knopka {
    margin: -30px auto 0 auto;
}

/* ====================== СЕКЦИЯ "НАША КОМАНДА"*/
#comandos {
    position: relative;
    text-align: center;
    color: white;
    background-color: #636;
    padding: 50px 0 20px 0;
}

#comandos::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("../images/comandos/fonTeam.png");
    opacity: .03;
}

#comandos h2 {
    color: white;
    margin-bottom: 50px;
}

#comandos .row > div {
    margin-bottom: 30px;
}

#comandos .col-6 > p {
    line-height: 1.3;
}

/* КНОПКА ВЫВОДА ОСТАЛЬНОГО КОНТЕНТА */
details summary {
    position: relative;
    width: 172px;
    height: 60px;
    font-size: 1.25rem;
    padding-top: 8px;
    border: medium none;
    margin: 0 auto 30px auto;
    cursor: pointer;
    line-height: 2;
    outline: none;
    z-index: 3;
}

#comandos details summary {
    text-indent: -100px;
}

#comandos details summary:hover {
    background-position: 0px -64px;
}

#comandos details summary:active {
    background-position: 0px -126px;
}

#comandos details summary {
    background: transparent url('../images/pokazat-vsex.png') no-repeat;
    background-position: 0px -3px;
    background-size: 100%;
}

/* КНОПКА ПОРТФОЛИО */
#portfolio details summary {
    background: transparent url('../images/posmotret-esche.png') no-repeat;
    background-position: 0px -3px;
    background-size: 100%;
}

#portfolio details summary:hover {
    background-position: 0px -74px;
}

#portfolio details summary:active {
    background-position: 0px -147px;
}

#contacts [type="submit"] {
    background-image: url("../images/otpravit.png");
}

/* /КНОПКА ВЫВОДА ОСТАЛЬНОГО КОНТЕНТА */

#comandos.comandosMob {
    padding: 50px 0 5px 0;
}

/* ============================= СЕКЦИЯ "КАК МЫ РАБОТАЕМ"*/
#work {
    position: relative;
    text-align: center;
    padding-top: 50px;
}

#work::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 48px;
    background: linear-gradient(to top right, #fff, #fff 49.6%, transparent 50.4%, transparent) 0 0 no-repeat, linear-gradient(to top left, #fff, #fff 49.6%, transparent 50.4%, transparent) 100% 0 no-repeat, transparent;
    background-size: 50% 48px;
    margin: -48px auto 0;
}

#work h2 {
    color: #636;
    margin-bottom: 50px;
}

#work .col-lg-2::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 50%;
    transform: translate(-78px, -145%);
    background-image: url("../images/work/strR.png");
    background-repeat: no-repeat;
    width: 31px;
    height: 28px;
    display: block;
}

#work .col-lg-2:first-child::after {
    background-image: none;
}

#work .col-12 > p {
    color: #4f274f;
    font-weight: 600;
}

/* ===================== СЕКЦИЯ "ТРАНСФЕР ДОМОЙ В ПОДАРОК"*/
#trans {
    position: relative;
    background-image: url("../images/trans/fonAkciya.jpg");
    background-size: cover;
    background-position: center;
    padding: 50px 0 190px 0;
    margin-top: 85px;
}

#trans::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 48px;
    background: linear-gradient(to top right, #fff, #fff 49.6%, transparent 50.4%, transparent) 0 0 no-repeat, linear-gradient(to top left, #fff, #fff 49.6%, transparent 50.4%, transparent) 100% 0 no-repeat, transparent;
    background-size: 50% 48px;
    transform: scale(1, -1);
}

#trans h2 {
    color: white;
    margin: 50px 0 70px 0;
}

.transMasina {
    position: relative;
}

.transLeft {
    position: relative;
    background-image: url(../images/trans/photo.png);
    background-repeat: no-repeat;
    background-position: center left;
    width: 843px;
    height: 356px;
    border-radius: 12px;
    box-shadow: 0 0 192px 0 rgba(255, 255, 255, 0.5);
    margin: 0 auto;
}

.transLeft::before {
    content: '';
    position: absolute;
    top: -39px;
    left: -41px;
    background-image: url("../images/trans/share.png");
    background-repeat: no-repeat;
    background-size: 100%;
    width: 173px;
    height: 179px;
}

.transLeftCont {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-375px, -45px);
    width: 275px;
    color: white;
    background-color: rgba(0, 0, 0, 0.42);
    padding: 15px 30px;
    line-height: 1.3;

}

.transLeftCont > div {
    font-size: 20px;
    margin-bottom: 10px;
}

.transFormContent {
    position: absolute;
    top: -24px;
    right: 100px;
    font-size: 18px;
    text-align: center;
    color: white;
    background-image: url("../images/trans/bg_form2.png");
    background-repeat: no-repeat;
    background-size: 100%;
    width: 300px;
    height: 470px;
}

.transFormContent h4 {
    font-size: 18px;
    text-transform: uppercase;
    font-weight: 600;
    margin: 25px 0 0 0;
}

/* ЧАСЫ */
.transTime {
    margin: 10px 0 25px 0;
}

#timer-number-0489fd1b4f15655a4fc8127560643beb-hours, #timer-number-0489fd1b4f15655a4fc8127560643beb-minutes, #timer-number-0489fd1b4f15655a4fc8127560643beb-secundes {
    background: linear-gradient(rgb(156, 23, 125) 0%, rgb(95, 24, 114) 100%);
    padding: 6px 3px 8px 3px;
    border-radius: 5px;
}

/* /ЧАСЫ */

.transFormContent > p {
    font-size: 18px;
    text-transform: uppercase;
    font-weight: 600;
}

.transFormContent input:not([type='submit']), .transFormContent .formMargin {
    margin-bottom: 12px;
}

.transFormContent .errorTel {
    font-size: 15px;
}

.transFormContent .knopka {
    margin-top: 30px;
}

/* ==================== СЕКЦИЯ "ПОСМОТРИТЕ НАШЕ ПОРТФОЛИО"*/
#portfolio {
    padding: 50px 0 20px 0;
}

#portfolio h2 {
    color: #000000;
    margin-bottom: 50px;
}

#portfolio .wrapper {
    margin-bottom: 15px;
}

#portfolio p {
    font-size: 20px;
    color: rgba(0, 0, 0, 0.75);
}

#portfolio p.portPredl {
    color: rgba(143, 54, 120, 0.86);
}

#portfolio .portfolioXp {
    display: block;
    margin: 6px auto 40px auto;
}

#portfolio details summary {
    width: 200px;
    height: 70px;
    color: white;
    text-indent: 27px;
    padding-top: 14px;
    margin-top: 18px;
}

/* МОБИЛЬНОЕ ПОРТФОЛИО */
#portfolio.portfolioMob {
padding:  20px 0;
}

#portfolio.portfolioMob h2 {
    margin-bottom: 15px;
}

/* ============================= СЕКЦИЯ "ОТЗЫВЫ О НАШЕЙ РАБОТЕ"*/
#reviews {
    position: relative;
    background: linear-gradient(-45deg, rgba(0, 0, 0, 0) 50%, rgba(255, 255, 255, 0.05) 50%, rgba(255, 255, 255, 0.05) 60%, rgba(0, 0, 0, 0) 60%), linear-gradient(-45deg, rgba(255, 255, 255, 0.05) 10%, rgba(0, 0, 0, 0) 10%);
    background-size: 4px 4px;
    background-color: #651a52;
    margin: 0 auto;
    padding: 50px 0 100px 0;
}

#reviews::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 48px;
    background: linear-gradient(to top right, #fff, #fff 49.6%, transparent 50.4%, transparent) 0 0 no-repeat, linear-gradient(to top left, #fff, #fff 49.6%, transparent 50.4%, transparent) 100% 0 no-repeat, transparent;
    background-size: 50% 48px;
    margin: -48px auto 0;
}

#reviews h2 {
    color: white;
    margin-bottom: 50px;
}

.part11_block {
    display: flex;
    background-color: white;
    text-align: justify;
    padding: 30px 25px 30px 25px;
    border-radius: 5px;
    margin-bottom: 40px;
}

.part11_block2 {
    position: relative;
}

.part11_block2 span {
    position: absolute;
    left: 130px;
    top: 4px;
    width: 100%;
    font-size: 18px;
    text-align: left;
    font-weight: bold;
    display: table;
    white-space: nowrap;
    background-color: #fff;
    padding: 6px 13px;
    box-shadow: 1px 1px 5px 0px rgba(50, 50, 50, 1);
    line-height: 1;
}

.part11_block2 span > a {
    font-size: 16px;
    font-weight: normal;
    display: block;
    margin-top: 2px;
}

img.wp-smiley, img.emoji {
    display: inline !important;
    border: none !important;
    box-shadow: none !important;
    height: 1em !important;
    width: 1em !important;
    margin: 0 .07em !important;
    vertical-align: -0.1em !important;
    background: none !important;
    padding: 0 !important;
}

.part11_block2 img {
    width: 150px !important;
    max-width: 150px;
    max-height: 150px;
    border-radius: 5px;
}

.part11_p {
    font-size: 15px;
    font-family: 'Open Sans', sans-serif;
    padding: 0 16px;
    margin: 54px 0 0 0;
    line-height: 1.3;
}

.reviewsVideo {
    position: relative;
    min-width: 232px;
    height: 129px;
    overflow: hidden;
}

.reviewsVideo img {
    position: absolute;
    left: 0;
    top: -23px;
}

.reviewsVideo .play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
    width: 90px;
    height: 60px;
    background-color: #333;
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.6);
    z-index: 1;
    opacity: 0.8;
    border-radius: 6px;
}

.reviewsVideo .play-button:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
    border-style: solid;
    border-width: 15px 0 15px 26.0px;
    border-color: transparent transparent transparent #fff;
}

.part11_block details summary {
    position: relative;
    background: none;
    background-position: 0px -3px;
    background-size: 100%;
    width: auto;
    height: auto;
    font-size: 15px;
    color: #000000;
    padding-top: 9px;
    border: medium none;
    margin: 0 auto 0px auto;
    cursor: pointer;
    line-height: 2;
    outline: none;
    z-index: 3;
}

#reviews .owl-nav {
    position: relative;
    /*left: 0;
    bottom: 0;*/
}

#reviews .owl-prev, #reviews .owl-next {
    position: absolute;
    top: -15px;
}

#reviews .owl-prev {
    left: -25px;
    background-image: url("../images/otzivi/left-arrow.png");
    background-repeat: no-repeat;
    width: 43px;
    height: 50px;
}

#reviews .owl-next {
    right: -25px;
    background-image: url("../images/otzivi/right-arrow.png");
    background-repeat: no-repeat;
    width: 43px;
    height: 50px;
}

.owl-dots {
    display: flex;
    justify-content: center;
    height: 20px;
}

.owl-dot span {
    width: 15px;
    height: 15px;
    background-color: white;
    display: block;
    border-radius: 50%;
    margin: 0 5px;
}

.owl-dot.active span {
    opacity: .6;
}

/* МОБИЛЬНЫЕ ОТЗЫВЫ */
.otzivsMob {
    background-color: #9a4985;
    padding-bottom: 20px;
}

.otzivsMob h2 {
    font-size: 25px;
    color: #ffffff;
    text-align: center;
    font-weight: 700;
    padding: 30px 20px;
}

.otzvsContMob {
    background-color: white;
    padding: 8px;
    border-radius: 5px;
    margin-bottom: 20px;
}

.otzvsContMob h4 {
    font-size: 25px;
    text-align: center;
    padding: 8px 0 0 0;
}

.otzvsContMob p {
    line-height: 1.2;
}

.otzvsContMob details summary {
    text-decoration: underline;
    color: #636;
    font-size: 0.875rem;
    width: 100%;
    height: auto;
    padding-top: 0;
    border: medium none;
    margin: 0;
    line-height: 2;
}

.otzvsContMob img {
    margin: 0 auto;
    display: block;
}

.otzvsContMob a {
    position: relative;
    top: -5px;
    text-align: center;
    display: block;
}

/* ============================ СЕКЦИЯ "КОНТАКТЫ"*/
#contacts {
    position: relative;
    background-color: #633268;
    padding: 60px 0 140px 0;
    margin-top: 80px;
}

#contacts::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 48px;
    background: linear-gradient(to top right, #633268, #633268 49.6%, transparent 50.4%, transparent) 0 0 no-repeat, linear-gradient(to top left, #633268, #633268 49.6%, transparent 50.4%, transparent) 100% 0 no-repeat, transparent;
    background-size: 50% 48px;
    margin: -48px auto 0;
}

#contacts::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 48px;
    background: linear-gradient(to top right, #fff, #fff 49.6%, transparent 50.4%, transparent) 0 0 no-repeat, linear-gradient(to top left, #fff, #fff 49.6%, transparent 50.4%, transparent) 100% 0 no-repeat, transparent;
    background-size: 50% 48px;
    margin: -48px auto 0;
}

.contactContent {
    background-color: white;
    padding: 30px 0 0 0;
    border-radius: 5px;
}

.contactContent h2 {
    font-size: 25px;
    color: #000000;
    text-align: center;
    font-weight: 700;
    margin-bottom: 30px;
}

.contactContent img {
    display: block;
}

.contactContent .contactTel, .contactContent .contactTel2 {
    font-size: 24px;
    font-weight: bold;
    margin: 18px 0 16px 0;
    color: #573b3b;
}

.contactTel2 a {
    color: black;
}

.contactTel2 a:hover {
    text-decoration: underline;
}

.contactContent p {
    font-size: 1.2em;
    color: #573b3b;
    margin: 0 0 25px 0;
    line-height: 1.5;
}

.min15 {
    padding-right: 75px;
}

.contactsForm {
    text-align: center;
    background: linear-gradient(-45deg, rgba(0, 0, 0, 0) 50%, rgba(255, 255, 255, 0.05) 50%, rgba(255, 255, 255, 0.05) 60%, rgba(0, 0, 0, 0) 60%), linear-gradient(-45deg, rgba(255, 255, 255, 0.05) 10%, rgba(0, 0, 0, 0) 10%);
    background-size: 4px 4px;
    background-color: #873372;
    box-shadow: 0 0 32px 0 rgba(0, 0, 0, 0.5);
    padding-bottom: 40px;
    margin-top: 20px;
    border-radius: 5px;
}

.contactsForm > div {
    font-size: 28px;
    color: #fff;
    text-transform: uppercase;
    padding: 32px 0 0 0;
    border-radius: 5px;
    margin: 0 auto;
}

.contactContent .row .col-lg-4:last-child {
    left: -40px;
}

.contactsForm input:not([type='submit']) {
    padding: 10px 20px;
    margin-bottom: 25px;
}

.contactsForm .voskl {
    background-position: 92% center;
}

.contactsForm .knopka {
    margin: 25px auto 0 auto;
}

/* МОБИЛЬНЫЕ КОНТАКТЫ */
.contactsMob {
    background-color: #633268;
    text-align: center;
}

.contactsMob .contactContent {
    padding: 30px 50px;
    margin: 40px 0;
}

.contactsMob h2 {
    margin-bottom: 0;
}

.contactsMob .contactContent .min15 {
    padding: 0 25%;
}

.contactsMob .contactsForm {
    margin: 10px auto 0 auto;
}

.contactsMob .contactContent .knopka {
    background-image: url(../images/otpravit.png);
}

/* =========================== СЕКЦИЯ "ДА, Я ЛЮБЛЮ ЕЁ!"*/
#love {
    text-align: center;
    padding: 0px 0 50px 0;
}

#love h2 {
    font-size: 40px;
    color: #6c215a;
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: 0;
    padding: 0 20px;
    margin: 60px 0 30px 0;
}

#love .knopka {
    width: 270px;
    height: 103px;
    background-image: url(../images/knopki/knopkiNoTextRRR.png);
}

#love .knopka:hover {
    background-position: 0px -119px;
}

#love .knopka:active {
    background-position: 0px -242px;
}

/* ============================ ПОДВАЛ*/
footer {
    color: white;
    background-color: #636;
    padding: 20px 0;
}

footer .row {
    align-items: center;
}

footer a {
    color: white;
    border-bottom: dashed 1px white;
    margin: 0 5px;
    cursor: pointer;
}

footer a:hover {
    color: white;
}

footer .row .col-sm-6:first-child {
    font-size: 14px;
    align-self: center;
}

footer .row .col-sm-6:last-child {
    text-align: right;
}


























