/*
Theme Name: StayHub
Theme URI: https://apartmanhajduszoboszlo.hu
Description: A StayHub egy helyi szálláshely- és apartman gyűjtőoldalakhoz készült WordPress sablon. Lehetővé teszi apartmanok és egyéb szállások feltöltését, kezelését, keresését és megjelenítését, valamint statisztikák gyűjtését az érdeklődésekről, telefonkattintásokról és üzenetekről. Ideális lokális turisztikai portálokhoz, például városi vagy régiós apartman katalógusokhoz.
Author: Digitalform
Author URI: https://digitalform.hu
License: Proprietary – All Rights Reserved
Version: 1.0
*/

*{
margin: 0;
padding: 0;
border: 0;
flex-wrap: wrap;
text-decoration: none; 
}

@font-face { 
	font-family: 'Modern Era'; 
	src: url("fonts/modern-era-regular.woff2") format('woff2');
	font-weight: 400; 
	font-style: normal;
	font-stretch: normal;
	font-display: swap;
}

@font-face { 
	font-family: 'Modern Era'; 
	src: url("fonts/modern-era-medium.woff2") format('woff2');
	font-weight: 500; 
	font-style: normal;
	font-stretch: normal;
	font-display: swap;
}

@font-face { 
	font-family: 'Modern Era'; 
	src: url("fonts/modern-era-bold.woff2") format('woff2');
	font-weight: 700; 
	font-style: normal;
	font-stretch: normal;
	font-display: swap;
}

@font-face { 
	font-family: 'Anton'; 
	src: url("fonts/anton-regular.woff2") format('woff2');
	font-weight: 400; 
	font-style: normal;
	font-stretch: normal;
	font-display: swap;
}

*, 
*:after, 
*::before { -webkit-box-sizing: border-box; box-sizing: border-box; }

:root {
	--color-dark: #111111;
	--color-red: #DC3545;
	
	--color-yellow: #FFEBAF;
	--color-purple: #D4C4FC;
	--color-green: #00D47C;
	--color-dark-green: #004751;
	--color-dark-green-a20: #00475133;
	--color-dark-green-a30: #0047514d;
	--color-dark-green-a50: #00475180;
	--color-dark-green-a80: #004751CC;
	--color-light-green: #ECF3ED;
	
	--color-light-blue: #DBEAFE;
	
	--color-silver: #F7F6F4;
	--color-silver-line: #E1DFD9;
}

html { scroll-behavior: smooth; }

body { margin: auto; font-family: 'Modern Era', sans-serif; font-size: 17px; font-weight: 400; color: var(--color-dark); line-height: 30px; overflow-x: hidden; }
body.rwd-menu__opened { overflow-y: hidden; }

body.single-apartment, 
body.page-template-login, 
body.page-template-signup, 
body.page-template-forgotten-password { background: var(--color-silver); }

textarea, input, select, button { font-family: 'Modern Era', sans-serif; font-size: 18px; outline: none; }

/* WP media modal reset */
.media-modal textarea,
.media-modal input,
.media-modal select,
.media-modal button { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important; font-size: 13px !important; outline: none !important; }

h1, h2, h3, h4 { font-weight: normal; line-height: 100%; }

hr { width: 100%; margin: 30px 0; border-top: 5px solid var(--color-silver-line); clear: both; }

img[sizes="auto"] { contain-intrinsic-size: none !important; }

img.alignleft { margin: 0 20px 5px 0; float: left; }
img.alignright { margin: 0 0 5px 20px; float: right; }
img.aligncenter { margin: 0 auto 20px auto; display: block; }

