/*!
Theme Name: SMC2017
Theme URI: http://underscores.me/
Author: Rob Pinciuc
Author URI: http://www.sonymusic.ca
Description: Sony Music Canada 2017
Version: 1.0.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: smc2017
Tags:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

SMC2017 is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Accessibility
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Alignments
# Clearings
# Widgets
# Content
  ## Header
  ## Content
  ## Posts and pages
	## Comments
  ## Footer
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

a {
  background-color: transparent;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
textarea {
  color: #666;
  font-family: "Open Sans", Tahoma, Helvetica, sans-serif;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
}

h1, h2, h3, h4, h5, h6 {
  clear: both;
}

p {
  margin-bottom: 1.5em;
}

dfn, cite, em, i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", Courier, monospace;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code, kbd, tt, var {
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  font-size: 15px;
  font-size: 0.9375rem;
}

abbr, acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark, ins {
  background: #fff9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

small {
  font-size: 75%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
  box-sizing: border-box;
}

*,
*:before,
*:after {
  /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  box-sizing: inherit;
}

body {
  background: #e9f9ff;
  /* Fallback for when there is no custom background color defined. */
}

blockquote, q {
  quotes: "" "";
}

blockquote:before,
blockquote:after, q:before,
q:after {
  content: "";
}

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

ul, ol {
  margin: 0 0 1.5em 3em;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: bold;
}

dd {
  margin: 0 1.5em 1.5em;
}

img {
  height: auto;
  /* Make sure images are scaled correctly. */
  max-width: 100%;
  /* Adhere to container width. */
}

figure {
  margin: 1em 0;
  /* Extra wide images within figure tags don't overflow the content area. */
}

table {
  margin: 0 0 1.5em;
  width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  border-radius: 3px;
  background: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1;
  padding: 0.6em 1em 0.4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
  border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
  border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
  color: #111;
}

select {
  border: 1px solid #ccc;
}

textarea {
  width: 100%;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
  color: #cc0000;
}

a:visited {
  color: #990000;
}

a:hover,
a:focus,
a:active {
  color: #000;
}

a:focus {
  outline: thin dotted;
}

