/*******************************************************

 *

 * Listing Details

 *

 *******************************************************/

 [class*="ai-icon-"] {

    display: inline-block;

    vertical-align: middle;

    width: auto;

    height: auto;

    background-position: center;

    background-repeat: no-repeat;

    background-size: contain;

    -webkit-transition: 0.3s all ease-in-out;

    -o-transition: 0.3s all ease-in-out;

    transition: 0.3s all ease-in-out;

}



.site-img {

    display: block;

    position: relative;

}



.site-img canvas {

    display: block;

    width: 100%;

    height: 100%;

    position: relative;

}



.site-img img {

    position: absolute;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    display: block;

    -o-object-fit: cover;

    object-fit: cover;

    -o-object-position: center;

    object-position: center;

    z-index: 1;

    -webkit-transition: 0.3s all ease-in-out;

    -o-transition: 0.3s all ease-in-out;

    transition: 0.3s all ease-in-out;

}



.ip-global-btn {

    color: #000;

    font-size: 15px;

    line-height: 1;

    letter-spacing: 0.250em;

    text-transform: uppercase;

    border: none;

    padding: 0;

    background-color: transparent;

}



.ip-global-btn span {

    position: relative;

}



.ip-global-btn em[class^=ai-font] {

    -webkit-transform: rotate(90deg);

        -ms-transform: rotate(90deg);

            transform: rotate(90deg);

    display: inline-block;

    vertical-align: middle;

    margin-left: 10px;

}



.ip-global-btn span:before {

    position: absolute;

    content: '';

    bottom: 0;

    left: 0;

    width: 100%;

    height: 1px;

    background-color: #000;

    -webkit-transition: 0.3s all ease-in-out;

    -o-transition: 0.3s all ease-in-out;

    transition: 0.3s all ease-in-out;

    opacity: 0;

    -webkit-transform: scaleX(0);

        -ms-transform: scaleX(0);

            transform: scaleX(0);

}



.ip-global-btn:hover {

    color: #000;

}



.ip-global-btn:hover span:before {

    -webkit-transform: scaleX(1);

        -ms-transform: scaleX(1);

            transform: scaleX(1);

    opacity: 1;

}



#inner-page-wrapper {

    margin-bottom: 0;

    z-index: auto;

}



.ip-container #main-wrapper {

    z-index: auto;

}



#inner-page-wrapper > .container {

    width: 100%;

    padding: 0;

}



#ip-listing-details {

    font-size: 0;

    letter-spacing: normal;

    line-height: 1;

}



.ip-banner {

    display: none;

}



.ip-ld-container, .ip-ld-section {

    display: block;

    position: relative;

}



.ip-hero-container, .ip-hero-slide {

    display: block;

    position: relative;

}



.ip-hero-item {

    display: inline-block;

    vertical-align: middle;

    width: 100%;

    position: relative;

}



.ip-hero-img:before {

    position: absolute;

    content: '';

    bottom: 0;

    left: 0;

    width: 100%;

    height: 50%;

    pointer-events: none;

    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0)),to(rgba(0,0,0,0.65)));

    background: -o-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%);

    background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%);

    z-index: 2;

}



.ip-hero-img:after {

    position: absolute;

    content: '';

    top: 0;

    left: 0;

    width: 100%;

    height: 50%;

    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0,0,0,0.65)),to(rgba(0,0,0,0)));

    background: -o-linear-gradient(top, rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%);

    background: linear-gradient(to bottom, rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%);

    z-index: 1;

}



.ip-hero-slide:not(.slick-initialized) .ip-hero-item:nth-child(n+2) {

    display: none;

}



.ip-hero-content {

    position: absolute;

    bottom: 0;

    left: 0;

    right: 0;

    width: 100%;

    max-width: 1630px;

    margin: 0 auto;

    padding: 0 15px;

    z-index: 5;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

}



.custom-breadcrumbs {

    display: inline-block;

    vertical-align: middle;

    position: relative;

    margin-left: 60px;

}



.ip-container #breadcrumbs {

    color: #fff;

}



.ip-container #breadcrumbs span.breadcrumb_last {

    color: #fff;

    font-weight: 400;

}



.ip-hero-controls {

    display: inline-block;

    vertical-align: middle;

    position: relative;

}



.ip-hero-controls button {

    display: inline-block;

    vertical-align: middle;

    position: relative;

    border: none;

    background-color: #000;

    font-size: 15px;

    letter-spacing: 0.250em;

    line-height: 1;

    color: #fff;

    text-transform: uppercase;

    font-weight: 500;

    padding: 22px 0 12px;

    pointer-events: none;

}



.ip-hero-controls button.prev em[class^=ai-font] {

    margin-left: 15px;

}



.ip-hero-controls button.next em[class^=ai-font] {

    margin-right: 15px;

}



.ip-hero-controls button em[class^=ai-font] {

    font-size: 18px;

}



.ip-hero-controls button:not(:last-child) span:before {

    position: absolute;

    content: '';

    top: 0;

    right: 0;

    width: 1px;

    height: 100%;

    background-color: #fff;

}



.ip-hero-controls button span {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;

    padding: 30px 34px;

    position: relative;

    pointer-events: auto;

    z-index: 2;

}



.ip-hero-controls:before {

    position: absolute;

    content: '';

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    pointer-events: none;

    background-image: url(../../images/listing-details/accent-bg.jpg);

    background-position: center;

    background-size: cover;

    background-repeat: no-repeat;

    z-index: 2;

    opacity: .40;

    background-attachment: fixed;

}



/* Section 2 */

.ip-listing-content-container, .ip-listing-content-row, .ip-listing-content, .ip-listing-title, .ip-listing-content-desc, .ip-listing-content-info, .ip-listing-content-share ul, .ip-listing-info, .ip-listing-info-price, .ip-listing-info-det, .ip-listing-info-det ul, .ip-listing-info-year, .ip-listing-form-container, .ip-listing-form-title, .ip-listing-form-widget, .ip-listing-form-widget form {

    display: block;

    position: relative;

}



