@font-face { font-family: 'helvetica-neue'; src: url('includes/HelveticaNeueCyr-Roman.woff2') format('woff2') }
@font-face { font-family: 'helvetica-neue'; src: url('includes/HelveticaNeueCyr-Bold.woff2') format('woff2'); font-weight: bold; }

:root
{
	--accent-h: 191deg;
	--accent-s: 100%;
	--accent-l: 26%;
	--solid-bg: #f9f9f9;
	--navbar-height: 43px;
	--subnav-height: 39px;
	--lh-condensed: 1.4em; /* condensed line height */
	--body-bgcolor: white;
	--thin-line: 1px solid rgba(0,0,0, 0.12);
	
	--link-color: var(--accent-color);
	--link-hover-color: var(--accent-plus2);
	--link-active-color: var(--accent-minus1);
}

.darkmode
{
	--body-bgcolor: rgb(33,33,33);
	--lightbg-plus2: rgba(25,25,25, 0.9);
	--accent-trans: var(--accent-trans-plus2);
	--accent-trans-plus1: var(--accent-trans-plus3);
	--darkbg: rgba(0,0,0, 0.1);
	--darkbg-plus1: rgba(0,0,0, 0.2);
	--darkbg-plus2: rgba(0,0,0, 0.3);
	--solid-bg: rgba(0,0,0, 0.3);
	--text-color: white;
	--link-color: var(--accent-plus4);
	--link-hover-color: var(--accent-plus5);
	--link-active-color: var(--accent-plus3);
	--thin-line: 1px solid rgba(255,255,255, 0.2);
	
	--drop-shadow-xs: 0 2px 4px rgba(0,0,0, 0.2);
	--drop-shadow-s: 0 3px 6px rgba(0,0,0, 0.2);
	--drop-shadow: 0 5px 10px rgba(0,0,0, 0.2);
	--drop-shadow-l: 0 20px 40px rgba(0,0,0, 0.4);
}

a { color: var(--link-color); }
a:hover { color: var(--link-hover-color); }
a:active { color: var(--link-active-color); }

* { font-family: 'helvetica-neue', 'Helvetica Neue', 'Helvetica', sans-serif; }
html { font-size: 16px; }
body { background: var(--body-bgcolor); }
p { margin: 0; width: unset; line-height: 2; }
p+p { margin-top: 1em; }
h1, h2, h3 { font-weight: normal; margin: 0; color: var(--text-color); }
h1 { font-size: 1.4rem;; }
h2 { font-size: 1.2rem;; }
h3 { font-size: 0.9rem; letter-spacing: 1px; text-transform: uppercase; }
input, textarea { padding: 0.3rem; font-size: 0.9rem; color: var(--text-color); background: var(--lightbg-plus2); }
blockquote { padding: var(--margin-xs); margin: 0; border: none; quotes: "\201C""\201D""\2018""\2019"; position: relative; }
blockquote:before,
	blockquote:after { font-size: 8rem; position: absolute; font-style: normal; }
blockquote:before { content: open-quote; left: -2.3rem; top: 1.6rem; }
blockquote:after { content: close-quote; bottom: -1.6rem; }

*:not(input[type="hidden"]):not([style*="display: none"]) ~ h1,
	*:not(input[type="hidden"]):not([style*="display: none"]) ~ h2,
	div.flex h1:only-child,
	div.flex h2:only-child { margin-top: unset; }
* ~ h3 { margin-top: unset; }


.grecaptcha-badge { opacity: 0.5; }
.button { font-size: 13px; }

.coronavirus img { display: block; width: 100%; height: auto; padding-top: var(--navbar-height); }
.coronavirus-mobile { display: none; }

.navbar-spacer { height: var(--navbar-height); }
.subnav-spacer { height: var(--subnav-height); }
.navbar,
	.subnav { position: fixed; width: 100%; z-index: 9; font-size: 0; white-space: nowrap; text-align: center; overflow-x: auto; backdrop-filter: var(--blur); -webkit-backdrop-filter: var(--blur); /*border-bottom: var(--thin-line);*/ }
.navbar { background: hsla(var(--accent-h), var(--accent-s), var(--accent-l), 0.9); }
.subnav { background: var(--lightbg-plus2); border-bottom: 1px solid rgba(0,0,0,0.15); }
.navbar a,
	.subnav a { display: inline-block; text-transform: uppercase; padding: 0 1.3em; }