a:hover,
a:active {
  outline: 0;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
/* Small menu. */
.menu-toggle {
  position: absolute;
  z-index: 20;
  cursor: pointer;
  text-align: center;
  color: #666;
  top: 32px;
  top: 2rem;
  -webkit-transform: translateY(-49%);
  -moz-transform: translateY(-49%);
  -ms-transform: translateY(-49%);
  -o-transform: translateY(-49%);
  transform: translateY(-49%);
  width: 32px;
  width: 2rem;
  font-size: 32px;
  font-size: 2rem;
  right: 10px;
  right: 0.625rem;
}

@media screen and (min-width: 30em) {
  .menu-toggle {
    right: 20px;
    right: 1.25rem;
  }
}

@media screen and (min-width: 45em) {
  .menu-toggle {
    right: 22px;
    right: 1.375rem;
  }
}

@media screen and (min-width: 56.25em) {
  .menu-toggle {
    right: 36px;
    right: 2.25rem;
  }
}

.menu-toggle:hover,
.menu-toggle.focus {
  color: #666;
}

.menu-toggle:before {
  font-family: 'FontAwesome';
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transform: translateZ(0);
  content: '\f0c9';
}

.site-header.toggled .menu-toggle:before {
  content: '\f00d';
}

@media screen and (min-width: 56.25em) {
  .menu-toggle {
    display: none;
  }
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  margin: 0 0 1.5em;
  overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  float: left;
  width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  float: right;
  text-align: right;
  width: 50%;
}

.language-switcher {
  font-size: 24px;
  font-size: 1.5rem;
  text-transform: uppercase;
}

.language-switcher li a {
  color: #6a6a6a;
}

.language-switcher li.current-lang a {
  color: #cc0000;
}

.language-switcher li:hover a {
  color: #cc0000;
}

.menu-social-links-container li a {
  text-decoration: none;
  color: #707070;
}

.menu-social-links-container li:hover a {
  color: #cc0000;
}

.site-header .menu-social-links-container {
  width: 80%;
  margin: 0 auto;
  font-size: 48px;
  font-size: 3rem;
}

@media only screen and (min-width: 30em) and (max-width: 45em) and (orientation: landscape) {
  .site-header .menu-social-links-container {
    width: 100%;
  }
}

@media screen and (min-width: 45em) {
  .site-header .menu-social-links-container {
    width: 100%;
  }
}

.site-header .menu-social-links-container li {
  width: 25%;
}

@media only screen and (min-width: 30em) and (max-width: 45em) and (orientation: landscape) {
  .site-header .menu-social-links-container li {
    width: 10%;
  }
}

@media screen and (min-width: 45em) {
  .site-header .menu-social-links-container li {
    width: 10%;
  }
}

@media screen and (min-width: 56.25em) {
  .site-header .menu-social-links-container {
    line-height: 1;
    position: absolute;
    width: auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 22px;
    right: 1.375rem;
    font-size: 28px;
    font-size: 1.75rem;
  }
  .site-header .menu-social-links-container li {
    width: auto;
    margin-left: 8px;
    margin-left: 0.5rem;
  }
}

@media screen and (min-width: 75em) {
  .site-header .menu-social-links-container {
    right: 36px;
    right: 2.25rem;
    font-size: 35px;
    font-size: 2.1875rem;
  }
  .site-header .menu-social-links-container li {
    margin-left: 16px;
    margin-left: 1rem;
  }
}

.site-footer .menu-social-links-container {
  font-size: 28px;
  font-size: 1.75rem;
}

@media screen and (min-width: 30em) {
  .site-footer .menu-social-links-container {
    font-size: 40px;
    font-size: 2.5rem;
  }
}

@media screen and (min-width: 56.25em) {
  .site-footer .menu-social-links-container {
    line-height: 1;
    border: 0;
    padding: 0;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 0;
    right: 0;
    font-size: 28px;
    font-size: 1.75rem;
  }
}

@media screen and (min-width: 62.5em) {
  .site-footer .menu-social-links-container {
    font-size: 35px;
    font-size: 2.1875rem;
  }
}

.site-footer .menu-social-links-container li {
  margin: 0 8px;
  margin: 0 0.5rem;
}

.site-footer .menu-social-links-container li:hover a {
  color: #cc0000;
}

@media screen and (min-width: 30em) {
  .site-footer .menu-social-links-container li {
    margin: 0 10.4px;
    margin: 0 0.65rem;
  }
}

@media screen and (min-width: 56.25em) {
  .site-footer .menu-social-links-container li {
    margin: 0 0 0 10.4px;
    margin: 0 0 0 0.65rem;
  }
}

@media screen and (min-width: 62.5em) {
  .site-footer .menu-social-links-container li {
    margin-left: 16px;
    margin-left: 1rem;
  }
}

/* add item seperators to some menus */
.menu-primary-menu-container li:after, .menu-secondary-menu-container li:after, .language-switcher li:after {
  color: #cc0000;
  content: '|';
  padding: 0 8px;
  padding: 0 0.5rem;
}

.menu-primary-menu-container li:last-child:after,
.menu-primary-menu-container li.last-child:after, .menu-secondary-menu-container li:last-child:after,
.menu-secondary-menu-container li.last-child:after, .language-switcher li:last-child:after,
.language-switcher li.last-child:after {
  padding: 0 !important;
  content: '';
}

@media screen and (min-width: 56.25em) and (max-width: 62.5em) {
  .main-navigation .menu-primary-menu-container {
    padding: 0 3.2px;
    padding: 0 0.2rem;
  }
}

/* top of page (main) navigation */
.main-navigation {
  display: none;
  position: absolute;
  z-index: 10;
  top: 4;
  width: 100%;
  background-color: #fff;
  font-size: 32px;
  font-size: 2rem;
}

.main-navigation .menu-wrap {
  padding: 0 10px;
  padding: 0 0.625rem;
}

@media only screen and (min-width: 30em) and (max-width: 45em) and (orientation: landscape) {
  .main-navigation .menu-wrap {
    margin-top: -16px;
    margin-top: -1rem;
  }
}

.main-navigation ul {
  clear: both;
  list-style: none;
  margin: 24px 0;
  margin: 1.5rem 0;
  padding-left: 0;
  text-align: center;
}

.main-navigation ul ul {
  display: none;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  float: left;
  position: absolute;
  top: 1.5em;
  left: -999em;
  z-index: 99999;
}

.main-navigation ul ul ul {
  left: -999em;
  top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
  left: 100%;
}

.main-navigation ul ul a {
  width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
  left: auto;
}

.main-navigation li {
  display: inline-block;
  position: relative;
}

.main-navigation li:hover > a,
.main-navigation li.focus > a {
  color: #cc0000;
}

.main-navigation .menu-primary-menu-container li {
  display: block;
}

@media only screen and (min-width: 30em) and (max-width: 45em) and (orientation: landscape) {
  .main-navigation .menu-primary-menu-container li {
    display: inline-block;
  }
}

@media screen and (min-width: 45em) {
  .main-navigation .menu-primary-menu-container li {
    display: inline-block;
  }
}

@media screen and (max-width: 45em) and (orientation: portrait) {
  .main-navigation .menu-primary-menu-container li:after {
    padding: 0;
    content: '';
  }
}

.main-navigation a {
  display: inline-block;
  text-decoration: none;
  text-transform: uppercase;
  color: #333;
}

.main-navigation .current_page_item > a,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_ancestor > a,
.main-navigation .current-menu-ancestor > a {
  color: #cc0000;
}

.main-navigation.toggled {
  display: block;
}

@media screen and (min-width: 45em) {
  .main-navigation {
    position: static;
    font-size: 28px;
    font-size: 1.75rem;
  }
}

@media screen and (min-width: 56.25em) {
  .main-navigation {
    position: static;
    display: block;
    top: 0;
    width: 100%;
    background: transparent;
  }
  .main-navigation ul {
    margin: 0;
  }
  .main-navigation .menu-wrap2 {
    position: absolute;
    width: auto;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -45%);
    -moz-transform: translate(-50%, -45%);
    -ms-transform: translate(-50%, -45%);
    -o-transform: translate(-50%, -45%);
    transform: translate(-50%, -45%);
    font-size: 14.25px;
    font-size: 0.89062rem;
    white-space: nowrap;
  }
  .main-navigation .menu-wrap2 > div {
    display: inline-block;
    margin-right: 8px;
    margin-right: 0.5rem;
  }
}

