blockquote {
  border-left: 4px solid #ddd;
  padding-left: 10px;
}
/* address {} TODO: Default apearance is block, italic, everything else inherited. Might want to change the italics to discourage its use just to italicize */

.block, .panels_pane {
  margin: 0 0 10px 0;
  position: relative;
}
/* Blocks in page closure region shouldn't affect the appearance (i.e. they're generally going to be invisible items like script) */
.region-page-closure .block {
  position: static;
  margin-bottom: 0;
}
.block.full-image-block .content {
  padding: 0 !important;
}
.block.full-image-block .content img {
  display: block;
  margin: auto;
}
.block.full-image-block .content p {
  margin: 0;
}

#polyptych, #footer-columns { 
  margin-top: 10px;
}

#branding-wrapper {
  padding-top: 15px;
  padding-bottom: 15px;
}
#site-branding-text-wrapper {
  border-left: 1px solid #aaa;
  padding: 10px;
}
#logo-image {
  box-sizing: border-box;
  max-width: 100%;
  height: auto;
  margin: 15px auto;
  display: block;
}

#header-content {
  padding: 15px 0;
}
#header .om-maximenu-content .block.block-user {
  margin: 1em;
}
#header .om-maximenu-content .block-user input.form-text {
  width: 100%;
}

#banner .block-wrapper {
  margin: 15px 0;
}
#banner .block h2.title {
  font-family: 'Typold', 'Helvetica Neue', HelveticaNeue, 'Nimbus Sans L', 'Liberation Sans', Arimo, Helvetica, Arial, sans-serif;
  background: none;
  border: none;
  margin: 0;
  padding: 0;
}
#banner .block.lp-view-block-scroller {
  margin: -15px 0; /* Cancel the wrapper's margin on the slider blocks */
}
#banner .block.lp-view-block-scroller h3, 
#banner .block.lp-view-block-scroller .views-field,
#banner .block.lp-view-block-scroller .field-content {
  font-family: 'Typold', 'Helvetica Neue', HelveticaNeue, 'Nimbus Sans L', 'Liberation Sans', Arimo, Helvetica, Arial, sans-serif;
  font-size: 12px;
  margin: 0;
  line-height: 14px;
  display: inline;
}
#banner .block.lp-view-block-scroller .view-footer {
  position: absolute;
  top: 0.75em;
  right: 0;
  font-size: 0.875em;
}

#body {
  padding: 10px 0;
}

#meta-content {
  margin: 10px;
}
.breadcrumb, div.messages, .help {
  margin: 1em 0;
}

.view.front-page-content.no-blog .node .title {
    text-align: center;
}
.view.front-page-content.no-blog .node .read-more-link {
    margin-bottom: 0;
}

#polyptych .block,
#polyptych .panels_pane {
  height: 300px;
  overflow: hidden;
}
.polyptych .panel > .spacer {
    /* used to keep an empty region from reflowing the surrounding content */
    height: 1px;
}
.region-footer-columns .block > .content {
  /* TODO: Fine-tune this. */
  height: 359px; /* There are several adjustments to this for padding and title. box-sizing: border-box doesn't work due to views-slideshow (TODO: Troubleshoot and fix that) */
  overflow: auto;
}
#diptych .views_slideshow_singleframe_teaser_section, 
#diptych .views_slideshow_slide,
#triptych .views_slideshow_singleframe_teaser_section, 
#triptych .views_slideshow_slide {
    width: 100% !important;   /* Fix jQuery Cycle sizing */
    height: 300px !important; /* Fix jQuery Cycle sizing */
}