/* Classes */
.left { float: left; }
.right { float: right; }
.clear { clear: both; }
.inner { max-width: 1600px; margin-left: auto; margin-right: auto; position: relative; }
.inner_800 { max-width: 800px; }
.inner_900 { max-width: 900px; }
.inner_1200 { max-width: 1200px; }
.inner_1400 { max-width: 1400px; }
.vertical-middle { top: 50%; position: relative; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.uppercase { text-transform: uppercase; }
.center { text-align: center; }
.hide { display: none !important; }
.red, .acf-required { color: var(--color-red); }
.sec_font { font-family: 'Anton', sans-serif; }

/* Animation */
.anim { transition: color 0.2s ease-out, background-color 0.2s ease-out; }
.service .thumbnail img { transition: transform 0.6s cubic-bezier(.19, 1, .22, 1); }
.anim_cubic { transition: all 0.6s cubic-bezier(.19, 1, .22, 1); }

/* Button */
.button { height: 50px; padding: 0 20px; font-size: 17px !important; font-weight: 700; text-decoration: none !important; color: #FFFFFF !important; line-height: normal; background: var(--color-dark-green); display: inline-flex; align-items: center; justify-content: center; gap: 10px; position: relative; cursor: pointer; border-radius: 5px; -webkit-transition: all 0.2s ease-out; transition: all 0.2s ease-out; }
.button:hover, .wpem-theme-button:hover { background: var(--color-dark); }
.button:after { display: none !important; }

.button:disabled, 
.button:disabled:hover { color: color-mix(in srgb, var(--color-silver-line) 70%, #000000 30%) !important; background-color: color-mix(in srgb, var(--color-silver-line) 90%, #000000 10%); }

.button.button_red { background-color: var(--color-red); }
.button.button_red:hover { background-color: var(--color-dark); }

.button.button_green { background-color: var(--color-green); }
.button.button_green:hover { background-color: var(--color-dark); }

.button.button_dark_green { background-color: var(--color-dark-green); }
.button.button_dark_green:hover { background-color: var(--color-dark); }

.button.button_white_hover:hover { color: var(--color-dark) !important; background-color: #FFFFFF !important; }

.button.button_empty { color: var(--color-dark) !important; background-color: transparent !important; border: 2px solid var(--color-silver-line); }
.button.button_empty:hover { border-color: var(--color-dark); }

.button.button_h40 { height: 40px; padding: 0 15px; font-size: 16px !important; }
.button.button_h30 { height: 30px; padding: 0 10px; font-size: 14px !important; }

/* WP media modal button reset */
.media-modal .button { height: auto !important; padding: 0 10px !important; font-size: 14px !important; font-weight: 700 !important; color: #FFFFFF !important; line-height: normal !important; background: var(--color-dark-green) !important; border: none !important;  display: inline-block !important; border-radius: 3px !important; }
.media-modal .button:hover { background: #000000 !important; }
.media-modal .button:after { display: none !important; }

.media-modal #alt-text-description { display: none !important; }

/* Checkbox and radio */
input[type="checkbox"], 
input[type="radio"] { width: 24px; height: 24px; margin: -4px 4px 0 0 !important; padding: 0 !important; text-align: center !important; background-color: #FFFFFF; border: 1px solid var(--color-silver-line); clear: none; cursor: pointer; display: inline-block; line-height: 0; outline: 0; vertical-align: middle !important; -webkit-appearance: none; -webkit-box-shadow: none; box-shadow: none; -webkit-transition: .05s border-color ease-in-out; transition: .05s border-color ease-in-out; }
input[type="radio"] { -webkit-border-radius: 50%; border-radius: 50%; }

input[type="radio"]:checked:before { width: 14px; height: 14px; left: 4px; top: 4px; text-align: center; background: var(--color-green); position: relative; border-radius: 8px; display: block; content: ''; }
input[type="checkbox"]:checked:before { width: 14px; height: 14px; left: 4px; top: 4px; text-align: center; background: var(--color-green); position: relative; display: block; content: ''; }


/*
--------------
	NOTICE
--------------
*/
.sh_notice, ul.notice, .acf-notice, #message { width: 100%; margin-bottom: 20px; margin-left: 0 !important; padding: 15px; font-size: 16px; color: #000000 !important; line-height: 20px; background: var(--color-yellow); border: 1px solid color-mix(in srgb, var(--color-yellow) 90%, #000000 10%); border-radius: 5px; }
.sh_notice p { margin-bottom: 10px !important; }
.sh_notice p:last-child { margin-bottom: 0 !important; }
.sh_notice.sh_alert { font-weight: 700; background: color-mix(in srgb, var(--color-red) 5%, #FFFFFF 95%); border-color: var(--color-red); }
.sh_notice.sh_alert.sh_alert_full { color: #FFFFFF !important; background: var(--color-red); }

.sh_notice.notice-has-icon { padding-left: 70px; position: relative; }
.sh_notice.notice-has-icon img { width: 32px; height: 32px; left: 20px; top: 50%; display: block; position: absolute; -webkit-transform: translateY(-50%); transform: translateY(-50%); }

ul.notice.error, .acf-notice.acf-error-message { margin-left: 0 !important; background: #fef8f6; border-color: var(--color-red); }
ul.notice li, .acf-notice li { margin-left: 20px; }
.acf-notice p, #message p { margin-bottom: 0 !important; }

.resend-message .sh_notice { margin-top: 20px; margin-bottom: 0 !important; }


/*
---------------
	TOOLTIP
---------------
*/
.tooltip { left: 0; top: 0; padding: 5px 10px; font-size: 12px; white-space: nowrap; color: #FFFFFF; background: var(--color-dark); border-radius: 5px; position: absolute; pointer-events: none; opacity: 0; visibility: hidden; transform: translateY(-5px); transition: opacity 0.15s ease, transform 0.15s ease; z-index: 9999; will-change: transform; }
.tooltip::after { width: 0; height: 0; left: 50%; top: 100%; margin-left: -6px; border: solid transparent; pointer-events: none; border-color: transparent; border-top-color: var(--color-dark); border-width: 6px; position: absolute; content: ''; }
.tooltip.show {  opacity: 1; visibility: visible; transform: translateY(0); }


/*
----------------
	FANCYBOX
----------------
*/
#dialog-login { width: 100%; max-width: 600px; padding: 100px !important; background: var(--color-silver); position: relative; overflow: hidden; border-radius: 10px; }
#dialog-login button.f-button { right: 20px; top: 20px; position: absolute; border-radius: 0 !important; }
#dialog-login button.f-button path { color: #000000 !important; }

#dialog-login .preloader { width: 100%; height: 100%; left: 0; top: 0; background: rgba(246 246 246 / 90%) url(images/preloader-64.gif) no-repeat center; display: none; position: absolute; z-index: 10; }

#dialog-login .message p { margin-bottom: 20px; padding: 8px 10px; font-size: 15px; font-weight: 700; color: #000000; line-height: 20px; border: 1px solid transparent; position: relative; border-radius: 3px; }
#dialog-login .message p.error { background: color-mix(in srgb, var(--color-red) 10%, #FFFFFF 90%); border-color: var(--color-red); }

#dialog-login .dialog-login--content h3 { margin-bottom: 20px; font-size: clamp(20px, 2.5vw, 24px); font-weight: 700; text-align: center; line-height: 100%; }
#dialog-login .dialog-login--content .button { width: 100%; }

#dialog-login .dialog-login--footer { font-size: 16px; }
#dialog-login .dialog-login--footer a { color: var(--color-dark); }
#dialog-login .dialog-login--footer a:hover { text-decoration: underline; color: #000000; }
#dialog-login .dialog-login--footer .signup { margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--color-silver-line); }
#dialog-login .dialog-login--footer .signup a { text-decoration: underline; color: #000000; }

/* Single Page */
#dialog-login.single-page { max-width: none; padding: 0 !important; background: transparent; overflow: auto; border-radius: 0; }

/* More Filters */
#more-filters { width: 100%; max-width: 600px; padding: 0 !important; }
#more-filters h3 { margin-bottom: 30px; font-size: clamp(18px, 2.5vw, 24px); font-weight: 700; line-height: 100%; }
#more-filters .more-filters-form { padding: 50px; }
#more-filters .filters-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
#more-filters .filters-grid label { font-size: 16px; font-weight: 700; line-height: 100%; display: flex; align-items: center; gap: 8px; cursor: pointer; }
#more-filters .filters-actions { padding: 20px 50px; background: var(--color-silver); display: flex; gap: 10px; }
#more-filters .filters-actions .button { flex: 1; }


/*
-------------------
	NAVIGATION
-------------------
*/
#rwd-menu { width: 100%; left: 0; top: 80px; bottom: 0; background: rgba(0 0 0 / 50%); position: fixed; z-index: 100; visibility: hidden; visibility: hidden; opacity: 0; transition: opacity 0.3s ease, visibility 0.3s ease; }
#rwd-menu .rwd-menu-wrapper { inset: 0; width: 100%; height: 100%; padding-bottom: 30px; background: var(--color-light-green); position: absolute; overflow-y: auto; transform: translateX(100%); transition: transform 0.3s ease; }
#rwd-menu .rwd-menu-block { padding: 20px; }
#rwd-menu .rwd-menu-block label { margin-bottom: 5px; font-size: 13px; font-weight: 700; text-transform: uppercase; color: var(--color-green); display: flex; }

/* Profile */
#rwd-menu .rwd-menu-block.profile { display: flex; gap: 20px; }
#rwd-menu .rwd-menu-block.profile .button { flex: 1; }
body.logged-in #rwd-menu .rwd-menu-block.profile .button { flex: auto; width: 100%; }

/* Primary menu */
#rwd-menu .primary-menu ul { list-style: none; }
#rwd-menu .primary-menu ul li { padding: 10px 0; border-bottom: 1px solid rgba(0 0 0 / 10%); }
#rwd-menu .primary-menu ul li a { font-size: 24px; font-weight: 700; color: #000000; line-height: 1; display: block; position: relative; }
#rwd-menu .primary-menu ul li a:hover { text-decoration: underline; text-decoration-thickness: 1px; }

#rwd-menu .primary-menu ul li.menu-item-has-children > a:before { width: 0; height: 100%; left: 0; top: 0; background: #313131; position: absolute; content: ''; }
#rwd-menu .primary-menu ul li.menu-item-has-children > a:after { width: 20px; height: 20px; right: 20px; top: 16px; background: url(images/icon_arrow_down_white.svg) no-repeat right center; background-size: cover; position: absolute; content: ''; }
#rwd-menu .primary-menu ul li.menu-item-has-children.open > a:before { width: 8px; }
#rwd-menu .primary-menu ul li.menu-item-has-children.open > a:after { ms-transform: rotate(180deg); -webkit-transform: rotate(180deg); transform: rotate(180deg); }

#rwd-menu .primary-menu ul li ul { background: #FFFFFF; display: none; }
#rwd-menu .primary-menu ul li ul li { border-bottom-color: #eee; }
#rwd-menu .primary-menu ul li ul li:last-child { border-bottom: none; }
#rwd-menu .primary-menu ul li ul li a { left: auto !important; padding: 15px 0 15px 25px; font-size: 17px; color: #333 !important; line-height: 20px; opacity: 100% !important; }
#rwd-menu .primary-menu ul li ul li.open > a:before { display: none; }

/* Secondary menu */
#rwd-menu .secondary-menu ul { list-style: none; }
#rwd-menu .secondary-menu ul li { margin-bottom: 15px; }
#rwd-menu .secondary-menu ul li a { font-size: 18px; font-weight: 700; color: #000000; line-height: 1; display: block; }
#rwd-menu .secondary-menu ul li a:hover { text-decoration: underline; text-decoration-thickness: 1px; }

/* Language Switcher */
#rwd-menu .language-switcher .dropdown_toggle { display: none; }
#rwd-menu .language-switcher ul { display: flex; border: 1px solid rgba(0 0 0 / 10%); list-style: none; border-radius: 5px; overflow: hidden; }
#rwd-menu .language-switcher ul li { flex: 1; border-right: 1px solid rgba(0 0 0 / 10%); }
#rwd-menu .language-switcher ul li:last-child { border-right: none; }
#rwd-menu .language-switcher ul li a { height: 50px; font-size: 16px; font-weight: 700; color: #000000 !important; display: flex; align-items: center; justify-content: center; gap: 6px; }
#rwd-menu .language-switcher ul li a:hover { text-decoration: underline; }
#rwd-menu .language-switcher ul li.active a { background: rgba(255 255 255 / 50%); }
#rwd-menu .language-switcher ul li span { display: block !important; }

body.rwd-menu__opened #rwd-menu { opacity: 1; visibility: visible; }
body.rwd-menu__opened #rwd-menu .rwd-menu-wrapper { transform: translateX(0); }

body.has-headline #rwd-menu { top: 110px; }


/*
----------------
	HEADLINE
----------------
*/
#headline { width: 100%; height: 30px; font-size: 15px; color: #000000; background: var(--color-yellow); overflow: hidden; }
#headline .headline-track { width: max-content; height: 100%; line-height: normal; display: flex; align-items: center; animation: scrollHeadline 80s linear infinite; }
#headline .headline-track span { padding-right: 50px; white-space: nowrap; flex-shrink: 0; }

@keyframes scrollHeadline {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}


/*
--------------
	HEADER
--------------
*/
#header { width: 100%; height: 100px; padding: 0 50px; background: #FFFFFF; position: relative; z-index: 100; }
#header .header-wrapper { height: 100%; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; }

/* Logo + Menu */
#header .logo { width: auto; height: 50px; left: 0; top: 50%; color: var(--color-dark); line-height: 100%; display: flex; align-items: center; gap: 10px; position: absolute; z-index: 2; }
#header .logo img { width: auto; height: 100%; }
#header .logo h1 { font-size: 20px; text-transform: uppercase; line-height: 110%; }

/* Menu */
#header ul.menu { margin-right: 30px; display: flex; flex-wrap: wrap; gap: 30px; list-style: none; }
#header ul.menu li a { font-size: 18px; font-weight: 700; color: var(--color-dark); line-height: 20px; }
#header ul.menu li.current-menu-item a { color: var(--color-green); }

/* Action buttons */
#header .header-action-buttons { width: 100%; display: flex; align-items: center; justify-content: end; position: relative; z-index: 1; }
#header .header-action-buttons > a { height: 50px; padding: 0 25px; font-size: 17px; font-weight: 700; text-decoration: none; display: flex; align-items: center; }
#header .header-action-buttons > a.login { color: #FFFFFF; background: var(--color-dark-green); border-radius: 0 5px 5px 0; }
#header .header-action-buttons > a.signup { color: #000000; background: var(--color-green); border-radius: 5px 0 0 5px; }
body.page-template-login #header .header-action-buttons > a.signup { border-radius: 5px; }

/* Language switcher */
#header .language-switcher { margin-right: 20px; position: relative; }
#header .language-switcher .dropdown_toggle { width: 50px; height: 50px; color: var(--color-dark) !important; border: 2px solid var(--color-silver-line); display: flex; align-items: center; justify-content: center; border-radius: 5px; }
#header .language-switcher .dropdown_menu { width: 150px; left: 50%; top: calc(100% + 15px); padding: 8px 0; background: #FFFFFF; display: none; position: absolute; list-style: none; z-index: 10; box-shadow: 0 10px 70px rgb(32 41 49 / 15%); border-radius: 5px; transform: translateX(-50%); }
#header .language-switcher.active .dropdown_menu { display: block; }
#header .language-switcher .dropdown_menu:before { width: 0; height: 0; bottom: 100%; left: 50%; border: solid transparent; pointer-events: none; border-color: rgba(255 255 255 / 0%); border-bottom-color: #FFFFFF; border-width: 10px; position: absolute; content: ''; transform: translateX(-50%); }

#header .language-switcher .dropdown_menu ul { list-style: none; }
#header .language-switcher .dropdown_menu ul li a { padding: 12px 0 12px 20px; font-size: 16px; font-weight: 500; text-decoration: none !important; color: var(--color-dark); line-height: 20px; display: flex !important; align-items: center; gap: 10px; } 
#header .language-switcher .dropdown_menu ul li.active a { background-color: var(--color-silver); } 
#header .language-switcher .dropdown_menu ul li a:hover { background-color: var(--color-silver); } 
#header .language-switcher .dropdown_menu ul li a span { display: block !important; } 
#header .language-switcher .dropdown_menu ul li a img { height: auto; } 

/* RWD button */
#header .rwd-button { height: 50px; right: 20px; padding: 0 20px; font-size: 17px; font-weight: 700; text-align: center; color: #FFFFFF; line-height: 50px; background: var(--color-dark-green); position: absolute; cursor: pointer; border-radius: 5px; transition: 0.2s; }
#header .rwd-button .close { display: none; }

body.rwd-menu__opened #header { background: var(--color-light-green); border-bottom: 1px solid rgba(0 0 0 / 10%); }
body.rwd-menu__opened #header .rwd-button { background: var(--color-dark); }
body.rwd-menu__opened #header .rwd-button .open { display: none; }
body.rwd-menu__opened #header .rwd-button .close { display: inline; }

/* Custom Theme */
body.page:not(.home):not(.page-template-apartments):not(.page-template-signup) #header .header-wrapper, 
body.error404 #header .header-wrapper, 
body.single-post #header .header-wrapper, 
body.archive.tag #header .header-wrapper, 
body.archive.category #header .header-wrapper { border-bottom: 1px solid var(--color-silver-line); }


/*
----------------
	DROWDOWN
----------------
*/
.dropdown { position: relative; }

#header .action_buttons { display: flex; position: relative; }
#header .action_buttons a.signup { margin-right: 20px; }

#header .action_buttons a.add_new_ad { margin-right: 20px; font-weight: 500; color: var(--color-dark); display: flex; align-items: center; } 
#header .action_buttons a.add_new_ad:hover { text-decoration: underline; } 
#header .action_buttons a.add_new_ad img { width: auto; height: 30px; margin-right: 5px; display: block; } 

a.settings { padding: 0 20px; display: inline-flex; align-items: center; } 
a.settings img { width: auto; height: 30px; margin-right: 5px; display: block; } 

ul.dropdown-menu { width: 240px; left: auto; right: 0; top: calc(100% + 15px); padding: 8px 0; background: #FFFFFF; display: none; position: absolute; z-index: 10; list-style: none !important; box-shadow: 0 10px 70px rgb(32 41 49 / 15%); border-radius: 5px; }
ul.dropdown-menu:before { width: 0; height: 0; bottom: 100%; right: 20px; border: solid transparent; pointer-events: none; border-color: rgba(255 255 255 / 0%); border-bottom-color: #FFFFFF; border-width: 10px; position: absolute; content: ''; }
ul.dropdown-menu li a { padding: 12px 0 12px 25px; font-size: 16px; font-weight: 500; text-decoration: none !important; color: var(--color-dark); line-height: 20px; display: flex; gap: 10px; } 
ul.dropdown-menu li a:hover { background-color: var(--color-silver); } 
ul.dropdown-menu li a i { flex-shrink: 0; color: var(--color-dark-green); } 
ul.dropdown-menu li.sep { margin: 6px 0; border-top: 1px solid var(--color-silver-line); }

.dropdown.active ul.dropdown-menu { display: block; }


/*
--------------
	SLIDER
--------------
*/
#slider { height: calc(100vh - 200px); background: var(--color-dark-green); position: relative; overflow: hidden; }
#slider .slider-image { height: 100%; overflow: hidden; position: relative; z-index: 1; }
#slider .slider-image img { width: 100%; height: 100%; display: block; object-fit: cover; opacity: 0; transform: scale(1.2); }
#slider .slider-cover { inset: 0; width: 100%; height: 100%; background: linear-gradient(220deg, #0000 30%, #000000d9 115%); position: absolute; z-index: 2; }

/* Marketing Text */
#slider .marketing-text { inset: 0; width: 100%; height: 100%; color: #FFFFFF; display: flex; align-items: center; }
#slider .marketing-text .marketing-text-wrapper { width: 100%; opacity: 0; transition: all 1.5s ease; }
#slider .marketing-text .marketing-text__title { max-width: 800px; margin: 20px 0; font-size: clamp(32px, 5vw, 56px); font-weight: 700; line-height: 100%;  }
#slider .marketing-text .marketing_text__content { max-width: 800px; line-height: 25px; }

/* Filter */
#slider .filter { width: 100%; left: 0; bottom: 30px; position: absolute; z-index: 3; opacity: 0; transition: all 1.5s ease; }
#slider .filter form { padding: 20px; }

/* Loaded */
body.slider-loaded #slider .slider-image img { opacity: 100%; transform: scale(1); transition: transform 1.5s ease-out, opacity 1.5s ease; }
body.slider-loaded #slider .marketing-text-wrapper { opacity: 100%; transform: translateY(0); transition: opacity 1.5s ease; transition-delay: 1s; }
body.slider-loaded #slider .filter { opacity: 100%; transform: translateY(0); transition: opacity 1.5s ease; transition-delay: 1.5s; }

/* Loaded, but there is cookie */
body.slider-no-anim #slider .slider-image img,
body.slider-no-anim #slider .marketing-text-wrapper,
body.slider-no-anim #slider .filter { transition: none !important; transform: none !important; opacity: 1 !important; }


/*
-------------------------
	FILTER IN ARCHIVE
-------------------------
*/
#filter_in_archive { background: var(--color-silver); }
#filter_in_archive .filter { height: 120px; background: var(--color-silver); display: flex; flex-wrap: wrap; }
#filter_in_archive .filter .form-row { width: 25%; height: 100%; margin-bottom: 0 !important; padding: 0 20px; border-right: 1px solid #e6e6e6; display: flex; flex-wrap: wrap; align-content: center; }
#filter_in_archive .filter .form-row:last-child { border-right: none; }
#filter_in_archive .filter .form-row .button { width: 100%; display: block; }


/*
--------------
	FILTER
--------------
*/
#apartment-filter-form { background: #FFFFFF; display: grid; grid-template-columns: 1fr 150px 200px 300px 100px; gap: 20px; align-items: end; border-radius: 10px; }
#apartment-filter-form .filter-row label { margin-bottom: 8px; font-size: 12px; font-weight: 700; text-transform: uppercase; line-height: 100%; display: block; }

#apartment-filter-form .filter-row .apartment-price-wrapper { width: 100%; height: 50px; padding: 0 15px; background: #FFFFFF; border: 1px solid var(--color-silver-line); display: grid; grid-template-columns:  1fr 20px 1fr auto; gap: 0; align-items: center; border-radius: 5px; }
#apartment-filter-form .filter-row .apartment-price-wrapper input[type="number"] { width: 100%; min-width: 0; height: 100%; font-size: 18px; }
#apartment-filter-form .filter-row .apartment-price-wrapper .separator { width: 20px; text-align: center; }
#apartment-filter-form .filter-row .apartment-price-wrapper .currency { height: 20px; padding-left: 15px; font-size: 16px; line-height: 20px; border-left: 1px solid var(--color-silver-line); }

#apartment-filter-form .filter-row > select, 
#apartment-filter-form .filter-row > input[type="text"], 
#apartment-filter-form .filter-row > input[type="number"] { width: 100%; height: 50px; padding-left: 10px; font-size: 17px; border: 1px solid var(--color-silver-line); border-radius: 5px; }

/* Submit */
#apartment-filter-form .filter-row.form-submit { display: flex; gap: 20px; }
#apartment-filter-form .filter-row.form-submit .button.submit { width: 100px; padding: 0; }
#apartment-filter-form .filter-row.form-submit .more-filters { width: 50px; height: 50px; color: #FFFFFF; background: var(--color-green); display: flex; align-items: center; justify-content: center; border-radius: 5px; }
#apartment-filter-form .filter-row.form-submit .more-filters:hover { background-color: var(--color-dark); }

/* Archive */
.filters-archive__custom #apartment-filter-form { padding: 20px; background: var(--color-silver); grid-template-columns: 1fr 150px 200px 300px 170px; border-radius: 0; }


/*
------------------
	RANK MATH
------------------
*/
.rank-math-breadcrumb { width: fit-content; margin-bottom: 10px; font-size: 14px; font-weight: 500; color: #000000; line-height: 100%; display: flex; }
.rank-math-breadcrumb p { margin-bottom: 0 !important; }
.rank-math-breadcrumb a { text-decoration: underline; }
.rank-math-breadcrumb a:hover { text-decoration: none; }


/*
------------
	HERO
------------
*/
#hero { height: 250px; color: #FFFFFF; background: var(--color-dark-green); position: relative; }
#hero .hero-wrapper { height: 100%; display: flex; }
#hero .hero-wrapper .block { width: 50%; }
#hero .hero-wrapper .block-left { padding-left: 100px; display: flex; align-content: center; }
#hero .hero-wrapper .block-right { background-position: center; background-size: cover; }
#hero .hero-wrapper h1 { font-size: clamp(28px, 5vw, 50px); color: #FFFFFF; line-height: 100%; }

#hero .rank-math-breadcrumb { background: transparent; }

/* Hero Compact */
.hero-compact { width: 100%; height: clamp(150px, 25vw, 250px); margin-bottom: 100px; background: url(images/img-dashboard--01.jpg) no-repeat center / cover; position: relative; }
.hero-compact .hero-compact__overlay { inset: 0; background: rgba(0 0 0 / 30%); position: absolute; }
.hero-compact .hero-compact__inner { height: 100%; position: relative; }
.hero-compact .hero-compact__logo-circle { width: 100px; height: 100px; left: 50%; bottom: 0; background: var(--color-green); border: 5px solid var(--color-silver); display: flex; align-items: center; justify-content: center; position: absolute; transform: translate(-50%, 50%); border-radius: 50%; }
.hero-compact .hero-compact__logo-circle img { max-width: 90%; }


/*
---------------
	CONTENT
---------------
*/
#main { display: flex; }

body:not(.page-template-profile):not(.page-template-signup) #content { padding: 50px 0; }
#content.no-padding { padding: 0 !important; }

#content p { margin-bottom: 20px; }
#content a { text-decoration: underline; color: var(--color-dark); }
#content a:hover { text-decoration: none; }

#content ul { margin-bottom: 30px; margin-left: 30px; list-style: square; } 
#content ul.acf-checkbox-list { margin-left: 0 !important; display: flex; flex-wrap: wrap; list-style: none; }
#content ul.acf-checkbox-list li { margin: 10px 20px 10px 0; }
#content ul.acf-checkbox-list li label { font-weight: 400; }

#content h1 { margin-bottom: 30px; font-size: clamp(32px, 5vw, 50px); font-weight: 700; color: var(--color-dark); line-height: 100%; }
#content h2 { margin-bottom: 20px; font-size: clamp(28px, 3.5vw, 36px); font-weight: 700; color: var(--color-dark); line-height: 110%; }
#content h3 { margin-bottom: 20px; font-size: clamp(22px, 2.5vw, 28px); font-weight: 700; line-height: 100%; }
#content h3.has_line { padding-bottom: 10px; border-bottom: 2px dashed var(--color-silver-line); }

/* Table */
#content .table_wrap { margin-bottom: 30px; }
#content table.custom_1 { width: 100%; margin-bottom: 20px; border-collapse: collapse; table-layout: fixed; }
#content table.custom_1 thead tr th { padding: 10px; font-size: 16px; text-align: left; color: #FFFFFF; line-height: 18px; background: var(--color-green); }
#content table.custom_1 tbody tr td { padding: 10px; font-size: 16px; text-align: left; line-height: 20px; border-bottom: 1px solid var(--color-silver-line); }


/*
-----------------------
	APARTMENTS TYPE
-----------------------
*/
#apartments-types { padding: 50px 0; background: var(--color-silver); }
#apartments-types h2 { margin-bottom: 30px; font-size: clamp(28px, 5vw, 38px); font-weight: 700; line-height: 100%; }
#apartments-types .apartments-type-wrapper { display: flex; gap: 30px; }
#apartments-types .apartments-type-wrapper .apartment-type-item { aspect-ratio: 1; width: calc((100% - 60px) / 3); max-height: 460px; }
#apartments-types .apartments-type-wrapper .apartment-type-item a { height: 100%; color: #FFFFFF !important; background-position: center; background-size: cover; display: block; position: relative; border-radius: 10px; overflow: hidden; }
#apartments-types .apartments-type-wrapper .apartment-type-item h3 { font-size: clamp(28px, 5vw, 38px); font-weight: 700; line-height: 100%; }
#apartments-types .apartments-type-wrapper .apartment-type-item .cover { inset: 0; background: rgba(0 0 0 / 40%); display: flex; align-items: center; justify-content: center; position: absolute; }
#apartments-types .apartments-type-wrapper .apartment-type-item a:hover .cover { background: rgba(0 0 0 / 50%); }
#apartments-types .apartments-type-wrapper .apartment-type-item .discover-it { left: 10px; bottom: 10px; right: 10px; padding: 10px; font-size: 16px; text-align: center; line-height: 100%; border: 1px solid rgba(255 255 255 / 30%); position: absolute; border-radius: 5px; }

#apartments-types .apartments-type-wrapper .apartment-type-item.apartment a { background-image: url(images/stayhub-cat-apartment.jpg); }
#apartments-types .apartments-type-wrapper .apartment-type-item.house a { background-image: url(images/stayhub-cat-guesthouse.jpg); }
#apartments-types .apartments-type-wrapper .apartment-type-item.hotel a { background-image: url(images/stayhub-cat-hotel.jpg); }


/*
------------------------
	POPULAR SEARCHES
------------------------
*/
#popular-searches { padding: 50px 0; background: var(--color-silver); }
#popular-searches h2 { margin-bottom: 30px; font-size: clamp(28px, 5vw, 38px); font-weight: 700; line-height: 100%; }
#popular-searches .popular-searches-wrapper { display: flex; gap: 20px; }
#popular-searches .popular-searches-wrapper .search-item { width: calc((100% - 60px) / 4); height: 80px; padding: 20px; font-size: 18px; font-weight: 700; color: var(--color-dark); line-height: 100%; background: #FFFFFF; border: 1px solid var(--color-silver-line); display: flex; align-items: center; gap: 15px; border-radius: 10px; }
#popular-searches .popular-searches-wrapper .search-item:hover { border-color: var(--color-green); }
#popular-searches .popular-searches-wrapper .search-item div { flex: 1; }


/*
---------------------
	CTA ADVERTISE
---------------------
*/
#cta-advertise { color: #FFFFFF; }
#cta-advertise h2 { max-width: 60%; margin-bottom: 10px; font-size: clamp(28px, 5vw, 38px); font-weight: 700; line-height: 100%; }
#cta-advertise p { margin-bottom: 20px; }
#cta-advertise p:last-child { margin-bottom: 0; }
#cta-advertise .cta-advertise-wrapper { background: var(--color-dark-green) url(images/bgr-cta--01.png) no-repeat center top / cover; }
#cta-advertise .cta-advertise-cover { padding: 50px 100px; }


/*
------------
	BLOG
------------
*/
#blog { padding: 50px 0; }
#blog .blog-header { margin-bottom: 50px; display: flex; align-items: end; justify-content: space-between; }
#blog .blog-header h2 { margin-bottom: 20px; font-size: clamp(28px, 5vw, 38px); font-weight: 700; line-height: 100%; }
#blog .blog-header .block-left { max-width: 40%; }

.archive-categories { margin-bottom: 30px; }
.archive-categories a { padding: 8px 10px; font-size: 12px; text-transform: uppercase; text-decoration: none !important; color: #FFFFFF !important; line-height: 100%; background: var(--color-green); border-radius: 3px; }
.archive-categories a:hover { background: var(--color-dark-green); }

.blog-list { display: flex; gap: 20px; }
.blog-list .blog-item { width: calc((100% - 40px) / 3); padding-bottom: 150px; background: var(--color-silver); position: relative; border-radius: 10px; }
.blog-list .blog-item .thumbnail { display: block; border-radius: 10px; position: relative; overflow: hidden; aspect-ratio: 16 / 9; }
.blog-list .blog-item .thumbnail img { width: 100% !important; height: 100% !important; display: block; object-fit: cover; transform: scale(1); transition: transform 0.6s cubic-bezier(.19, 1, .22, 1); will-change: transform; }
.blog-list .blog-item .thumbnail:hover img { transform: scale(1.05); }
.blog-list .blog-item.expired .thumbnail img { filter: grayscale(100%); opacity: 0.7; }

.blog-list .blog-item .thumbnail .badge { left: 10px; top: 10px; padding: 5px 10px; background: var(--color-purple); font-size: 12px; text-transform: uppercase; color: #000000; line-height: 100%; position: absolute; z-index: 2; border-radius: 3px; }
.blog-list .blog-item.expired .thumbnail .badge { color: #FFFFFF; background: #000000; opacity: 0.5; }

.blog-list .blog-item .entry { padding: 10px 25px; }
.blog-list .blog-item .entry h3 { margin-bottom: 0 !important; font-size: clamp(20px, 3vw, 26px); font-weight: 700; line-height: 100%; }
.blog-list .blog-item .entry h3 a { text-decoration: none !important; color: var(--color-dark) !important; }
.blog-list .blog-item .entry h3 a:hover { text-decoration: underline !important; color: #000000 !important; }
.blog-list .blog-item .entry .datetime-category { margin-bottom: 10px; font-size: 12px; font-weight: 500; text-transform: uppercase; display: flex; align-items: center; gap: 10px; }
.blog-list .blog-item .entry .datetime-category .datetime { }
.blog-list .blog-item .entry .datetime-category .category span { height: 30px; margin-left: 15px; padding: 0 15px; line-height: 100%; background: var(--color-silver-line); display: inline-flex; align-items: center; border-radius: 5px; }
.blog-list .blog-item .read-more { left: 25px; bottom: 20px; position: absolute; }

.single-blog-hero { margin-bottom: 50px; display: flex; }
.single-blog-hero .single-blog-hero__wrapper { flex: 0 0 66.666%; }
.single-blog-hero .single-blog-hero__meta { margin-bottom: 20px; display: flex; align-items: center; gap: 15px; }
.single-blog-hero .single-blog-hero__meta .post-category { height: 40px; padding: 0 15px; line-height: 100%; background: color-mix(in srgb, var(--color-silver-line) 70%, #FFFFFF 30%); display: inline-flex; align-items: center; border-radius: 5px; }

.single-blog-hero .single-blog-hero__excerpt a.read-more { font-weight: 700; }
.single-blog-hero .single-blog-hero__excerpt a.read-more i { font-size: 14px; }

.single-blog-hero .single-blog-hero__tags { flex: 0 0 33.333%; display: flex; align-content: end; justify-content: end; gap: 6px; }
.single-blog-hero .single-blog-hero__tags a.post-tag { padding: 8px 10px; font-size: 12px; text-transform: uppercase; text-decoration: none !important; color: #FFFFFF !important; line-height: 100%; background: var(--color-green); border-radius: 3px; }
.single-blog-hero .single-blog-hero__tags a.post-tag:hover { background: var(--color-dark-green); }

.single-blog-hero__thumbnail { max-height: 600px; margin-bottom: 50px; position: relative; overflow: hidden; aspect-ratio: 21 / 9; }
.single-blog-hero__thumbnail .image { width: 100%; height: 120%; left: 0; top: -10%; position: absolute; }
.single-blog-hero__thumbnail .image img { width: 100%; height: 100%; display: block; position: relative; object-fit: cover; }

.single-blog-hero__content { padding: 70px 0; background: var(--color-silver); }
.single-blog-hero__content .single-blog__inner { display: flex; gap: 70px; }
.single-blog-hero__content .single-blog__sidebar { width: 280px; height: fit-content; top: 30px; flex-shrink: 0; position: sticky; }
.single-blog-hero__content .single-blog__sidebar h4 { width: 100%; margin-bottom: 10px; font-size: 20px; font-weight: 700; line-height: 100%; }
.single-blog-hero__content .single-blog__content { flex: 1; max-width: 800px; }


/*
-------------------
	VIEW SWITCH
-------------------
*/
.view-switch { display: flex; }
.view-switch a { height: 50px; padding: 0 15px; font-size: 16px; font-weight: 500; text-decoration: none !important; border: 1px solid var(--color-silver-line); display: flex; align-items: center; justify-content: center; gap: 10px; }
.view-switch a:first-child { border-radius: 5px 0 0 5px; border-right: none; }
.view-switch a:last-child { border-radius: 0 5px 5px 0; border-left: none; }
.view-switch a.active { color: #FFFFFF !important; background: var(--color-green); border-color: var(--color-green); }

/* MapBox Marker */
.marker { width: 20px; height: 20px; background: var(--color-dark-green); position: relative; border-radius: 50%; cursor: pointer; }
.marker.active { background: var(--color-green); transform: scale(1.4); }

/* MapBox Popup */
.map-popup { width: 200px; background: #FFFFFF; }
.map-popup a { font-family: 'Modern Era', sans-serif; text-decoration: none !important; color: #000000; display: block; border: none !important; outline: none !important; }
.map-popup img { width: 100%; height: 120px; object-fit: cover; display: block; }
.map-popup strong { padding: 10px 0; font-size: 14px; font-weight: 500; line-height: 130%; display: block; }
.mapboxgl-popup-content { border: none !important; }


/*
------------------
	APARTMENTS
------------------
*/
.archive-header { margin-bottom: 30px; display: flex; align-items: end; justify-content: space-between; }
.archive-header h1 { margin-bottom: 10px !important; }
.archive-header select { width: 100%; height: 50px; padding: 0 10px; font-size: 16px; background: #FFFFFF; border: 1px solid var(--color-silver-line); outline: 3px solid transparent; border-radius: 5px; transition: 0.2s; }
.archive-header select:focus { border-color: var(--color-dark-green); outline-color: color-mix(in srgb, var(--color-dark-green) 15%, #FFFFFF 85%); }

.apartments-wrapper { padding: 70px 0; }
.apartments-wrapper h2 { margin-bottom: 30px; font-size: clamp(28px, 5vw, 38px); font-weight: 700; line-height: 100%; }

.apartments-list { display: flex; gap: 50px 30px; }
.apartments-list .apartment-item { width: calc((100% - 60px) / 3); padding-bottom: 55px; position: relative; }
.apartments-list .apartment-item .thumbnail { color: var(--color-dark) !important; display: block; position: relative; overflow: hidden; border-radius: 10px; }
.apartments-list .apartment-item .thumbnail img { width: 100%; height: auto; display: block; object-fit: cover; position: relative; z-index: 1; transform: scale(1); transition: transform 0.6s cubic-bezier(.19, 1, .22, 1); will-change: transform; }
.apartments-list .apartment-item .thumbnail:hover img { transform: scale(1.05); }

.apartments-list .apartment-item .thumbnail .labels { left: 20px; top: 20px; display: flex; gap: 10px; position: absolute; z-index: 2; }
.apartments-list .apartment-item .thumbnail .labels > div { padding: 5px 8px; font-size: 14px; font-weight: 500; line-height: 100%; background: rgba(255 255 255 / 80%); border-radius: 3px; }

.apartments-list .apartment-item .entry { padding-top: 15px; }
.apartments-list .apartment-item .entry .address { margin-bottom: 10px; font-size: 15px; line-height: 20px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.apartments-list .apartment-item .entry h3 { margin-bottom: 10px !important; font-size: clamp(18px, 2.5vw, 24px); font-weight: 700; line-height: 100%; }
.apartments-list .apartment-item .entry h3 a { text-decoration: none !important; color: var(--color-dark) !important; }
.apartments-list .apartment-item .entry h3 a:hover { text-decoration: underline !important; }
.apartments-list .apartment-item .entry .short-description { font-size: 15px; color: rgba(0 0 0 / 70%); line-height: 20px; }

.apartments-list .apartment-item .entry .price__services { width: 100%; left: 0; bottom: 0; padding-top: 10px; border-top: 1px solid var(--color-silver-line); display: flex; align-items: center; justify-content: space-between; position: absolute; }
.apartments-list .apartment-item .entry .price__services .price { font-size: 20px; font-weight: 700; }
.apartments-list .apartment-item .entry .price__services .services { font-size: 16px; color: rgba(0 0 0 / 70%); line-height: 20px; display: flex; align-items: center; gap: 20px; }
.apartments-list .apartment-item .entry .price__services .services > div { display: flex; align-items: center; gap: 5px; }

/* Active Filters */
.active-filters { margin-top: -10px; margin-bottom: 30px; display: flex; gap: 10px; }
.active-filters .filter-chip { height: 40px; padding: 0 5px 0 15px; font-size: 14px; text-decoration: none !important; background: rgba(0 0 0 / 7%); display: inline-flex; align-items: center; gap: 6px; border-radius: 20px; transition: 0.2s; }
.active-filters .filter-chip:hover { background: color-mix(in srgb, var(--color-red) 20%, #FFFFFF 80%); }
.active-filters .filter-chip .remove { width: 30px; height: 30px; font-weight: bold; color: #FFFFFF; line-height: normal; background: var(--color-red); display: flex; align-items: center; justify-content: center; border-radius: 50%; }

/* Map view */
.apartments-map-layout { display: flex; }
.apartments-map-layout .apartments-list { width: 50%; padding: 20px 50px 20px 20px; }
.apartments-map-layout .apartments-list .apartment-item { width: calc((100% - 30px) / 2); }
.apartments-map-layout #map { width: 50%; height: 100vh; top: 0; position: sticky; }


/*
-----------------------
	APARTMAN SINGLE
-----------------------
*/
#apartment-single .apartment-single__type { width: fit-content; height: 26px; margin-bottom: 20px; padding: 0 15px; font-size: 12px; font-weight: 700; text-transform: uppercase; color: #000000; line-height: 100%; background: color-mix(in srgb, var(--color-silver) 90%, #000000 10%); display: flex; align-items: center; border-radius: 13px; }

#apartment-single .apartment-single__header { margin-bottom: 50px; position: relative; }
#apartment-single .apartment-single__header h1 { margin-bottom: 20px; }
#apartment-single .apartment-single__header-buttons { right: 0; bottom: 0; position: absolute; }

#apartment-single .apartment-single__main { display: flex; }
#apartment-single .apartment-single__content { flex: 1; }
#apartment-single .apartment-single__sidebar { width: 380px; margin-left: 100px; }

/* Meta */
#apartment-single .apartment-single__meta { display: flex; }

/* Gallery */
#apartment-single .apartment-single__gallery { margin-bottom: 50px; }
#apartment-single .apartment-single__gallery .gallery { display: grid; gap: 20px; }
#apartment-single .apartment-single__gallery .gallery a { position: relative; }
#apartment-single .apartment-single__gallery .gallery a img { width: 100%; height: 100%; display: block; object-fit: cover; }
#apartment-single .apartment-single__gallery .gallery a .gallery-more { inset: 0; width: 100%; height: 100%; font-weight: 700; text-decoration: none !important; color: #FFFFFF !important; background: rgba(0 0 0 / 0.5); display: flex; align-items: center; justify-content: center; position: absolute; }

#apartment-single .apartment-single__gallery .gallery.gallery-5, 
#apartment-single .apartment-single__gallery .gallery.gallery-5plus { grid-template-columns: 2fr 1fr 1fr; grid-template-rows: repeat(2, 300px); }
#apartment-single .apartment-single__gallery .gallery.gallery-5 .item-1, 
#apartment-single .apartment-single__gallery .gallery.gallery-5plus .item-1 { grid-row: 1 / 3; }

#apartment-single .apartment-single__gallery .gallery.gallery-4 { grid-template-columns: 1fr 1fr; grid-template-rows: repeat(2, 300px); }

#apartment-single .apartment-single__gallery .gallery.gallery-3 { grid-template-columns: 2fr 1fr; grid-template-rows: repeat(2, 300px); }
#apartment-single .apartment-single__gallery .gallery.gallery-3 .item-1 { grid-row: 1 / 3; }

#apartment-single .apartment-single__gallery .gallery.gallery-2 { grid-template-columns: 1fr 1fr; }

#apartment-single .apartment-single__gallery .gallery.gallery-1 { grid-template-columns: 1fr; }

/* Description info */
#apartment-single .apartment-single__content .apartment-info { display: flex; gap: 20px; align-items: flex-start; }
#apartment-single .apartment-single__content .apartment-info .apartment-info__title { flex: 0 0 300px; height: stretch; margin: 0; }
#apartment-single .apartment-single__content .apartment-info .apartment-info__title h3 { top: 30px; position: sticky; }
#apartment-single .apartment-single__content .apartment-info .apartment-info__content { flex: 1; }

#apartment-single .apartment-single__content .apartment-social-media { display: flex; flex-direction: column; align-items: start; gap: 10px; }
#apartment-single .apartment-single__content .apartment-social-media a { font-weight: 700; text-decoration: none !important; display: flex; align-items: center; gap: 10px; }
#apartment-single .apartment-single__content .apartment-social-media a i { width: 50px; height: 50px; font-size: 16px; background: var(--color-silver-line); display: flex; align-items: center; justify-content: center; border-radius: 50%; }
#apartment-single .apartment-single__content .apartment-social-media a:hover i { opacity: 0.9; }

/* Distance list */
#apartment-single .apartment-single__content ul.distance-list { margin-left: 0 !important; display: flex; align-items: center; gap: 10px 40px; list-style: none !important; }
#apartment-single .apartment-single__content ul.distance-list li { width: calc((100% - 40px) / 2); padding: 10px 0; border-bottom: 1px solid var(--color-silver-line); display: flex; }
#apartment-single .apartment-single__content ul.distance-list li i { width: 30px; display: flex; align-items: center; justify-content: start; }
#apartment-single .apartment-single__content ul.distance-list li .name { width: 1px; height: auto; line-height: 100%; position: relative; white-space: pre-wrap; word-break: break-word; word-wrap: break-word; flex: 1 0 0; }
#apartment-single .apartment-single__content ul.distance-list li .value { font-weight: 700; line-height: 100%; }

#apartment-single .apartment-single__content ul.distance-list.columns-3 li { width: calc((100% - 80px) / 3); }

/* Features */
#apartment-single .apartment-single__content ul.features { margin-left: 0 !important; display: flex; align-items: center; gap: 10px; list-style: none !important; }
#apartment-single .apartment-single__content ul.features li { padding: 7px 15px; font-size: 16px; font-weight: 700; line-height: 100%; background: color-mix(in srgb, var(--color-silver) 90%, #000000 10%); display: flex; align-items: center; gap: 10px; border-radius: 15px; }
#apartment-single .apartment-single__content ul.features li i { font-size: 14px; }

/* Gallery */
#apartment-single .apartment-single__content .apartment-gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
#apartment-single .apartment-single__content .apartment-gallery a { display: flex; aspect-ratio: 16 / 10;}
#apartment-single .apartment-single__content .apartment-gallery a img { width: 100%; height: 100%; display: flex; object-fit: cover; border-radius: 5px; }

/* Sidebar */
#apartment-single .apartment-single__sidebar .sticky-sidebar { top: 30px; position: sticky; }
#apartment-single .apartment-single__sidebar .user-card { background: #FFFFFF; border: 1px solid var(--color-silver-line); border-radius: 10px; }
#apartment-single .apartment-single__sidebar .user-card .user-card__avatar { padding: 30px; display: flex; gap: 20px; }
#apartment-single .apartment-single__sidebar .user-card .user-card__avatar div { flex: 1; min-width: 0; line-height: 20px; }
#apartment-single .apartment-single__sidebar .user-card .user-card__avatar img { width: 60px; height: 60px; display: block; border-radius: 50%; }
#apartment-single .apartment-single__sidebar .user-card .user-card__avatar small { line-height: 100%; display: block; }
#apartment-single .apartment-single__sidebar .user-card .user-card__avatar a.all-items { margin-top: 10px; font-size: 16px; font-weight: 700; text-decoration: underline; color: var(--color-dark-green) !important; display: inline-block; }

#apartment-single .apartment-single__sidebar .user-card .user-card__phone { padding: 20px 30px; background: color-mix(in srgb, var(--color-silver) 97%, #000000 3%); }
#apartment-single .apartment-single__sidebar .user-card .user-card__phone .phone-link { text-decoration: none !important; display: flex; align-items: center; justify-content: space-between; }
#apartment-single .apartment-single__sidebar .user-card .user-card__phone .phone-link > div { display: flex; align-items: center; gap: 20px; }
#apartment-single .apartment-single__sidebar .user-card .user-card__phone .phone-link .fa-phone-volume { width: 50px; height: 50px; background: #FFFFFF; display: flex; align-items: center; justify-content: center; border-radius: 50%; }
#apartment-single .apartment-single__sidebar .user-card .user-card__phone .phone-link .show-phone { width: 50px; height: 50px; color: #FFFFFF !important; background: var(--color-green); display: flex; align-items: center; justify-content: center; border-radius: 50%; }

#apartment-single .apartment-single__sidebar .user-card .user-card__email { padding: 30px; display: flex; gap: 10px; }
#apartment-single .apartment-single__sidebar .user-card .user-card__email .button { width: 100%; }

/* Contact Form */
#apartment-single .contact-form { margin-top: 100px; }
#apartment-single .contact-form-wrapper { padding: 30px; background: color-mix(in srgb, var(--color-silver) 97%, #000000 3%); border: 1px solid var(--color-silver-line); display: flex; gap: 50px; border-radius: 10px; }
#apartment-single .contact-form-wrapper .block { flex: 1; }
#apartment-single .contact-form-wrapper .block.block-right { padding: 20px; background: url(images/img-dashboard--02.jpg) no-repeat center / cover; display: flex; align-items: end; border-radius: 10px; }
#apartment-single .contact-form-wrapper .block.block-right .info-block { width: 100%; height: 100px; padding: 5px; background: var(--color-silver); display: flex; align-items: center; gap: 20px; border-radius: 5px; }

#apartment-single .contact-form-wrapper .wpcf7-form .wpcf7-radio > span { margin: 10px 0 !important; display: block; }
#apartment-single .contact-form-wrapper .wpcf7-form .form-row { margin-bottom: 15px !important; }
#apartment-single .contact-form-wrapper .wpcf7-form textarea { min-height: 100px; }

/* Share */
.share { margin-top: 20px; display: flex; gap: 10px; }
.share label { width: 100%; font-size: 16px; font-weight: 700; }
.share a, .share button { width: 50px; height: 50px; text-decoration: none !important; background: var(--color-silver-line); border: none !important; display: flex; align-items: center; justify-content: center; border-radius: 50%; cursor: pointer; }
.share a:hover, .share button:hover { opacity: 0.9; }
.share i { font-size: 16px; }

/* Sections nav */
.apartment-sections-nav { width: 100%; height: 60px; left: 0; top: 0; background: #FFFFFF; position: fixed; z-index: 9999; transform: translateY(-100px); transition: transform 0.25s ease; box-shadow: 0 10px 30px rgba(3  7 18 / 0.08); }
.apartment-sections-nav.is-visible { pointer-events: auto; transform: translateY(0); }
.apartment-sections-nav .apartment-sections-nav__inner { height: 100%; display: flex; justify-content: center; gap: 10px; }
.apartment-sections-nav .apartment-sections-nav__inner a { height: 100%; padding: 0 15px; font-size: 17px; font-weight: 500; text-decoration: none; color: #000000; line-height: 100%; display: inline-flex; align-items: center; justify-content: center; position: relative; }
.apartment-sections-nav .apartment-sections-nav__inner a:after { width: 0; height: 2px; left: 50%; bottom: 0; background: var(--color-dark-green); position: absolute; content: ''; transition: all 0.2s ease-out; }
.apartment-sections-nav .apartment-sections-nav__inner a:hover:after, 
.apartment-sections-nav .apartment-sections-nav__inner a.active:after { width: 100%; left: 0; }


/*
--------------
	FOOTER
--------------
*/
#footer { color: #FFFFFF; background: var(--color-dark-green); }
#footer a { color: #FFFFFF; }
#footer a:hover { text-decoration: underline; text-decoration-thickness: 1px; }

/* Footer top */
#footer .footer-top { padding: 70px 0; }
#footer .footer-top h4 { margin-bottom: 20px; font-size: 16px; font-weight: 700; color: var(--color-green); }
#footer .footer-top ul { display: flex; flex-direction: column; gap: 5px; list-style: none; }
#footer .footer-top ul li a { font-size: 24px; font-weight: 500; line-height: 100%; }
#footer .footer-top .footer-top-wrapper { display: flex; }
#footer .footer-top .footer-top__logo { width: 50%; }
#footer .footer-top .footer-top__logo .logo { width: auto; height: 70px; margin-bottom: 50px; color: #FFFFFF; line-height: 100%; display: flex; align-items: center; gap: 20px; }
#footer .footer-top .footer-top__logo .logo img { width: auto; height: 100%; }
#footer .footer-top .footer-top__logo .logo .site-title { font-size: 28px; text-transform: uppercase; line-height: 110%; }
#footer .footer-top .footer-top__logo .site-description { max-width: 60%; font-size: 17px; line-height: 150%; }

#footer .footer-top .footer-top__menu { width: 50%; display: grid; grid-template-columns: 1fr 1fr; gap: 70px; }

/* Footer bottom */
#footer .footer-bottom a { text-decoration: underline; }
#footer .footer-bottom .footer-bottom-wrapper { padding-top: 30px; padding-bottom: 30px; border-top: 1px solid rgba(255 255 255 / 20%); display: flex; align-items: center; justify-content: space-between; }
#footer .footer-bottom .footer-bottom_wrapper .sep { margin: 0 10px; }


/*
-----------------
	SCROLL UP
-----------------
*/
#scroll-up { width: 50px; height: 50px; right: 20px; bottom: 20px; color: var(--color-dark); background: #FFFFFF; display: none; align-items: center; justify-content: center; position: fixed; z-index: 100; border-radius: 5px; box-shadow: 0 3px 5px rgba(0 0 0 / 0.2); }
#scroll-up:hover { color: #FFFFFF; background: var(--color-dark); }


/*
--------------
	SIGNUP
--------------
*/
#signup-block { min-height: calc(100vh - 100px); display: flex; }
#signup-block .signup-instruction-text { font-size: 17px; font-weight: 700; line-height: 25px !important; }

#signup-block .signup-block--form { width: 60%; display: flex; justify-content: center; position: relative; }
#signup-block .signup-block--form .signup-block--form__header { width: 100%; height: 80px; left: 0; top: 0; padding: 0 50px; display: flex; align-items: center; justify-content: space-between; position: absolute; }
#signup-block .signup-block--form .signup-block--form__header img { width: auto; height: 40px; display: block; }

#signup-block .signup-block--form .signup-block--form__wrapper { max-width: 600px; padding: 50px 20px; }

#signup-block .signup-block--marquee { width: 40%; overflow: hidden; position: relative; }
#signup-block .signup-block--marquee .marquee-wrapper { width: calc((100% - 20px) / 2); overflow: hidden; }
#signup-block .signup-block--marquee .marquee-wrapper .marquee-wrapper--images { width: 100%; display: flex; gap: 20px; animation: animate-marquee-vert 40s linear infinite; will-change: transform; }
#signup-block .signup-block--marquee .marquee-wrapper .marquee-wrapper--images.inverse { animation-name: animate-marquee-vert-inverse; }
#signup-block .signup-block--marquee .marquee-wrapper .marquee-item { height: 550px; overflow: hidden; border-radius: 10px; }
#signup-block .signup-block--marquee .marquee-wrapper .marquee-item:last-child { margin-bottom: 20px; }
#signup-block .signup-block--marquee .marquee-wrapper .marquee-item img { max-width: 100%; height: 100%; object-fit: cover; display: block; }

@-webkit-keyframes animate-marquee-vert {
	0% { transform: translateY(0%) translateZ(0); }
	100% { transform: translateY(-100%) translateZ(0); }
}

@keyframes animate-marquee-vert { 
	0% { transform: translateY(0%) translateZ(0); }
	100% { transform: translateY(-100%) translateZ(0); }
}

@-webkit-keyframes animate-marquee-vert-inverse {
	0% { transform: translateY(-100%) translateZ(0); }
	100% { transform: translateY(0%) translateZ(0); }
}

@keyframes animate-marquee-vert-inverse { 
	0% { transform: translateY(-100%) translateZ(0); }
	100% { transform: translateY(0%) translateZ(0); }
}


/*
------------------
	COOKIE BAR
------------------
*/
#cookie-law-info-bar { font-size: 14px; line-height: 20px; }
#cookie-law-info-bar .cli_settings_button { font-weight: 700; text-decoration: underline; }


/*
------------
	FORM
------------
*/
form:not(.acf-form) { display: flex; flex-wrap: wrap; justify-content: space-between; }
form h3 { width: 100%; }
form p { width: 100%; }

.form-row { margin-bottom: 20px; position: relative; }
.form-row.form-row__first { width: calc(50% - 10px); }
.form-row.form-row__last { width: calc(50% - 10px); }
.form-row.form-row__wide { width: 100%; }

.form-row p { margin-bottom: 0 !important; }
.form-row br { display: none !important; }
.form-row label { width: 100%; margin-bottom: 5px; font-size: 15px; font-weight: 900; color: var(--color-dark); line-height: 20px; display: block; }
.form-row label.privacy-policy-form { padding-left: 30px; position: relative; }
.form-row label.privacy-policy-form input[type="checkbox"] { left: 0; top: 0; margin-top: -3px !important; position: absolute; }

.form-row small.info { margin-top: -5px; margin-bottom: 5px; display: block; }

.form-row select, 
.form-row textarea, 
.form-row input[type=tel], 
.form-row input[type=url], 
.form-row input[type=text], 
.form-row input[type=email], 
.form-row input[type=number], 
.form-row input[type=password] { width: 100%; height: 50px; padding-left: 10px; font-size: 18px; background: #FFFFFF; border: 1px solid var(--color-silver-line); outline: 3px solid transparent; border-radius: 5px; transition: 0.2s; }

.form-row select:focus, 
.form-row textarea:focus, 
.form-row input[type=tel]:focus, 
.form-row input[type=url]:focus, 
.form-row input[type=text]:focus, 
.form-row input[type=email]:focus, 
.form-row input[type=number]:focus, 
.form-row input[type=password]:focus { border-color: var(--color-dark-green); outline-color: color-mix(in srgb, var(--color-dark-green) 15%, #FFFFFF 85%); }

.form-row input[type=text]:read-only, 
.form-row input[type=text]:read-only:focus { color: #ccc; border-color: var(--color-silver-line) !important; outline: none !important; cursor: no-drop; }

.form-row textarea { min-height: 150px; padding: 10px; resize: vertical; }

/* ACF form */
.acf-form select, 
.acf-form textarea, 
.acf-form input[type=tel], 
.acf-form input[type=url], 
.acf-form input[type=text], 
.acf-form input[type=email], 
.acf-form input[type=number], 
.acf-form input[type=password] { width: 100%; height: 50px; padding-left: 10px; font-size: 18px; background: #FFFFFF; border: 1px solid var(--color-silver-line); outline: 3px solid transparent; border-radius: 5px; transition: 0.2s; }

.acf-form select:focus, 
.acf-form textarea:focus, 
.acf-form input[type=tel]:focus, 
.acf-form input[type=url]:focus, 
.acf-form input[type=text]:focus, 
.acf-form input[type=email]:focus, 
.acf-form input[type=number]:focus, 
.acf-form input[type=password]:focus { border-color: var(--color-dark-green); outline-color: color-mix(in srgb, var(--color-dark-green) 15%, #FFFFFF 85%); }

.acf-form textarea { min-height: 150px; padding: 10px; resize: vertical; }

.acf-form .acf-field.acf-field-6238d586370fe { padding-top: 20px; border-top: 3px solid var(--color-silver-line); }

/* Avatar */
form.update-user-profile-avatar table tbody tr:first-child p { display: none !important; }
form.update-user-profile-avatar table tbody tr:first-child p#wp_user_profile_avatar_add_button_existing { display: block !important; }
form.update-user-profile-avatar table tbody tr td { padding: 0 !important; }

form.update-user-profile-avatar #wp-user-profile-avatar-preview { display: none !important; }
form.update-user-profile-avatar #wp-user-profile-avatar-thumbnail span { display: none !important; }
form.update-user-profile-avatar #wp-user-profile-avatar-undo-button .button { display: none !important; }
form.update-user-profile-avatar #wp-user-profile-avatar-remove-button .button { height: auto !important; padding: 0 !important; text-decoration: underline !important; color: var(--color-red) !important; line-height: 20px !important; background: transparent !important; }
form.update-user-profile-avatar #wp-user-profile-avatar-remove-button .button:hover { color: var(--color-dark) !important; }

/* WP CF7 */
.wpcf7-response-output { width: 100%; margin: 0 !important; padding: 15px !important; font-size: 16px; color: #000000 !important; line-height: 20px; background: var(--color-yellow); border: 1px solid color-mix(in srgb, var(--color-yellow) 90%, #000000 10%) !important; border-radius: 5px; }
.wpcf7-form-control-wrap { width: 100%; display: block; }
.wpcf7-form-control-wrap .wpcf7-not-valid-tip { width: fit-content; right: 5px; top: 15px; padding: 4px 8px !important; font-size: 12px !important; font-weight: 700; color: #FFFFFF !important; line-height: 100% !important; background: var(--color-red); position: absolute; border-radius: 5px; }

.wpcf7-acceptance .wpcf7-list-item { margin: 0 !important; }
.wpcf7-acceptance label { padding-left: 30px; position: relative; }
.wpcf7-acceptance label input[type="checkbox"] { left: 0; top: 0; margin-top: -3px !important; position: absolute; }


/*
----------
	UI
----------
*/
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover { border: 1px solid var(--color-green) !important; background: var(--color-green) !important; }


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

	/* DEFAULT */
	.p_l_20 { padding-left: 20px; }
	.p_r_20 { padding-right: 20px; }
	
	/* HEADER */
	#header { padding: 0; }
	
	/* HEADER: Logo + Menu */
	#header .logo { left: 20px; }
	
	/* HERO */
	#hero .hero-wrapper .block-left { padding-left: 20px; }
	
	/* CTA ADVERTISE */
	#cta-advertise .cta-advertise-cover { padding: 50px 20px; }
	
	/* SIGNUP */
	#signup-block .signup-block--form { width: calc(100% - 360px); }
	#signup-block .signup-block--form .signup-block--form__wrapper { max-width: 600px; padding: 30px 20px; }
	#signup-block .signup-block--marquee { width: 360px; }
	#signup-block .signup-block--marquee .marquee-wrapper { width: 100%; }
	#signup-block .signup-block--marquee .marquee-wrapper.last { display: none; }
}

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

	/* FILTER */
	#apartment-filter-form { grid-template-columns: 150px 1fr 300px 100px; }
	#apartment-filter-form .filter-row.keyword { grid-column: 1 / -1; }
	
	.filters-archive__custom #apartment-filter-form { grid-template-columns: 150px 1fr 300px 170px; }
	
	/* APARTMENTS: Map view */
	.apartments-map-layout .apartments-list .apartment-item { width: 100%; }
	
	/* APARTMENTS TYPE */
	#apartments-types .apartments-type-wrapper { gap: 20px; }
	#apartments-types .apartments-type-wrapper .apartment-type-item { width: calc((100% - 40px) / 3); }
	
	/* POPULAR SEARCHES */
	#popular-searches .popular-searches-wrapper .search-item { width: calc((100% - 40px) / 3); }	
	
	/* APARTMAN SINGLE */
	#apartment-single .apartment-single__sidebar { width: 350px; margin-left: 100px; }

	/* APARTMAN SINGLE: Description info */
	#apartment-single .apartment-single__content .apartment-info { gap: 0; }
	#apartment-single .apartment-single__content .apartment-info .apartment-info__title { flex: none; width: 100%; }
}

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

	/* FANCYBOX */
	#dialog-login { padding: 50px !important; }
	
	/* HEADER */
	#header { height: 80px; }
	
	/* SLIDER */
	#slider { height: calc(100vh - 150px); }
	#slider .slider-cover { padding-bottom: 20px; display: flex; align-content: end; }
	
	body.has-headline #slider { height: calc(100vh - 110px); }
	body.has-headline #slider .marketing-text .marketing_text__content { display: none; }
	
	/* SLIDER: Marketing text */
	#slider .marketing-text { inset: auto; height: auto; margin-bottom: 30px; }
	
	/* SLIDER: Filter */
	#slider .filter { left: auto; bottom: auto; position: relative; }
	
	/* FILTER */
	#apartment-filter-form { grid-template-columns: 1fr 1fr; }
	
	/* FILTER: 1. sor */
	#apartment-filter-form .filter-row.keyword { grid-column: 1 / -1; }

	/* FILTER: 2. sor */
	#apartment-filter-form .filter-row.capacity { grid-column: 1 / 2; }
	#apartment-filter-form .filter-row.apartment-type { grid-column: 2 / 3; }

	/* FILTER: 3. sor */
	#apartment-filter-form .filter-row.apartment-price { grid-column: 1 / 2; }
	#apartment-filter-form .filter-row.form-submit { grid-column: 2 / 3; }
	#apartment-filter-form .filter-row.form-submit .button.submit { width: 100%; }
	
	.filters-archive__custom #apartment-filter-form { grid-template-columns: 1fr 1fr; }
	.filters-archive__custom #apartment-filter-form .filter-row.form-submit .button.submit { flex: 1; width: auto; }
	
	/* HERO */
	#hero { height: auto; }
	#hero .hero-wrapper { display: block; }
	#hero .hero-wrapper .block { width: 100%; }
	#hero .hero-wrapper .block-left { padding: 50px 20px; background: var(--color-dark-green-a80); position: relative; z-index: 2; }
	#hero .hero-wrapper .block-right { width: 100%; height: 100%; left: 0; top: 0; position: absolute; z-index: 1; }
	
	/* APARTMENTS TYPE */
	#apartments-types .apartments-type-wrapper .apartment-type-item { width: calc((100% - 20px) / 2); }
	
	/* POPULAR SEARCHES */
	#popular-searches .popular-searches-wrapper .search-item { font-size: 16px; }

	/* BLOG */
	#blog .blog-header { gap: 20px; }
	#blog .blog-header .block-left { max-width: none; }

	.blog-list .blog-item { width: calc((100% - 20px) / 2); }
	.blog-list .blog-item .entry { padding: 10px 20px; }
	
	.single-blog-hero .single-blog-hero__wrapper { flex: auto; margin-bottom: 20px; }
	.single-blog-hero .single-blog-hero__tags { flex: auto; justify-content: start; }
	
	.single-blog-hero__content { padding: 50px 0; }
	.single-blog-hero__content .single-blog__inner { gap: 50px; }
	.single-blog-hero__content .single-blog__sidebar { width: 100%; top: auto; position: relative; }
	.single-blog-hero__content .single-blog__content { flex: auto; max-width: none; }
	
	/* CTA ADVERTISE */
	#cta-advertise h2 { max-width: none; }
	#cta-advertise .cta-advertise-wrapper { background-position: 90% top; }
	#cta-advertise .cta-advertise-cover { background: var(--color-dark-green-a80); }
	
	/* CONTENT */
	body:not(.page-template-profile):not(.page-template-signup) #content { padding: 30px 0; }
	
	/* APARTMENTS */
	.apartments-list .apartment-item { width: calc((100% - 30px) / 2); }
	.apartments-map-layout .apartments-list { width: 100%; padding: 0 20px; }
	.apartments-map-layout .apartments-list .apartment-item { width: calc((100% - 30px) / 2); }
	.apartments-map-layout #map { display: none; }
	
	/* APARTMAN SINGLE */
	#apartment-single .apartment-single__content { flex: auto; }
	#apartment-single .apartment-single__sidebar { width: 100%; margin-left: 0; margin-top: 50px; }
	#apartment-single .apartment-single__sidebar .sticky-sidebar { top: auto; position: static; }

	/* APARTMAN SINGLE: Gallery */
	#apartment-single .apartment-single__gallery .gallery.gallery-5, 
	#apartment-single .apartment-single__gallery .gallery.gallery-5plus { grid-template-columns: 2fr 1fr; grid-template-rows: repeat(3, 220px); }
	#apartment-single .apartment-single__gallery .gallery.gallery-5 .item-1, 
	#apartment-single .apartment-single__gallery .gallery.gallery-5plus .item-1 { grid-row: 1 / 3; }
	
	/* APARTMAN SINGLE: Contact Form */
	#apartment-single .contact-form { margin-top: 50px; }
	#apartment-single .contact-form-wrapper .block.block-right { display: none; }
	
	/* FOOTER: Footer top */
	#footer .footer-top { padding: 50px 0; }
	#footer .footer-top .footer-top__logo { width: 100%; margin-bottom: 50px; }
	#footer .footer-top .footer-top__logo .logo { margin-bottom: 30px; }
	#footer .footer-top .footer-top__logo .site-description { max-width: none; }

	#footer .footer-top .footer-top__menu { width: 100%; gap: 50px; }
	
	/* SIGNUP */
	#signup-block .signup-block--form { width: 100%; align-items: start; }
	#signup-block .signup-block--form .signup-block--form__wrapper { max-width: none; }
	#signup-block .signup-block--marquee { display: none; }
}

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

	/* FANCYBOX */
	#dialog-login { padding: 30px 20px !important; }
	
	/* HEADER: Logo */
	#header .logo { height: 40px; }
	
	/* APARTMENTS TYPE */
	#apartments-types .apartments-type-wrapper .apartment-type-item { aspect-ratio: 16 / 9; width: 100%; }
	
	/* POPULAR SEARCHES */
	#popular-searches .popular-searches-wrapper .search-item { width: calc((100% - 20px) / 2); }
	
	/* APARTMENTS */
	.apartments-list .apartment-item { width: 100%; }
	.apartments-map-layout .apartments-list .apartment-item { width: 100%; }
	
	/* APARTMAN SINGLE */
	#apartment-single .apartment-single__gallery .gallery.gallery-5, 
	#apartment-single .apartment-single__gallery .gallery.gallery-5plus { grid-template-columns: 1fr 1fr; grid-template-rows: auto; gap: 10px; }
	
	#apartment-single .apartment-single__gallery .gallery.gallery-5 .item-1, 
	#apartment-single .apartment-single__gallery .gallery.gallery-5plus .item-1 { grid-column: 1 / -1; grid-row: auto; aspect-ratio: 16 / 9; }
	
	#apartment-single .apartment-single__gallery .gallery.gallery-5 > .item:not(.item-1), 
	#apartment-single .apartment-single__gallery .gallery.gallery-5plus > .item:not(.item-1) { aspect-ratio: 16 / 9; }
	
	/* APARTMAN SINGLE: Gallery */
	#apartment-single .apartment-single__content .apartment-gallery { grid-template-columns: repeat(2, 1fr); }
	
	/* FORM */
	.form-row.form-row__first, 
	.form-row.form-row__last { width: 100%; }
}

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

	/* DISPLAY: None */
	.hide_in_640 { display: none !important; }
	
	/* FANCYBOX: More Filters */
	#more-filters .more-filters-form { padding: 30px 20px; }
	#more-filters .filters-actions { padding: 20px; }
	
	/* NAVIGATION: Language Switcher */
	#rwd-menu .language-switcher ul li span { display: none !important; }
	
	/* POPULAR SEARCHES */
	#popular-searches .popular-searches-wrapper .search-item { padding: 20px 15px; font-size: 16px; }
	#popular-searches .popular-searches-wrapper .search-item div { min-width: 0; }	
	
	/* BLOG */
	.blog-list .blog-item { width: 100%; }
	
	.single-blog-hero .single-blog-hero__meta { font-size: 14px; gap: 10px; }
	
	.single-blog-hero__thumbnail { aspect-ratio: 4 / 3; }
	.single-blog-hero__thumbnail .image { height: 140%; top: -20%; }
	
	/* APARTMENTS */
	.archive-header .view-switch__form { width: 100%; }
	.archive-header .view-switch { width: 100% !important; margin-top: 10px; }
	.archive-header .view-switch a { width: 50% !important; }
	.archive-header .apartment-order-form { width: 100%; }

	/* APARTMAN SINGLE: Meta */
	#apartment-single .apartment-single__meta { display: block; }

	/* APARTMAN SINGLE: Distance list */
	#apartment-single .apartment-single__content ul.distance-list { gap: 10px; }
	#apartment-single .apartment-single__content ul.distance-list li { width: 100%; }
	
	/* APARTMAN SINGLE: Description info */
	#apartment-single .apartment-single__content .apartment-info .price-row span.price { display: block; }
	
	/* FOOTER: Footer top */
	#footer .footer-top .footer-top__menu { grid-template-columns: 1fr; }
	
	/* FOOTER: Footer bottom */
	#footer .footer-bottom .footer-bottom-wrapper { display: block; }
	#footer .footer-bottom .footer-bottom-wrapper .law { display: block; }
	
	/* Contact Form */
	.wpcf7 .button { width: 100%; }
}

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

	/* DEFAULT */
	.button__full-with-in-480 { width: 100%; }

	/* FANCYBOX: More Filters */
	#more-filters .filters-grid { grid-template-columns: 1fr; }
	
	/* POPULAR SEARCHES */
	#popular-searches .popular-searches-wrapper .search-item { font-size: 15px; }
	
	/* FILTER */
	#apartment-filter-form .filter-row.apartment-price { grid-column: 1 / -1; }
	#apartment-filter-form .filter-row.form-submit { grid-column: 1 / -1; }
}