@media screen and (min-width: 56.25em) and (min-width: 62.5em) {
  .main-navigation .menu-wrap2 > div {
    margin-right: 24px;
    margin-right: 1.5rem;
  }
}

@media screen and (min-width: 56.25em) {
  .main-navigation .menu-wrap2 > div:last-child,
  .main-navigation .menu-wrap2 > div.last-child {
    margin-right: 0 !important;
  }
  .main-navigation .menu-wrap2 ul {
    font-size: 14.25px !important;
    font-size: 0.89062rem !important;
    letter-spacing: 1.6px;
    letter-spacing: 0.1rem;
  }
}

@media screen and (min-width: 56.25em) and (max-width: 62.5em) {
  body.fr .main-navigation .menu-wrap2 ul {
    letter-spacing: 0.8px;
    letter-spacing: 0.05rem;
  }
}

@media screen and (min-width: 56.25em) and (max-width: 75em) {
  body.fr .main-navigation .language-switcher li:after,
  body.fr .main-navigation .menu-primary-menu-container li:after {
    padding-left: 3.2px;
    padding-left: 0.2rem;
    padding-right: 3.2px;
    padding-right: 0.2rem;
  }
}

/* bottom of page (secondary) navigation */
.secondary-navigation ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
}

.secondary-navigation ul ul {
  display: none;
}