.ip-listing-content-container {

    padding: 80px 0;

}



.custom-container {

    width: 100%;

    display: block;

    max-width: 1518px;

    margin: 0 auto;

    padding: 0 15px;

}



.ip-listing-content-bg {

    position: absolute;

    top: 0;

    left: 0;

    width: 100%;

    height: 359px;

    pointer-events: none;

    background-color: #000;

}



.ip-listing-content-bg canvas {

    display: block;

    width: 100%;

    height: 100%;

    position: relative;

    background-position: center;

    background-repeat: no-repeat;

    background-size: cover;

    background-attachment: fixed;

    -webkit-filter: grayscale(1);

            filter: grayscale(1);

    opacity: .40;

}



.ip-listing-content-col {

    display: inline-block;

    vertical-align: top;

    position: relative;

    width: 50%;

}



.ip-listing-content-col:first-child {

    width: 61.963%;

}



.ip-listing-content-col:last-child {

    width: 38.037%;

}



.ip-listing-content-row {

    z-index: 5;

}



.ip-listing-title h2 {

    font-size: 70px;

    line-height: 1;

    color: #b7b2af;

    font-family: var(--title-font);

    text-transform: uppercase;

}



.ip-listing-title h2 span {

    font-size: 20px;

    line-height: 1;

    letter-spacing: 0.200em;

    font-weight: 200;

    color: #4c4c4c;

    font-family: var(--body-font);

    display: block;

    margin-top: 10px;

}



.ip-listing-content {

    background-color: #fff;

    padding: 70px 98px 0 60px;

    margin-top: 78px;

}



.ip-listing-content-desc p {

    font-size: 15px;

    line-height: 28px;

    letter-spacing: 0.020em;

    font-weight: 300;

    color: #5f5f5f;

}



.ip-listing-content-desc {

    margin-bottom: 65px;

}



.ip-listing-title {

    margin-bottom: 30px;

}



.ip-listing-content-btn {

    display: inline-block;

    vertical-align: top;

    position: relative;

    margin-right: 150px;

}



.ip-listing-content-share h2 {

    font-size: 15px;

    line-height: 1;

    letter-spacing: 0.250em;

    color: #000;

    text-transform: uppercase;

    display: block;

    margin-bottom: 24px;

}



.ip-listing-content-share {

    display: inline-block;

    vertical-align: top;

    position: relative;

}



.ip-listing-content-info {

    margin-bottom: 70px;

}

.ip-listing-content-ctas {

    display: flex;

    flex-direction: column;

    align-items: flex-start;

    gap: 22px;

}

.ip-listing-content-ctas .ip-listing-content-btn {

    display: block;

    margin-right: 0;

}



.ip-listing-content-share ul li {

    display: inline-block;

    vertical-align: middle;

    position: relative;

}



.ip-listing-content-share ul li a {

    font-size: 24px;

    line-height: 1;

    color: #b7b2af;

    -webkit-transition: 0.3s all ease-in-out;

    -o-transition: 0.3s all ease-in-out;

    transition: 0.3s all ease-in-out;

}



.ip-listing-content-share ul li a:hover {

    color: #666;

}



.ip-listing-content-share ul li:not(:last-child) {

    margin-right: 30px;

}



.ip-listing-info {

    padding: 40px 38px 45px;

    background: -webkit-gradient(linear, left top, right top, from(rgba(0,0,0,1)),color-stop(50%, rgba(24,24,24,1)),to(rgba(0,0,0,1)));

    background: -o-linear-gradient(left, rgba(0,0,0,1) 0%,rgba(24,24,24,1) 50%,rgba(0,0,0,1) 100%);

    background: linear-gradient(to right, rgba(0,0,0,1) 0%,rgba(24,24,24,1) 50%,rgba(0,0,0,1) 100%);

    border: 1px solid rgba(183,178,175,.18);

}



.ip-listing-info-price h2 {

    font-size: 56px;

    line-height: 1;

    color: #fff;

    font-family: var(--title-font);

    font-weight: 600;

}



.ip-listing-info-price span {

    font-size: 20px;

    line-height: 1;

    letter-spacing: 0.200em;

    color: #fff;

    text-transform: uppercase;

    display: block;

    margin-top: 15px;

}



.ip-listing-info-price {

    text-align: center;

    margin-bottom: 20px;

}



.ip-listing-info-det ul {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

}



.ip-listing-info-det ul li {

    display: inline-block;

    vertical-align: middle;

    position: relative;

    font-size: 14px;

    line-height: 1;

    color: #fff;

    letter-spacing: 0.020em;

    padding: 20px 28px;

}



.ip-listing-info-det ul li em[class*="ai-icon-"] {

    margin: 0 auto 15px;

    display: block;

}



.ip-listing-info-det ul li em.ai-icon-bath {

    background-image: url(../../images/listing-details/ai-bath-icon.png);

    width: 33px;

    height: 34px;

}



.ip-listing-info-det ul li em.ai-icon-bed {

    background-image: url(../../images/listing-details/ai-bed-icon.png);

    width: 39px;

    height: 33px;

}



.ip-listing-info-det ul li em.ai-icon-ruler {

    background-image: url(../../images/listing-details/ai-ruler-icon.png);

    width: 33px;

    height: 32px;

}



.ip-listing-info-det ul li em.ai-icon-size {

    background-image: url(../../images/listing-details/ai-size-icon.png);

    width: 39px;

    height: 37px;

}



.ip-listing-info-det ul li:not(:last-child):before {

    position: absolute;

    content: '';

    top: 0;

    right: 0;

    width: 1px;

    height: 100%;

    background-color: #2a2a2a;

}



.ip-listing-info-det {

    text-align: center;

    margin-bottom: 20px;

}



.ip-listing-info-year h2 {

    font-size: 37px;

    line-height: 1;

    color: #fff;

    font-family: var(--title-font);

    font-weight: 600;

}



