/* Themed Obituaries - Banner Image Layout 1
   v1.0 | Troy Holleman
*/
/* ========================================================== //
// -- Partials */
/* ========================================================== //
// -- Colors */
a, a:hover { color: inherit; text-decoration: none }
/* ========================================================== //
// -- Breakpoint Media Queries */
/* ========================================================== //
// -- Images */
/* ========================================================== //
// -- Buttons */
/* ========================================================== //
// -- Main Obit Image */
div.obit-image img {
  border: 5px solid white;
  width: 100%;
}

div.obit-image.circle img {
	border-radius: 50%;
}
div.obit-image.rounded img {
	border-radius: 5%;
}

@media screen and (max-width: 480px) {
  div.obit-image img {
    border: 2.5px solid white;
  }
}


/* ========================================================== //
// -- Content Container */
article.service {
  padding: 4em 4.5em;
  margin-bottom: 2em;
  border-radius: 5px;
}

@media screen and (max-width: 1280px) {
  article.service {
    padding: 3em 3.5em;
  }
}

@media screen and (max-width: 1023px) {
  article.service {
    padding: 2em 3em;
  }
}

@media screen and (max-width: 480px) {
  article.service {
    padding: 2em;
  }
}

/* ========================================================== //
// -- Photo Overlay */
/* ========================================================== //
// -- Pseudo-paper */
/* ========================================================== //
// -- Service Listing Elements */
article.service .title {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 30%;
          flex: 1 1 30%;
  padding-right: 5%;
}

article.service .title span {
  font-weight: normal;
}

@media screen and (max-width: 480px) {
  article.service .title {
    width: 100%;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    padding: 0;
    border-bottom: 1px solid #a9a8a9;
  }
}

/* ---------------- */
@media screen and (max-width: 480px) {
  article.service .title span {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: block;
    padding-bottom: 1em;
  }
}

/* ---------------- */
article.service .icon-list {
  -webkit-box-flex: 2;
      -ms-flex: 2 1 auto;
          flex: 2 1 auto;
  border-left: 1px solid #a9a8a9;
}

@media screen and (max-width: 480px) {
  article.service .icon-list {
    padding: 1.5em 0 1.5em 1em;
    border: 0;
  }
}

/* ---------------- */
article.service .directions {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -ms-flex-item-align: center;
      align-self: center;
}

@media screen and (max-width: 480px) {
  article.service .directions {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
}

/* ========================================================== //
// -- Variables */
/* ========================================================== //
// -- Header & Banner Image */
header {
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  height: 425px;
  padding: 0 2em;
  position: relative;
}

@media screen and (max-width: 1280px) {
  header {
    height: 400px;
  }
}

@media screen and (max-width: 1023px) {
  header {
    height: 375px;
    padding: 0 1.5em;
  }
}

@media screen and (max-width: 480px) {
  header {
    height: auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0;
  }
}

header .flex-img {
  z-index: 1;
}

@media screen and (max-width: 480px) {
  header .flex-img {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: " ";
    display: block;
    height: 75%;
  }
}

header section {
  width: 100%;
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 480px) {
  header section {
    margin-top: 250px;
    padding: 0 5px;
    text-align: center;
    background-color: white;
  }
}

footer section {
  width: 100%;
  -js-display: flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 480px) {
  footer section {
    margin-top: 250px;
    padding: 0 5px;
    text-align: center;
    background-color: white;
  }
}

header h1, header h5, header p {
  position: relative;
  color: white;
  z-index: 3;
}

@media screen and (max-width: 480px) {
  header h1, header h5, header p {
    color: #636466;
  }
  header p {
    padding-bottom:  0;
   font-size: .7em;
  }
}

@media screen and (max-width: 480px) {
  header h1 {
    font-size: 2.3em;
  }
}

/* ---------------- */
div.swatch-blur {
  z-index: 1;
}

@media screen and (max-width: 480px) {
  div.swatch-blur {
    display: none;
  }
}

/* ---------------- */
div.obit-image {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 23%;
          flex: 0 0 23%;
  position: relative;
  z-index: 3;
}

@media screen and (max-width: 1023px) {
  div.obit-image {
    padding-right: 2em;
  }
}

@media screen and (max-width: 480px) {
  div.obit-image {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin-bottom: 0;
    padding-right: 0.75em;
  }
}

div.obit-image img {
  width: 200px;
  margin-bottom: -25%;
  z-index: 3;
  -webkit-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.5);
          box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.5);
}

