/** ================================================================== *
**      Post Styles
** ------------------------------------------------------------------- */
/* ======================================== *
	All Posts
 * ======================================== */
.tmf-post {
  position: relative;
}
.tmf-post.last-post {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: 0;
}
/* post-type-label is use on search pages */
.post-type-label {
  margin-bottom: 15px;
}
.tmf-post .excerpt {
  margin-top: 10px;
}
.tmf-post .excerpt a.read-more {
  font-weight: 700;
}
.tmf-post .tmf-taxonomy-list,
.tmf-post .tmf-post-link-list {
  margin-top: 5px;
}
.tmf-post img.primary {
  float: left;
  margin-top: 5px;
  max-width: 250px;
  margin-right: 15px;
  margin-bottom: 15px;
}

/* ======================================== *
	Child Posts
 * ======================================== */
.tmf-post .children {
  margin-top: 45px;
  border: 0;
  margin-left: 0;
  padding-left: 25px;
}
.tmf-post-list.medium .tmf-post .children .tmf-post {
  padding: 0 25px 0 0;
  margin-bottom: 45px;
}
.tmf-post-list.medium .tmf-post .children .tmf-post.last-post {
  margin-bottom: 0;
}
.tmf-post.large .children {
  padding-left: 0;
}
.tmf-post.large .children .tmf-post {
  margin-bottom: 45px;
}
.children .tmf-post.medium img.thumbnail {
  max-width: 150px;
}

/* ======================================== *
	Small
 * ======================================== */
.tmf-post.small {
  margin-bottom: 0;
  padding-bottom: 0;
}

/* ======================================== *
	Medium
 * ======================================== */
.tmf-post.medium {
  background: var(--secondary);
  padding: 50px;
  border-radius: 20px;
  border: 0;
  margin-bottom: 45px;
}
.tmf-post.medium.last-post {
  border-bottom: none;
  margin-bottom: 0;
}
.tmf-post.medium .title {
  margin-bottom: 15px;
}
.tmf-post.medium img.thumbnail {
  max-width: 150px;
  margin-right: 15px;
  margin-bottom: 15px;
  margin-top: 7px;
  float: left;
}
.tmf-post.medium img.thumbnail.not-mobile {
  float: left;
}
.tmf-post.medium img.thumbnail.mobile {
  display: none;
  margin-top: 7px;
}

@media screen and (max-width: 550px) {
  .tmf-post.medium {
    padding: 50px 30px;
  }
}

@media screen and (max-width: 500px) {
  .tmf-post.medium {
    padding: 35px 25px;
  }
  .tmf-post.medium img.thumbnail {
    margin-right: 7px;
  }
}
@media screen and (max-width: 450px) {
  .tmf-post.medium img.thumbnail.not-mobile {
    display: none;
  }
  .tmf-post.medium img.thumbnail.mobile {
    display: block;
    float: unset;
    max-width: 100%;
  }
}

/* ======================================== *
	Large
 * ======================================== */
.tmf-post.large .children .tmf-post.last-post {
  margin-bottom: 0;
}
.tmf-post.large:not(.attorney) img.primary {
  float: right;
  margin-right: 0;
  margin-left: 15px;
}

/* ======================================== *
	Attorney & Staff
 * ======================================== */
/**------ Attorney Small -----*/

/**------ Attorney Medium -----*/
.tmf-post.attorney.medium img.thumbnail,
.tmf-post.staff.medium img.thumbnail {
  max-height: 150px;
  max-width: 135px;
}
.tmf-post.attorney.medium h2.title,
.tmf-post.staff.medium h2.title {
  margin-bottom: 10px;
}
.tmf-post.attorney.medium .excerpt,
.tmf-post.staff.medium .excerpt {
  clear: both;
}
.tmf-post.attorney.medium .label,
.tmf-post.staff.medium .label {
  font-size: 0;
}
.tmf-post.attorney.medium .phone-1::before,
.tmf-post.attorney.medium .phone-2::before,
.tmf-post.attorney.medium .fax::before,
.tmf-post.attorney.medium .email::before,
.tmf-post.staff.medium .phone-1::before,
.tmf-post.staff.medium .phone-2::before,
.tmf-post.staff.medium .fax::before,
.tmf-post.staff.medium .email::before {
  color: var(--accent);
  font-size: 16px;
  font-family: var(--font-awesome);
  font-weight: 700;
  display: inline-block;
  vertical-align: middle;
}
.tmf-post.attorney.medium .phone-1::before,
.tmf-post.staff.medium .phone-1::before,
.tmf-post.attorney.medium .phone-2::before,
.tmf-post.staff.medium .phone-2::before {
  content: '\f879';
  margin-right: 5px;
  transform: rotate(10deg);
  width: 16px;
}
.tmf-post.attorney.medium .fax::before,
.tmf-post.staff.medium .fax::before {
  content: '\f1ac';
  margin-right: 5px;
  width: 16px;
}
.tmf-post.attorney.medium .email::before,
.tmf-post.staff.medium .email::before {
  content: '\f0e0';
  margin-right: 5px;
  width: 16px;
}
.tmf-post.attorney.medium .read-more-button.bottom,
.tmf-post.staff.medium .read-more-button.bottom {
  margin-top: 15px;
}