.ip-listing-info-year h2 span {

    font-size: 20px;

    line-height: 1;

    letter-spacing: 0.200em;

    color: #fff;

    text-transform: uppercase;

    display: block;

    margin-top: 15px;

    font-family: var(--body-font);

    font-weight: 200;

}



.ip-listing-info-year {

    text-align: center;

    margin-bottom: 30px;

}



.ip-listing-form-title span {

    font-size: 21px;

    line-height: 1;

    color: #fff;

    font-family: var(--title-font);

    text-transform: uppercase;

}



.ip-listing-form-title {

    text-align: center;

}



.ip-listing-form {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

    -webkit-box-orient: horizontal;

    -webkit-box-direction: normal;

        -ms-flex-flow: row wrap;

            flex-flow: row wrap;

    position: relative;

}



.ip-listing-form-field {

    display: inline-block;

    vertical-align: middle;

    width: calc(50% - 10px);

    position: relative;

    margin-top: 10px;

}



.ip-listing-form-field.full {

    width: 100%;

    display: block;

}



.ip-listing-form-field input:not([type=submit]), .ip-listing-form-field textarea {

    width: 100%;

    height: 45px;

    background-color: transparent;

    border: none;

    border-bottom: 1px solid #fff;

    font-size: 15px;

    line-height: normal;

    letter-spacing: 0.020em;

    color: #fff;

    padding: 0;

}



.ip-listing-form-field textarea {

    height: 110px;

    resize: none;

    padding: 20px 0;

}



.ip-listing-form-submit {

    position: absolute;

    bottom: 13px;

    right: 13px;

    width: 15px;

    height: 15px;

}



.ip-listing-form-submit button {

    background-color: transparent;

    border: none;

    padding: 0;

    background-image: url(../../images/listing-details/ai-plane-icon.png);

    width: 100%;

    height: 100%;

}



.ip-listing-form-widget .wpcf7 form .wpcf7-response-output {

    position: absolute;

    bottom: -32px;

    left: 0;

    right: 0;

    margin: 0 auto;

    font-size: 12px;

    color: #fff!important;

}



.ip-listing-form-widget .wpcf7-spinner {

    position: absolute;

    bottom: -45px;

    right: 0;

    margin: 0 auto;

}



.tab-header a {

    font-size: 27px;

    line-height: 1.35;

    letter-spacing: 0.080em;

    font-weight: 600;

    font-family: var(--title-font);

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

    padding: 28px 15px;

    margin-bottom: 0;

    border-bottom: none;

    color: #000;

}



.tab-header {

    display: block;

    position: relative;

}



.tab-header a em.ai-plus-icon {

    position: absolute;

    top: 50%;

    -webkit-transform: translateY(-50%);

        -ms-transform: translateY(-50%);

            transform: translateY(-50%);

    right: 0;

    width: 14px;

    height: 14px;

}



.tab-header a em.ai-plus-icon:before {

    position: absolute;

    content: '';

    top: 0;

    right: 6px;

    width: 1px;

    height: 100%;

    background-color: #000;

    -webkit-transition: 0.3s all ease-in-out;

    -o-transition: 0.3s all ease-in-out;

    transition: 0.3s all ease-in-out;

    opacity: 0;

}



.tab-header a em.ai-plus-icon:after {

    position: absolute;

    content: '';

    top: 6px;

    left: 0;

    width: 100%;

    height: 1px;

    background-color: #000;

}



.tab-header a[class="collapsed"] em.ai-plus-icon:before {

    opacity: 1;

}



.tab-header a[class="collapsed"] {

    border-bottom: none;

}



.tab-body, .tab-body ul {

    display: block;

    position: relative;

}



.tab-body ul li {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-align: start;

        -ms-flex-align: start;

            align-items: flex-start;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

    gap: 28px;

    position: relative;

}



.tab-body ul li strong {

    -webkit-box-flex: 0;

        -ms-flex: 0 0 38%;

            flex: 0 0 38%;

    max-width: 38%;

    font-weight: 600;

    line-height: 1.5;

    padding-right: 12px;

}



.tab-body ul li p {

    -webkit-box-flex: 1;

        -ms-flex: 1 1 62%;

            flex: 1 1 62%;

    margin: 0;

    min-width: 0;

    text-align: right;

    line-height: 1.5;

    overflow-wrap: break-word;

    word-wrap: break-word;

}



.tab-body {

    font-size: 14px;

    line-height: 1.5;

    letter-spacing: 0.050em;

    text-transform: uppercase;

    color: #5f5f5f;

    font-weight: 300;

    margin-bottom: 0;

    border-bottom: none;

    padding: 8px 15px 32px;

}



.tab-body ul li:not(:last-child) {

    margin-bottom: 18px;

    padding-bottom: 18px;

    border-bottom: 1px solid #e8e5e3;

}



/* Section 3 */

.ip-vid-container, .ip-vid-item, .ip-vid-item a {

    display: block;

    position: relative;

}



.ip-vid-bg {

    position: absolute;

    bottom: 0;

    left: 0;

    width: 100%;

    height: 57.832%;

    background-color: #000;

    pointer-events: none;

}



.ip-vid-bg canvas {

    display: block;

    width: 100%;

    height: 100%;

    position: relative;

    background-position: center;

    background-repeat: no-repeat;

    background-size: cover;

    opacity: .40;

    background-attachment: fixed;

}



.ip-vid-item {

    z-index: 5;

    width: 100%;

    max-width: 1372px;

    margin: 0 auto;

}



.ip-vid-container {

    padding-bottom: 115px;

}



.ip-vid-item a, .ip-vid-img, .ip-vid-item a:before, .ip-vid-img canvas, .ip-vid-img img {

    border-radius: 45px;

}



.ip-vid-item a:before {

    position: absolute;

    content: '';

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    border: 5px solid #000;

    z-index: 2;

}



.ip-vid-img em.ai-icon-play {

    background-image: url(../../images/listing-details/ai-play-btn.png);

    width: 62px;

    height: 66px;

    position: absolute;

    top: 50%;

    -webkit-transform: translateY(-50%);

        -ms-transform: translateY(-50%);

            transform: translateY(-50%);

    left: 0;

    right: 0;

    margin: 0 auto;

    display: block;

    z-index: 5;

}



