/* ==========================================================================

SINGLE PAGE/POST
========================================================================== */

main {

@include container;
@include clearfix;
margin-top: 2em;
padding-left: 1em;
padding-right: 1em;
animation: intro 0.3s both;
animation-delay: 0.35s;

@include breakpoint($x-large) {
  max-width: $x-large;
}

}

.page {

@include breakpoint($large) {
  @include span(10 of 12 last);
  @include prefix(0.5 of 12);
  @include suffix(2 of 12);
}

.page__inner-wrap {
  @include full();

  .page__content,
  .page__meta,
  .page__share {
    @include full();
  }
}

}

.page__title {

margin-top: 0;
line-height: 1;

& + .page__meta {
  margin-top: -0.5em;
}

}

.page__lead {

font-family: $global-font-family;
font-size: $type-size-4;

}

.page__content {

h2 {
  padding-bottom: 0.5em;
  border-bottom: 1px solid $border-color;
}

p, li, dl {
  font-size: 1em;
}

/* paragraph indents */
p {
  margin: 0 0 $indent-var;

  /* sibling indentation*/
  @if $paragraph-indent == true {
    & + p {
      text-indent: $indent-var;
      margin-top: -($indent-var);
    }
  }
}

a {
  text-decoration: none;

  &:hover {
    text-decoration: underline;

    img {
      box-shadow: 0 0 10px rgba(#000, 0.25);
    }
  }
}

dt {
  margin-top: 1em;
  font-family: $sans-serif;
  font-weight: bold;
}

dd {
  margin-left: 1em;
  font-family: $sans-serif;
  font-size: $type-size-6;
}

.small {
  font-size: $type-size-6;
}

/* blockquote citations */
blockquote + .small {
  margin-top: -1.5em;
  padding-left: 1.25rem;
}

}

.page__hero {

position: relative;
margin-bottom: 2em;
@include clearfix;
animation: intro 0.3s both;
animation-delay: 0.25s;

&--overlay {
  position: relative;
  margin-bottom: 2em;
  padding: 3em 0;
  @include clearfix;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  animation: intro 0.3s both;
  animation-delay: 0.25s;

  a {
    color: #fff;
  }

  .wrapper {
    padding-left: 1em;
    padding-right: 1em;

    @include breakpoint($x-large) {
      max-width: $x-large;
    }
  }

  .page__title,
  .page__meta,
  .page__lead,
  .btn {
    color: #fff;
    text-shadow: 1px 1px 4px rgba(#000, 0.5);
  }

  .page__lead {
    max-width: $medium;
  }

  .page__title {
    font-size: $type-size-2;

    @include breakpoint($small) {
      font-size: $type-size-1;
    }
  }
}

}

.page__hero-image {

width: 100%;
height: auto;
-ms-interpolation-mode: bicubic;

}

.page__hero-caption {

position: absolute;
bottom: 0;
right: 0;
margin: 0 auto;
padding: 2px 5px;
color: #fff;
font-family: $caption-font-family;
font-size: $type-size-7;
background: #000;
text-align: right;
z-index: 5;
opacity: 0.5;
border-radius: $border-radius 0 $border-radius 0;

@include breakpoint($large) {
  padding: 5px 10px;
}

a {
  color: #fff;
  text-decoration: none;
}

}

/*

Social sharing
========================================================================== */

.page__share {

margin-top: 2em;
padding-top: 1em;
border-top: 1px solid $border-color;

@include breakpoint(max-width $small) {
  .btn span {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
}

}

.page__share-title {

margin-bottom: 10px;
font-size: $type-size-6;
text-transform: uppercase;

}

/*

Page meta
========================================================================== */

.page__meta {

margin-top: 2em;
color: mix(#fff, $gray, 25%);
font-family: $sans-serif;
font-size: $type-size-6;

p {
  margin: 0;
}

a {
  color: inherit;
}

}

.page__meta-title {

margin-bottom: 10px;
font-size: $type-size-6;
text-transform: uppercase;

}

/*

Page taxonomy
========================================================================== */

.page__taxonomy {

.sep {
  display: none;
}

strong {
  margin-right: 10px;
}

}

.page__taxonomy-item {

display: inline-block;
margin-right: 5px;
margin-bottom: 8px;
padding: 5px 10px;
text-decoration: none;
border: 1px solid $light-gray;
border-radius: $border-radius;

&:hover {
  text-decoration: none;
  color: $link-color-hover;
}

}

/*

Comments
========================================================================== */

.page__comments {

@include full();

}

.page__comments-title {

margin-top: 2rem;
margin-bottom: 10px;
padding-top: 2rem;
font-size: $type-size-6;
border-top: 1px solid $border-color;
text-transform: uppercase;

}

.page__comments-form {

padding: 1em;
background: $lighter-gray;
transition: $global-transition;

&.disabled {
  input,
  button,
  textarea,
  label {
    pointer-events: none;
    cursor: not-allowed;
    filter: alpha(opacity=65);
    box-shadow: none;
    opacity: 0.65;
  }
}

}

.comment {

@include clearfix();
margin: 1em 0;

&:not(:last-child) {
  border-bottom: 1px solid $border-color;
}

}

.comment__avatar-wrapper {

float: left;
width: 60px;
height: 60px;

@include breakpoint($large) {
  width: 100px;
  height: 100px;
}

}

.comment__avatar {

width: 40px;
height: 40px;
border-radius: 50%;

@include breakpoint($large) {
  width: 80px;
  height: 80px;
  padding: 5px;
  border: 1px solid $border-color;
}

}

.comment__content-wrapper {

float: right;
width: calc(100% - 60px);

@include breakpoint($large) {
  width: calc(100% - 100px);
}

}

.comment__author {

margin: 0;

a {
  text-decoration: none;
}

}

.comment__date {

@extend .page__meta;
margin: 0;

a {
  text-decoration: none;
}

}

/*

Related
========================================================================== */

.page__related {

margin-top: 2em;
padding-top: 1em;
border-top: 1px solid $border-color;
@include clearfix();
float: left;

@include breakpoint($large) {
  @include pre(2.5 of 12);
}

a {
  color: inherit;
  text-decoration: none;
}

}

.page__related-title {

margin-bottom: 10px;
font-size: $type-size-6;
text-transform: uppercase;

}