/*
Theme Name: Mayer
Theme URI: #
Author: Developer team
Author URI: https://digitalka.sk
Description: Mayer theme
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mayer
*/

@import "assets/cookies/cookieconsent.css";

.header_actions-link:hover:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 100%;
    height: 2px;
    background-color: #424d1c;
}

body:not(.transparent_header) .header.active {
    box-shadow: 0 0 5px rgba(66, 77, 28, 0.2);
}

.gallery-modal {
    z-index: 99999 !important;
}

/*@media screen and (min-width: 767px) {*/
/*    body.lock .header.active {*/
/*        z-index: 0;*/
/*    }*/
/*}*/

body.blog .header .container {
    max-width: 1900px !important;
}

.article .content .wp-block-video video,
.article .content figure video {
  display: block;
  width: 100%;
  max-width: 100%;
    height: auto !important;
    object-fit: contain;
  background: #000;
  border-radius: 4px;
}


.article .content .wp-block-embed.is-type-video .wp-block-embed__wrapper {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 4px;
    background: #000;
}

.article .content .wp-block-embed.is-type-video iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}

.article .content .wp-block-video,
.article .content .wp-block-embed {
    margin-bottom: 40px;
}

.item_title {
    letter-spacing: 0.5px
}

.cta-button-group {
    border: none !important;
}

.form-section .form .data input, .form-section .form .data textarea {
    border-bottom: 2px solid #8C9071;
}

.header_actions-link:after {
    bottom: -12px !important;
}

@media (min-width: 768px) {
    body.transparent_header .header_actions-link:hover {
        color: #fcf7eb !important;
    }

    .header .header_actions-link:hover, .header.active .header_actions-link:hover {
        color: #424d1c !important;
    }
}

@media screen and (max-width: 767px) {
    .form-section .form .data input,
    .form-section .form .data textarea {
        font-size: 16px !important;
    }
}

.column_link:hover {
    background-color: transparent !important;
}

@media (max-width: 479px) {
    body {
        padding-top: 61px !important;
    }
}

@media (max-width: 767px) {
    .menu-column_title {
        margin: 0 !important;
    }

    .form-section .form {
        padding: 0 16px;
    }

    .qualities_item {
        display: block;

    }

    .qualities_item .item_img {
        margin-bottom: 20px;
    }

    .history_content {
        padding: 0 24px;
    }

    .plan-swiper {
        padding: 0 32px !important;
    }
}

@media (max-width: 1320px) {
    .text-section-swiper .slide_img {
        height: auto !important;
        width: auto !important;
        aspect-ratio: 1 / 1 !important;
    }

}

.gallery-swiper .swiper-slide .gallery_img {
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.gallery-swiper .swiper-slide .gallery_img img {
    width: auto;
    height: auto;
    max-width: none;
    max-height: none;
    object-fit: contain;
    transition: transform 0.3s ease;
}

.gallery-swiper .swiper-slide .gallery_img img.is-landscape {
    max-height: 450px;
    width: auto;
}

.gallery-swiper .swiper-slide .gallery_img img.is-portrait {
    max-width: 450px;
    height: auto;
}

@media (max-width: 767px) {
    .gallery-swiper .swiper-slide .gallery_img img.is-landscape {
        max-height: 300px;
        width: auto;
    }

    .gallery-swiper .swiper-slide .gallery_img img.is-portrait {
        max-width: 300px;
        height: auto;
    }
}

@media (max-width: 767px) {
    .pt-80 {
        padding-top: 80px !important;
    }

    .pt-120 {
        padding-top: 120px !important;
    }

    .pt-160 {
        padding-top: 160px !important;
    }

    .pb-40 {
        padding-bottom: 40px !important;
    }

    .pb-80 {
        padding-bottom: 80px !important;
    }

    .pb-160 {
        padding-bottom: 160px !important;
    }

    .mb-80 {
        margin-bottom: 80px !important;
    }

    .mb-160 {
        margin-bottom: 160px !important;
    }
}


#cc-main .cm--bar.cm--inline .cm__body, #cc-main .cm--bar.cm--inline .cm__links {
    max-width: 1512px !important;
    display: flex !important;
    align-items: center !important;
    gap: 40px !important;
    padding: 32px 52px !important;
}

