/* This file will hold styles for the mobile version of your website (mobile first). */
/* This also can include ANY global CSS that applies site-wide. Unless overwritten by a more specific style rule, CSS declarations in global.css will apply site-wide. */

/*******************************************************************************
 * Layout.
 */

#body-inner {
  /* y/vertical position = 50 (desired height of dark blue mobile header) - 118 (height of dark blue header on body-bg-tile.jpg) */
  background: #d2deed url(../images/body-bg-tile.jpg) repeat-x 50% -68px;
}

body.alpha-debug-processed .region {
  min-height: 0; /* Override alpha-debug.css, override 1px min-height otherwise
                  * empty regions take up 1px of height. */
}

/* admin_menu and toolbar, hack to make "responsive" on mobile by hiding extra
 * items that make them wrap onto 2nd line; "Appearance", "People", etc and
 * "Hello siteadmin" for admin_menu and "Hello admin" for toolbar. */
#admin-menu #admin-menu-menu li:nth-child(n+4),
#admin-menu #admin-menu-account .admin-menu-account,
#toolbar #toolbar-user .account {
  display: none;
}

/* Image logo.
 * 2 used 1) tablet/desktop (default omega) 2) mobile (custom smaller). */
#zone-branding div.logo-img #logo {
  display: none; /* Hide tablet/desktop logo. */
}

#zone-branding div.logo-img #logo-mobile {
  margin: 10px 10px 10px 0;
}

#zone-branding hgroup.site-name-slogan {
  clear: both; /* Bring slogan down under logo. */
}

#zone-branding hgroup.site-name-slogan h6.site-slogan {
  font-size: 0.9em;
  padding-top: 2px;
}

#zone-content {
  background: #fff;
  -webkit-border-radius: 6px; /* Saf3-4, iOS 1-3.2, Android <e;1.6 */
     -moz-border-radius: 6px; /* FF1-3.6 */
          border-radius: 6px; /* Opera 10.5, IE9, Saf5, Chrome, FF4, iOS 4, Android 2.1+ */
  padding: 0.5em 0 0.8em;
}

#breadcrumb .breadcrumb {
  font-size: 0.85em;
}

#zone-postscript-wrapper {
  margin: 0.3em 0 0;
}

#zone-postscript-wrapper h2.block-title {
  margin-bottom: 0.2em;
}

#zone-footer-wrapper {
  margin: 1.2em 0 1.6em;
}

/*******************************************************************************
 * HTML elements.
 */

ol,
ul {
  margin-left: 0; /* Standardise list indentation, idea from Zen theme. */
  padding-left: 2em;
}

a:link {
  color: #273347;
}

a:visited {
  color: #1f2939;
}

a:hover,
a:focus {
  color: #030506;
}

a:active {
  color: #030506;
}

.content a.active { /* .content needed for specificity. */
  color: #273347;
  font-weight: bold;
}

h1 {
  font-size: 2.3em;
  line-height: 1.2;
}

body.front h1 {
  font-size: 2.25em; /* Ensure homepage h1 fits on one line. */
}

body.node-type-pub h1 {
  font-size: 2em;
  line-height: 1.15;
}

h1, h2, h3, h4, h5, h6 {
  color: #273347;
}

/*******************************************************************************
 * Common elements.
 */

/*
 * Primary tabs.
 *
 * Make tabs look more like theme rather than default Drupal.
 */
ul.primary {
  border-color: #bbccee;
  padding-bottom: 6px;
}

ul.primary li a {
  background-color: #bbccee;
  border-color: #bbccee;
  -webkit-border-top-left-radius: 4px; /* Saf3-4, iOS 1-3.2, Android <e;1.6 */
     -moz-border-top-left-radius: 4px; /* FF1-3.6 */
          border-top-left-radius: 4px; /* Opera 10.5, IE9, Saf5, Chrome, FF4, iOS 4, Android 2.1+ */
  -webkit-border-top-right-radius: 4px; /* Saf3-4, iOS 1-3.2, Android <e;1.6 */
     -moz-border-top-right-radius: 4px; /* FF1-3.6 */
          border-top-right-radius: 4px; /* Opera 10.5, IE9, Saf5, Chrome, FF4, iOS 4, Android 2.1+ */
  padding-bottom: 6px;
  padding-top: 5px;
}

ul.primary li a:hover {
  background-color: #98b2e7;
  border-color: #98b2e7;
}

ul.primary li.active a {
  border-color: #bbccee #bbccee #fff;
}

/*
 * Comments.
 */
nav.node-links { /* "add new comment" and any other node links. */
  margin-top: 2em;
}

.comment {
  display: table;
  margin-bottom: 1.3em;
  vertical-align: top;
}

.attribution {
  display: table-cell;
  padding-right: 25px;
  vertical-align: top;
  width: 120px; /* Fixed width otherwise indented/reply to comments have no
                 * meaning. */
}

.attribution .commenter-name {
  font-size: 1.15em;
  margin: 0.2em 0;
}

.attribution .comment-time {
  font-size: 0.75em;
}

.comment-text {
  border: 1px solid #bbccee;
  -webkit-border-radius: 12px; /* Saf3-4, iOS 1-3.2, Android <e;1.6 */
     -moz-border-radius: 12px; /* FF1-3.6 */
          border-radius: 12px; /* Opera 10.5, IE9, Saf5, Chrome, FF4, iOS 4, Android 2.1+ */
  display: table-cell;
  padding: 8px 13px;
  position: relative;
  vertical-align: top;
}

.comment-text .comment-arrow {
  background: url("../images/comment-arrow.gif") no-repeat 0 0;
  border-right: 1px solid #fff;
  height: 40px;
  margin-left: -34px;
  margin-top: 11px;
  position: absolute;
  width: 20px;
}

.comment-text h3 {
  font-weight: normal;
  margin-bottom: 0.5em;
}

.comment-text .new {
  color: red;
}

.comment-text .field-name-comment-body p {
  margin-bottom: 0.7em;
}

.comment-text .comment-links ul li a {
  margin-top: 0.5em;
  margin-bottom: 0.2em;
}

/* Add comment form. */
.comment-form #edit-subject {
  width: 100%; /* Override html size attribute and ensure width shrinks on small
                    screens. */
}

/*
 * Common styling for href wrapped images.
 *
 * This common class allows all images wrapped in a href to have a border and
 * background colour added to them.
 */
.publocation-image-href a img {
  background-color: #d6ddee;
  border: 1px solid #92a8d4;
  padding: 2px;
}

.publocation-image-href a:hover img {
  background-color: #cdd6ec;
  border: 1px solid #6d87ba;
}