.ip-vid-img {

    overflow: hidden;

    background-color: #000;

}



.ip-vid-item a:hover .ip-vid-img img {

    opacity: .75;

}



/* Section 4 */

.ip-gallery-container, .ip-gallery-main {

    display: block;

    position: relative;

}



.ip-gallery-row:nth-child(odd) {

    text-align: right;

}



.ip-gallery-item {

    display: inline-block;

    vertical-align: middle;

    width: calc(((100% - 10%) - 6px) / 3);

    padding: 0 6px;

    max-width: 572px;

}



.ip-gallery-row:not(:last-child) {

    margin-bottom: 66px;

}



.ip-gallery-bg {

    position: absolute;

    top: 9%;

    left: 0;

    width: 100%;

    height: 59.59%;

    background-color: #000;

    pointer-events: none;

}



.ip-gallery-bg canvas {

    display: block;

    width: 100%;

    height: 100%;

    position: relative;

    background-position: center;

    background-repeat: no-repeat;

    background-size: cover;

    opacity: .40;

    background-attachment: fixed;

}



.ip-gallery-container {

    padding: 0 0 150px;

    margin-top: 142px;

}



.ip-gallery-row {

    display: block;

    position: relative;

    margin: 0 -6px;

}



.ip-gallery-img {

    background-color: #000;

    overflow: hidden;

}



.ip-gallery-item a:hover .ip-gallery-img img {

    opacity: .50;

}



.ip-gallery-btn {

    display: block;

    text-align: center;

    margin: 70px auto 0;

}



.aiosp-container.aiosp-inline-holder[class*="galleryPopup"] {

    padding: 0;

    background: #000;

    position: fixed;

    overflow: hidden;

}



.aiosp-container.aiosp-inline-holder[class*="galleryPopup"] button.aiosp-close {

    width: 33px;

    height: 33px;

    right: 25px;

    opacity: 1;

    font-size: 0;

}



.aiosp-container.aiosp-inline-holder[class*="galleryPopup"] button.aiosp-close:before {

    width: 33px;

    height: 1px;

    content: '';

    background: #fff;

    position: absolute;

    z-index: 2;

    opacity: 1;

    -webkit-transform: rotate(45deg);

        -ms-transform: rotate(45deg);

            transform: rotate(45deg);

    left: 0;

    top: 50%;

}



.aiosp-container.aiosp-inline-holder[class*="galleryPopup"] button.aiosp-close:after {

    width: 33px;

    height: 1px;

    content: '';

    background: #fff;

    position: absolute;

    z-index: 2;

    opacity: 1;

    -webkit-transform: rotate(-45deg);

        -ms-transform: rotate(-45deg);

            transform: rotate(-45deg);

    right: 0;

    top: 50%;

}



.aiosp-container.aiosp-inline-holder[class*="galleryPopup"] .aiosp-content.aios-popup-body {

    width: 100%;

    background: transparent;

}



.force-center .slick-track {

    -webkit-transform: translate3d(0, 0, 0)!important;

            transform: translate3d(0, 0, 0)!important;

}



.big_thumbnails canvas, .small_thumbnails canvas {

    background-size: cover;

    background-position: center;

    background-repeat: no-repeat;

    width: 100%;

}



.big_thumbnails canvas {

    background-size: auto 100%;

    width: 100vw;

    height: 70vh;

}



.aiosp-container.aiosp-inline-holder[class*="galleryPopup"] .slick-slide.slick-active > div {

    display: block;

    position: relative;

    padding: 0 2px;

}



.aiosp-container.aiosp-inline-holder[class*="galleryPopup"] .slick-slide.slick-active > div::after {

    content: '';

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

    display: block;

    z-index: 2;

    width: 100%;

    height: 100%;

    top: 0;

    left: 0;

    position: absolute;

}



.aiosp-container.aiosp-inline-holder[class*="galleryPopup"] .slick-slide.slick-current.slick-active.slick-center > div::after, .aiosp-container.aiosp-inline-holder[class*="galleryPopup"] .slick-slide.slick-current.slick-active > div::after {

    background: transparent;

}



.aiosp-container.aiosp-inline-holder[class*="galleryPopup"] .slick-arrow {

    font-size: 40px;

    color: #fff;

    font-weight: 800;

    position: absolute;

    top: 50%;

    cursor: pointer;

}



.aiosp-container.aiosp-inline-holder[class*="galleryPopup"] span.slick-prev {

    left: 0;

    z-index: 2;

}



.aiosp-container.aiosp-inline-holder[class*="galleryPopup"] span.slick-next {

    right: 0;

    z-index: 2;

}



.big_thumbnails {

    position: relative;

    padding: 2px;

}



/*thumbnail popup*/

.aiosp-container.aiosp-inline-holder.thumbnails_sildeshow_wrapper {

    padding: 0;

    background: #000;

    position: fixed;

    overflow: hidden;

}



.aiosp-content.aios-popup-body.thumbnails_sildeshow {

    width: 100%;

    background: transparent;

}



.aiosp-content.aios-popup-body div#popupthumbnail_slideshow {

    height: auto;

}



div#popupthumbnail_slideshow {

    position: relative;

    height: 0;

}



#popupthumbnail_slideshow .big_thumbnails canvas {

    background-size: auto 100%;

    width: 100%;

    height: 70vh;

}



#popupthumbnail_slideshow .small_thumbnails .slick-slide {

    padding: 2px;

}



.small_thumbnails .slick-slide > div {

    position: relative;

}



#popupthumbnail_slideshow .slick-slide > div::after {

    content: '';

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

    display: block;

    z-index: 2;

    width: 100%;

    height: 100%;

    top: 0;

    left: 0;

    position: absolute;

}



#popupthumbnail_slideshow .slick-slide.slick-active > div {

    position: relative;

    display: block;

    padding: 0;

}