.region-footer-columns .block.titled-content > .content {
  height: 320px; /* + 39px for the title, + 30px for padding */
}
.region-footer-columns .block.full-image-block > .content {
  height: 389px; /* no padding, no title */
}
.region-footer-columns .block.full-image-block.titled-content > .content,
.region-footer-columns #block-views-blog_posts-block_1.block > .content,
.region-footer-columns .block.block-aggregator > .content {
  height: 350px; /* no padding */
}
.region-footer-columns #block-realestatepointe-facebookfeed iframe.facebook-timeline {
  margin-top: 5px;
  height: 379px !important;
}
#polyptych-header .block,
#polyptych-header .panels_pane,
#polyptych-footer .block,
#polyptych-footer .panels_pane {
  height: auto;
}

.polyptych.container .block .content,
.polyptych.container .panels_pane .content,
.sidebar .block .content,
.region-content-top .block .content,
.region-content-bottom .block .content,
#footer-columns .block .content,
.region-lower-banner .block.titled-content .content {
  padding: 15px;
}
#polyptych .block .more-link,
#polyptych .panels_pane .more-link,
.sidebar .block .more-link,
#polyptych .block-lp-view .view-footer,
#polyptych .pane-lp-view .view-footer,
.sidebar .block-lp-view .view-footer,
#footer-columns .block .view-footer,
#footer-columns .block .more-link {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 0.875em;
  line-height: 3em;
  margin-right: 0.75em;
}
#polyptych .block-lp-view .view-footer p,
#polyptych .pane-lp-view .view-footer p,
.sidebar .block-lp-view .view-footer p,
#footer-columns .block .view-footer p {
  margin: 0;
}
#polyptych .block .more-link a:link,
#polyptych .block .more-link a:visited,
#polyptych .panels_pane .more-link a:link,
#polyptych .panels_pane .more-link a:visited,
.sidebar .block .more-link a:link,
.sidebar .block .more-link a:visited,
#polyptych .block-lp-view .view-footer a:link,
#polyptych .block-lp-view .view-footer a:visited,
#polyptych .pane-lp-view .view-footer a:link,
#polyptych .pane-lp-view .view-footer a:visited,
.sidebar .block-lp-view .view-footer a:link,
.sidebar .block-lp-view .view-footer a:visited,
#footer-columns .block .view-footer a:link, 
#footer-columns .block .view-footer a:visited,
#footer-columns .block .more-link a:link,
#footer-columns .block .more-link a:visited {
  text-decoration: none;
}
#polyptych .block .more-link a:hover,
#polyptych .panels_pane .more-link a:hover,
.sidebar .block .more-link a:hover,
#polyptych .block-lp-view .view-footer a:hover,
#polyptych .pane-lp-view .view-footer a:hover,
.sidebar .block-lp-view .view-footer a:hover,
#footer-columns .block .view-footer a:hover,
#footer-columns .block .more-link a:hover {
  text-decoration: underline;
}

.sidebar .block-aggregator .item-list ul li span.ext {
  display: none;
}

.block-lp-view .views-savedsearches-container,
.pane-lp-view .views-savedsearches-container {
  display: none;	
}

#block-menu-realestatepointe-social-links ul.menu li.leaf {
	float: left;
} 
#block-menu-realestatepointe-social-links ul.menu li.leaf a.icon {
  display: block;
  width: 19px;
  height: 19px;
  text-indent: -999999px;
  font-size: 0;
  line-height: 0;
  background-repeat: no-repeat;
}
#block-menu-realestatepointe-social-links ul.menu li a.site_phone_number {
  font-size: 17px;
  line-height: 19px;
}
#block-menu-realestatepointe-social-links ul.menu li a.icon.facebook {
  background-image: url(/sites/all/files/images/social_logos/facebook_19.png);
}
#block-menu-realestatepointe-social-links ul.menu li a.icon.twitter {
  background-image: url(/sites/all/files/images/social_logos/twitter_19.png);
}
#block-menu-realestatepointe-social-links ul.menu li a.icon.linkedin {
  background-image: url(/sites/all/files/images/social_logos/linkedin_19.png);
}
#block-menu-realestatepointe-social-links ul.menu li a.icon.youtube {
  background-image: url(/sites/all/files/images/social_logos/youtube_19.png);
}
#block-menu-realestatepointe-social-links ul.menu li a.icon.googleplus {
  background-image: url(/sites/all/files/images/social_logos/gplus_19.png);
}
#block-menu-realestatepointe-social-links ul.menu li a.icon.flickr {
  background-image: url(/sites/all/files/images/social_logos/flickr_19.png);
}
#block-menu-realestatepointe-social-links ul.menu li a.icon.pinterest {
  background-image: url(/sites/all/files/images/social_logos/pinterest_19.png);
}
#block-menu-realestatepointe-social-links ul.menu li a.icon.instagram {
  background-image: url(/sites/all/files/images/social_logos/instagram_19.png);
}
#block-menu-realestatepointe-social-links ul.menu li a.icon.rss {
  background-image: url(/misc/feed.png);
  background-position: 1px;
}