/* Links styled as buttons, styled to match omega inline buttons. Copied from
 * from omega-vusuals.css.
 * last-child selector ensures empty edit link to node/nid/edit on pub review
 * edit link is not displayed as the field is rewritten to
 * node/nid/edit-pub-review. */
.publoc-inline-link-button a:last-child {
  /*text-transform: lowercase;*/
  display: block;
  float: left;
  text-decoration: none;
  -moz-background-clip: padding;
  -webkit-background-clip: padding;
  background-clip: padding-box;
  margin: 0 0.5em 0.5em 0;
  vertical-align: middle;
  -webkit-appearance: none;
  -moz-border-radius: 11px;
  -webkit-border-radius: 11px;
  border-radius: 11px;
  background: #ddd url(/sites/all/themes/omega/omega/images/button.png) repeat-x;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(1, #ddd));
  background: -moz-linear-gradient(top center, #fff 0%, #ddd 100%);
  border: 1px solid;
  border-color: #ddd #bbb #999;
  cursor: pointer;
  color: #333;
  font: bold 12px/1.2 Arial, sans-serif;
  outline: 0;
  overflow: visible;
  padding: 4px 10px 3px;
  text-shadow: #fff 0 1px 1px;
  width: auto;

  /* IE7 */
  *padding-top: 2px;
  *padding-bottom: 0px;
}

.publoc-inline-link-button a:hover {
  background: #FFF;
}

/*
 * Field slideshow.
 *
 * Based off of jcarousel tango theme.
 */
.field-slideshow-wrapper .field-slideshow,
.field-slideshow-wrapper .field-slideshow-slide {
  padding-right: 0 !important;
  text-align: center; /* Center images in the main frame. */
  width: 100% !important;
}

.field-slideshow-wrapper .field-slideshow-slide img {
  height: auto;
  max-width: 98%; /* 2% gap for border and padding of .publocation-image-href */
}

.field-slideshow-carousel-wrapper {
  max-width: 406px; /* Max width of medium image style + border and padding. */
  position: relative;
  text-align: center; /* Center high images in the carousel. */
  width: 100%;
}

.field-slideshow-carousel-wrapper li.jcarousel-item {
  margin-left: 0; /* Override field_slideshow.css. */
  margin-right: 0; /* Override field_slideshow.css. */
  width: 100px; /* Width needed to stop js error "jCarousel: No width/height set
                 * for items...", width is arbitrary as it is overridden in js.
                 */
}

.field-slideshow-carousel-wrapper li.jcarousel-item img {
  height: auto;
  max-width: 95%; /* 5% gap for border and padding of .publocation-image-href */
}

/* Next and previous carousel navigation links. */
.field-slideshow-carousel-wrapper .carousel-prev,
.field-slideshow-carousel-wrapper .carousel-next {
  position: absolute;
  z-index: 1;
  width: 32px;
  height: 32px;
  cursor: pointer;
  color: #fff;
  font-size: 0; /* field_slideshow module hardcodes a « and », this is an ugly
                 * hack to hide it. */
  top: 20px;
  text-decoration: none;
}

.field-slideshow-carousel-wrapper .carousel-prev {
  left: -20px;
  background: transparent url(../images/jcarousel/prev-horizontal.png) no-repeat 0 0;
}

.field-slideshow-carousel-wrapper .carousel-prev:hover,
.field-slideshow-carousel-wrapper .carousel-prev:focus {
    background-position: -32px 0;
}

.field-slideshow-carousel-wrapper .carousel-prev:active {
    background-position: -64px 0;
}

.field-slideshow-carousel-wrapper .carousel-next {
  right: -20px;
  background: transparent url(../images/jcarousel/next-horizontal.png) no-repeat 0 0;
  text-align: right;
}

.field-slideshow-carousel-wrapper .carousel-next:hover,
.field-slideshow-carousel-wrapper .carousel-next:focus {
    background-position: -32px 0;
}

.field-slideshow-carousel-wrapper .carousel-next:active {
    background-position: -64px 0;
}


/*
 * Pub map.
 */
#publoc-map {
  border: 1px solid #92a8d4;
}

#publoc-map-pubs-near-me {
  margin: 5px 0 10px;
}

#publoc-map-pubs-near-me a {
  background: url(../images/icon-pubs-near-me.png) no-repeat 0 0;
  display: block;
  min-height: 26px;
  max-width: 200px; /* Ensure "block" link doesn't stretch full width of map. */
  padding: 2px 0 0 29px;
}

#publoc-map-home-states {
  margin-bottom: 0;
}

#publoc-map-tabs {
  /* Override system.menus.css. */
  border-bottom: none; /* Map already has a border. */
  margin: 0; /* Bring flush with map. */
}

#publoc-map-tabs li a {
  padding: 3px 1em 6px 1.8em; /* Give space for icons. */
}

#publoc-map-tabs li#publoc-map-tab-publocation a {
  background-image: url(../images/icon-beer.png);
  background-repeat: no-repeat;
  background-position: 2px 2px;
}

#publoc-map-tabs li#publoc-map-tab-streetview a {
  background-image: url(../images/icon-streetview.png);
  background-repeat: no-repeat;
  background-position: 2px 2px;
}

#publoc-map-tabs li#publoc-map-tab-streetview-update a {
  color: #273347; /* Match standard a colour above. */
  /* Override "ul.primary li" bg colour and border set above. */
  background: none;
  border: none;
  padding-left: 0;
  text-decoration: underline;
}

#publoc-map-tabs li#publoc-map-tab-streetview-update a:hover,
#publoc-map-tabs li#publoc-map-tab-streetview-update a:focus {
  color: #030506;
  text-decoration: none;
}

#publoc-map .leaflet-marker-draggable {
  cursor: move;
}

#publoc-streetview {
  display: none;
}

/*
 * Pub map overlay.
 */
.publoc-map-overlay-image {
  padding: 6px 4px 8px 0;
  width: 130px;
}

.publoc-map-overlay-image img {
  max-width: 100%;
  height: auto;
}

.publoc-map-overlay-title {
  padding-right: 4px;
}

.publoc-map-overlay-title a {
  font-weight: bold;
}

/*
 * Sidebars.
 */
#region-sidebar-first ul,
#region-sidebar-second ul {
  /* Override system.menus.css */
  margin-left: 0; /* Standardise list indentation, idea from Zen theme. */
  padding-left: 0.6em;
}

#region-sidebar-first .item-list ul li,
#region-sidebar-second .item-list ul li {
  /* Override system.theme.css */
  margin-left: 0;
}

/*******************************************************************************
 * Blocks.
 */

/*
 * Cross site navigation.
 */
#block-publoc-publoc-cross-site-nav {
  position: absolute;
  top: 19px;
  left: 182px;
}