.cookie-switches input[type="checkbox"] {
    -webkit-appearance: checkbox !important;
    appearance: checkbox !important;
    display: inline-block !important;
    width: auto !important;
    height: auto !important;
    margin-right: 6px !important;
}

.cm__btn-group {
    display: block !important;
}

#cc-main .cm__desc, #cc-main .cm__title, #cc-main .cm__texts, #cc-main .cm__btns, #cc-main .cm__links {
    padding: 0 !important;
}

#cc-main .cm__texts {
    justify-content: start !important;
}

#cc-main .cm__title {
    font-weight: 600;
    font-size: 14px;
    font-family: Ease !important;
    margin-bottom: 16px;
    text-transform: uppercase;
    color: #424d1c;
}

#cc-main .cm--bar .cm__btn-group {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    width: 286px !important;
    min-width: 286px !important;
}

#cc-main {
    font-family: Ease !important;
}

#cc-main .cm--bar.cm--inline .cm__btns button {
    font-weight: 600;
    font-size: 14px;
    transition: 0.3s;
    width: 100% !important;
    margin: 0 !important;
    background-color: #424d1c !important;
    border-radius: 0 !important;
    color: #FFFFFF !important;
    padding: 8px 16px !important;
    min-height: auto !important;
    font-family: Ease !important;
}

#cc-main .pm__btn {
    background-color: #424d1c !important;
    border-radius: 0 !important;
    padding: 8px 16px !important;
    min-height: auto !important;
    color: #FFFFFF !important;
}

#cc-main .cm__title + .cm__desc {
    margin: 0 !important;
}

#cc-main p#cm__desc > p {
    font-weight: 600;
    display: block;
    font-size: 14px;
    line-height: 120%;
    color: #424d1c;
    font-family: Ease !important;
    padding-bottom: 40px !important;
}

.cookies_switchers {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 32px
}

.cookies_switchers span {
    font-weight: 600;
    font-size: 14px;
    font-family: Ease
}

.cookies_switchers .link {
    display: flex;
    align-items: center;
    gap: 14px
}

.cookies_switchers .link_arrow {
    width: 6px;
    height: 12px
}

.cookies_switchers .switch-wrap {
    display: flex;
    align-items: center;
    gap: 15px
}

.cookies_switchers .switch {
    position: relative;
    display: inline-block;
    width: 56px;
    height: 32px
}

.cookies_switchers .switch.disabled {
    opacity: 0.5;
}

.cookies_switchers .switch input {
    opacity: 0;
    width: 0;
    height: 0
}

.cookies_switchers .switch input:checked + .slider {
    background-color: #424d1c
}

.cookies_switchers .switch input:checked + .slider:before {
    transform: translate(24px)
}

.cookies_switchers .switch .slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #dbdcc3;
    transition: .4s;
    border-radius: 26px;
}

.cookies_switchers .switch .slider:before {
    content: "" !important;
    position: absolute !important;
    height: 26px !important;
    width: 26px !important;
    left: 3px !important;
    bottom: 3px !important;
    background-color: #fff;
    transition: .4s;
    border-radius: 50%
}

.cookies_switchers .link {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
}

.pm__title {
    font-size: 18px;
}

.pm__section-desc {
    font-size: 14px;
}


.apartment_preview-main {
    max-width: 100%;
    margin-bottom:80px !important
}

.alternative-item:not(:last-child) {
    margin-bottom: 60px;
}

.apartment_preview-main p {
    text-align: center;
    font-size: 18px;
    font-weight: 600;
    font-family: Ease;
}

.floor-map_img {
    height: auto;
}

.floor .filter__list-body, .floor .floor-map_filter-list {
    margin-bottom: 80px;
}