.secondary-navigation li {
  display: inline-block;
  position: relative;
}

.secondary-navigation li:hover > a,
.secondary-navigation li.focus > a {
  color: #000;
}

.secondary-navigation a {
  display: inline-block;
  color: #cc0000;
}

.secondary-navigation .current_page_item > a,
.secondary-navigation .current-menu-item > a,
.secondary-navigation .current_page_ancestor > a,
.secondary-navigation .current-menu-ancestor > a {
  color: #cc0000;
}

.secondary-navigation > div {
  padding: 24px 0;
  padding: 1.5rem 0;
  border-bottom: 1px solid #d7d7d7;
}

.secondary-navigation > div:last-child,
.secondary-navigation > div.last-child {
  border-bottom: 0;
}

@media screen and (min-width: 56.25em) {
  .secondary-navigation {
    position: relative;
  }
}

.secondary-navigation .menu-primary-menu-container {
  font-size: 85%;
  text-transform: uppercase;
  letter-spacing: 1.6px;
  letter-spacing: 0.1rem;
}

@media screen and (min-width: 45em) {
  .secondary-navigation .menu-primary-menu-container {
    font-size: 17.6px;
    font-size: 1.1rem;
  }
}

@media screen and (min-width: 56.25em) {
  .secondary-navigation .menu-primary-menu-container {
    width: 100%;
    text-align: left;
    font-size: 24.8px;
    font-size: 1.55rem;
  }
}