#block-publoc-publoc-cross-site-nav .content {
  position: relative;
}

#block-publoc-publoc-cross-site-nav .contextual-links-wrapper {
  display: none; /* Contextual links make no sense for this tiny block, hide
                  * them. */
}

#block-publoc-publoc-cross-site-nav .guide {
  display: none;
}

#block-publoc-publoc-cross-site-nav .country a {
  background: url(../images/cross-site-icons.png) no-repeat  0 0;
  color: #090c12;
  display: inline-block;
  line-height: 18px;
  margin: 2px 0;
  padding: 1px 0 1px 25px;
  text-decoration: none;
  vertical-align: top;
}

/* Very narrow screens, move drop down icon closer to country icon to save
 * horizontal space. */
@media all and (max-width: 380px) {
  #block-publoc-publoc-cross-site-nav .country a {
    padding-left: 20px;
  }
}

/* Narrow screens, hide current country name to save horizontal space. */
@media all and (max-width: 420px) {
  #block-publoc-publoc-cross-site-nav .current-country .country-name {
    display: none;
  }
}

#block-publoc-publoc-cross-site-nav .current-country a:hover {
  background-color: #5c749f;
}

/* extlink module, hide open in new window icon. */
#block-publoc-publoc-cross-site-nav .country a span.ext {
  display: none;
}

#block-publoc-publoc-cross-site-nav .country.australia a {
  background-position: 4px -18px;
}

#block-publoc-publoc-cross-site-nav .country.new-zealand a {
  background-position: 4px -36px;
}

#block-publoc-publoc-cross-site-nav .country.ireland a {
  background-position: 4px -54px;
}

#block-publoc-publoc-cross-site-nav .country .drop-down {
  background: url(../images/cross-site-icons.png) no-repeat  0 0;
  display: inline-block;
  height: 18px;
  vertical-align: top;
  width: 18px;
}

#block-publoc-publoc-cross-site-nav ul.cross-site-nav {
  background-color: #5c749f;
  display: none;
  left: 0;
  list-style: none;
  margin: 0;
  min-width: 115px;
  padding: 0;
  position: absolute;
  top: 22px;
  z-index: 100;
}

#block-publoc-publoc-cross-site-nav ul.cross-site-nav li {
  padding: 4px 0;
  white-space: nowrap;
}

#block-publoc-publoc-cross-site-nav ul.cross-site-nav li:hover {
  background-color: #6a84b3;
}

/*
 * Header menu.
 *
 * Mobile header menu on mobile uses responsive-nav to collapse it to a
 * hamburger icon.
 */
#block-system-main-menu {
  /* Offset padding on .region-menu. */
  margin-left: -10px;
  margin-right: -10px;
}

#block-system-main-menu .content ul.menu {
  display: block;
  margin: 0;
}

#block-system-main-menu .content ul.menu li {
  background: #8a9cbb;
  border-bottom: 2px solid #7a89a5;
  display: block;
  font-size: 1.3em;
  margin-left: 0; /* Override system.menu.css. */
}

#block-system-main-menu .content ul.menu li:hover {
   background: #7d91b4;
   border-color: #6e81a3;
 }

#block-system-main-menu .content ul.menu li a {
  display: block;
  padding: 8px 15px;
  text-decoration: none;
}

/* "NEW" next to menu items, imitate <sup> tag. */
#block-system-main-menu .content ul.menu li a.publ-menu-new:after {
  content: '  NEW';
  font-size: 0.4em;
  color: red;
  vertical-align: top;
}

/* Required responsive-nav.js styles: */
.nav-collapse.opened {
  max-height: 9999px;
}

.nav-collapse.closed {
  clip: rect(0 0 0 0);
  max-height: 0;
  position: absolute;
  display: block;
  overflow: hidden;
  zoom: 1;
}

.nav-collapse.closed ul.links {
  display: none;
}

.nav-toggle {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: 40px;
  height: 40px;
  position: absolute;
  top: -45px;
  right: 0;
  text-indent: -9999px;
  overflow: hidden;
  background: transparent url(../images/hamburger.png) no-repeat 50% 33%;
  transition: background-color 0.2s ease-out;
}

.nav-toggle:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

/*
 * Search form.
 */
#block-search-form {
  display: none; /* Hide by default on mobile until search icon is clicked. */
  height: 37px;
  padding-top: 12px;
}

#block-search-form input {
  font-size: 1.1em;
}

/* Mobile search icon. */
#block-publoc-publoc-mobile-search-icon {
  cursor: pointer;
  position: absolute;
  top: 5px;
  right: 50px;
  transition: background-color 0.2s ease-out;
}

/* Very narrow screens, move search icon closer menu/hamburger icon to save
 * horizontal space. */
@media all and (max-width: 380px) {
  #block-publoc-publoc-mobile-search-icon {
    right: 40px;
  }
}


#block-publoc-publoc-mobile-search-icon:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

/*
 * Homepage intro.
 */
#boxes-box-publoc_homepage_intro .boxes-box-content {
  font-size: 0.95em;
  margin-bottom: 1.5em;
}

#boxes-box-publoc_homepage_intro .boxes-box-content p {
  margin-bottom: 0.7em;
}

/*
 * Homepage featured pubs section.
 */
#block-publoc-publoc-homepage-featured-pubs {
  margin: 2em 0 1em 0;
}

body.responsive-layout-mobile #block-publoc-publoc-homepage-featured-pubs #publoc-featured-pubs-ad {
  margin-bottom: 20px; /* On mobile add whitepace after ad and before pubs
                        * below. */
}

/*
 * Blocks in sidebars.
 */
#region-sidebar-first .block,
#region-sidebar-second .block {
  border: 1px solid #bbccee;
  -webkit-border-radius: 12px; /* Saf3-4, iOS 1-3.2, Android <e;1.6 */
     -moz-border-radius: 12px; /* FF1-3.6 */
          border-radius: 12px; /* Opera 10.5, IE9, Saf5, Chrome, FF4, iOS 4, Android 2.1+ */
  margin-top: 1.5em; /* Space for first sidebar-compass.png */
  position: relative;
}

#region-sidebar-first .block .block-inner-top,
#region-sidebar-second .block .block-inner-top {
  background: url(../images/sidebar-compass.png) no-repeat  0 0;
  height: 30px;
  left: -8px;
  position: absolute;
  top: -13px;
  width: 25px;
}