.d-none {
    display: none !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.mb-40 {
    margin-bottom: 40px !important;
}

.form-section .form .data input, .form-section .form .data textarea {
    width: 100%;
}

.district-map-items-block {
    max-width: 100%;
}

.header .house-type-logo {
    display: block;
}

.filter__list-heading, .filter__list-row {
    display: flex;
}

.blog-swiper .swiper-wrapper {
    padding-bottom: 10px;
}

.single-floor .svg-select path {
    fill: var(--status-fill);

}

.text-section .btn {
    margin-top: 0 !important;
}

.district-map_img {
    height: auto !important;
    width: calc(100% - 48px) !important;
    max-width: 100% !important
}

body .header.active {
    box-shadow: 0 0 5px rgba(66, 77, 28, 0.2);
}

.btn {
    font-family: Ease !important;
}

.grid-cards .card_img {
    height: auto !important;
}

.apartment_preview-thumb {
    min-height: 180px !important;
}

.tooltip span {
    text-transform: none;
}


.district-map_container {
    aspect-ratio: 16/7;
}

.map-info-window {
    box-shadow: none !important;
}

.house-type-section_img {
    aspect-ratio: auto;
}

.text-section p:last-child {
    margin-bottom: 0 !important;
}

.svg-select path:hover {
    opacity: 0.5;
}
.property-template-single-property-house .svg-select path:hover {
    opacity: 1;
}

.plan-swiper .slide_item a {
    position: relative;
    text-decoration: underline;
}

/*.plan-swiper .slide_item a:after {*/
/*    content: "";*/
/*    position: absolute;*/
/*    left: 0;*/
/*    bottom: -5px;*/
/*    width: 100%;*/
/*    height: 2px;*/
/*    background-color: #424d1c;*/
/*    transition: all .3s ease;*/
/*}*/
/*.plan-swiper .slide_item a:hover:after {*/
/*    transform: translateY(5px);*/
/*    transition: all .3s ease;*/
/*}*/

.district-map-item.active {
    background-color: color-mix(in srgb, #FCF7EB 100%, #424D1C 20%)
}

.district-map-items-block .filter__select-body {
    max-height: 637px !important;
}

.selection-list-item a {
    grid-template-columns: 50% 1fr;
}

.breadcrumbs_body {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-wrap: wrap;
}

@media (max-width: 600px) {
    .breadcrumbs_body {
        gap: 2px;
    }

    .on-enter-mouse-block .floor .floor-img, .svg-select {
        width: auto;
    }

    .mayer-map:not(.scrollable_item) svg {
        width: calc(100%);
        height: auto;
    }
}

@media (min-width: 600px) {
    /*.mayer-map {*/
    /*    margin-left: 15px;*/
    /*    max-width: calc(100% - 30px);*/
    /*}*/
    .mayer-map:not(.scrollable_item) {
        width: calc(100%);
        max-width: 1632px;
        margin: 0 auto;
    }

    .mayer-map:not(.scrollable_item) svg {
        width: 100%;
        height: auto;
    }
}

.map-label {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.map-label .map-label__name {
    background-color: #424d1c;
    color: #fff;
    padding: 4px 8px;
    font-size: 14px
}

.map-label .map-label__type {
    background-color: #DBDCC3;
    color: #424d1c;
    padding: 4px 8px;
    font-family: Ease;
    font-size: 14px
}

.map-label .map-label__status {
    padding: 4px 8px;
    font-family: Ease;
    font-size: 14px
}

.map-label .map-label__status.v-predaji {

    background-color: #fff;
    color: #424d1c;
}

.map-label .map-label__status.pripravujeme {

    background-color: #F5F1E0;
    color: #424d1c;
}

.map-label .map-stick {
    width: 2px;
    height: 100px;
    background-color: #000;
}

/* =========================================
   MOBILE SPACING UTILITY CLASSES
   -----------------------------------------
   Fungujú pre breakpoint <= 767px
   Desktop triedy (pt-40, mb-80, atď.) sa
   aplikujú mimo media query ako zvyčajne.
   ========================================= */

@media (max-width: 767px) {
    .cookies_switchers{
        gap: 16px;
    }
    /* -------- Padding Top -------- */
    .pt-m-0 {
        padding-top: 0 !important;
    }

    .pt-m-32 {
        padding-top: 32px !important;
    }

    .pt-m-40 {
        padding-top: 40px !important;
    }

    .pt-m-80 {
        padding-top: 80px !important;
    }

    .pt-m-120 {
        padding-top: 120px !important;
    }

    .pt-m-160 {
        padding-top: 160px !important;
    }

    /* -------- Padding Bottom -------- */
    .pb-m-0 {
        padding-bottom: 0 !important;
    }

    .pb-m-32 {
        padding-bottom: 32px !important;
    }

    .pb-m-40 {
        padding-bottom: 40px !important;
    }

    .pb-m-80 {
        padding-bottom: 80px !important;
    }

    .pb-m-120 {
        padding-bottom: 120px !important;
    }

    .pb-m-160 {
        padding-bottom: 160px !important;
    }

    /* -------- Margin Top -------- */
    .mt-m-0 {
        margin-top: 0 !important;
    }

    .mt-m-32 {
        margin-top: 32px !important;
    }

    .mt-m-40 {
        margin-top: 40px !important;
    }

    .mt-m-80 {
        margin-top: 80px !important;
    }

    .mt-m-160 {
        margin-top: 160px !important;
    }

    /* -------- Margin Bottom -------- */
    .mb-m-0 {
        margin-bottom: 0 !important;
    }

    .mb-m-32 {
        margin-bottom: 32px !important;
    }

    .mb-m-40 {
        margin-bottom: 40px !important;
    }

    .mb-m-80 {
        margin-bottom: 80px !important;
    }

    .mb-m-160 {
        margin-bottom: 160px !important;
    }

    /* -------- Custom (CSS variables) -------- */
    [style*="--pt-mobile"] {
        padding-top: var(--pt-mobile) !important;
    }

    [style*="--pb-mobile"] {
        padding-bottom: var(--pb-mobile) !important;
    }

    [style*="--mt-mobile"] {
        margin-top: var(--mt-mobile) !important;
    }

    [style*="--mb-mobile"] {
        margin-bottom: var(--mb-mobile) !important;
    }
}

#layer_map > path.disabled {

    pointer-events: none;
    cursor: not-allowed;
}

#layer_map > path.disabled {
    pointer-events: none;
    cursor: not-allowed;
}

#layer_map > path.clickable {
    cursor: pointer;
}