#popupthumbnail_slideshow .small_thumbnails .slick-slide > div {

    padding: 0 2px;

}



#popupthumbnail_slideshow .slick-slide.slick-center ~ .slick-slide.slick-center > div::after {

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

}



#popupthumbnail_slideshow .slick-slide.slick-center > div::after, #popupthumbnail_slideshow .slick-slide.slick-current.slick-active.slick-center > div::after, #popupthumbnail_slideshow .slick-slide.slick-current.slick-active > div::after {

    background: transparent;

}



#popupthumbnail_slideshow .slick-arrow {

    font-size: 40px;

    color: #fff;

    font-weight: 800;

    position: absolute;

    top: 50%;

    cursor: pointer;

}



#popupthumbnail_slideshow span.slick-prev {

    left: 0;

    z-index: 2;

}



#popupthumbnail_slideshow span.slick-next {

    right: 0;

    z-index: 2;

}



.thumbnails_sildeshow button.aiosp-close {

    width: 33px;

    height: 33px;

    right: 25px;

    opacity: 1;

    font-size: 0;

}



.thumbnails_sildeshow button.aiosp-close:before {

    width: 33px;

    height: 1px;

    content: '';

    background: #fff;

    position: absolute;

    z-index: 2;

    opacity: 1;

    -webkit-transform: rotate(45deg);

        -ms-transform: rotate(45deg);

            transform: rotate(45deg);

    left: 0;

    top: 50%;

}



.thumbnails_sildeshow button.aiosp-close:after {

    width: 33px;

    height: 1px;

    content: '';

    background: #fff;

    position: absolute;

    z-index: 2;

    opacity: 1;

    -webkit-transform: rotate(-45deg);

        -ms-transform: rotate(-45deg);

            transform: rotate(-45deg);

    right: 0;

    top: 50%;

}



/* Section 5 */

.ip-map-container, .ip-map-main, .ip-map-title, .ip-map-holder, .ip-map-holder canvas {

    display: block;

    position: relative;

}



.ip-map-bg {

    position: absolute;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    background-color: #000;

    pointer-events: none;

}



.ip-map-bg canvas {

    display: block;

    width: 100%;

    height: 100%;

    position: relative;

    background-position: center;

    background-repeat: no-repeat;

    background-size: cover;

    opacity: .40;

    background-attachment: fixed;

}



.ip-map-holder canvas {

    width: 100%;

    height: 100%;

    background-position: center;

    background-repeat: no-repeat;

    background-size: cover;

    min-height: 300px;

}



.ip-map-main {

    padding: 92px 0 96px;

}



.ip-map-container {

    margin-bottom: 150px;

}



.ip-map-bg:before {

    position: absolute;

    content: '';

    top: 0;

    left: 0;

    width: 50.447%;

    height: 48.155%;

    background-color: #fff;

    pointer-events: none;

    z-index: 1;

}



.ip-map-holder {

    z-index: 5;

}



.ip-map-bg:after {

    position: absolute;

    content: '';

    bottom: 0;

    right: 0;

    width: 25.224%;

    height: 50%;

    background-color: #fff;

    pointer-events: none;

    z-index: 1;

}



.ip-map-title h2 {

    font-size: 70px;

    line-height: 1;

    color: #b7b2af;

    font-family: var(--title-font);

    text-transform: uppercase;

}



.ip-map-title h2 span {

    display: block;

    font-family: var(--body-font);

    font-size: 20px;

    line-height: 1;

    text-transform: uppercase;

    letter-spacing: 0.200em;

    font-weight: 200;

}



.ip-map-title {

    z-index: 5;

    margin-bottom: 45px;

}



.ip-map-title h2 em + span {

    margin-top: 20px;

}



.ip-map-holder, .ip-map-title {

    width: 100%;

    max-width: 89.543%;

    margin-left: auto;

}



.ip-map-holder iframe {

    width: 100%;

    height: 100%;

    position: relative;

}



.ip-map-title h2 em {

    font-style: normal;

    position: relative;

    display: inline-block;

}



.ip-map-title h2 em:before {

    position: absolute;

    content: '';

    top: 50%;

    left: calc(100% + 35px);

    width: 100vw;

    height: 1px;

    background-color: #b7b2af;

}



/* Popup Form */

.ip-listings-popup-main, .ip-listings-popup-caption, .ip-listings-popup-form-widget, .ip-listings-popup-form-widget form {

    display: block;

    position: relative;

}



.ip-listings-popup-container {

    position: fixed;

    z-index: 9999;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

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

    visibility: hidden;

    pointer-events: none;

    opacity: 0;

    -webkit-transition: all 0.6s ease;

    -o-transition: all 0.6s ease;

    transition: all 0.6s ease;

    overflow: hidden;

}



.ip-listings-popup-container.active {

    visibility: visible;

    pointer-events: auto;

    opacity: 1;

}



.ip-listings-popup-wrapper {

    position: absolute;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    overflow: auto;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-pack: center;

    -ms-flex-pack: center;

    justify-content: center;

    -webkit-box-align: center;

    -ms-flex-align: center;

    align-items: center;

    padding: 25px;

}



.ip-listings-popup-main {

    position: relative;

    width: 100%;

    max-width: 959px;

    margin: 0 auto 0;

    -webkit-transition: all 0.6s ease;

    -o-transition: all 0.6s ease;

    transition: all 0.6s ease;

    -webkit-transform: scale(0.7);

    -ms-transform: scale(0.7);

    transform: scale(0.7);

    opacity: 0;

    background: #fff;

    padding: 88px 30px 93px;

    z-index: 5;

}



.ip-listings-popup-container.active .ip-listings-popup-main {

    -webkit-transform: scale(1);

    -ms-transform: scale(1);

    transform: scale(1);

    opacity: 1;

}



.ip-listings-popup-close {

    position: absolute;

    top: 0;

    right: 0;

    font-size: 20px;

    color: #fff;

    border: none;

    padding: 0;

    background-color: #b7b2af;

    z-index: 5;

    -webkit-transition: 0.3s all ease-in-out;

    -o-transition: 0.3s all ease-in-out;

    transition: 0.3s all ease-in-out;

    width: 70px;

    height: 70px;

}