#region-sidebar-first .block .block-title,
#region-sidebar-second .block .block-title {
  background-color: #bbccee;
  -webkit-border-top-left-radius: 10px; /* Saf3-4, iOS 1-3.2, Android <e;1.6 */
     -moz-border-top-left-radius: 10px; /* FF1-3.6 */
          border-top-left-radius: 10px; /* Opera 10.5, IE9, Saf5, Chrome, FF4, iOS 4, Android 2.1+ */
  -webkit-border-top-right-radius: 10px; /* Saf3-4, iOS 1-3.2, Android <e;1.6 */
     -moz-border-top-right-radius: 10px; /* FF1-3.6 */
          border-top-right-radius: 10px; /* Opera 10.5, IE9, Saf5, Chrome, FF4, iOS 4, Android 2.1+ */
  padding-left: 19px;
}

#region-sidebar-first .block .content,
#region-sidebar-second .block .content {
  margin: 0.3em 0.4em 0.5em;
}

/*
 * "Featured pubs" and "Pubs nearby" blocks.
 */
/*
 * Homepage featured pubs.
 */
body.front #block-views-featured-pubs-sidebar-block {
  display: none; /* Front page has Featured pubs section which doubles up with
                  * this block when they stack on this mobile layout, so simply
                  * hide this block. */
}

.featured-and-nearby-pubs-view .view-content {
  text-align: center;
}

.featured-and-nearby-pubs-view .view-content .views-row {
  margin: 0.4em 0 1em;
}

.featured-and-nearby-pubs-view .view-content .views-field-field-pub-images {
  margin-right: 3px; /* Gap for border and padding of .publocation-image-href */
}

.featured-and-nearby-pubs-view .view-content .views-field-field-pub-images img {
  height: auto;
  max-width: 100%;
}

/*
 * Follow Publocation block.
 */
#block-publoc-publoc-sidebar-social-media .content p {
  margin: 0.5em 0 0.3em;
}

#block-publoc-publoc-sidebar-social-media .content ul {
  text-align: center; /* Center everything within ul, images and fb iframe. */
  margin-bottom: 0.2em;
  padding-left: 0;
}

#block-publoc-publoc-sidebar-social-media .content ul li {
  display: inline-block; /* Allow contents to be centered above. */
  list-style-type: none;
  margin: 0 18px 5px 0;
  vertical-align: top;
  width: 75px;
}

#block-publoc-publoc-sidebar-social-media .content ul li.last {
  margin-right: 0;
}

#block-publoc-publoc-sidebar-social-media .content ul li iframe.twitter-follow-button {
  margin-left: 9px; /* Hack to center "Follow" button under fixed width beercap
                     * image above it in the dom, no other way to do it. */
}

/* extlink module, hide open in new window icon. */
#block-publoc-publoc-sidebar-social-media .content ul li span.ext {
  display: none;
}

/*
 * Publocation for Mobile.
 */
#region-sidebar-second #block-publoc-publoc-sidebar-mobile-info .content /* #region-sidebar-second needed for specificity. */ {
  margin-top: 8px;
}

body.responsive-layout-mobile #block-publoc-publoc-sidebar-mobile-info .content #publoc-mobile-any-device {
  float: left; /* On mobile only float image to left of text. */
  margin-right: 8px;
}

#block-publoc-publoc-sidebar-mobile-info .content p {
  font-size: 0.85em;
  margin-bottom: 10px; /* Downsize, override omega-text.css. */
}

/*
 * Latest beer review block.
 */
#block-views-beer-reviews-sidebar-block .view-content .views-row {
  margin: 0.4em 0 1.2em;
}

#block-views-beer-reviews-sidebar-block .views-field-title {
  font-weight: bold;
  margin: 0.4em 0 0.6em;
  text-align: center;
}

#block-views-beer-reviews-sidebar-block .views-field-field-beer-images {
  text-align: center;
}

#block-views-beer-reviews-sidebar-block .views-field-field-beer-images img {
  height: auto;
  max-width: 40%; /* Beer images are in portrait.*/
}

#block-views-beer-reviews-sidebar-block .views-field-body p {
  font-size: 0.9em;
  line-height: 1.3;
  margin-bottom: 0.4em;
}

#block-views-beer-reviews-sidebar-block .view-footer p {
  margin: 0.9em 0 0.4em; /* Top margin adds white space after ad
                          * "Device: Mobile - Sidebar beer review - Link unit 120x90" and
                          * "Device: Desktop and tablet - Sidebar beer review - Link unit 120x90". */
}

/*
 * My pub(s) block.
 */
#block-publoc-publoc-my-pub p.publoc-num-pubs {
  margin: 0.2em 0 0.4em;
}

#block-publoc-publoc-my-pub p.publoc-add-pub {
  font-size: 0.8em;
  margin: 1.2em 0 0.8em;
}

/*
 * Did you know ... (pub facts).
 */
#block-views-pub-fact-sidebar-block .views-field-body p {
  margin-bottom: 0.8em;
}

#block-views-pub-fact-sidebar-block .view-footer p {
  margin-bottom: 0.4em;
}

/*
 * Blocks in footer.
 */

/*
 * Feature pub / Nearby pub.
 */
#block-views-featured-pubs-footer-block,
#block-views-pubs-nearby-footer-block {
  margin-top: 2.2em; /* Bring down to match other blocks. */
}

/*
 * Publocation Twitter.
 */
#block-widgets-s-twitter-profile-widget {
  margin-top: 2.2em; /* Space for icon. */
  position: relative;
}

#block-widgets-s-twitter-profile-widget .block-inner-top {
  background: url(../images/twitter-beer-icon.png) no-repeat  0 5px;
  height: 54px;
  left: -18px;
  position: absolute;
  top: -22px;
  width: 50px;
}

#block-widgets-s-twitter-profile-widget h2.block-title {
  margin-top: -5px 0  5px; /* Raise title for better vertical alignment with icon. */
  padding-left: 1.9em; /* Space for icon. */
}

#block-widgets-s-twitter-profile-widget .twitter-follow-button {
  margin-top: 0.4em;
}

#block-widgets-s-twitter-profile-widget span.ext {
  /* Remove extlink icon from bottom follow button. */
  background: none;
  padding: 0;
}

/*
 * Publocation Facebook.
 */
#block-widgets-s-facebook-like-box {
  margin-top: 2.5em; /* Space for icon. */
  position: relative;
}

#block-widgets-s-facebook-like-box .block-inner-top {
  background: url(../images/facebook-beer-icon.png) no-repeat 0 10px;
  height: 48px;
  left: -12px;
  position: absolute;
  top: -22px;
  width: 60px;
}

#block-widgets-s-facebook-like-box h2.block-title {
  margin: -5px 0 5px; /* Raise title for better vertical alignment with icon. */
  padding-left: 2.7em; /* Space for icon. */
}

#block-widgets-s-facebook-like-box .content {
  background-color: #fff;
}