#layer_map > path:not(.clickable):not(.disabled) {
    cursor: default;
}

.blog-section .blog-swiper .blog_slide:hover .read_time:after {
    width: 100%;
    transform: translateY(5px);
}

@media (max-width: 767px) {
    .mob-menu_list > li:last-child {
        display: none;
    }
}

.mob-menu_slider {
    width: 180px;
}

.mob-menu_item .header_actions-link.active:after, .mob-menu_item .header_actions-link:hover:after {
    display: none;
}

body.transparent_header .mob-menu_item .header_actions-link {
    color: #8c9071;
}

body.transparent_header .mob-menu_item .header_actions-link.active {
    color: #424D1C;
}

.mob-menu_link {
    padding: 0 !important;
    border: none !important;
}

.mob-menu_item.active {
    border-bottom: 1px solid #424D1C;
}

/* Globálne – platí pre všetky šírky */
.d-block {
    display: block !important;
}

/* Od breakpointu md (≥ 768px) */
@media (min-width: 768px) {
    .d-md-none {
        display: none !important;
    }
}

.column-middle a, .column-middle a:not(:last-of-type) {
    margin-bottom: 0px;
}

@media (max-width: 768px) {
    .parcel-template-default .header_logo, .apartment-template-default .header_logo, .single-floor .header_logo {
        display: none;
    }
}

.selection-list-item a {
    justify-content: space-between;
    justify-items: legacy;
}

.selection-list-item .selection-info {

    align-items: flex-end;
}

.selection-name {
    text-align: left;
}

@media (max-width: 768px) {
    .header_logo-wrap img {
        height: 26px !important;
    }

    .house-type-section_img {
        max-width: 632px;
    }

    .on-enter-mouse-block .floor .floor-img, .svg-select {
        max-width: 100% !important;
    }
}

.header_mob-menu {
    background-color: #F5F1E0 !important;
}

.svg-select path.sold {
    cursor: default !important;
}

.selection-list-item.sold {
    pointer-events: none !important;
}