.ip-listings-popup-close:hover {

    color: #fff;

    background-color: #000;

}



.ip-listings-popup-caption span {

    font-size: 19px;

    line-height: 1;

    color: #4c4c4c;

    letter-spacing: 0.200em;

    text-transform: uppercase;

    font-weight: 200;

}



.ip-listings-popup-caption {

    text-align: center;

    margin: 13px auto 40px;

    position: relative;

    z-index: 2;

}



.ip-listings-popup-form {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -webkit-box-orient: horizontal;

    -webkit-box-direction: normal;

        -ms-flex-flow: row wrap;

            flex-flow: row wrap;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;

    position: relative;

}



.ip-listings-popup-form-widget {

    width: 100%;

    max-width: 737px;

    margin: 0 auto;

}



.ip-listings-popup-form-field {

    display: inline-block;

    vertical-align: middle;

    width: calc(50% - 15px);

    position: relative;

    margin-bottom: 15px;

}



.ip-listings-popup-form-field input:not([type=submit]), .ip-listings-popup-form-field textarea {

    width: 100%;

    height: 45px;

    border: none;

    border-bottom: 1px solid #000;

    background-color: transparent;

    font-size: 15px;

    line-height: normal;

    letter-spacing: 0.020em;

    color: #5f5f5f;

    padding: 0;

}



.ip-listings-popup-form-field.full, .ip-listings-popup-form-field.form-submit {

    display: block;

    width: 100%;

}



.ip-listings-popup-form-field textarea {

    height: 93px;

    resize: none;

    padding: 18px 0;

}



.ip-listings-popup-form-field.form-submit {

    margin: 23px auto 0;

}



.ip-listings-popup-form-field.form-submit button {

    margin: 0 auto;

}



.ip-listings-popup-form-widget .wpcf7 form .wpcf7-response-output {

    position: absolute;

    bottom: -32px;

    left: 0;

    right: 0;

    margin: 0 auto;

    font-size: 12px;

    color: #000!important;

}



.ip-listings-popup-form-widget .wpcf7-spinner {

    position: absolute;

    bottom: -33px;

    right: 0;

    left: 0;

    margin: 0 auto;

}



.ip-listings-popup-title {

    display: block;

    text-align: center;

}



.ip-listings-popup-title img {

    max-width: 100%;

    height: auto;

    margin: 0 auto 10px;

}



.ip-listings-popup-title h2 {

    font-size: 70px;

    line-height: 1;

    color: #b7b2af;

    text-transform: uppercase;

    font-family: var(--title-font);

    font-weight: 600;

}



.ip-listings-popup-form-field.form-submit button {

    display: block;

    margin: 0 auto;

    text-align: center;

}



/*******************************************************

 *

 * Mobile styles and other media queries

 *

 *******************************************************/

@media only screen and (min-width: 992px) and (max-height: 780px) {

    .ip-listings-popup-wrapper {

        display: block;

    }



    .ip-listings-popup-main {

        margin: 30px auto;

    }

}



@media only screen and (max-width: 1600px) {

    .ip-hero-content {

        max-width: 1480px;

    }



    .custom-breadcrumbs {

        margin-left: 0;

    }



    .custom-container {

        max-width: 1480px;

    }



    .ip-vid-item {

        max-width: 1330px;

    }

}



@media only screen and (max-width: 1560px) {

    .header-container {

        padding: 0 30px;

    }



    .ip-hero-content {

        padding: 0 40px;

        max-width: 1450px;

    }



    .custom-breadcrumbs {

        margin-left: 0;

    }



    .custom-container {

        max-width: 1440px;

        padding: 0 50px;

    }



    .ip-listing-info-det ul li {

        padding: 20px 22px;

    }



    .ip-listing-info {

        padding: 40px 30px 45px;

    }



    .ip-vid-item {

        max-width: 1230px;

    }



    .ip-map-holder, .ip-map-title {

        max-width: 93%;

    }



    .ip-gallery-item {

        max-width: 100%;

        width: calc(((100% - 7%) - 6px) / 3);

    }



    .ip-listing-content {

        padding: 70px 70px 0 50px;

    }

}



@media only screen and (max-width: 1440px) {

    .ip-listing-info-det ul li {

        padding: 20px 22px;

        font-size: 13px;

    }



    .ip-listing-info-det ul li em[class*="ai-icon-"] {

        width: 30px;

        height: 30px;

    }



    .ip-vid-item {

        max-width: 1160px;

    }



    .ip-listing-title h2, .ip-listings-popup-title h2, .ip-map-title h2 {

        font-size: 65px;

    }



    .ip-listing-info-price h2 {

        font-size: 50px;

    }



    .ip-listing-content {

        padding: 70px 50px 0 50px;

    }



    .ip-listings-popup-main {

        max-width: 850px;

    }



    .ip-listing-content-desc p {

        font-size: 14px;

        line-height: 25px;

    }

}



@media only screen and (max-width: 1366px) {

    .ip-listings-popup-main {

        padding: 70px 30px 75px;

    }



    .ip-hero-content {

        padding: 0 30px;

    }



    .custom-container {

        padding: 0 30px;

    }



    .ip-listing-content {

        padding: 50px 40px 0 40px;

    }



    .tab-body {

        font-size: 13px;

        letter-spacing: 0.020em;

    }



    .ip-listing-info-det ul li {

        padding: 20px 19px;

    }



    .ip-listing-info-year h2 span, .ip-listing-info-price span, .ip-listing-title h2 span, .ip-map-title h2 span, .ip-listings-popup-caption span {

        font-size: 18px;

        letter-spacing: 0.150em;

    }



    .ip-listing-form-title span {

        font-size: 18px;

    }



    .ip-listing-form-field input:not([type=submit]), .ip-listing-form-field textarea {

        font-size: 14px;

    }



    .ip-vid-item {

        max-width: 1135px;

    }



    .ip-gallery-bg {

        height: 54%;

    }

}