/* Forms - TODO: Create a forms.css and move there; be careful it doesn't class with master theme */
#block-search-0 { /* TODO: Better way to refer to the keyword search form than by its block id? */
}
#block-search-0 .form-item label { display: block;; /* TODO: Do something with the label */ }
#block-search-0 input {
  height: 28px;
  box-sizing: border-box;
  margin: 0;
  float: left;
}
#block-search-0 .form-item input[type="text"] {
  background-color: #f4f4f4; 
  border: 1px solid #e7e8e6;
  width: 76%;
}
#block-search-0 input[type="submit"] {
  width: 25%;
  margin-left: -1%;
}

/* Fieldsets */
fieldset {
  /* Fieldgroups without a legend need some visual treatment similar to the legend otherwise their content looks like it belongs with the previous fieldset */
  border: none;
  padding: 0.75em 1.143em;
  margin: 0 -1.143em 1.143em;
  width: 100%;
  border-top: 1.5em solid #d6d6d6;
}
fieldset legend {
  font-weight: bold;
}
fieldset fieldset {
  box-sizing: border-box; /* Negative magrings, paddings are all calculated precisely for one; nested elements will overflow their container*/
  -mox-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
html.js #content fieldset.titled-content {
  border-top: none;
  height: auto;
  padding-top: 0;
  padding-bottom: 0;
}
html.js #content fieldset.collapsed {
  margin-bottom: 1.5em;
}
html.js #content fieldset.titled-content legend {
  font-family: 'Typold', 'Helvetica Neue', HelveticaNeue, 'Nimbus Sans L', 'Liberation Sans', Arimo, Helvetica, Arial, sans-serif;
  background: #808285 url(/sites/all/themes/luna/images/bg-tab-shadow-bottom.png) repeat-x bottom;
  background-size: 0.25em;
  padding: 0.75em 1.143em;
  margin: 0 -1.143em 0.75em -1.143em;
  display: block;
  width: 100%;
  /*
   * Negative margin to cancel out the container's margin; 
   * .node margin is 1.143em = 16px;
   */
}
html.js #content fieldset.collapsible.titled-content legend {
  margin-bottom: 0;
}
html.js #content fieldset.collapsible legend a {
  text-decoration: none;
  padding: 0;
  background-position: right 0.5em;
}
html.js #content fieldset.titled-content .fieldset-wrapper {
  margin: 0.75em 0;
}
/* Fieldsets on Input Form - TODO: Right margin is still messed up. */
html.js #content form fieldset.collapsible .fieldset-wrapper {
  overflow: initial; /* System sets this to auto which makes unneccessary scrollbars and I can't figure out why. */
}
html.js #content form fieldset.collapsible .fieldset-wrapper > * {
  /* TODO: need to retheme some of the form elements to put classes on them so we don't have to use this wildcard. */
  margin: 1em 0;
}
html.js #content form .form-item .description,
html.js #content form fieldset.collapsible .fieldset-wrapper fieldset.location .description {
  font-size: 0.857em;
  font-weight: normal;
  color: #666666;
}
html.js #content form fieldset.collapsible .fieldset-wrapper th {
  font-weight: bold;
  padding-bottom: 4px;
}
html.js #content form fieldset.collapsible .fieldset-wrapper .content-multiple-table tr.even {
  background-color: #efefef;
}
html.js #content form fieldset.collapsible .fieldset-wrapper .content-multiple-table tr.odd {
  background-color: #f8f8f8;
}
html.js #content form fieldset.collapsible .fieldset-wrapper .content-add-more {
  margin: 4px 0;
}
html.js #content form fieldset.collapsible .fieldset-wrapper fieldset.location {
  border: 1px solid #ededed;
  background-color: #fafafa;
  margin-right: 10px;
}
html.js #content form fieldset.collapsible .fieldset-wrapper fieldset.location .gmap {
  margin: 5px 0;
  border: 1px solid #ccc;
}
html.js #content form fieldset table.sticky-header {
  z-index: 1; /* Specifically, this is to keep the google maps in the location chooser from covering the sticky header. May need to adjust for other things as well. */
}
html.js #content form fieldset.collapsible .fieldset-wrapper fieldset.location > .description {
  margin: 1em 0 0 0;
}
html.js #content form fieldset.collapsible .fieldset-wrapper fieldset.location .description br {
  display: none;
}