#block-widgets-s-facebook-like-box .fb-like-box,
#block-widgets-s-facebook-like-box .fb-like-box > span,
#block-widgets-s-facebook-like-box .fb-like-box iframe {
  width: 100% !important; /* Override widgets hardcoded width. */
}

/*
 * Footer About Publocation.
 */
#block-boxes-publoc-footer-about-publocation {
  margin-top: 2.2em;
}

#block-boxes-publoc-footer-about-publocation .boxes-box-content {
  font-size: 0.9em;
}

/*
 * Footer menu.
 */
#block-menu-menu-footer-menu {
  margin: 0.3em 1em 0.5em 0.5em;
}

#block-menu-menu-footer-menu .content ul.menu {
  text-align: center;
}

#block-menu-menu-footer-menu .content ul.menu li {
  font-size: 1.1em;
  display: inline;
  list-style-type: none;
  margin: 0 0.3em 0 0;
  padding: 0 0.3em;
  white-space: nowrap; /* Ensure multi word menu item do not wrap. */
}

#block-menu-menu-footer-menu .content ul.menu li a {
  text-decoration: none;
  color: #354262;
}

#block-menu-menu-footer-menu .content ul.menu li a:hover,
#block-menu-menu-footer-menu .content ul.menu li a:focus {
  color: #142b65;
}

/***************************************
 * Collapse/expand mobile blocks.
 */

/**
 * Collapse blocks for mobile.
 */
.view-publoc-pub-reviews h2.title,
#comments-wrapper h2.title,
#comment-form-wrapper h2.title,
#block-views-featured-pubs-sidebar-block .block-title,
#block-views-pubs-nearby-sidebar-block .block-title,
#block-user-login .block-title,
#block-system-user-menu .block-title,
#block-views-beer-reviews-sidebar-block .block-title,
#block-views-pub-fact-sidebar-block .block-title,
#block-widgets-s-twitter-profile-widget .block-title,
#block-widgets-s-facebook-like-box .block-title {
  cursor: pointer; /* Indicate the title can be clicked to toggle the block. */
  /* Round all borders when collapsed (not just top ones). */
  -webkit-border-radius: 10px; /* Saf3-4, iOS 1-3.2, Android <e;1.6 */
     -moz-border-radius: 10px; /* FF1-3.6 */
          border-radius: 10px; /* Opera 10.5, IE9, Saf5, Chrome, FF4, iOS 4, Android 2.1+ */
}

/* Collapsed blocks with no bg colour need one to indicate they are a block. */
.view-publoc-pub-reviews h2.title, /* Pub review eva or comments certainly aren't blocks, but we're styling it here as such. */
#comments-wrapper h2.title,
#comment-form-wrapper h2.title,
#block-widgets-s-twitter-profile-widget .block-title,
#block-widgets-s-facebook-like-box .block-title {
  background-color: #bbccee;
}

/* Hide "add new comment" node link. */
.page-node nav.node-links .comment-add { /* .page-node ensures this applies to node detail, not teasers. */
  display: none; /* The "Add new comment" form is collapsed by default on mobile
                  * and all this link is is a anchor link to #comment-form, so
                  * when clicked unless the comment for is expanded then nothing
                  * happens. Not great for usability ;). Simple solution is to
                  * hide the link on mobile, it is already accessible by
                  * clicking on the "Add new comment" form title. This is
                  * overridden to show on non mobile (where the form is not
                  * collapsed and this issue doesn't happen). */
}

/* Hide "add new comment" node link on pub nodes. */
.node-type-pub nav.node-links {
  display: none; /* Pub nodes had comments enabled before the switch to
                  * pub_review nodes. However existing comments need to be
                  * displayed so comments are set to "Closed", not "Hidden" and
                  * therefore the "add new comment" link is still rendered, but
                  * displays only as an empty ul li inside the .node-links. As
                  * However above here nav.node-links is given a top margin
                  * which still displays even though the li is empty. PITA so
                  * here we simply hide the link on pub nodes. Note it is not
                  * unhidden on non mobile devices as all pubs can no longer
                  * have comments added.
                  * Note the very non specific selector here (i.e. targetting
                  * all node-links) is needed as there are no other classes to
                  * target! */
}

/* Plus/minus toggle indicator. */
.publoc-toggle {
  font-size: 1.5em;
  font-weight: bold;
  line-height: 0.85;
  position: absolute;
  right: 15px;
}

/*******************************************************************************
 * publoc.module specific styles.
 */

/*
 * Logintoboggan's unified login page.
 *
 * Note this unified login is presented on /user, /user/account, /user/register
 * as well as 403 pages.
 */
/* "OR" sitting under fb login. */
.toboggan-unified #publoc-login-fb-recommended p {
  text-align: center;
  margin: 15px 0 25px;
}

.toboggan-unified #login-links {
  font-size: 1.1em; /* Override logintoboggan.css, downsize. */
  line-height: 1; /* Override logintoboggan.css, downsize. */
  text-align: left; /* Override logintoboggan.css, left no center. */
  margin-bottom: 15px; /* Whitespace before form contents below. */
}

.toboggan-unified #login-links a {
  padding: 6px 14px; /* Override logintoboggan.css, downsize. */
  border-color: #98b2e7; /* Override logintoboggan.css, match Primary tabs. */
}

.toboggan-unified #login-links a.lt-active,
.toboggan-unified #login-links a.lt-active:hover {
  background-color: #fff; /* Override logintoboggan.css, match Primary tabs. */
  border-color: #bbccee #bbccee #fff; /* Override logintoboggan.css, match Primary tabs. */
  border-width: 1px; /* Override logintoboggan.css, downsize. */
  font-weight: bold;
}

/*
 * Social media login links.
 */
/* "Or you can login with" heading. */
#publoc-socal-media-login h3 {
  font-size: 1.2em; /* Override omega-text.css, downsize. */
  margin: 1.7em 0 0.5em; /* Move down from "Log in" button. */
}

#publoc-socal-media-login ul li {
  margin-bottom: 0.5em; /* Override system.theme.css, increase whitespace. */
}

#publoc-socal-media-login p {
  font-size: 0.85em;
  margin-left: 2em;
}

/*******************************************************************************
 * Section/page specific styles.
 */

/***************************************
 * Featured pubs section (homepage, state, suburb).
 */
/*******************
 * Pub(s).
 */
.publoc-featured-pubs h3 {
  font-size: 1.35em; /* Downsize. */
  margin-bottom: 10px; /* Downsize, override omega-text.css. */
}

.publoc-featured-pubs .item-list ul {
  margin: 0; /* Override system.theme.css.*/
  padding: 0; /* Override omega-text.css.*/
}