@media only screen and (max-width: 1280px) {

    .ip-listing-info {

        padding: 30px 20px 35px;

    }



    .ip-listing-info-det ul li em[class*="ai-icon-"] {

        width: 20px;

        height: 20px;

    }



    .ip-listing-info-det ul li {

        padding: 20px 18px;

    }



    .ip-listing-info-price h2 {

        font-size: 45px;

    }



    .ip-listing-title h2, .ip-listings-popup-title h2, .ip-map-title h2 {

        font-size: 55px;

    }



    .ip-listing-title h2 span {

        font-size: 18px;

    }



    .ip-listing-content-btn {

        margin-right: 120px;

    }



    .tab-header a {

        font-size: 25px;

    }



    .ip-vid-item {

        max-width: 1045px;

    }





    .ip-hero-controls button span {

        padding: 20px 22px;

    }



    .ip-hero-controls button {

        font-size: 14px;

        letter-spacing: 0.200em;

    }

}



/* iPad(landscape) | iPad(landscape) | Galaxy Tab 4 (landscape) | Galaxy Tab 3 (landscape) */

@media only screen and (max-width: 1199px) {

    .ip-listing-content {

        padding: 40px 30px 0 30px;

        margin-top: 53px;

    }



    .ip-listing-content-container {

        padding: 55px 0;

    }



    .ip-hero-controls button span {

        padding: 15px 20px;

    }



    .ip-hero-controls button {

        font-size: 13px;

    }



    .custom-container {

        padding: 0 20px;

    }



    .ip-hero-content {

        padding: 0 20px;

    }



    .ip-listing-info-det ul li {

        padding: 15px 14px;

        font-size: 11px;

    }



    .tab-body {

        padding: 0 5px 18px;

    }



    .tab-body {

        font-size: 12px;

        letter-spacing: 0.010em;

    }



    .tab-header a {

        font-size: 20px;

        padding-bottom: 16px;

        margin-bottom: 16px;

    }



    .ip-global-btn, .ip-listing-content-share h2 {

        font-size: 13px;

        letter-spacing: 0.200em;

    }



    .ip-listing-content-btn {

        margin-right: 75px;

    }



    .ip-listing-content-share ul li a {

        font-size: 22px;

    }



    .ip-listing-title h2, .ip-listings-popup-title h2, .ip-map-title h2 {

        font-size: 50px;

    }



    .ip-listing-info-year h2 {

        font-size: 35px;

    }



    .ip-listing-info-price h2 {

        font-size: 40px;

    }



    .ip-listing-info-year h2 span, .ip-listing-info-price span, .ip-listing-title h2 span, .ip-map-title h2 span, .ip-listings-popup-caption span {

        font-size: 16px;

    }



    .ip-vid-item {

        max-width: 880px;

    }



    .ip-vid-container {

        padding-bottom: 70px;

    }



    .ip-listing-content-info {

        margin-bottom: 40px;

    }



    .ip-listing-content-desc {

        margin-bottom: 35px;

    }



    .ip-gallery-container {

        padding: 0 0 70px;

        margin-top: 74px;

    }



    .ip-gallery-row:not(:last-child) {

        margin-bottom: 40px;

    }



    .ip-map-main {

        padding: 70px 0;

    }



    .ip-map-holder, .ip-map-title {

        max-width: 95%;

    }



    .ip-gallery-item {

        width: calc(((100% - 5%) - 6px) / 3);

    }



    .ip-map-container {

        margin-bottom: 70px;

    }



    .ip-listings-popup-main {

        max-width: 750px;

        padding: 60px 30px 65px;

    }



    .ip-listings-popup-form-field input:not([type=submit]), .ip-listings-popup-form-field textarea {

        font-size: 14px;

    }



    .ip-listings-popup-close {

        width: 50px;

        height: 50px;

    }



    .ip-listings-popup-caption {

        margin: 13px auto 30px;

    }



    .ip-vid-img em.ai-icon-play {

        width: 50px;

        height: 50px;

    }



    #popupthumbnail_slideshow .big_thumbnails canvas {

        height: 50vh;

    }



    html.safari-true .ip-map-bg canvas,

html.safari-true .ip-gallery-bg canvas,

html.safari-true .ip-vid-bg canvas,

html.safari-true .ip-listing-content-bg canvas {

    background-attachment: scroll;

}



}



/* iPad(portrait) | Galaxy Tab 4(portrait)  */