.custom_map_mayer #layer_map > path {
    stroke: #8C9071;
}

.text-section_content a:not(.btn){
    text-decoration: underline;
}

.text-section_content a.btn,
.text-section_content .btn {
    text-decoration: none !important;
}

.wp-block-mayer-blocks-image-layout.hero .hero_content.text-section_content,
.wp-block-mayer-blocks-image-layout .hero .hero_content.text-section_content {
    position: relative;
    z-index: 2;
    margin-bottom: 32px !important;
}

.wp-block-mayer-blocks-image-layout.hero .container,
.wp-block-mayer-blocks-image-layout.hero .hero_stage .container,
.wp-block-mayer-blocks-image-layout .hero .container,
.wp-block-mayer-blocks-image-layout .hero .hero_stage .container {
    position: relative;
    z-index: 2;
}

.wp-block-mayer-blocks-image-layout.hero .hero_stage,
.wp-block-mayer-blocks-image-layout .hero .hero_stage {
    position: absolute !important;
    inset: 0;
    z-index: auto !important;
}

.wp-block-mayer-blocks-image-layout.hero .hero_image,
.wp-block-mayer-blocks-image-layout.hero .hero_video,
.wp-block-mayer-blocks-image-layout .hero .hero_image,
.wp-block-mayer-blocks-image-layout .hero .hero_video {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.wp-block-mayer-blocks-image-layout.hero::after,
.wp-block-mayer-blocks-image-layout .hero::after {
    display: none !important;
}

.wp-block-mayer-blocks-image-layout.hero .hero_stage::after,
.wp-block-mayer-blocks-image-layout .hero .hero_stage::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(124, 117, 117, 0.34) 0%, rgba(116, 109, 106, 0.24) 42%, rgba(67, 55, 43, 0.36) 100%);
    pointer-events: none;
    z-index: 1;
}

.wp-block-mayer-blocks-image-layout.hero .hero_content.text-section_content .section-title,
.wp-block-mayer-blocks-image-layout .hero .hero_content.text-section_content .section-title {
    color: #FCF7EB !important;
}

.wp-block-mayer-blocks-image-layout.hero.video-display-fit-height .hero_stage::after,
.wp-block-mayer-blocks-image-layout .hero.video-display-fit-height .hero_stage::after {
    display: none;
}

.wp-block-mayer-blocks-image-layout.hero.video-display-fit-height .hero_stage,
.wp-block-mayer-blocks-image-layout .hero.video-display-fit-height .hero_stage {
    background: #f3ede2;
    display: flex;
    align-items: stretch;
    justify-content: center;
}

.wp-block-mayer-blocks-image-layout.hero.video-display-fit-height,
.wp-block-mayer-blocks-image-layout .hero.video-display-fit-height {
    background: #f3ede2;
}

.wp-block-mayer-blocks-image-layout.hero.video-display-fit-height .hero_video,
.wp-block-mayer-blocks-image-layout .hero.video-display-fit-height .hero_video {
    position: relative;
    inset: auto;
    width: auto;
    height: 100%;
    max-width: 100%;
    margin: 0 auto;
    transform: none;
    object-fit: contain !important;
}

@media (max-width: 767px) {
    .wp-block-mayer-blocks-image-layout.hero .hero_content.text-section_content,
    .wp-block-mayer-blocks-image-layout .hero .hero_content.text-section_content {
        margin-bottom: 24px !important;
    }
}

.qualities .item_title,.qualities .item_text{
    font-size: 16px !important;
}

.hero .hero_content.text-section_content{
    margin-bottom:25px;
}
.hero .hero_content.text-section_content .section-title{
    color: #FCF7EB !important;
}
.hero .hero_content.text-section_content .hero_text{
    text-align: left !important;
    font-size:24px !important;
}

@media (max-width: 767px) {
    .hero .hero_content.text-section_content .hero_text{
        font-size:18px !important;
    }
}
.apartment_preview-thumbs,.footer_mailing{
    margin-bottom:80px !important;
}
.footer_top{
    margin-bottom: 106px !important;
}
.footer_menu{
    margin-bottom: 120px !important;
}
.form-section .footer_menu-column {
    width: 100%;
}