body.responsive-layout-mobile .publoc-featured-pubs .item-list ul li.publoc-pub-3,
.publoc-featured-pubs .item-list ul li.publoc-pub-4,
.publoc-featured-pubs .item-list ul li.publoc-pub-5,
.publoc-featured-pubs .item-list ul li.publoc-pub-6 {
  display: none; /* Pub 4 is only ever shown on tablet and desktop, 5 and 6 are
                  * only ever shown on desktop. While they are hidden on the
                  * server side for non desktop (i.e. not output), we hide them
                  * here for desktop browser window resizing. */
}

/* Mobile only. */
body.responsive-layout-mobile .publoc-featured-pubs .item-list ul {
  text-align: center; /* Center pubs. */
}

body.responsive-layout-mobile .publoc-featured-pubs .item-list ul li {
  margin-bottom: 15px;
}

/*******************
 * Ad.
 */
/* Mobile only. */
body.responsive-layout-mobile .publoc-featured-pubs #publoc-featured-pubs-ad {
  margin: 0 auto; /* Center in column, without width this doesn't work. */
  width: 300px;
}

/***************************************
 * Search results.
 */
/* "Search results" heading. */
body.page-search h2 {
  margin-bottom: 16px; /* Override omega-text.css, downsize. */
}

.search-results {
  padding-left: 1em; /* Override global.css, downsize. */
}

.search-results .search-result {
  margin-bottom: 2.7em; /* Override search.css, upsize. */
}

.search-results .search-result:last-child {
  margin-bottom: 1em; /* Last result, bring closer to content after this. */
}

.search-results .search-result .title {
  font-size: 1.35em; /* Override search.css, upsize. */
  margin-bottom: 0.25em; /* Override omega-text.css, downsize. */
}

.search-results .search-result .publoc-search-pub-image {
  float: left;
  margin: 0 15px 0 0;
  max-width: 150px;
}

.search-results .search-result .publoc-search-pub-image img {
  height: auto;
  max-width: 100%;
}

.search-results .search-result.search-result-node-type-pub .search-snippet-info {
  margin-left: 165px; /* Make way for pub image at left, move search result text
                      /* to the right. */
  padding-left: 0; /* Override search.css. */
}

.search-results .search-result .search-snippet {
  margin-bottom: 12px; /* Override omega-text.css, downsize. */
}

/* Fivestar beer rating. */
.search-results .search-result .fivestar-beers-label,
.search-results .search-result .fivestar-beers {
  float: left;
}

.search-results .search-result .fivestar-beers-label {
  font-size: 0.9em;
  width: 47px; /* Fixed width so fivestar beers can float up to the right of
               /* this. */
}

/* Search results ads. */
#publoc-search-ad-container-1,
#publoc-search-ad-container-2 {
  padding-bottom: 1.4em;
  padding-left: 1em; /* Add whitespace at left, match .search-results above. */
}

#publoc-search-ad-container-3 {
  margin-top: -0.3em;
  padding-bottom: 1.4em;
}

/***************************************
 * Pub state.
 */
body.node-type-pub-state #publoc-pub-state-map-heading {
  font-size: 1.35em; /* Downsize. */
  margin: 10px 0 6px 0; /* Top margin ads space after featured pubs above.
                         * Downsize bottom margin, override omega-text.css. */
}

body.node-type-pub-state ul#publoc-pub-state-suburb-list {
  margin: 0; /* Override system.theme.css.*/
  padding: 0; /* Override omega-text.css.*/
}

body.node-type-pub-state ul#publoc-pub-state-suburb-list li {
  list-style: disc; /* Override alpha-alpha.css. */
}

/***************************************
 * Pub suburb.
 */
body.node-type-pub-suburb #publoc-pub-suburb-map-heading {
  font-size: 1.35em; /* Downsize. */
  margin: 10px 0 6px 0; /* Top margin ads space after featured pubs above.
                         * Downsize bottom margin, override omega-text.css. */
}

body.node-type-pub-suburb ul#publoc-pub-suburb-pub-list {
  margin: 0; /* Override system.theme.css.*/
  padding: 0; /* Override omega-text.css.*/
}

body.node-type-pub-suburb ul#publoc-pub-suburb-pub-list li {
  list-style: disc; /* Override alpha-alpha.css. */
}

/***************************************
 * Pub detail.
 */
body.node-type-pub .field-publoc-pub-state {
  float: left;
  padding-right: 0.5em;
}

body.node-type-pub .field-name-field-pub-suburb-ref a,
body.node-type-pub .field-publoc-pub-state a {
  /* Links to state and suburb mainly for SEO, so make them look like normal
   * text. */
  color: #354262;
  text-decoration: none;
}

body.node-type-pub .field-name-field-rating {
  margin: 1em 0 0.5em;
}

body.node-type-pub .group-summary-left {
  font-size: 1.1em;
  margin-top: 2em;
}

/* Social media icons. */
body.node-type-pub .group-summary-left .field-name-field-pub-social-media-icons {
  margin-top: 5px; /* Whitespace after other contact details above. */
}

body.node-type-pub .group-summary-left #publoc-pub-social-media-icons ul {
  margin-left: 0; /* Override system.theme.css. */
  padding-left: 0; /* Override omega-text.css. */
}

body.node-type-pub .group-summary-left #publoc-pub-social-media-icons ul li {
  display: inline-block;
  margin-left: 10px; /* Override system.theme.css. */
}

body.node-type-pub .group-summary-left #publoc-pub-social-media-icons ul li a {
  background: url("../images/pub-social-media-icons-v2.png") no-repeat 0 0; /* Sprite loaded and positioned for each site. */
  display: block;
  height: 30px;
  width: 30px;
}

body.node-type-pub .group-summary-left #publoc-pub-social-media-icons ul li a.twitter {
  background-position: -30px 0;
}

body.node-type-pub .group-summary-left #publoc-pub-social-media-icons ul li a.google-plus {
  background-position: -60px 0;
}

body.node-type-pub .group-summary-left #publoc-pub-social-media-icons ul li a.youtube {
  background-position: -90px 0;
}

body.node-type-pub .group-summary-left #publoc-pub-social-media-icons ul li a.linkedin {
  background-position: -120px 0;
}

body.node-type-pub .group-summary-left #publoc-pub-social-media-icons ul li a.foursquare {
  background-position: -150px 0;
}

body.node-type-pub .group-summary-left #publoc-pub-social-media-icons ul li a.pinterest {
  background-position: -180px 0;
}

body.node-type-pub #publoc-top-add-review-link {
  padding: 0 0 3.2em;
}

body.node-type-pub .field-name-body {
  clear: both;
  padding: 2.5em 0;
}

body.node-type-pub .field-name-body .field-label {
  font-size: 1.4em;
  margin-bottom: 0.5em;
}