@media only screen and (max-width: 991px) {

    .ip-hero-content {

        padding: 0;

        -webkit-box-pack: end;

            -ms-flex-pack: end;

                justify-content: flex-end;

    }



    .custom-breadcrumbs {

        display: block;

        position: absolute;

        bottom: -36px;

        left: 19px;

    }



    .ip-hero-controls {

        display: block;

        text-align: right;

    }



    .ip-listing-content {

        padding: 25px 0 40px;

        margin-top: 0;

        text-align: center;

    }



    .ip-listing-content-col {

        display: block;

        width: 100%!important;

    }



    .ip-listing-content-btn {

        margin: 0 auto 20px;

    }



    .ip-listing-content-btn {

        display: block;

    }



    .ip-listing-content-desc {

        margin-bottom: 30px;

    }





    .tab-body {

        padding: 0 0 25px;

        text-align: left;

        font-size: 13px;

        letter-spacing: 0.020em;

    }



    .tab-body ul li {

        display: block;

        gap: 0;

    }



    .tab-body ul li strong {

        display: block;

        max-width: 100%;

        margin-bottom: 7px;

        padding-right: 0;

    }



    .tab-body ul li p {

        text-align: left;

    }



    .tab-body ul li:not(:last-child) {

        margin-bottom: 15px;

        padding-bottom: 15px;

    }



    .ip-listing-info-det ul li {

        display: block;

        width: calc(100% / 4);

    }



    .ip-listing-info {

        width: 100%;

        max-width: 420px;

        margin: 0 auto;

        padding: 30px 15px 45px;

    }



    .ip-vid-container {

        padding: 0 15px 0;

    }



    .ip-vid-bg {

        height: 65%;

        display: none;

    }



    .ip-gallery-item {

        display: block;

        width: 100%;

        padding: 0;

        max-width: 400px;

        margin: 0 auto;

    }



    .ip-gallery-row:not(:last-child) {

        margin-bottom: 15px;

    }



    .ip-gallery-row {

        margin: 0;

    }



    .ip-gallery-container {

        padding: 0 0 70px;

        margin-top: 50px;

    }



    .ip-gallery-item:not(:last-child) {

        margin-bottom: 15px;

    }



    .ip-gallery-bg {

        display: none;

    }



    .ip-gallery-btn {

        margin: 35px auto 0;

    }



    .ip-map-main {

        padding: 0;

    }



    .ip-map-holder, .ip-map-title {

        max-width: 100%;

    }



    .ip-map-title {

        padding: 0 15px;

        text-align: center;

    }



    .ip-map-title h2 em + span {

        margin-top: 12px;

    }



    .ip-map-container {

        margin-bottom: 0;

    }



    .ip-vid-img canvas {

        min-height: 275px;

    }



    .ip-listing-content-bg {

        display: none;

    }



    .ip-container #breadcrumbs, .ip-container #breadcrumbs span.breadcrumb_last {

        color: #000;

    }



    .ip-listings-popup-wrapper {

        padding: 25px 15px;

        display: block;

    }



    .ip-listings-popup-main {

        padding: 60px 15px 65px;

        margin: 30px auto 0;

    }



    .ip-listings-popup-form-field {

        width: 100%;

    }



    .ip-listing-title h2, .ip-listings-popup-title h2, .ip-map-title h2 {

        font-size: 35px;

    }



    .ip-listings-popup-title img {

        max-width: 45px;

        width: 100%;

    }



    .ip-listing-content-desc p {

        line-height: 23px;

        font-size: 13px;

    }

    

    .ip-hero-img canvas {

        min-height: 250px;

    }

    

    .ip-listing-form-widget .wpcf7 form .wpcf7-response-output {

        bottom: -38px;

    }



    .aiosp-container.aiosp-inline-holder[class*="galleryPopup"] button.aiosp-close {

        right: 10px;

        top: -45px;

    }

    

    #popupthumbnail_slideshow .small_thumbnails .slick-slide {

        padding: 1px;

    }



     .ip-hero-controls button {

        padding: 12px 0;

        font-size: 11px;

    }



    .ip-hero-controls button span {

        padding: 6px 10px;

    }



    html.safari-true .ip-hero-controls:before,

    html.safari-true .ip-map-bg canvas,

    html.safari-true .ip-gallery-bg canvas,

    html.safari-true .ip-vid-bg canvas,

    html.safari-true .ip-listing-content-bg canvas {

        background-attachment: scroll;

    }



    .ip-hero-controls:before,

    .ip-map-bg canvas,

    .ip-gallery-bg canvas,

    .ip-vid-bg canvas,

    .ip-listing-content-bg canvas {

        background-attachment: scroll;

    }

}



/* Galaxy Tab 3(portrait) | Galaxy S5(landscape) */

@media only screen and (max-width: 767px) {

   



    .ip-listing-form-field {

        width: 100%;

    }



    .ip-listing-form-field textarea {

        height: 90px;

        padding: 15px 0;

    }



    .ip-listing-form-field input:not([type=submit]), .ip-listing-form-field textarea {

        font-size: 13px;

    }



    .ip-listing-info-det ul li {

        width: 50%;

    }



    .ip-listing-info-det ul {

        -webkit-box-orient: horizontal;

        -webkit-box-direction: normal;

            -ms-flex-flow: row wrap;

                flex-flow: row wrap;

    }



    .ip-listing-info-det ul li:nth-child(2):before {

        display: none;

    }

}



/* Galaxy S5(portrait) | iPod Touch(landscape) | iPod Touch(portrait) */

@media only screen and (max-width: 480px) {

}



@media only screen and (max-height: 650px) {

    .ip-listings-popup-wrapper {

        display: block;

    }



    .ip-listings-popup-main {

        margin: 30px auto;

    }

}

#listings-map {
    width: 100%;
    height: 100%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 300px;
}

/* MLS disclaimer (below property accordion) */
#ip-listing-details .ip-listing-content #accordion + .ip-listings-disclaimer {
    margin-top: 0;
    padding-top: 22px;
    border-top: none;
}

#ip-listing-details .ip-listings-disclaimer {
    display: block;
    position: relative;
    margin-top: 0;
    margin-bottom: 10px;
    padding: 22px 15px 35px;
    border-top: none;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: normal;
    text-transform: none;
    text-align: left;
    color: #737373;
}

#ip-listing-details .ip-listings-disclaimer-inner {
    display: block;
    font-size: 12px;
    line-height: 1.6;
    color: #737373;
}

#ip-listing-details .ip-listings-disclaimer-inner > div,
#ip-listing-details .ip-listings-disclaimer-inner p,
#ip-listing-details .ip-listings-disclaimer-inner a,
#ip-listing-details .ip-listings-disclaimer-inner span {
    font-size: 12px;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: normal;
    text-transform: none;
    text-align: left;
    color: #737373;
    clear: both;
}

#ip-listing-details .ip-listings-disclaimer-inner > div + div {
    margin-top: 15px;
}

#ip-listing-details .ip-listings-disclaimer-inner a {
    text-decoration: underline;
}

#ip-listing-details .ip-listings-disclaimer-logo img {
    display: block;
    max-width: 120px;
    width: auto;
    height: auto;
    margin-bottom: 5px;
}

#ip-listing-details .ip-listings-disclaimer-seller img {
    display: inline-block;
    vertical-align: middle;
    max-width: 30px;
    width: 30px;
    height: 30px;
    margin: 0 6px 0 0;
}

#ip-listing-details .ip-listings-disclaimer-poweredby {
    font-size: 12px;
    margin-top: 5px;
}