@media screen and (max-width: 1023px) {
  div.obit-image img {
    margin-bottom: -20%;
  }
}

@media screen and (max-width: 768px) {
  div.obit-image img {
    margin-bottom: -15%;
  }
}

@media screen and (max-width: 480px) {
  div.obit-image img {
    width: 140px;
    margin-top: -15%;
    margin-bottom: 0;
  }
}

/* ---------------- */
div.text-container {
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 480px) {
  div.text-container {
    margin-bottom: 0;
    text-align: left;
    padding-top: 0.5em;
  }
}

/* ========================================================== //
// -- Side Navigation & Profile Image */
aside.obit-secondary {
  width: 23%;
  position: relative;
  padding-right: 3em;
}

@media screen and (max-width: 1023px) {
  aside.obit-secondary {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    padding-top: 1em;
    padding-right: 0;
  }
}

@media screen and (max-width: 480px) {
  aside.obit-secondary {
    padding-right: 0;
    padding-bottom: 1em;
  }
}

/* ---------------- */
div.obit-links {
  width: 100%;
  padding-top: 5em;
}

@media screen and (max-width: 1023px) {
  div.obit-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding-top: 3.5em;
  }
}

@media screen and (max-width: 480px) {
  div.obit-links {
    padding-top: 1em;
  }
}

div.obit-links a, div.obit-links label {
  padding: 1.25em 0;
}

div.obit-links a:not(:first-child), div.obit-links label:not(:first-child) {
  border-top: 1px solid #DDDDDD;
}

@media screen and (max-width: 1023px) {
  div.obit-links a, div.obit-links label, div.obit-links a:not([href]):not([tabindex]) {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0.5em 2em;
    margin: 0 0.5em 0.75em 0.5em;
    background-color: #636466;
    border-color: #4a4b4c !important;
    border-width: 1px 1px 3px 1px;
    border-style: solid;
    cursor: pointer;
    color: white;
    border-radius: 10px;
  }
  div.obit-links a:hover, div.obit-links label:hover {
    background-color: #898a8c;
  }
  div.obit-links a:active, div.obit-links label:active {
    background-color: #707173;
    border-width: 3px 1px 1px 1px;
  }
}

@media screen and (max-width: 480px) {
  div.obit-links a, div.obit-links label {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto;
    padding: 0.5em;
  }
}

div.obit-links a.more ~ a, div.obit-links label.more ~ a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 768px) {
  div.obit-links a.more ~ a, div.obit-links label.more ~ a {
    text-align: center;
    display: none;
  }
}

div.obit-links a.more, div.obit-links label.more {
  display: none;
}

@media screen and (max-width: 768px) {
  div.obit-links a.more, div.obit-links label.more {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (max-width: 1023px) {
  div.obit-links a.cta, div.obit-links label.cta {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}

@media screen and (max-width: 480px) {
  div.obit-links a.cta, div.obit-links label.cta {
    padding: 5px;
  }
}

@media screen and (max-width: 1023px) {
  div.obit-links a.cta span, div.obit-links label.cta span {
    padding-top: 0;
    padding-left: 0.5em;
  }
}

@media screen and (max-width: 1023px) {
  div.obit-links a .icon, div.obit-links label .icon {
    width: auto;
  }
}

@media screen and (max-width: 1023px) {
  div.obit-links a span, div.obit-links label span {
    padding-left: 0;
    padding-top: 0.5em;
  }
  div.obit-links a span + i, div.obit-links label span + i {
    display: none;
  }
}

/* ========================================================== //
// -- Obituary Text & Services */
div.obit-primary {
  width: 77%;
  padding-top: 2em;
}

@media screen and (max-width: 1023px) {
  div.obit-primary {
    width: 100%;
    padding-top: 1em;
  }
}

/* ---------------- */
div.obit-share {
  text-align: right;
}

div.obit-share span {
  color: #282828;
}

/* ---------------- */
article.obituary .obit-text {
  max-height: 150px;
  padding-bottom: 4em;
}

article.obituary .obit-text p,
article.obituary .obit-text div {
  line-height: 1.5em;
  font-size: 1.2em;
  font-weight: normal;
}

/* ---------------- */
article.service {
  background-color: #F5F5F5;
  border: 1px solid #DDDDDD;
}