@media screen and (min-width: 56.25em) and (max-width: 62.5em) {
  body.fr .secondary-navigation .menu-primary-menu-container {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.secondary-navigation .menu-secondary-menu-container {
  font-size: 85%;
  clear: both;
}

@media screen and (min-width: 56.25em) {
  .secondary-navigation .menu-secondary-menu-container {
    float: left;
    margin: 48px 0 8px 0;
    margin: 3rem 0 0.5rem 0;
    margin-left: 128px;
    padding: 0;
    padding-left: 48px;
    padding-left: 3rem;
    text-align: left;
    font-size: 16px;
    font-size: 1rem;
  }
}

@media screen and (min-width: 62.5em) {
  .secondary-navigation .menu-secondary-menu-container {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.secondary-navigation .menu-primary-menu-container li:after, .secondary-navigation .menu-secondary-menu-container li:after {
  color: #666;
}

li.nobullet:after {
  color: transparent !important;
}

.fixed-header .main-navigation {
  position: fixed;
  top: 64px;
  top: 4rem;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: transparent;
}

.fixed-header .main-navigation .menu-wrap {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 100%;
}

.site-header.toggled {
  bottom: 0;
}

/* Not fullscreen on medium (tablet-portrait) width */
@media screen and (min-width: 45em) {
  .fixed-header .main-navigation {
    position: static;
  }
  .fixed-header .main-navigation .menu-wrap {
    position: static;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  .site-header.toggled {
    bottom: auto;
  }
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
  content: "";
  display: table;
  table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
  clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
  margin: 0 0 1.5em;
  /* Make sure select elements fit in widgets. */
}

.widget select {
  max-width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Layout
--------------------------------------------------------------*/
#wpadminbar {
  position: fixed;
}

.site {
  max-width: 90em;
  margin: 0 auto;
  box-shadow: 0 1px 0 1px #808080;
  overflow: hidden;
}

.full-width {
  max-width: 90em;
  margin-left: -10px;
  margin-left: -0.625rem;
  margin-right: -10px;
  margin-right: -0.625rem;
}

@media screen and (min-width: 30em) {
  .full-width {
    margin-left: -20px;
    margin-left: -1.25rem;
    margin-right: -20px;
    margin-right: -1.25rem;
  }
}

@media screen and (min-width: 45em) {
  .full-width {
    margin-left: -22px;
    margin-left: -1.375rem;
    margin-right: -22px;
    margin-right: -1.375rem;
  }
}

@media screen and (min-width: 56.25em) {
  .full-width {
    margin-left: -36px;
    margin-left: -2.25rem;
    margin-right: -36px;
    margin-right: -2.25rem;
  }
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
.site-header {
  position: relative;
  width: 100%;
  border-bottom: 1px solid #ddd;
  background-color: #fff;
}

.site-header .site-branding {
  padding: 10px;
  padding: 0.625rem;
}

@media screen and (min-width: 30em) {
  .site-header .site-branding {
    padding-left: 20px;
    padding-left: 1.25rem;
    padding-right: 20px;
    padding-right: 1.25rem;
  }
}

@media screen and (min-width: 45em) {
  .site-header .site-branding {
    padding-left: 22px;
    padding-left: 1.375rem;
    padding-right: 22px;
    padding-right: 1.375rem;
  }
}

@media screen and (min-width: 56.25em) {
  .site-header .site-branding {
    padding-top: 8px;
    padding-top: 0.5rem;
    padding-bottom: 8px 12px;
    padding-bottom: 0.5rem 0.75rem;
  }
}

@media screen and (min-width: 75em) {
  .site-header .site-branding {
    padding-left: 36px;
    padding-left: 2.25rem;
    padding-right: 36px;
    padding-right: 2.25rem;
  }
}

.site-header .site-title {
  margin: 0;
}

.site-header .site-title a {
  display: block;
  width: 199px;
  height: 43px;
  text-align: left;
  text-indent: -9999px;
  background: transparent url(img/sm-logo-h.gif) no-repeat;
  background-size: contain;
  background-position: center;
}

.site-description {
  display: none;
}

.site-header {
  /* fix the header to the top of the viewport */
  /* reveal the fixed header */
  /* move the header down when the admin bar is present */
}

.fixed-header .site-header {
  position: fixed;
  top: 0;
  z-index: 100;
  -webkit-transition: all 150ms;
  -moz-transition: all 150ms;
  -ms-transition: all 150ms;
  -o-transition: all 150ms;
  transition: all 150ms;
  /* 3d version of the above, for smoother animation */
}

.no-csstransforms .fixed-header .site-header {
  top: -64px;
  top: -4rem;
}

.csstransforms .fixed-header .site-header {
  -webkit-transform: translateY(-64px);
  -moz-transform: translateY(-64px);
  -ms-transform: translateY(-64px);
  -o-transform: translateY(-64px);
  transform: translateY(-64px);
  -webkit-transform: translateY(-4rem);
  -moz-transform: translateY(-4rem);
  -ms-transform: translateY(-4rem);
  -o-transform: translateY(-4rem);
  transform: translateY(-4rem);
}

.show-fixed-header .site-header {
  -webkit-transition: all 350ms;
  -moz-transition: all 350ms;
  -ms-transition: all 350ms;
  -o-transition: all 350ms;
  transition: all 350ms;
  /* 3d version of the above, for smoother animation */
}

.no-csstransforms .show-fixed-header .site-header {
  top: 0;
}

.csstransforms .show-fixed-header .site-header {
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
}

.admin-bar.fixed-header .site-header {
  margin-top: 32px;
}

@media screen and (max-width: 782px) {
  .admin-bar.fixed-header .site-header {
    margin-top: 46px;
  }
}

/* move the site down below the fixed header */
.fixed-header .site {
  margin-top: 64px;
  margin-top: 4rem;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
.site-content {
  background-color: #fff;
  padding: 0 10px;
  padding: 0 0.625rem;
}

@media screen and (min-width: 30em) {
  .site-content {
    padding: 0 20px;
    padding: 0 1.25rem;
  }
}

@media screen and (min-width: 45em) {
  .site-content {
    padding: 0 22px;
    padding: 0 1.375rem;
  }
}

@media screen and (min-width: 56.25em) {
  .site-content {
    padding: 0 36px;
    padding: 0 2.25rem;
  }
}

@media screen and (min-width: 23em) {
  .site-main {
    padding: 1% 3%;
    padding: 1% 3%;
  }
}

@media screen and (min-width: 30em) {
  .site-main {
    padding: 2% 6%;
    padding: 2% 6%;
  }
}

@media screen and (min-width: 45em) {
  .site-main {
    padding: 3% 9%;
    padding: 3% 9%;
  }
}

@media screen and (min-width: 56.25em) {
  .site-main {
    padding: 4% 12%;
    padding: 4% 12%;
  }
}

@media screen and (min-width: 75em) {
  .site-main {
    padding: 5% 15%;
    padding: 5% 15%;
  }
}

/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
  display: block;
}

.hentry {
  margin: 0 0 1.5em;
}

.site-main > .hentry > .entry-header {
  border-bottom: 1px solid #ddd;
}

h1.entry-title {
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.25;
  text-transform: uppercase;
}

@media screen and (min-width: 30em) {
  h1.entry-title {
    font-size: 28px;
    font-size: 1.75rem;
  }
}

@media screen and (min-width: 45em) {
  h1.entry-title {
    font-size: 32px;
    font-size: 2rem;
  }
}

@media screen and (min-width: 56.25em) {
  h1.entry-title {
    font-size: 36px;
    font-size: 2.25rem;
  }
}

.single-press_release h1.entry-title {
  text-align: center;
}

.page-template-page_no-title .entry-header {
  display: none;
}

.entry-meta {
  margin: 1.5em 0;
}

.byline,
.updated:not(.published) {
  display: none;
}

.single .byline,
.group-blog .byline {
  display: inline;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

/*--------------------------------------
 * Home page
 *-------------------------------------*/
.home .site-main {
  padding: 0;
}

.home .entry-content {
  margin-top: 0;
  color: #333;
}

.feed {
  margin: 20px 0;
  margin: 1.25rem 0;
  position: relative;
}

.feed .section-title {
  margin-top: 0;
  padding-left: 8px;
  padding-left: 0.5rem;
  background-color: #eeeff4;
  color: #fff;
  font-size: 16px;
  font-size: 1rem;
  max-height: 25px;
  line-height: 1;
}

.feed .section-title:before {
  font-family: 'FontAwesome';
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transform: translateZ(0);
  font-size: 48px;
  font-size: 3rem;
}

.feed .more-link {
  position: absolute;
  top: 0;
  right: 0;
  padding-right: 8px;
  padding-right: 0.5rem;
  font-size: 11px;
  font-size: 0.6875rem;
  line-height: 23.2px;
  line-height: 1.45rem;
  text-transform: uppercase;
}

.feed .more-link:after {
  content: ' >';
}

.feed .more-link a {
  color: #cc0000;
}

#instagram-feed .section-title:before {
  content: '\f16d';
}

#twitter-feed .section-title:before {
  content: '\f099';
}

#facebook-feed .section-title:before {
  content: '\f09a';
}

@media screen and (min-width: 45em) {
  .home #twitter-feed {
    float: left;
    width: 65%;
  }
  .home #facebook-feed {
    float: left;
    width: 32.5%;
    margin-left: 2.5%;
    padding-left: 2.5%;
    border-left: 1px solid #ddd;
  }
}

/*--------------------------------------
 * Press Releases page
 *-------------------------------------*/
.smc2017-press-releases .section-date {
  font-weight: normal;
  font-size: 20px;
  font-size: 1.25rem;
}

@media screen and (min-width: 45em) {
  .smc2017-press-releases .section-date {
    font-size: 28px;
    font-size: 1.75rem;
  }
}

.smc2017-press-releases .hentry {
  border: 0;
  margin: 12px 0;
  margin: 0.75rem 0;
}

.smc2017-press-releases .entry-meta {
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  margin: 0;
}

body.fr .smc2017-press-releases .entry-meta {
  text-transform: lowercase;
}

@media screen and (min-width: 45em) {
  .smc2017-press-releases .entry-meta {
    float: left;
    width: 25%;
    white-space: nowrap;
    line-height: 1.5;
  }
}

@media screen and (min-width: 56.25em) {
  .smc2017-press-releases .entry-meta {
    width: 20%;
  }
}

.smc2017-press-releases .entry-title {
  font-size: inherit;
  line-height: inherit;
  margin-top: 0;
}

@media screen and (min-width: 45em) {
  .smc2017-press-releases .entry-title {
    float: left;
    clear: none;
    width: 75%;
    border: 0;
  }
}

@media screen and (min-width: 56.25em) {
  .smc2017-press-releases .entry-title {
    width: 80%;
  }
}

.pagination {
  margin: 24px 0;
  margin: 1.5rem 0;
  text-align: center;
}

.pagination .page-numbers {
  margin: 0 4px;
  margin: 0 0.25rem;
}

/*--------------------------------------
 * Press Release single
 *-------------------------------------*/
.press_release .entry-title {
  text-transform: uppercase;
}

.press_release .entry-header .label-logos {
  margin: 1.25em 0;
  padding: 0;
  list-style: none;
}

.press_release .entry-header .label-logos li {
  display: inline-block;
  margin-right: 8px;
  margin-right: 0.5rem;
}

.press_release .entry-header .label-logos li img {
  max-height: 40px;
  width: auto;
  max-width: 100px;
  vertical-align: middle;
}

@media screen and (min-width: 30em) {
  .press_release .entry-header .label-logos li img {
    max-height: 60px;
    max-width: 150px;
  }
}

@media screen and (min-width: 56.25em) {
  .press_release .entry-header .label-logos li img {
    max-height: 80px;
    max-width: 200px;
  }
}

.press_release .entry-header .post-type {
  margin: 1em 0;
  font-size: 19.2px;
  font-size: 1.2rem;
  color: #666;
}

@media screen and (min-width: 30em) {
  .press_release .entry-header .post-type {
    font-size: 22.4px;
    font-size: 1.4rem;
  }
}

@media screen and (min-width: 56.25em) {
  .press_release .entry-header .post-type {
    font-size: 25.6px;
    font-size: 1.6rem;
  }
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.site-footer {
  position: relative;
  clear: both;
  width: 100%;
  background-color: #f0f0f0;
  text-align: center;
  padding: 0 10px;
  padding: 0 0.625rem;
}

@media screen and (min-width: 30em) {
  .site-footer {
    padding: 0 20px;
    padding: 0 1.25rem;
  }
}

@media screen and (min-width: 45em) {
  .site-footer {
    font-size: 18px;
    font-size: 1.125rem;
    padding: 0 22px;
    padding: 0 1.375rem;
  }
}

@media screen and (min-width: 56.25em) {
  .site-footer {
    margin-top: 0;
    font-size: 19px;
    font-size: 1.1875rem;
    padding: 0 36px;
    padding: 0 2.25rem;
  }
}

@media screen and (min-width: 56.25em) {
  .site-footer .site-info {
    min-height: 190px;
  }
}

@media screen and (min-width: 56.25em) {
  .site-footer .site-title {
    margin: 0;
    position: absolute;
    top: 96px;
    top: 6rem;
    left: 36px;
    left: 2.25rem;
  }
}

.site-footer .site-title a {
  display: block;
  width: 128px;
  height: 138px;
  margin: 16px auto;
  margin: 1rem auto;
  text-align: left;
  text-indent: -9999px;
  background: transparent url(img/sm-logo-sq.png) no-repeat;
  background-size: contain;
  background-position: center;
}

.site-footer #copyright {
  width: 93%;
  margin: 16px auto;
  margin: 1rem auto;
  line-height: 1;
}

@media screen and (min-width: 23em) {
  .site-footer #copyright {
    width: 80%;
  }
}

@media screen and (min-width: 56.25em) {
  .site-footer #copyright {
    float: left;
    margin-left: 128px;
    padding-left: 48px;
    padding-left: 3rem;
    text-align: left;
  }
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation, .infinite-scroll.neverending .site-footer {
  /* Theme Footer (when set to scrolling) */
  display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
  display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
  margin-bottom: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
}

.gallery-columns-2 .gallery-item {
  max-width: 50%;
}

.gallery-columns-3 .gallery-item {
  max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
  max-width: 25%;
}

.gallery-columns-5 .gallery-item {
  max-width: 20%;
}

.gallery-columns-6 .gallery-item {
  max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
  max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
  max-width: 11.11%;
}

.gallery-caption {
  display: block;
}

/*--------------------------------------------------------------
## Owl Carousel Slideshows
--------------------------------------------------------------*/
body .owl-item > div {
  position: relative;
  min-height: 0;
  height: 0;
  padding-bottom: 100% !important;
  overflow: hidden;
}

body .owl-item > div .dtSlide {
  display: none;
}

@media screen and (min-width: 30em) {
  body .owl-item > div {
    padding-bottom: 56.25% !important;
  }
  body .owl-item > div .mobSlide {
    display: none;
  }
  body .owl-item > div .dtSlide {
    display: block;
  }
}

#homepage_slider .owl-nav button {
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 48px !important;
  width: 3rem !important;
  height: 48px !important;
  height: 3rem !important;
  font-size: 32px !important;
  font-size: 2rem !important;
  line-height: 48px !important;
  line-height: 3rem !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #000 !important;
  color: #ccc;
  opacity: 0.5;
  text-align: center;
}