#content-wrapper {
}
#content {
  border: 1px solid #f2f3f3;
  margin: 0 0 10px 0;
}

.page-content{
  margin: 1.143em; /* TODO: Copy relative margins to aurora or master theme, don't forget negative margin on .node > .links */
}
.box {
  margin-bottom: 1.143em;
}
.box > .content {
  margin: 1.143em;
  padding: 1.143em;
}
.box > .content > .views-style-table {
  margin: -1.143em;
  margin-bottom: -2.1em;
}
/* margin between adjacent nodes (or nodes produced by a view, which are wrapped) */
.views-row-style-node > .view-content > .views-row + .views-row,
.node + .node {
  margin-top: 1.143em;
  margin-bottom: 1.143em;
}
.view-header {
  margin-bottom: 1.143em; /* Equalize the space between the view's heading and content with the space between the page content border and the content */
}
.node .content {
  margin: 0;
}
.node-teaser {
  /* margin-bottom: 3em; */
}
.node-teaser .title {
  margin-bottom: 0.25em;
}
.read-more-link {
  margin: 0.75em 0;
}
.node > div.links {
  /* TODO: This overrides .link.inline; see if that's controlled in config and if so provide alternate styles for inline vs. block */
  display: block;
  background: #A19276;
  padding: 10px;
  margin: 0 -1.455em; 
  /*
   * Negative margin to cancel out the container's margin; 
   * needs to factor in the relative text size, which is 0.75em; 
   * .page-content margin is 1.143em = 16px;
   * .node > .links is 0.786em = 11px;
   * 11px * 1.455em = 16px
   */
}
.node > div.links a:link,
.node > div.links a:visited {
  color: #e6e7e8;
}
.node > div.links a:hover {
  color: white;
}
div.panel-pane div.node.node-teaser {
  border-top: 4px solid #cdcdcd;
  padding-top: 0.5em;
}
.panel-pane .node > div.links {
  margin: 0;
}
.lp-view-display-mode-wide .lp-listing-meta-links {
  background: #ededed;
  margin-top: -36px;
  padding: 5px 8px;
}
.lp-view-display-mode-wide .lp-listing-meta-links ul {
  margin: 0;
}
.node > div.links ul.links.inline li.first,
.lp-view-display-mode-wide .lp-listing-meta-links li.first {
  padding-left: 0;
}
.node > div.links ul.links.inline li.last,
.lp-view-display-mode-wide .lp-listing-meta-links li.last {
  padding-right: 0;
}
.node > div.links ul.links.inline li,
.lp-view-display-mode-wide .lp-listing-meta-links li {
  float: left;
}
/* TODO: Make sure this is safe */
.node > div.links ul.links.inline li.service-links {
  clear: left;
  padding-left: 0;
  margin-top: 10px;
}
.lp-view-display-mode-wide .lp-listing-meta-links li {
  margin-top: 5px;
}
.lp-view-display-mode-wide .lp-listing-meta-links li.service-links  {
  margin-top: 3px;
}
.node > div.links ul.links.inline li.service-links + li.service-links{
  clear: none;
  padding-left: 0.75em;
}
.node > div.links ul.links.inline li.service-links > a,
.lp-view-display-mode-wide .lp-listing-meta-links li.service-links > a {
  line-height: 18px;
  text-decoration: none;
  font-weight: bold;
  color: black;
  border: 1px solid #bbb;
  border-radius: 3px;
  display: block;
  padding-right: 2px;
  background-color: white;
  box-shadow: inset 3px -5px 15px #ccc;
}
.node > div.links ul.links.inline li.service-links > a:hover,
.lp-view-display-mode-wide .lp-listing-meta-links li.service-links > a:hover {
  border-color: #999;
  box-shadow: inset 3px -5px 15px #aaa;
}
.node > div.links ul.links.inline li.service-links.pinterest > a,
.lp-view-display-mode-wide .lp-listing-meta-links li.service-links.pinterest > a{
  border: 0;
  box-shadow: none;
}
.node > div.links ul.links.inline li.service-links > a > img,
.lp-view-display-mode-wide .lp-listing-meta-links li.service-links > a > img {
  display: inline-block;
  margin: 1px;
  vertical-align: top;
  /* TODO: Make sure all images in the service-links realm are the same size (16x16) */
}
/*
.node > ul.links.inline li {
  float: left;
  line-height: 24px;
  height: 24px;
}
.node > ul.links.inline li[class^=service-links-] {
  clear: left;
  padding-left: 0;
}
.node > ul.links.inline li[class^=service-links-] + li {
  clear: none;
}
*/
.node > .links span.ext,
.lp-view-display-mode-wide .lp-listing-meta-links span.ext {
  display: none;
}
.node ul.links li.forward_links,
.node ul.links li.realestatepointe-link.print {
  padding-left: 1.75em !important;
  background-repeat: no-repeat;
  background-size: contain;
}
.node ul.links li.forward_links {
  background-image: url(/sites/all/files/images/ui_common/icon-email.png);
}
.node ul.links li.realestatepointe-link.print {
  background-image: url(/sites/all/files/images/ui_common/icon-printer.png);
}
#aggregator .feed-item,
.search-results dd {
  margin-left: 0;
  margin-bottom: 1em;
  padding-bottom: 1em;
  border-bottom: 4px solid #d6d6d6;
}
.search-results dd {
  padding-left: 1em;
}
.search-results p.search-info {
  margin-bottom: 0;
}

/* Comments - See selene.css line 283 - TODO: maybe put some of this in the master theme, at least some needs to go back in aurora too */

/* TODO: Move these general pager styles to the master theme */
.item-list .pager {
  font-size: .9em;
}
.item-list .pager li {
  padding: 0;
  margin: 0 0 0 1em;
}
.item-list .pager li.first {
  margin-left: 0;
}

/* Webforms */
.webform-client-form input[type=text],
.webform-client-form input[type=email],
.webform-client-form input[type=password],
.webform-client-form textarea {
  font-size: 1em;
  padding: 0.286em; /* 4px */
  margin-top: 0.286em; /* 4px gap between field and label */ 
  width: 100%;
  box-sizing: border-box;
  -mox-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
.webform-client-form .webform-component {
  max-width: 100%;
  width: 40em;
  margin: auto;
}
.webform-client-form .resizable-textarea {
  width: 100%;
}
.webform-client-form .webform-component-textarea [class^=cke_] {
  /* TODO: This should probably apply everywhere */
  box-sizing: border-box;
  -mox-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}