/**------ Attorney Large -----*/

/* ======================================== *
	Practice Area
 * ======================================== */

/**------ Practice Area Small -----*/

/**------ Practice Area Medium -----*/

/**------ Practice Area Large -----*/

/**------ Practice Area Medium & Large -----*/
.tmf-post.medium.practice-area .children .tmf-post.medium.practice-area .children,
.tmf-post.large.practice-area .children .tmf-post.medium.practice-area .children {
  margin-top: 35px;
}

/* ======================================== *
	Testimonial
 * ======================================== */

/**------ Testimonial Small -----*/

/**------ Testimonial Medium -----*/

/**------ Testimonial Large -----*/

/* ======================================== *
	Location
 * ======================================== */
.tmf-post.location .direction-links {
  margin-top: 25px;
}

/**------ Location Small -----*/
.tmf-post.small.location .static-map {
  margin-bottom: 10px;
}

/**------ Location Medium -----*/
.tmf-post.location.medium h2 {
  margin-bottom: 15px;
}
.tmf-post.location.medium .business-name {
  font-weight: 700;
}

/* *------ Location Large ----- */

/* ======================================== *
	Blog & News
 * ======================================== */
.tmf-post.post .date,
.tmf-post.news .date {
  margin-top: 0;
}
.tmf-post.post.medium .post-information-container,
.tmf-post.news.medium .post-information-container {
  display: inline-block;
  margin-top: 10px;
}
.tmf-post.post .contributors,
.tmf-post.news .contributors {
  margin-top: 15px;
}
.tmf-post.post .tmf-author,
.tmf-post.news .tmf-author {
  margin-top: 15px;
  line-height: 1em;
  font-size: 14px;
}
.tmf-post.post .tmf-author .author-name-container,
.tmf-post.news .tmf-author .author-name-container {
  display: inline-block;
  margin-top: 4px;
}
.tmf-post.post .tmf-author .author-name,
.tmf-post.news .tmf-author .author-name {
  vertical-align: top;
  line-height: 1.4em;
}
.tmf-post.post .tmf-author .author-thumbnail,
.tmf-post.news .tmf-author .author-thumbnail {
  height: 40px;
  float: left;
  margin-right: 7px;
}

/**------ Blog/News Small -------*/

/**------ Blog/News Medium -------*/
.tmf-post.post.medium .read-more-button,
.tmf-post.news.medium .read-more-button {
  display: inline-block;
  margin-top: 15px;
}

/**------ Blog/News Large -------*/
.tmf-post.post.large .post-information-container,
.tmf-post.news.large .post-information-container {
  margin-bottom: 15px;
  font-weight: 500;
}

/* =============================================================== *
	Mobile Nav Location
 * =============================================================== */
.tmf-post.location.mobile-location {
  padding: 15px 0;
  font-size: 17px;
  width: 100%;
  margin: 15px 0;
  line-height: 28px;
}
.tmf-post.location.mobile-location .location-small-container {
  max-width: 90%;
  margin: 0 auto;
}
.tmf-post.location.mobile-location .location-small-1,
.tmf-post.location.mobile-location .location-small-2 {
  display: inline-block;
  max-width: 425px;
  vertical-align: middle;
  padding: 0 25px;
  box-sizing: border-box;
  position: relative;
}
.tmf-post.location.mobile-location .map-label {
  margin-right: 5px;
  font-size: 20px;
  vertical-align: middle;
  position: absolute;
  display: inline-block;
  top: 20px;
  transform: translateY(-50%);
}
.tmf-post.location.mobile-location .location-address .address {
  display: inline-block;
  vertical-align: middle;
  padding-left: 35px;
}
.tmf-post.location.mobile-location .label {
  margin-right: 13px;
  vertical-align: middle;
}
.tmf-post.location.mobile-location .divider {
  display: none;
}

@media screen and (max-width: 600px) {
  .tmf-post.location.mobile-location .location-small-container {
    max-width: 350px;
  }
  .tmf-post.location.mobile-location .location-small-1,
  .tmf-post.location.mobile-location .location-small-2 {
    display: block;
    max-width: 100%;
  }
  .tmf-post.location.mobile-location .location-small-1 {
    border-right: none;
  }
  .tmf-post.location.mobile-location .location-small-2 {
    margin-top: 10px;
  }
  .tmf-post.location.mobile-location .divider {
    display: block;
    height: 1px;
    width: 100%;
    margin-top: 10px;
  }
}