body.node-type-pub .field-name-body p {
  margin-bottom: 0.8em;
}

/* Map. */
body.node-type-pub .field-name-field-gmap-lat {
  clear: both; /* Ensure any inline floated ad above is cleared out. */
}

body.node-type-pub p#publoc-editor-message {
  margin: 1em 0 0.8em;
}

/***************************************
 * Pub review.
 */
/*
 * Reviews for display.
 */
body.node-type-pub .view-id-publoc_pub_reviews {
  clear: both; /* Clear out floated inline ad / pub manager message above. */
  padding-top: 1em;
}

body.node-type-pub .view-id-publoc_pub_reviews .views-row {
  margin-top: 2em; /* Whitespace between each review. */
}

body.node-type-pub .view-id-publoc_pub_reviews .views-row-first {
  margin-top: 0;
}

/* "Write a Review". */
body.responsive-layout-mobile.node-type-pub .view-id-publoc_pub_reviews .view-header .publoc-inline-link-button a {
  margin: 0 0 25px; /* Inline for mobile, add whitespace before reviews.*/
}

body.node-type-pub .view-id-publoc_pub_reviews .view-content,
body.node-type-pub .view-id-publoc_pub_reviews .view-empty {
  clear: both; /* Clear out floated "Write a Review" .publoc-inline-link-button
                * link above. */
}

/* Left/right column styling based on comment styling above. */
body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-left-column {
  display: table-cell;
  padding-right: 25px;
  vertical-align: top;
  width: 105px;
}

body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-left-column .views-field-picture img {
  max-height: 100px;
  max-width: 100px;
}

body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-left-column .views-field-name {
  font-size: 1.15em;
  margin: 0.2em 0;
}

body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column {
  border: 1px solid #bbccee;
  -webkit-border-radius: 12px; /* Saf3-4, iOS 1-3.2, Android <e;1.6 */
     -moz-border-radius: 12px; /* FF1-3.6 */
          border-radius: 12px; /* Opera 10.5, IE9, Saf5, Chrome, FF4, iOS 4, Android 2.1+ */
  display: table-cell;
  padding: 8px 13px;
  position: relative;
  vertical-align: top;
}

body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .review-arrow {
  background: url("../images/comment-arrow.gif") no-repeat 0 0;
  border-right: 1px solid #fff;
  height: 40px;
  margin-left: -34px;
  margin-top: 11px;
  position: absolute;
  width: 20px;
}

/* Review title. */
body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-title h3 {
  margin-bottom: 0.3em;
}

/* Overall rating. */
body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-field-rating .fivestar-user-stars {
  float: left; /* Float stars to the left so label sits to the right. */
  margin-right: 8px; /* Whitespace before label at right. */
}

body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-field-rating .fivestar-user-stars .form-item {
  margin: 0; /* Match line height of date at right. */
}

/* Date posted. */
body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-created {
  font-size: 0.85em;
}

/* Review body. */
body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-field-pub-review-body {
  clear: both; /* Clear out from floated rating/date above. */
  margin-top: 10px; /* Whitespace after rating/date above. */
}

/* Detailed fivestar ratings. */
body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-field-pub-review-service,
body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-field-pub-review-accommodation,
body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-field-pub-review-food,
body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-field-pub-review-entertainment {
  clear: both; /* Clear each new "fivestar | label" row from the one above. */
  margin: 4px 0;
}

body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-field-pub-review-service .fivestar-user-stars,
body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-field-pub-review-accommodation .fivestar-user-stars,
body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-field-pub-review-food .fivestar-user-stars,
body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-field-pub-review-entertainment .fivestar-user-stars {
  float: left; /* Float stars to the left so label sits to the right. */
  margin-right: 8px; /* Whitespace before label at right. */
}

body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-field-pub-review-service .fivestar-user-stars .form-item,
body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-field-pub-review-accommodation .fivestar-user-stars .form-item,
body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-field-pub-review-food .fivestar-user-stars .form-item,
body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-field-pub-review-entertainment .fivestar-user-stars .form-item {
  margin: 2px 0; /* Match line height of label at right. */
}

/* Review images. */
body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-field-pub-review-images {
  clear: both; /* Clear out from floated ratings above. */
  margin: 20px 0 5px;
}

body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .views-field-field-pub-review-images img {
  max-width: 145px;
  height: auto;
  margin-bottom: 10px;
}

/* edit / delete links. */
body.node-type-pub .view-id-publoc_pub_reviews .publoc-pub-review-review-right-column .publoc-inline-link-button a {
  margin-top: 8px; /* Whitespace after content above. */
}

/* View footer. */
body.node-type-pub .view-id-publoc_pub_reviews .view-footer {
  margin: 15px 0 5px;
}

/* Old read only comments on pub nodes. */
body.responsive-layout-mobile.node-type-pub #comments {
  margin-top: 0; /* Override comment.css to close down gap between collapsed
                  * (i.e. toggle to expand/collapse) Reviews and Comments
                  * "blocks", but only on mobile. */
}

/*
 * Pub review add/edit.
 */
/* Main pub image. */
form.node-pub_review-form .publocation-image-href {
  margin-bottom: 20px;
}

/* Review slogan .*/
form.node-pub_review-form #publoc-pub-review-slogan {
  font-size: 0.9em;
  font-style: italic;
  margin-bottom: 22px;
}

/* "Your overall rating" fivestar widget. */
form.node-pub_review-form .form-item-vote label {
  font-size: 1.45em;
}

/* "Title of your review" */
form.node-pub_review-form #edit-title {
  width: 100%; /* Ensure size="60" on field doesn't push too wide on mobile. */
}

/* Make all labels stand out. */
form.node-pub_review-form .form-item-title label,
form.node-pub_review-form .form-item-field-pub-review-body-und-0-value label,
form.node-pub_review-form #node_pub_review_form_group_pub_review_detail .fieldset-legend,
form.node-pub_review-form #edit-field-pub-review-images .fieldset-legend,
form.node-pub_review-form .form-item-publoc-pub-review-guidelines label {
  font-weight: bold;
  font-size: 1.15em;
}

form.node-pub_review-form #edit-field-pub-review-images {
  padding-top: 12px;
}

/* Review guidelines. */
form.node-pub_review-form .form-item-publoc-pub-review-guidelines {
  margin: 30px 0;
}

form.node-pub_review-form #edit-submit {
  font-size: 1.2em;
}

/***************************************
 * Beer review.
 */
/* Summary view. */
body.page-beer-reviews .view-beer-reviews .view-header {
  margin-bottom: 2.5em;
}

body.page-beer-reviews .view-beer-reviews .view-header h3 {
  margin-bottom: 0.3em;
}