@media screen and (min-width: 45em) {
  #homepage_slider .owl-nav button {
    width: 72px !important;
    width: 4.5rem !important;
    height: 72px !important;
    height: 4.5rem !important;
    font-size: 48px !important;
    font-size: 3rem !important;
    line-height: 72px !important;
    line-height: 4.5rem !important;
  }
}

@media screen and (min-width: 62.5em) {
  #homepage_slider .owl-nav button {
    width: 96px !important;
    width: 6rem !important;
    height: 96px !important;
    height: 6rem !important;
    font-size: 64px !important;
    font-size: 4rem !important;
    line-height: 96px !important;
    line-height: 6rem !important;
  }
}

#homepage_slider .owl-nav button:hover {
  background: #000;
  color: #fff;
  opacity: 0.9;
}

#homepage_slider .owl-nav .owl-prev {
  left: 0 !important;
}

#homepage_slider .owl-nav .owl-prev:before {
  margin-left: -4.8px;
  margin-left: -0.3rem;
  font-family: 'FontAwesome';
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transform: translateZ(0);
  content: '\f053';
  color: #ccc;
}

#homepage_slider .owl-nav .owl-next {
  right: 0 !important;
}

#homepage_slider .owl-nav .owl-next:before {
  margin-right: -4.8px;
  margin-right: -0.3rem;
  font-family: 'FontAwesome';
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transform: translateZ(0);
  content: '\f054';
  color: #ccc;
}

#homepage_slider.autohide-arrows .owl-nav {
  display: block !important;
  -webkit-transition: opacity, 0.5s;
  -moz-transition: opacity, 0.5s;
  -ms-transition: opacity, 0.5s;
  -o-transition: opacity, 0.5s;
  transition: opacity, 0.5s;
  opacity: 0;
}

#homepage_slider.autohide-arrows:hover .owl-nav {
  -webkit-transition: opacity, 0.1s;
  -moz-transition: opacity, 0.1s;
  -ms-transition: opacity, 0.1s;
  -o-transition: opacity, 0.1s;
  transition: opacity, 0.1s;
  opacity: 1;
}

.touchevents .owl-nav {
  display: none;
}

#homepage_slider .owl-dots {
  bottom: 7px !important;
}

#homepage_slider .owl-dots .owl-dot span {
  margin: 5px 7px !important;
  background: #d6d6d6 !important;
  border: 1px solid #fff !important;
}

#homepage_slider .owl-dots .owl-dot:hover span {
  background: #869791 !important;
}

#homepage_slider .owl-dots .owl-dot.active span {
  background: #ee0300 !important;
}