.darkmode .subnav a { color: var(--link-color); }
.navbar a { color: white; font-size: 13px; line-height: var(--navbar-height); height: var(--navbar-height); }
.subnav a { color: var(--accent-minus2); font-size: 12px; line-height: var(--subnav-height); height: var(--subnav-height); }
.navbar a:hover,
	.navbar a.selected,
	.subnav a.selected,
	.subnav a:hover { border-bottom: 2px solid #e7b93f; }
.navbar a:first-child { border-bottom: none; }
.nav-logo-img { height: 23px; vertical-align: middle; }
#navbar-items-collapsed { display: none; }
.subnav i { margin-right: var(--icon-margin); }
.subnav.compact a { padding: 0 8px;}
.ebook-new-label { text-shadow: 1px 1px 0 #6d4700; text-transform: none; position: absolute; font-size: 10px; margin-left: -20px; margin-top: 3px; background: orange; color: white; line-height: 0; padding: 6px 4px; border-radius: 4px; }
footer .ebook-new-label { margin-left: 43px; margin-top: -25px; }

.mobile-title { display: none; }
#search-page-cover { display: none; position: fixed; width: 100%; height: 100%; background: rgba(0,0,0, 0.8); z-index: 9; top: 0; left: 0; }
#searchbox { padding: var(--margin-s); white-space: nowrap; z-index: 10; position: fixed; background: white; border-radius: 10px; box-shadow: var(--drop-shadow-l); display: none; left: 50%; top: 50%; margin: -35px 0 0 -265px; }
#searchbox input { font-size: 1.2rem; width: 450px; background: white; color: black; border: none; border-bottom: var(--thin-line); }
#searchbox i { color: black; }
.sitesearch-form { padding: var(--margin-l) 0 var(--margin-s) 0; text-align: center; display: block; }
.sitesearch-form input[type="text"] { width: 500px; margin-right: var(--margin-s); }
.sitesearch-limit-note { font-size: 0.9rem; text-align: center; padding: var(--margin-l); color: var(--text-color); }
.contactform { display: block; }
.contactform input[type="text"],
	.contactform textarea { width: 100%; display: block; margin: var(--margin-xs) 0; }
.textlist { margin: var(--margin) 0; line-height: 1.9rem; }
.textlist li { margin: 0.5em 0; padding-left: 0.5em; }
.smallcaps { font-size: 0.75rem; text-transform: uppercase; }
.textbox-error { box-shadow: 0 0 7px red; border: 2px solid red !important; }
.msgbox { padding: var(--margin-xs); margin: var(--margin-s) 0; border-radius: 6px; color: black; }
.msgbox.success { background: #F0FFE6; border: 1px solid #C8EDB1; }
.msgbox.error { background: #FFE7E7; border: 1px solid #FF8E8E; }
.photodialog-bg { display: flex; padding: var(--margin-xxl); }
.photodialog-dialog { border-radius: 5px; color: var(--text-color); line-height: var(--lh-condensed); margin: auto; padding: var(--margin); background: var(--lightbg-plus2); box-shadow: var(--drop-shadow); /*filter: drop-shadow(0 10px 20px rgba(0,0,0, 0.2));*/ }
.photodialog-bg.alerts { min-height: 100vh; }
.statuslabel { z-index: 1; position: absolute; color: white; text-transform: uppercase; letter-spacing: 2px; }
.statuslabel.xs { font-size: 0.7rem; right: 0; padding: 5px 10px; }
.statuslabel.small { font-size: 0.8rem; right: 0; padding: 6px 15px; }
.statuslabel.large { display: block; position: initial; font-size: 1.2rem; padding: 10px 0; text-align: center; }
.statuslabel.large + .statuslabel.large { margin-top: var(--margin-s);  }
.statuslabel.angled { transform: rotate(-45deg); right: initial; }
.statuslabel.xs.angled,
	.statuslabel.small.angled { left: -1.2rem; right: initial; transform: rotate(-45deg); }
.statuslabel.fp { border: 1px solid rgba(255,255,255, 0.5); background: linear-gradient(to bottom, #FFECA7 0%, #FFC600 100%); color: black; text-shadow: -1px -1px 0 white; } /* feature */
.statuslabel.rental { background: hsla(var(--accent-h), var(--accent-s), var(--accent-l), 0.8); }
.statuslabel.sold { background: rgba(191,13,13, 0.8); z-index: 2; }
.statuslabel.oh { background: hsla(var(--accent-h), var(--accent-s), var(--accent-l), 0.8); right: initial !important; } /* open home */

.text-container { background: var(--solid-bg); padding: var(--margin-l); color: var(--text-color); }
.text-container + .text-container { padding-top: 0; }
.text-container img { width: 100%; height: auto; display: block; margin: var(--margin-l) 0; }
.text-container h1,
	.text-container h2 { line-height: var(--lh-condensed); }
.text-container h1 { text-transform: uppercase; letter-spacing: 2px; font-size: 19px; }
.text-container .doublecol { width: var(--max-width); margin: 0 auto; }
.doublecol { display: flex; }
.doublecol .left { flex: 50%; padding-right: var(--margin); }
.doublecol .right { flex: 50%; padding-left: var(--margin); }
.singlecol { width: 720px; margin: 0 auto; }
.handwritten-note { color: var(--text-color); font-size: 17px; line-height: 2em; background: linear-gradient(to bottom, rgba(31, 104, 138, 0.1), rgba(0,0,0,0)); padding: var(--margin-l) var(--margin) var(--margin) var(--margin-l); }
.handwritten-note blockquote { font-style: italic; }
.handwritten-note blockquote:before,
	.handwritten-note blockquote:after { color: rgba(31, 104, 138, 0.3); }
.handwritten-note.aboutus { font-style: italic; background: linear-gradient(#e7e7e7, #fff); padding: var(--margin); }
.handwritten-note.profile-agent { width: 850px; margin: var(--margin) auto; }
.darkmode .handwritten-note blockquote:before,
	.darkmode .handwritten-note blockquote:after { color: rgba(31, 104, 138, 0.6); }
.darkmode .handwritten-note { background: linear-gradient(to bottom, rgba(31, 104, 138, 0.4), rgba(0,0,0,0)); }
.darkmode .handwritten-note.aboutus { background: linear-gradient(rgba(255,255,255,0.1), rgba(0,0,0,0)); }

.youtube-iframe { width: 100%; height: 406px; }
.youtube-iframe.search { width: 500px; height: 333px; box-shadow: var(--drop-shadow-s); }

.hero-div { height: 67vw; position: relative; }
.hero-div a.cover { position: absolute; width: 100%; height: 100%; z-index: 1; }
.hero-div .text { position: absolute; top: 125px; text-align: center; width: 100%; font-weight: bold; font-size: 41px; line-height: 1.3em; color: white; text-shadow: 1px 1px 0 black; padding: 0 var(--margin-s); }
.hero-div .text span { width: 600px; margin: var(--margin-s) auto 0 auto; display: block; font-size: 20px; line-height: var(--lh-condensed); }
.hero-div .text span.location { font-size: 18px; text-transform: uppercase; }
.hero-div .text span.bg { background: rgba(255,255,255,0.9); padding: var(--margin); color: black; text-shadow: none; }
.hero-div .links { text-align: center; position: absolute; bottom: 168px; width: 100%; }
.hero-div .links a { background: rgba(0,0,0, 0.8); border: none; color: white; display: inline-block; line-height: 50px; padding: 0 22px; border-radius: 9px; font-size: 18px; margin: 10px 20px; }
.hero-div .links a:hover { background: rgba(22, 75, 99, 0.9); }
.hero-div .links i { vertical-align: unset; }
.hero-div .statuslabel.large { width: unset; position: absolute; padding: 0 15px; line-height: 37px; left: 50%; margin: -60px 0 0 -45px; text-shadow: none; }
.hero-div.buyingpage { height: 1000px; }
.hero-div.buyingpage .text span { margin: 600px auto 0 auto; }
.hero-div.aboutakl div { top: 50%; }

.flex-wrap-container { display: flex; flex-wrap: wrap; justify-content: center; padding: var(--margin) 0; }
.flex-wrap-container div { flex: 0 0 300px; margin: var(--margin); }
.flex-wrap-container img { width: 100%; height: auto; box-shadow: var(--drop-shadow); }

.propertyinfo { text-transform: uppercase; font-size: 0.9em; font-weight: bold; }
.propertyinfo span { margin-top: 10px; display: inline-block; padding-right: 15px; line-height: 23px; }
.propertyinfo span+span { border-left: var(--thin-line); padding-left: 15px; }
.propertyinfo .highlight-price { color: #df533a; }
.darkmode .propertyinfo .highlight-price { color: #ff6347; }
/*.listingbox .propertyinfo { margin-top: var(--margin); }*/

.footer-container { background: var(--darkbg); }
footer { margin: 0 auto; padding: var(--margin-l) 0; font-size: 0.8rem; width: var(--max-width); }
.darkmode footer { color: white; }
footer a { color: #555; text-shadow: -1px -1px 0 white; }
footer a:hover { color: black; }
.darkmode footer a { text-shadow: 1px 1px 0 black; color: rgba(255,255,255, 0.7); }
.darkmode footer a:hover { color: white; }
footer .breadcrumbs { font-size: 0.9rem; margin-bottom: var(--margin-l); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
footer .breadcrumbs span { margin: 0 var(--margin-xs); opacity: 0.4; }
footer .breadcrumbs img { height: 15px; }
footer .breadcrumbs i { vertical-align: middle; }
footer .nav { display: flex; align-self: top; }
footer .nav div { flex: 1 0 0; margin-right: var(--margin-l); }
footer .nav div:last-child { margin: 0; }
footer .nav ul { padding: 0; margin: 0; }
footer .nav ul span { display: table-cell; }
footer .nav li { display: block; margin-top: 0.9em; line-height: 1.1em; list-style: none; }
footer .nav li:first-child { text-transform: uppercase; white-space: nowrap; margin-top: 0; }
footer .social-media-row { border-top: var(--thin-line); display: flex; align-self: center; padding-top: var(--margin-s); margin-top: var(--margin-l); }
footer .social-media-row div { flex: auto; }
footer .social-media-row .column-left i { font-size: 20px; } /* icons */
footer .social-media-row .column-left a { margin-right: var(--margin); }
footer .social-media-row .column-left a:last-child,
	footer .social-media-row .column-right a:first-child { margin: 0; }
footer .social-media-row .column-right { text-align: right; }
footer .social-media-row .column-right span { margin-left: var(--margin); }
footer .footer-bottom-row a { border-bottom: var(--thin-line); }
footer .reaa { text-align: center; margin-top: var(--margin-l); }
footer .reaa span { margin-right: var(--margin); }
footer .reaa span:last-child { margin-right: 0; }
footer .office-details { text-align: center; margin-top: var(--margin-s); }

.homepage-mobile-ps-button { display: none; }
.homepage-slider { line-height: 0; } /* fix space at bottom */
.homepage-slider .hero-div { height: 100vh; }
.homepage-slider .hero-div a { display: block; position: absolute; width: 100%; height: 100%; z-index: 1; }
.slick-prev,
	.slick-next { background: none; border: none; position: absolute; text-shadow: 1px 1px 0 black; font-size: 40px; z-index: 2; color: white; opacity: 0.8; line-height: 0; top: 50%; }
.slick-prev:hover,
	.slick-next:hover { opacity: 1; }
.slick-prev { left: var(--margin); }
.slick-next { right: var(--margin); }
.homepage-blurb { text-align: center; padding-bottom: var(--margin-l); }
.darkmode .homepage-blurb { color: white; }
.homepage-links { padding-top: var(--margin-l); text-align: center; }
.homepage-links span { margin: 0 var(--margin); vertical-align: middle; }
.homepage-links img { height: 60px; }

.nzmap-container { background: var(--darkbg); padding: var(--margin-l) 0; }
.nzmap-box { position: relative; width: 1135px; height: 663px; margin: 0 auto; }
.nzmap-img { position: absolute; width: 1135px; height: 663px; }
.nzmap-label { position: absolute; font-size: 25px; white-space: nowrap; }
.nzmap-label a { padding: 5px; }
.nzmap-label a:hover { text-decoration: underline; }
.nzmap-label.all-regions a,
	.nzmap-label.international a { font-size: 18px; }
.nzmap-label.all-regions { bottom: 0; right: 0; }
.nzmap-label.international { top: 0; right: 0; }
.nzmap-label.northland { margin-top: 104px; margin-left: 122px; }
.nzmap-label.auckland { margin-top: 150px; margin-left: 160px; }
.nzmap-label.all-regions a,
	.nzmap-label.international a,
	.nzmap-label.northland a,
	.nzmap-label.coromandel a,
	.nzmap-label.auckland a { color: black; text-shadow: none; }
.nzmap-label.matakana { margin-top: 128px; margin-left: 643px; }
.nzmap-label.hibiscus-coast { margin-top: 274px; margin-left: 590px; }
.nzmap-label.rodney { margin-top: 200px; margin-left: 559px; }
.nzmap-label.upper-harbour { margin-top: 450px; margin-left: 590px; font-size: 19px; }
.nzmap-label.waiheke { margin-top: 440px; margin-left: 880px; font-size: 19px; }
.nzmap-label.north-shore { margin-top: 400px; margin-left: 630px; font-size: 30px; }
.nzmap-label.auckland-city { margin-top: 510px; margin-left: 680px; font-size: 19px; }
.nzmap-label.waitakere { margin-top: 450px; margin-left: 530px; font-size: 19px; }
.nzmap-label.central-north-island { margin-top: 213px; margin-left: 179px; }
.nzmap-label.coromandel { margin-top: 155px; margin-left: 320px; font-size: 1.1em; }
/*.nzmap-label.otago { margin-top: 490px; margin-left: 110px; }*/
.nzmap-label.queenstown { margin-top: 490px; margin-left: 50px; }
.nzmap-label.queenstown a { text-shadow: 1px 1px 0 black, 0 2px 6px rgba(0,0,0,0.8); }
.nzmap-label.wanaka { margin-top: 465px; margin-left: 90px; font-size: 19px; }
.nzmap-label.new-zealand { margin-top: 287px; margin-left: 43px; font-size: 18px; color: #999; text-shadow: none; }
.nzmap-label a,
	.darkmode .nzmap-label.all-regions a,
	.darkmode .nzmap-label.international a,
	.darkmode .nzmap-label.northland a,
	.darkmode .nzmap-label.queenstown a,
	.darkmode .nzmap-label.coromandel a,
	.darkmode .nzmap-label.auckland a { color: white; text-shadow: 1px 1px 0 black; }

.ps-latestadditions { padding: var(--margin-l); text-align: center; white-space: nowrap; }
.ps-latestadditions a+a { margin-left: var(--margin); }
.ps-latestadditions .morelink { display: none; }
.ps-latestadditions span { font-size: 12px; display: block; position: absolute; top: 0; background: var(--lightbg-plus2); color: var(--text-color); padding: 3px 8px; }
.ps-latestadditions img { width: 220px; height: 146px; box-shadow: var(--drop-shadow-s); vertical-align: middle; }
.ps-latestadditions h3 { display: inline-block; }
.ps-latestadditions a { color: black; font-size: 0.9em; text-transform: uppercase; display: inline-block; position: relative; }
.darkmode .ps-latestadditions a { color: white; }
.ps-latestadditions a:hover { color: var(--link-hover-color); }
.photodialog-dialog.wishlist,
	.photodialog-dialog.general-enquiry { width: 700px; }

.searchpanel-container { display: flex; justify-content: center; align-items: center; padding-top: var(--margin); }
.darkmode .searchpanel-container { color: white; }
.searchpanel-container { border-bottom: var(--thin-line); padding-bottom: var(--margin-s); }
/*.text-container + .searchpanel-container { border-top: var(--thin-line); padding-top: var(--margin); }*/
.searchpanel-container.rentals { padding: var(--margin); }
.searchpanel, .searchpanel select { font-size: 14px; }
.searchpanel { display: inline-block; position: relative; min-width: 800px; }
.searchpanel .flatlinks-row .selectable { padding: 0 var(--margin-xs); margin: 0 5px; }
.searchpanel .flatlinks-row .selected { border: 2px solid var(--link-color); padding: 5px 11px; border-radius: 20px; }
.searchpanel .flatlinks-row i { margin-right: var(--icon-margin); }
.searchpanel .row-label { text-transform: uppercase; line-height: 55px; margin-right: 30px; /*color: #999;*/ }
#searchpanel-form { display: block; }
.searchpanel .select-region { padding: 4px 10px; border: var(--thin-line); border-radius: 6px; }
.searchpanel span.chevron { padding: 0 15px; color: #999; }
.searchpanel .multiselect-label a { cursor: default; padding: 6px 11px; border: var(--thin-line); border-radius: 6px; }
.searchpanel .multiselect-label a i { vertical-align: middle; }
#searchpanel-multiselect-dialog { display: none; position: absolute; line-height: 2; backdrop-filter: var(--blur); -webkit-backdrop-filter: var(--blur); background: rgba(255,255,255, 0.85); white-space: nowrap; text-align: left; padding: var(--margin-xs); padding-right: var(--margin-s); overflow: auto; vertical-align: middle; box-shadow: var(--drop-shadow); border-radius: 6px; z-index: 2; color: black; }
/*.button.show-on-map { position: absolute; right: 0; top: 14px; }*/
.button.show-on-map { margin-left: var(--margin-s); vertical-align: middle; }

.listingbox { color: var(--text-color); width: var(--max-width); margin: var(--margin-l) auto; display: flex; }
.listingbox + .listingbox { margin-top: var(--margin-xl); }
.listingbox .photo-col { position: relative; }
.listingbox .photo-col img { display: block; width: 550px; height: 367px; box-shadow: var(--drop-shadow-s); }
.listingbox .details-col { width: calc(var(--max-width) - 500px); height: 367px; position: relative; padding-left: var(--margin); vertical-align: top; }
.listingbox h2 { margin-bottom: var(--margin-s); text-transform: uppercase; font-size: 17px; letter-spacing: 1px;  }
.listingbox .add2shortlist-div .button { position: absolute; bottom: -15px; left: -23px; font-size: 0.8rem; /* button size = 47x31px */ }
.listingbox .agents-div { position: absolute; left: var(--margin); bottom: 0; font-size: 0.9em; /*text-transform: uppercase; margin: var(--margin) 0;*/ }
.listingbox .agents-div img { height: 40px; width: auto; margin-right: var(--margin-xs); vertical-align: middle; box-shadow: var(--drop-shadow-xs); /*border-radius: 3px;*/ }
.listingbox .agents-div a+a { margin-left: var(--margin-l); }
.listingbox .openhome { padding: var(--margin-s); margin: var(--margin) 0; font-size: 0.9em; }

.shortlist-bg { background: var(--darkbg); padding: var(--margin-l) var(--margin-s); }
.shortlist-bg h1 { text-align: center; margin-bottom: var(--margin-l); text-shadow: 1px 1px 0 white; color: var(--text-color); }
.darkmode .shortlist-bg h1 { text-shadow: 1px 1px 0 black; }
.shortlist-strip { display: flex; position: relative; background: var(--lightbg-plus2); box-shadow: var(--drop-shadow-xs); width: 950px; margin: 0 auto; align-items: center; color: var(--text-color); }
.shortlist-strip .propertyinfo { margin-top: var(--margin-xs); }
.shortlist-strip + .shortlist-strip { margin-top: var(--margin-l); }
.shortlist-strip .photo-col { flex: 0 0 0; position: relative; }
.shortlist-strip .photo-col img { display: block; width: 200px; height: 133px; }
.shortlist-strip .details-col { flex: 1 0 0; padding: 0 var(--margin) 0 var(--margin); }
.shortlist-strip .remove-col { flex: 0 0 50px; }
.shortlist-strip .remove-col a { text-align: center; display: block; line-height: 133px; color: rgb(197,0,0); background: rgb(255, 235, 235); font-size: 20px; }
.shortlist-strip .remove-col a:hover { background: rgb(197,0,0); color: white; }
.darkmode .shortlist-strip .remove-col a { background: rgba(197,0,0,0.2); }
.darkmode .shortlist-strip .remove-col a:hover { background: rgba(197,0,0,0.5); }

.photogrid-container { background: var(--darkbg); padding: var(--margin-s) 0; }
.photogrid-mobile { display: none; }
.photogrid { width: calc((250px * 4) + (8 * var(--margin-s))); margin: 0 auto; } /* num cols + 2x num cols */
.photogrid a { display: inline-block; margin: var(--margin-s); }
.photogrid img { display: block; box-shadow: var(--drop-shadow-xs); width: 250px; height: 166px; }
.singlecol.viewlisting .statuslabel.large + h1 { margin-top: var(--margin-l); }
.singlecol.viewlisting h1 { /*margin-top: var(--margin-l);*/ margin-bottom: var(--margin); }
.singlecol.viewlisting p { margin-bottom: var(--margin-l); }
.openhome { padding: var(--margin); margin-bottom: var(--margin-l); background: var(--accent-trans); border-radius: 10px; }
.openhome h2 { margin-bottom: var(--margin); line-height: 1em; }
.openhome span { display: block; margin-bottom: var(--margin-xs); line-height: 1.5em; }
.openhome span:last-child { margin-bottom: 0; }
.openhome img { width: unset; } /* for supplementary files */
.openhome i { margin-right: var(--icon-margin); }
.viewlisting .print-row { margin-top: var(--margin-l); display: flex; align-items: flex-end; }
.viewlisting .print-row div { flex: auto; }
.viewlisting .print-row div:last-child { text-align: right; }
.viewlisting .print-row .button+.button { margin-left: var(--margin); }
.friendform-bg { padding: var(--margin-l) 0; text-align: center; }
.friendform-bg form { width: 400px; margin: 0 auto; }
.preview-overlay { position: fixed; display: flex; align-items: center; justify-content: center; background: black; color: white; width: 100%; height: 100%; opacity: 0.5; text-transform: uppercase; font-size: 100px; letter-spacing: 10px; z-index: 10; }
.fancybox-bg { background: black !important; }
.fancybox-is-open .fancybox-bg { opacity: 0.8 !important; }

.agentbox { display: inline-block; vertical-align: top; text-align: left; width: 450px; background: white; border-radius: 6px; padding: var(--margin-s); box-shadow: var(--drop-shadow-s); }
.darkmode .agentbox { background: var(--solid-bg); color: white; }
.agentbox .photo { flex: 0 0 0; vertical-align: top; }
.agentbox .photo img { display: block; width: 155px; height: 187px; /*border-radius: 6px;*/ }
.agentbox .details { flex: 1 0 0; padding-left: var(--margin-s); vertical-align: top; font-size: 0.8em; line-height: 1.4rem; }
.agentbox h1 { font-size: 1.1rem; margin-bottom: 0; }
.agentbox-container { text-align: center; padding: var(--margin-l) 0; background: var(--darkbg); }
.agentbox-container .heading { margin: 0 var(--margin-s) var(--margin-l) var(--margin-s); font-size: 1.2em; line-height: var(--lh-condensed); }
.agentbox-container .heading img { width: 110px; height: auto; box-shadow: var(--drop-shadow-xs); vertical-align: middle; margin-right: var(--margin); }
.agentbox-container + h1 { padding-top: var(--margin-l); }
.agentbox-container + .agentbox-container:nth-child(odd) { background: var(--darkbg-plus1); }
.agentbox + .agentbox { margin-left: var(--margin-l); }
.agentbox-container.grid .agentbox { margin: var(--margin-s); }

.officebox-multi-container { text-align: center; padding: var(--margin) 0; }
.officebox { display: inline-block; margin: var(--margin); position: relative; }
.officebox .photo img { width: 286px; height: 191px; box-shadow: var(--drop-shadow-s); }
.officebox .textlink { display: block; font-size: 0.9rem; height: 2.6em; line-height: 1.3em; width: 100%; position: absolute; bottom: -40px; text-align: center; color: var(--text-color); text-shadow: -1px -1px 0 white; }
.darkmode .officebox .textlink { text-shadow: -1px -1px 0 black; }

.profile-header { color: var(--text-color); text-align: center; padding: var(--margin); padding: var(--margin-l) var(--margin-s) var(--margin); }
.profile-header h1 { margin-top: var(--margin-l); font-weight: lighter; font-size: 35px; }
.profile-header h3 { margin-top: var(--margin); font-weight: normal; letter-spacing: 2px; }
.profile-header.agent img,
	.profile-header.office img { box-shadow: var(--drop-shadow-l); }
.profile-header.agent img { width: 200px; height: 240px; }
.profile-header.office img { width: 700px; height: 466px; }
.profile-header.office h1 { font-size: 30px; }
.profile-header.small h1 { margin: 0; display: inline-block; vertical-align: middle; }
.profile-header.small img { box-shadow: var(--drop-shadow); display: inline-block; vertical-align: middle; margin-right: var(--margin-s); }
.profile-header.agent.small img { width: 50px; height: 60px; }
.profile-header.office.small img { width: 90px; height: 60px; }

#appraisal-div { width: 700px; padding: var(--margin-l) var(--margin-s) 0 var(--margin-s); margin: 0 auto; text-align: center; }
#appraisal-div form { width: 400px; margin: 0 auto; }

.doublecol.profile-office .left { flex: 0 0 60%; }
.profile-office-group-marketing-banner { background: var(--lightbg-plus2); color: var(--text-color); padding: var(--margin) 0; text-align: center; text-transform: uppercase; letter-spacing: 1px; }

.text-container.apartments div { height: 1000px; display: flex; padding: var(--margin); }
.text-container.apartments div + div { margin-top: var(--margin-l); }
.text-container.apartments div p { width: 800px; font-size: 18px; margin: auto; color: white; padding: var(--margin-l); background: rgba(0,0,0, 0.8); /*backdrop-filter: var(--blur); -webkit-backdrop-filter: var(--blur);*/ }
.apartments-photogrid { display: flex; background: var(--solid-bg); }
.apartments-photogrid div { width: 25%; margin-right: var(--margin-l); height: 80vh; }
.apartments-photogrid div:last-child { margin-right: 0; }
.apartments-agentpic { width: 100px !important; height: auto !important; display: inline; float: left; padding-top: 0.5rem; margin: 0 var(--margin) var(--margin) 0 !important; }

.doublecol.aboutus .left { flex: 0 0 750px; }
.text-container.spanlinks { line-height: 1.6em; }
.text-container.spanlinks h1 { border-bottom: var(--thin-line); padding-bottom: var(--margin-xs); }
.text-container.spanlinks span { display: block; margin: var(--margin-s) 0; }
.text-container.spanlinks span + h1 { margin-top: var(--margin-l); }

.overflow { max-width: var(--max-width); margin: 0 auto; padding: var(--margin); overflow-x: auto; }


@media screen and (max-width: 1180px)
{
	:root
	{
		--navbar-height: 50px;
		--subnav-height: 41px;
		--max-width: 100%;
	}
	
	.darkmode .navbar a:hover { color: white; /* Otherwise hamburger menu icon stays in hover state */ }
	.darkmode #navbar-items {  }
	
	.subnav-spacer { display: none; }
	.navbar,
		.subnav { min-width: initial; text-align: left; }
	.navbar a,
		.subnav a { font-size: 14px; display: block; padding: 0; }
	#navbar-items-collapsed { display: flex; }
	#navbar-items-collapsed a { flex: auto; text-align: center; font-size: 20px; }
	#navbar-items-collapsed a:first-child,
		#navbar-items-collapsed a:last-child { flex: 0 0 var(--navbar-height); }
	#navbar-items { display: none; padding: var(--margin); }
	#navbar-items a+a,
		.subnav a+a { border-top: var(--thin-line); }
	#navbar-items a:first-child,
		#navbar-items a:last-child { display: none; }
	#navbar-items a:nth-child(2) { border-top: none; }
	.subnav { border-top: none; background: none; backdrop-filter: none; -webkit-backdrop-filter: none; position: initial; margin-top: initial; padding: var(--margin); }
	.subnav a { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.subnav i { margin-right: 0.9em; }
	
	.ebook-new-label { margin-top: 7px; }
	footer .ebook-new-label { margin-left: 50px; margin-top: -28px; }

	
	.mobile-title { display: block; padding: var(--margin-s); padding-bottom: 0; text-transform: uppercase; }
	
	.coronavirus { display: none; }
	.coronavirus-mobile { display: block; padding: 70px 20px 20px 20px; background: rgb(30, 104, 138); color: white; line-height: 1.7em; }
	.coronavirus-mobile h3 { opacity: 0.5; }
	.coronavirus-mobile a { color: white; border-bottom: 1px solid rgba(255,255,255,0.5); }
	
	.homepage-mobile-ps-button { display: block; text-align: center; padding: var(--margin); }
	.homepage-mobile-ps-button a { font-size: 1.3em; }
	
	.grecaptcha-badge { opacity: 0; }
	
	body { min-width: unset; }
	h1 { font-size: 1.2em; }
	h1, h2, h3 { line-height: var(--lh-condensed); }
	input[type="submit"] { line-height: initial !important; }
	
	#searchbox { margin: -80px 0 0 -170px; }
	#searchbox input { width: 300px; }
	#searchbox a { display: none; }
	.sitesearch-form { padding: var(--margin) !important; }
	.sitesearch-form input[type="text"] { width: 100%; }
	.sitesearch-form input[type="text"] + .button { margin-top: var(--margin-xs); ; }
	.sitesearch-form .buttongroup + input { margin-top: var(--margin); ; }
	
	.photodialog-bg { padding: var(--margin) !important; }
	.photodialog-dialog { width: 100% !important; }
	.statuslabel.small { font-size: 0.7rem; }
	.text-container { padding: var(--margin); }
	.singlecol { width: 100%; overflow-x: auto; }
	.doublecol { display: block; }
	.doublecol .left { padding: 0; }
	.doublecol .right { padding: var(--margin) 0 0 0; }
	.handwritten-note { padding: var(--margin-s); }
	
	footer { margin: 0; padding: var(--margin-s) !important; font-size: 0.9rem; font-weight: normal; line-height: 1.2rem }
	footer .breadcrumbs { margin-bottom: var(--margin); padding-bottom: var(--margin-s); font-size: initial; overflow: initial; overflow-x: scroll; -webkit-overflow-scrolling: touch; text-overflow: initial; }
	footer .breadcrumbs span { display: inline-block; }
	footer li,
		footer .reaa span { display: block; margin-top: 0.9rem !important; margin-bottom: 0.9rem !important; line-height: 1.2rem !important; }
	footer .nav { display: block; }
	footer .nav ul { display: block; margin: 0 0 var(--margin) 0 !important; }
	footer .social-media-row { display: block; margin-top: var(--margin-s); }
	footer .social-media-row div { display: block; margin-bottom: var(--margin-s); }
	footer .social-media-row .column-left { text-align: center; border-bottom: var(--thin-line); padding-bottom: var(--margin-s); }
	footer .social-media-row .column-left a { margin: 0; padding: var(--margin-s); }
	footer .social-media-row .column-right { text-align: left; }
	footer .social-media-row .column-right span { margin-left: 0; display: block; }
	footer .social-media-row .column-right span+span { padding-top: var(--margin-s); }
	footer .reaa { border-top: var(--thin-line); margin: 0; padding-top: var(--margin-xs); }
	footer .reaa span { text-align: left; }
	footer .office-details { text-align: left; margin-top: var(--margin-s); }
	
	.slick-prev,
		.slick-next { display: none !important; }
	.homepage-blurb { padding: var(--margin); line-height: var(--lh-condensed); }
	.homepage-links { display: none; border-bottom: var(--thin-line); }
	.homepage-links span { display: block; margin: var(--margin-s) 0; }
	
	.nzmap-box { position: initial; width: unset; height: unset; }
	.nzmap-img { display: none; }
	.nzmap-label { all: initial !important; font-size: 18px !important; }
	.nzmap-label a { margin: 0 var(--margin); padding: 0; line-height: var(--margin-l); text-shadow: none !important; color: black; display: block; border-top: var(--thin-line); }
	.darkmode .nzmap-label a { text-shadow: 1px 1px 0 black; color: white; }
	.nzmap-img + .nzmap-label a { border: none; }
	.nzmap-label.new-zealand,
		.nzmap-label.all-regions i { display: none !important; }
	
	.viewlisting .print-row { flex: initial; align-items: initial; display: block; }
	.viewlisting .print-row div { flex: initial; }
	.viewlisting .print-row div:last-child { text-align: initial; }
	.viewlisting .print-row .button { display: block; text-align: center; margin: var(--margin-s) 0 0 0 !important; padding: var(--margin-xs) 0; }
	.friendform-bg form { width: 100%; padding: 0 var(--margin-s); }
	.openhome { padding: var(--margin-s); }
	
	.agentbox { display: block; width: 100%; overflow: hidden; border-radius: unset; box-shadow: unset; }
	.agentbox-container.grid .agentbox { margin: var(--margin) 0 var(--margin) 0; }
	.agentbox + .agentbox { margin-left: 0; margin-top: var(--margin); }
	.agentbox .photo img { width: 100px; height: 120px; }
	
	.profile-header.small img { display: none; }
	.profile-header.office img { width: 300px; height: 200px; }
	
	#appraisal-div { width: unset; }
	#appraisal-div form { width: unset; }
	.handwritten-note.profile-agent { width: unset; margin: var(--margin-s); }
	
	.doublecol.profile-office .left { width: initial; }
	.doublecol.profile-office .right { border-top: var(--thin-line); margin-top: var(--margin); padding-top: var(--margin); }
	
	.ps-latestadditions { border-top: var(--thin-line); border-bottom: var(--thin-line); padding: var(--margin); overflow-x: scroll; -webkit-overflow-scrolling: touch; margin-bottom: 0; }
	.ps-latestadditions a+a { margin-left: var(--margin); }
	.ps-latestadditions .morelink { display: inline-block; margin-right: 0; }
	
	.searchpanel,
		.searchpanel-container { display: block; min-width: unset; }
	.searchpanel-container { padding: var(--margin-s); }
	#searchpanel-form,
		.searchpanel-officecode-row { width: 100%; /*overflow-y: hidden; overflow-x: auto; white-space: nowrap;*/ }
	.searchpanel .chevron { display: none; }
	.searchpanel select { display: block; margin-top: var(--margin-s); }
	.searchpanel .multiselect-label a { margin-top: var(--margin-s); display: inline-block; }
	.searchpanel .button.show-on-map { display: block; margin: var(--margin-s) 0 0 0; text-align: center; }
	/*.searchpanel .flatlinks-row { margin-top: var(--margin); }*/
	.searchpanel .flatlinks-row .selectable { display: inline-block; margin: 15px; padding: 0; }
	.searchpanel .row-label { display: block; line-height: 2em; margin: 0; }
	.searchpanel #searchpanel-form, 
		.searchpanel .flatlinks-row + .flatlinks-row { margin: var(--margin) 0; }
	
	.button.large.aboutus + .button { margin: 20px 0 0 0; }
	
	.listingbox { width: 100%; display: block; }
	.listingbox .photo-col { display: block; }
	.listingbox .photo-col img { width: 100%; height: auto; box-shadow: unset; }
	.listingbox .details-col { width: unset; display: block; height: unset; padding: var(--margin-s); }
	.listingbox .agents-div { position: relative; left: unset; margin-top: var(--margin-xs); }
	.listingbox .agents-div img { height: 30px; width: auto; }
	.listingbox .agents-div a { display: inline-block; }
	.listingbox .agents-div a+a { margin-left: var(--margin); }
	.listingbox .add2shortlist-div .button { left: unset; right: var(--margin-s); }
	
	/*.propertyinfo span { display: inline-block !important; }*/
	/*.propertyinfo span:last-child { padding-right: 0 !important; }*/
	
	/*.fpbox { width: calc( 100vw - 2 * var(--margin-s) ); height: calc(0.66 * 100vw); }
	.fpbox .info-container { font-size: 17px; line-height: 1.3em; padding: var(--margin-xs); }
	.fpbox .info-container span { font-size: 13px; }*/
	
	.shortlist-strip { display: block; width: unset; }
	.shortlist-strip .photo-col img { width: 100%; height: unset; }
	.shortlist-strip .remove-col a { line-height: 40px; }
	.shortlist-strip .details-col { padding: var(--margin); }
	.shortlist-strip .listingbox-shortlistbutton-div { bottom: var(--margin-s); right: var(--margin-s); }
	
	.hero-div { height: 100vh; }
	.hero-div.rentals { border-top: none; }
	.hero-div .text span { width: 100%; }
	.hero-div .text { top: 13%; }
	.hero-div .links { top: 70%; }
	.photogrid-container { padding: 0; }
	.photogrid { display: none; }
	.photogrid-mobile { display: block; }
	.photogrid-mobile img { display: block; width: 100%; margin-top: 2px; background: rgba(0,0,0,0.2); }
	
	.hero-div.apartments .text { top: 80px; }
	.text-container.apartments { padding-left: 0; padding-right: 0; }
	.text-container.apartments div { padding: var(--margin-s); }
	.text-container.apartments div p { width: 100%; font-size: 15px; padding: var(--margin-s); }
	.apartments-photogrid { flex-wrap: wrap; }
	.apartments-photogrid div { width: 100%; height: 20vh; margin: 0 0 var(--margin-xs) 0; }
	.apartments-photogrid div:last-child { margin: 0; }
	
	.hero-div.buyingpage .text span { margin: 540px auto 0 auto; }
	.hero-div.aboutakl div { top: 32%; }
	
	.agentbox-container .heading img { display: block; margin: 0 auto var(--margin) auto; }
	
	.youtube-iframe { height: 186px; }
	.youtube-iframe.search { width: 100%; height: 220px; }
	
}