body.page-beer-reviews .view-beer-reviews .view-header #beer-reviews-bob-photo {
  float: right;
  margin: -0.5em 0 0 0.8em;
}

body.page-beer-reviews .view-beer-reviews .view-header p {
  margin-bottom: 0.6em;
}

body.page-beer-reviews .view-beer-reviews .node {
  margin-bottom: 3em;
}

body.page-beer-reviews .view-beer-reviews h2.node-title {
  margin-bottom: 0.1em;
}

body.page-beer-reviews .view-beer-reviews footer.submitted {
  font-size: 0.8em;
  margin-bottom: 1.3em;
}

body.page-beer-reviews .view-beer-reviews .field-name-field-beer-images {
  float: left;
  margin: 0 1.2em 1em 0;
}

/* Node detail. */
body.node-type-beer-review h1 {
  margin-bottom: 0.3em;
}

body.node-type-beer-review .node footer.submitted {
  font-size: 0.8em;
  margin-bottom: 1.8em;
}

body.node-type-beer-review .node .field-name-field-beer-images {
  float: left;
  margin: 0 1.2em 1em 0;
}

/*******************************************************************************
 * Ads.
 */

/*
 * "Device: Desktop and tablet - Header - Banner 728x90".
 */
#block-boxes-ad-header-728x90-9791219620 {
  display: none;
}

/*
 * Custom ad: Matrix Insurance 728x90.
 *
 * Only displayed on pub node pages, styling copies 728x90 AdSense ad above.
 */
#block-publoc-publoc-matrix-insurance-promo {
  display: none;
}

/* extlink module, hide open in new window icon. */
#block-publoc-publoc-matrix-insurance-promo span.ext {
  display: none;
}

/*
 * Custom ad: The Business Minders 175x190.
 */
#block-publoc-publoc-business-minders-promo {
  text-align: center; /* Center in narrow column. */
}

/* extlink module, hide open in new window icon. */
#block-publoc-publoc-business-minders-promo span.ext {
  display: none;
}

#block-publoc-publoc-business-minders-promo img {
  height: auto; /* Ad image width fills available width on desktop, allow
                 * fluid/narrower width on smaller devices. */
  max-width: 100%;
}

/*
 * "Device: Mobile - Inline under pub image - Mobile banner 320x100".
 */
#publoc-adsense-mobile-under-pub-image {
  height: 100px;
  margin: 1.4em auto 0; /* Center and add whitespace after image above. */
  width: 320px;
}

/* Narrow screen phones, ad is 320px wide, remove side margin. */
@media all and (max-width: 320px) {
  #publoc-adsense-mobile-under-pub-image {
    margin-left: -10px;
  }
}

/*
 * "Device: Mobile - Inline above pub map - Medium rectangle 300x250".
 */
#publoc-adsense-mobile-above-pub-map {
  height: 250px;
  margin: -0.9em auto 1.7em; /* Center, bring closer to body above, and add
                              * whitespace before map below. */
  width: 300px;
}

/*
 * "Device: Mobile - Inline under pub reviews - Mobile banner 320x100".
 */
#publoc-adsense-mobile-below-pub-reviews {
  height: 100px;
  margin: 1.5em auto 0.4em; /* Center and add whitespace after reviews above
                             * and before pubs nearby below. */
  width: 320px;
}

/* Narrow screen phones, ad is 320px wide, remove side margin. */
@media all and (max-width: 320px) {
  #publoc-adsense-mobile-below-pub-reviews {
    margin-left: -10px;
  }
}

/*
 * "Device: Desktop - Sidebar top - Large rectangle 336x280".
 *
 * Hidden on mobile. Needed to work around Google AdSense policy violation for 2
 * ads on screen at same time on mobile. Only ever applies on desktop which has
 * been resized to mobile where this ad appears on screen with the ad below the
 * map above.
 */
#block-boxes-ad-sidebar-336x280-7982090645 {
  display: none;
}

/*
 * "Device: Tablet and mobile - Sidebar top - Medium rectangle 300x250".
 *
 * Hidden on mobile. Needed to work around Google AdSense policy violation for 2
 * ads on screen at same time on mobile. Only ever applies on desktop which has
 * been resized to mobile where this ad appears on screen with the ad below the
 * map above.
 */
#block-boxes-ad-sidebar-300x250-4749422649 {
  display: none;
}

/*
 * "Device: Desktop - Sidebar top - Large rectangle 336x280", and
 * "Device: Tablet and mobile - Sidebar top - Medium rectangle 300x250".
 */
#region-sidebar-first #block-boxes-ad-sidebar-336x280-7982090645,
#region-sidebar-first #block-boxes-ad-sidebar-300x250-4749422649 { /* #region-sidebar-first needed for specificity for border/bg css. */
  border: none; /* Remove border for all sidemenu blocks set in global.css. */
}

#region-sidebar-first #block-boxes-ad-sidebar-336x280-7982090645 .block-inner-top,
#region-sidebar-first #block-boxes-ad-sidebar-300x250-4749422649 .block-inner-top {
  background: none; /* Remove background image for all sidemenu blocks set in
                     * global.css. */
}

/*
 * Footer left - Link unit 180x90.
 *
 * "Device: Mobile - Footer left - Link unit 180x90". and
 * "Device: Desktop and tablet - Footer left - Link unit 180x90"
 */
#block-boxes-ad-footer-180x90-2467789448,
#block-boxes-ad-footer-180x90-6471363366 {
  text-align: center; /* Center ad in column. */
}

#block-boxes-ad-footer-180x90-2467789448 .adsense-placeholder,
#block-boxes-ad-footer-180x90-6471363366 .adsense-placeholder {
  /* Center ad for admin with disabled ad placeholder. */
  display: table !important;
  margin: 0 auto;
}

/*
 * Footer right - Link unit 180x90.
 *
 * "Device: Mobile - Footer right - Link unit 180x90" and
 * "Device: Desktop and tablet - Footer right - Link unit 180x90".
 */
#block-boxes-ad-footer-180x90-2774615672,
#block-boxes-ad-footer-180x90-5173032323 {
  margin: 0.3em 0 1.3em;
}

#block-boxes-ad-footer-180x90-2774615672 .adsense-placeholder,
#block-boxes-ad-footer-180x90-5173032323 .adsense-placeholder {
  /* Center ad for admin with disabled ad placeholder. */
  display: table !important;
  margin: 0 auto;
}

/*
 * Inline with content.
 *
 * "Device: Mobile - Inline with content - Small rectangle 180x150" and
 * "Device: Desktop and tablet - Inline with content - Medium rectangle 300x250".
 */
#publoc-adsense-inline-ad {
  float: right;
  margin: -10px 0 10px 10px;
}