/* ======================================== *
	FAQ
 * ======================================== */
/**---------- FAQ Small ----------*/

/**---------- FAQ Medium ----------*/

/**---------- FAQ Large ----------*/

/* ======================================== *
	Location
 * ======================================== */
/**---------- Location Small ----------*/
.tmf-post.location.small {
  /*? is this needed?  */
  color: var(--primary);
  font-size: 16px;
  font-weight: 700;
}
.tmf-post.location.small a {
  /*? is this needed?  */
  color: #333333;
  text-decoration: none;
}
.tmf-post.location.small a:hover {
  text-decoration: underline;
}
.tmf-post.small.location .address,
.tmf-post.small.location .phone-1,
.tmf-post.small.location .email {
  display: inline-block;
  font-weight: 400;
}
#footer-cell-1 .tmf-post.small.location .phone-1,
.tmf-post.small.location .email {
  padding-left: 0;
  display: block;
}
.tmf-post.small.location .label {
  font-size: 0;
}
.tmf-post.small.location .streetAddress::before,
.tmf-post.small.location .phone-1::before,
.tmf-post.small.location .phone-2::before,
.tmf-post.small.location .fax::before,
.tmf-post.small.location .email::before {
  /*? is this needed? possibly combine these with just tmf-post so would work for location,attorney,etc  */
  color: #ffffff;
  font-size: 18px;
  font-family: var(--font-awesome);
  font-weight: 700;
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
}
.tmf-post.small.location .streetAddress::before {
  content: '\f3c5';
  vertical-align: top;
}
.tmf-post.small.location .phone-1::before,
.tmf-post.small.location .phone-2::before {
  content: '\f879';
  transform: rotate(10deg);
}
.tmf-post.small.location .fax::before {
  content: '\f1ac';
  font-size: 20px;
}
.tmf-post.small.location .email::before {
  content: '\f0e0';
}

@media screen and (max-width: 1050px) {
  .tmf-post.small.location .address {
    display: block;
  }
}

/**---------- Location Medium ----------*/
.tmf-post.location .dynamic-map {
  position: relative;
  /*? is this needed?  */
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}
.tmf-post.location .dynamic-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/**---------- Location Large ----------*/

/** ======================================== *
**     Responsive Posts
** ======================================== */
@media screen and (min-width: 850px) and (max-width: 1000px), screen and (max-width: 600px) {
  .tmf-post.medium.post .taxonomy-container {
    clear: both;
  }
  /*? is this needed?  */
  .tmf-post.medium.post .read-more-button {
    margin-bottom: 25px;
  }
  /*? is this needed?  */
  .tmf-post.medium.event .taxonomy-container {
    clear: both;
  }
  /*? is this needed?  */
  .tmf-post.medium.event .read-more-button {
    margin-bottom: 25px;
  }
  /*? is this needed?  */
  .tmf-post.medium.post img.primary {
    max-width: 150px;
  }
  .tmf-post.medium img.thumbnail {
    max-width: 175px;
  }
  .children .tmf-post.medium img.thumbnail {
    max-width: 125px;
  }
  /*? is this needed?  */
  .tmf-post.medium.attorney .read-more-button.bottom,
  .tmf-post.medium.staff .read-more-button.bottom {
    display: block;
    text-align: center;
    max-width: fit-content;
  }
  .tmf-post img.primary {
    max-width: 200px;
  }
  /*? is this needed?  */
  .tmf-post.large.attorney img.primary,
  .tmf-post.large.staff img.primary {
    max-width: 250px;
  }
}

@media screen and (max-width: 600px) {
  /*? is this needed?  */
  .tmf-post.large.attorney img.primary,
  .tmf-post.large.staff img.primary {
    float: none;
    margin-bottom: 15px;
  }
  /*? is this needed?  */
  .tmf-post.large:not(.attorney) img.primary {
    float: none;
    margin-right: 0;
    margin-left: 0;
  }
}

@media screen and (max-width: 400px) {
  .tmf-post.small img.thumbnail {
    max-width: 75px;
  }
  .tmf-post.attorney.small img.thumbnail,
  .tmf-post.staff.small img.thumbnail {
    max-width: 75px;
  }
  .tmf-post.medium img.thumbnail {
    max-width: 125px;
  }
  .children .tmf-post.medium img.thumbnail {
    max-width: 100px;
  }
  .tmf-post.medium.post img.primary {
    max-width: 100px;
  }
  .tmf-post.attorney.medium img.thumbnail,
  .tmf-post.staff.medium img.thumbnail {
    max-width: 75px;
  }
  .tmf-post img.primary {
    max-width: 150px;
  }
}
