/* Custom CSS carried over from the archived clinic layout
   "Additional CSS" block that Avada appended to its generated stylesheet. */

/*
 * Homepage / 100% Width full-bleed.
 *
 * Boxed look comes from avada-layout:
 *   #main { padding: 30px }
 *   #main .fusion-row { max-width: 1170px }
 * Archive broke out with .fullwidth-box { margin: -30px }.
 * Force the whole home content column to viewport width, then let
 * hero / steps / treatments use 100vw breakout as a belt-and-suspenders
 * (works even if the page is still on the default template).
 */
body.home,
body.page-template-100-width {
  overflow-x: hidden;
}
body.home #main,
body.page-template-100-width #main,
body.home #wrapper #main,
body.page-template-100-width #wrapper #main,
#wrapper .width-100#main,
body.home #main.width-100,
body.page-template-100-width #main.width-100 {
  padding-left: 0 !important;
  padding-right: 0 !important;
  max-width: none !important;
  width: 100% !important;
  box-sizing: border-box;
}
body.home #main > .fusion-row,
body.page-template-100-width #main > .fusion-row,
body.home #main.width-100 > .fusion-row,
body.page-template-100-width #main.width-100 > .fusion-row,
#wrapper .width-100#main > .fusion-row {
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.home #content,
body.page-template-100-width #content,
body.home #content.full-width,
body.page-template-100-width #content.full-width {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
/* Main padding is 0 — cancel archived -30px fullwidth margins */
body.home #main .fullwidth-box,
body.page-template-100-width #main .fullwidth-box,
#wrapper .width-100#main .fullwidth-box,
body.home #mh-home .fullwidth-box,
body.page-template-100-width #mh-home .fullwidth-box {
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: 100% !important;
  max-width: none !important;
}
/* Gutenberg “constrained” layout boxes Custom HTML — force full bleed on home */
body.home .post-content,
body.page-template-100-width .post-content,
body.home .entry-content,
body.page-template-100-width .entry-content,
body.home .is-layout-constrained,
body.page-template-100-width .is-layout-constrained {
  max-width: none !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
body.home .is-layout-constrained > *,
body.page-template-100-width .is-layout-constrained > *,
body.home .wp-block-group,
body.page-template-100-width .wp-block-group,
body.home .wp-block-html,
body.page-template-100-width .wp-block-html,
body.home #mh-home,
body.page-template-100-width #mh-home {
  max-width: none !important;
  width: 100% !important;
}
/* Viewport breakout for band backgrounds (hero, steps, treatments) */
body.home #mh-home #layerslider-container,
body.home #mh-home .mh-band-steps,
body.home #mh-home .mh-band-treatments,
body.page-template-100-width #mh-home #layerslider-container,
body.page-template-100-width #mh-home .mh-band-steps,
body.page-template-100-width #mh-home .mh-band-treatments {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  position: relative;
  box-sizing: border-box;
}

.tr img {
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  border: 7px solid #fff;
}

#rte-b {
  padding: 17px 15px !important;
  margin-top: 20px;
}

.fusion-reading-box-container.reading-box-container-1 {
  margin-bottom: 0 !important;
}

.fusion-reading-box-container h2 {
  color: #fff !important;
  font-size: 24px !important;
}

.fusion-contact-info,
.fusion-contact-info a {
  color: #85a3e1 !important;
  font-size: 15px !important;
}

#menu-main li a {
  font-weight: 600 !important;
}

#menu-main li li a {
  font-weight: 300 !important;
}

/* Sticky header — OG scrolled look: regular nav weight + smaller logo */
.fusion-is-sticky #menu-main > li > a,
.fusion-is-sticky .fusion-main-menu > ul > li > a {
  font-weight: 400 !important;
  height: 58px;
  line-height: 58px;
  min-height: 58px;
}
.fusion-is-sticky #menu-main li li a,
.fusion-is-sticky .fusion-main-menu > ul > li li a {
  font-weight: 300 !important;
  height: auto;
  line-height: inherit;
  min-height: 0;
}
.fusion-logo img {
  max-height: 70px;
  width: auto;
  transition: max-height .2s ease, margin .2s ease;
}
.fusion-logo .fusion-logo-text {
  display: inline-block;
  font-family: 'Raleway', Arial, Helvetica, sans-serif;
  font-size: 22px;
  font-weight: 700;
  color: #333333;
  line-height: 70px;
  white-space: nowrap;
}
.fusion-is-sticky .fusion-logo {
  margin-top: 2px !important;
  margin-bottom: 2px !important;
}
.fusion-is-sticky .fusion-logo img {
  max-height: 48px;
}
/* Sticky bar goes position:fixed (.fusion-is-sticky .fusion-header-v1
   .fusion-header in style.css) and leaves the flow. The spacer in header.php
   is display:none otherwise; showing it here keeps the header's measured
   height in the layout while sticky, so activating the sticky bar no longer
   shrinks the document, clamps the scroll position and bounces/flickers the
   page when it is near the bottom (the 404 short page). */
.fusion-is-sticky .fusion-header-sticky-height {
  display: block;
}

/* Inner pages/posts: gap under header (layout CSS zeroed #main for homepage) */
body:not(.page-template-100-width):not(.home) #main {
  padding-top: 45px !important;
  padding-bottom: 50px !important;
}
/* Page title spacing: header → h1 → featured image / content */
#content > .post > .entry-title,
#content .post-content > .entry-title,
#content .post-content > h1:first-child {
  margin-top: 0;
  margin-bottom: 28px;
}
#content .post-content > .entry-title + *,
#content .post-content > h1:first-child + * {
  margin-top: 0;
}
/* Page hero image (featured or archived h1>img) */
#content .mh-page-featured,
#content .post-content h1 img,
#content .post-content .wp-block-image {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 0 20px;
}
#content .mh-page-featured img,
#content .post-content h1 img,
#content .post-content .wp-block-image img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
}
#content .post-content h1:has(> img) {
  margin: 0 0 20px;
  font-size: 0;
  line-height: 0;
}

/* Keep archived header nav spacing / label separation (index.html Avada options). */
.fusion-main-menu > ul > li {
  padding-right: 40px;
}

.fusion-main-menu > ul > li:last-child,
.fusion-main-menu > ul > li.fusion-last-menu-item {
  padding-right: 0;
}

.fusion-main-menu > ul > li > a {
  white-space: nowrap;
}

.fusion-main-menu .menu-text {
  display: inline;
  margin-left: 0.35em;
}

/* No dropdown caret beside HEALTH SERVICES / TREATMENTS. */
.fusion-main-menu > ul > li > a .caret {
  display: none !important;
}

/* Center full-width megamenu panels under the header row. */
.fusion-main-menu .fusion-megamenu-wrapper.fusion-megamenu-fullwidth {
  right: auto;
}

.fusion-header-shadow::after {
  box-shadow: 0 15px 50px -2px rgba(0, 0, 0, 0.34) !important;
}

.fusion-header-wrapper {
  border-top: 5px solid #6379a7;
  border-bottom: 3px solid #85a3e1;
}

.appointment {
  background: #fbe034 linear-gradient(to top, #fbe034, #fbe034) repeat scroll 0 0 !important;
  color: #35363a !important;
  display: block;
  float: right;
  line-height: 21px;
  padding: 5px;
  text-align: center;
  width: 190px;
  font-weight: bold !important;
  font-size: 14px !important;
}

.t4 {
  line-height: 20px;
  font-size: 18px;
  color: #333 !important;
  float: right;
  width: 190px;
  text-align: left;
  display: block;
  margin: 5px 0px;
  font-weight: 600;
}

.t4 a {
  line-height: 20px;
  font-size: 18px;
  color: #333 !important;
  float: right;
  width: 190px;
  text-align: left;
  display: block;
  font-weight: 600;
}

.blackp a {
  color: #fff !important;
  float: right;
  width: 190px;
  text-align: left;
  display: block;
  font-size: 13px;
  line-height: 20px;
}

.blackp {
  color: #fff !important;
  float: right;
  width: 190px;
  text-align: left;
  display: block;
  font-size: 13px;
  line-height: 20px;
}

.nopmargin p {
  margin: 0 !important;
  padding: 0 !important;
  text-transform: uppercase;
  font-weight: bold;
  float: left;
}

.fusion-recent-posts {
  margin-bottom: 20px !important;
  margin-top: 50px !important;
}

hr {
  border: none;
  border-top: 1px solid #e9e9e9;
  background: ;
  height: 1px;
  display: block;
}

h4.entry-title a {
  font-weight: bold !important;
  font-size: 14px !important;
  margin-bottom: 15px;
  display: block;
}

.nopmargin .fusion-one-fourth {
  margin-bottom: 0 !important;
  padding: 30px 0;
}

.nopmargin .fusion-one-fourth {
  background: rgba(0, 0, 0, 0) url("/wp-content/uploads/2015/07/arrow.png") no-repeat scroll right center;
}

.nopmargin .fusion-one-fourth.r-an {
  background: rgba(0, 0, 0, 0) url("/wp-content/uploads/2015/07/arrow1.png") no-repeat scroll right center;
}

.nopmargin .fusion-one-fourth.rte-op {
  background: #fbe034 !important;
  padding: 25px 0 !important;
}

.fusion-footer h3 {
  font-weight: bold;
  font-size: 16px;
}

.home .fusion-one-fifth {
  margin-bottom: 0 !important;
}

.home h2 {
  text-transform: uppercase;
}

.fusion-one-fourth img {
  margin: 0 10px !important;
}

#wrapper .fusion-megamenu-wrapper .fusion-megamenu-icon {
  display: block;
  width: 85px;
  margin: 0 auto 10px !important;
}

#wrapper .fusion-megamenu-wrapper .fusion-megamenu-icon img,
.fusion-megamenu-icon img {
  max-width: 85px !important;
  max-height: 85px !important;
}

#wrapper .fusion-megamenu-wrapper .fusion-megamenu-title {
  text-align: center;
}

#wrapper .fusion-megamenu-wrapper a {
  font-size: 14px !important;
  text-align: center !important;
}

/* Icon-above-label grid like the archived HEALTH SERVICES / TREATMENTS menus. */
.fusion-megamenu-wrapper .fusion-megamenu-submenu {
  text-align: center;
  vertical-align: top;
}

.fusion-megamenu-wrapper .fusion-megamenu-title a {
  display: block;
}

.fusion-megamenuli {
  padding-bottom: 0 !important;
}

.formblock1 {
  width: 280px;
  float: left;
  padding: 0 0 0 5px;
}

.fleft {
  display: block;
  width: 99%;
  clear: both;
  text-align: right;
}

.wpcf7-list-item-label {
  display: block;
  float: right;
  width: 240px;
}

.firsttime {
  display: block;
}

.fleft .wpcf7-submit {
  width: 100% !important;
  display: block !important;
  padding: 10px 0 !important;
}

.ajax-loader {
  display: none;
}

.rte-op .fusion-button-wrapper {
  display: inline;
  float: right;
  margin: -20px 0 0;
}

.ttr-mk p {
  float: left;
}

#menu-item-298 a,
#menu-item-297 a {
  cursor: default;
}

#menu-item-298 li a,
#menu-item-297 li a {
  cursor: pointer;
}

/* Sidebar "Get a Free Quote" box (archived #text-3).
   The `.sidebar .widget_text` half keeps the box styled even if WordPress
   assigns a different widget number; the footer text widget lives in
   .fusion-footer-widget-area and is unaffected. */
#text-3,
.sidebar .widget_text {
  display: block;
  padding: 20px;
  background: #f6f6f6;
  border: 1px solid #eee;
  overflow: hidden;
}

#text-3 .formblock1,
.sidebar .widget_text .formblock1 {
  width: 100% !important;
  padding: 0;
}

#text-3 .formblock1 p,
.sidebar .widget_text .formblock1 p {
  margin: 0 0 15px !important;
}

#text-3 h3,
.sidebar .widget_text h3 {
  margin-bottom: 15px !important;
}

#text-3 .wpcf7-list-item-label,
.sidebar .widget_text .wpcf7-list-item-label {
  font-size: 10px;
  float: left;
  width: auto;
}

/* Mobile: the "First time at Scarborough Medical Centre" checkbox label is the
   widest text in the quote form, so it wraps into an awkward ragged block at
   narrow widths. Bump it and centre it as one line with its checkbox.
   text-align is inherited, so setting it on <p class=""firsttime"> reaches the
   label through the CF7 wrapper spans; the label itself needs float:none +
   display:inline to join the checkbox on the same line. */
@media (max-width: 800px) {
  #text-3 .firsttime,
  .sidebar .widget_text .firsttime {
    text-align: center;
  }
  #text-3 .firsttime .wpcf7-list-item-label,
  .sidebar .widget_text .firsttime .wpcf7-list-item-label {
    font-size: 12px;
    float: none;
    display: inline;
    width: auto;
  }
}

#text-3 .wpcf7-form input,
.sidebar .widget_text .wpcf7-form input {
  float: left;
}

/* Heading scale for INNER pages/posts/archives only — NOT the homepage.
   Homepage must match archived index.html (h1 18px, post-content h2 18px, h3 14px).
   Desktop 35 / 28 / 24 / 20 / 18 / 16, mobile 28 / 23 / 20 / 18 / 16 / 15. */
/* Archived heading colour from static Avada dynamic CSS (overrides later #333 / h2 #87a5e1). */
body:not(.home) #content h1,
body:not(.home) #content h2,
body:not(.home) #content h3,
body:not(.home) #content h4,
body:not(.home) #content h5,
body:not(.home) #content h6,
body:not(.home) #content .entry-title,
.mh-404 h1,
.mh-404 h2,
.mh-404 h3,
.mh-404 h4,
.mh-404 h5,
.mh-404 h6 {
  color: #6c8bcb !important;
  font-weight: 400 !important;
}
/* Nested <strong>/<b> inside headings inherit the same non-bold weight as h1. */
body:not(.home) #content h1 strong,
body:not(.home) #content h1 b,
body:not(.home) #content h2 strong,
body:not(.home) #content h2 b,
body:not(.home) #content h3 strong,
body:not(.home) #content h3 b,
body:not(.home) #content h4 strong,
body:not(.home) #content h4 b,
body:not(.home) #content h5 strong,
body:not(.home) #content h5 b,
body:not(.home) #content h6 strong,
body:not(.home) #content h6 b,
body:not(.home) #content .entry-title strong,
body:not(.home) #content .entry-title b {
  font-weight: 400 !important;
}
body:not(.home) #content h1,
.mh-404 h1 {
  font-size: 35px !important;
  line-height: 44px;
}
body:not(.home) #content h2,
.mh-404 h2 {
  font-size: 28px !important;
  line-height: 36px;
}
body:not(.home) #content h3,
.mh-404 h3 {
  font-size: 24px !important;
  line-height: 32px;
}
body:not(.home) #content h4,
.mh-404 h4 {
  font-size: 20px !important;
  line-height: 28px;
}
body:not(.home) #content h5,
.mh-404 h5 {
  font-size: 18px !important;
  line-height: 26px;
}
body:not(.home) #content h6,
.mh-404 h6 {
  font-size: 16px !important;
  line-height: 24px;
}

@media (max-width: 800px) {
  body:not(.home) #content h1,
  .mh-404 h1 {
    font-size: 28px !important;
    line-height: 36px;
  }
  /* Mobile: centre the page/post h1. Only #content, so the sidebar widget
     headings, the header, the footer and the .mh-404 titles
     keep whatever alignment they already have. text-align is inherited, so
     this also centres anything nested inside the h1. */
  body:not(.home) #content h1 {
    text-align: center;
  }
  body:not(.home) #content h2,
  .mh-404 h2 {
    font-size: 23px !important;
    line-height: 30px;
  }
  body:not(.home) #content h3,
  .mh-404 h3 {
    font-size: 20px !important;
    line-height: 27px;
  }
  body:not(.home) #content h4,
  .mh-404 h4 {
    font-size: 18px !important;
    line-height: 25px;
  }
  body:not(.home) #content h5,
  .mh-404 h5 {
    font-size: 16px !important;
    line-height: 23px;
  }
  body:not(.home) #content h6,
  .mh-404 h6 {
    font-size: 15px !important;
    line-height: 22px;
  }
}

/* Centred h1 above the archive / author / search listings. The archived
   pages had no heading at all, so this is the one addition to them: the
   theme prints an h1 for SEO and centres it. Only #content's own h1, so
   post/page titles keep their alignment; the <=800px rule above already
   centres every #content h1 on small screens. text-align is inherited, so
   anything nested inside the heading centres too. */
body:not(.home) #content > h1 {
  text-align: center;
}

/* 404 — same copy as before, centred inside #content and coloured from the
   theme palette: accent #6c8bcb for the eyebrow, heading and button, body
   text #747474 for the explanation. Heading size/colour already come from
   the rules above. */
.mh-404 {
  text-align: center;
  padding: 60px 0 50px;
}
.mh-404 .mh-404__eyebrow {
  margin: 0 0 8px;
  font-size: 14px;
  line-height: 20px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #6c8bcb;
}
.mh-404 h1 {
  margin: 0 0 18px;
}
.mh-404 p {
  margin: 0 0 30px;
  color: #747474;
  font-size: 15px;
  line-height: 23px;
}
.mh-404__cta-link {
  display: inline-block;
  padding: 11px 30px;
  background: #6c8bcb;
  border: 1px solid #6c8bcb;
  border-radius: 3px;
  color: #ffffff;
  font-size: 13px;
  font-weight: 700;
  line-height: 20px;
  text-decoration: none;
}
.mh-404__cta-link:hover,
.mh-404__cta-link:focus {
  background: #5576b8;
  border-color: #5576b8;
  color: #ffffff;
}

/* Rollover veil on the archive cards — archived dynamic CSS: the blue
   rgba(135,165,225,0.8) gradient that slides in from the left over the
   featured image (the base .fusion-rollover starts at translateX(-100%) and
   fades to 0% on hover), plus the two #333 round icons: the link icon goes
   to the post, the magnifier opens the search box. The standard gradient is
   last so current browsers use it; -webkit-gradient stays for the archived
   string and for engines that do not know "to top". */
.fusion-image-wrapper .fusion-rollover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(135, 165, 225, 0.8)), color-stop(1, rgba(135, 165, 225, 0.8)));
  background-image: linear-gradient(to top, rgba(135, 165, 225, 0.8), rgba(135, 165, 225, 0.8));
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#87a5e1', endColorstr='#87a5e1'), progid: DXImageTransform.Microsoft.Alpha(Opacity=0);
}
.fusion-image-wrapper:hover .fusion-rollover {
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#87a5e1', endColorstr='#87a5e1'), progid: DXImageTransform.Microsoft.Alpha(Opacity=100);
}
.fusion-image-wrapper .fusion-rollover .fusion-rollover-link,
.fusion-image-wrapper .fusion-rollover .fusion-rollover-gallery {
  background-color: #333333;
  width: 36.15px;
  height: 36.15px;
}
.fusion-image-wrapper .fusion-rollover .fusion-rollover-link:before,
.fusion-image-wrapper .fusion-rollover .fusion-rollover-gallery:before {
  font-size: 15px;
  color: #ffffff;
  margin-left: -7.5px;
  line-height: 36.15px;
}

/* Search box opened by the rollover magnifier: fixed overlay, theme accent. */
.mh-search-modal[hidden] {
  display: none;
}
.mh-search-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100001;
}
.mh-search-modal__backdrop {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(51, 51, 51, 0.8);
}
.mh-search-modal__box {
  position: relative;
  width: 90%;
  max-width: 560px;
  margin: 15vh auto 0;
  padding: 35px 30px 30px;
  background: #ffffff;
  border-radius: 3px;
  box-shadow: 0 5px 30px rgba(0, 0, 0, 0.4);
  text-align: center;
}
.mh-search-modal form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}
.mh-search-modal__field {
  -webkit-appearance: none;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  width: 100%;
  height: 44px;
  margin: 0;
  padding: 0 14px;
  border: 1px solid #d2d2d2;
  background: #ffffff;
  color: #747474;
  font-size: 15px;
  line-height: 42px;
}
.mh-search-modal__field:focus {
  outline: none;
  border-color: #6c8bcb;
}
.mh-search-modal__submit {
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  height: 44px;
  margin: 0 0 0 8px;
  padding: 0 22px;
  border: 1px solid #6c8bcb;
  background: #6c8bcb;
  color: #ffffff;
  font-size: 13px;
  font-weight: 700;
  line-height: 42px;
  cursor: pointer;
}
.mh-search-modal__submit:hover,
.mh-search-modal__submit:focus {
  background: #5576b8;
  border-color: #5576b8;
}
.mh-search-modal__close {
  position: absolute;
  top: 4px;
  right: 12px;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  color: #747474;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
}
.mh-search-modal__close:hover,
.mh-search-modal__close:focus {
  color: #333333;
}
body.mh-search-open {
  overflow: hidden;
}
@media (max-width: 640px) {
  .mh-search-modal form {
    display: block;
  }
  .mh-search-modal__field {
    display: block;
    height: 44px;
  }
  .mh-search-modal__submit {
    display: block;
    width: 100%;
    margin: 10px 0 0;
  }
  .mh-search-modal__box {
    margin-top: 10vh;
  }
}

/* Homepage — exact archived index.html Avada dynamic CSS */
body.home #content #mh-home,
body.home #mh-home {
  font-family: 'Open Sans', Arial, Helvetica, sans-serif;
  font-size: 15px;
  line-height: 23px;
  color: #333333;
  font-weight: 400;
}
body.home #content #mh-home h1,
body.home #mh-home h1 {
  font-family: 'Open Sans', Arial, Helvetica, sans-serif;
  font-size: 18px !important;
  line-height: 27px !important;
  color: #6c8bcb !important;
  font-weight: 700;
  text-transform: uppercase;
}
body.home #content #mh-home h2:not(.ls-l-h),
body.home #mh-home h2:not(.ls-l-h) {
  font-family: 'Open Sans', Arial, Helvetica, sans-serif;
  font-size: 18px !important;
  line-height: 27px !important;
  color: #6c8bcb !important;
  font-weight: 700;
  text-transform: uppercase;
}
body.home #content #mh-home .mh-blog-head h2,
body.home #content #mh-home .mh-blog-head h2 a,
body.home #mh-home .mh-blog-head h2,
body.home #mh-home .mh-blog-head h2 a {
  color: #333333 !important;
  font-size: 18px !important;
  line-height: 27px !important;
  text-transform: uppercase;
  font-weight: 700;
}
body.home #content #mh-home .mh-blog-head h2 a:hover,
body.home #mh-home .mh-blog-head h2 a:hover {
  color: #87a5e1 !important;
}
body.home #content #mh-home h3,
body.home #mh-home h3 {
  font-family: 'Open Sans', Arial, Helvetica, sans-serif;
  font-size: 14px !important;
  line-height: 24px !important;
  color: #6c8bcb !important;
  font-weight: 700;
}
body.home #content #mh-home h3 a,
body.home #mh-home h3 a,
body.home #content #mh-home a,
body.home #mh-home a {
  color: #333333;
}
body.home #content #mh-home a:hover,
body.home #mh-home a:hover {
  color: #87a5e1;
}
body.home #content #mh-home h4,
body.home #mh-home h4,
body.home #content #mh-home h4 a,
body.home #mh-home h4 a {
  font-size: 14px !important;
  line-height: 20px !important;
  color: #333333 !important;
  font-weight: 700;
}
body.home #content #mh-home p,
body.home #mh-home p,
body.home #content #mh-home .post-content p,
body.home #mh-home .post-content p {
  font-size: 15px !important;
  line-height: 23px !important;
  color: #333333 !important;
  font-weight: 400;
}
body.home #content #mh-home .mh-post-excerpt,
body.home #mh-home .mh-post-excerpt {
  font-size: 14px !important;
  line-height: 23px !important;
  color: #747474 !important;
  font-weight: 400;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
  min-height: 92px;
}
/* Homepage Latest from Blog — equal card width/height */
body.home #mh-home .mh-blog-row {
  align-items: stretch;
}
body.home #mh-home .mh-blog-row > .mh-col {
  display: flex;
  flex-direction: column;
  width: 25%;
  flex: 0 0 25%;
  max-width: 25%;
  box-sizing: border-box;
}
body.home #mh-home .mh-blog-row .mh-post {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  flex: 1 1 auto;
  background: #fff;
  border: 1px solid #ececec;
}
body.home #mh-home .mh-post-body h4 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  min-height: 60px;
}
@media (max-width: 980px) {
  body.home #mh-home .mh-blog-row > .mh-col {
    width: 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
}
@media (max-width: 640px) {
  body.home #mh-home .mh-blog-row > .mh-col {
    width: 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
}
body.home #content #mh-home .ls-l-p,
body.home #mh-home .ls-l-p {
  font-family: 'Open Sans', Arial, Helvetica, sans-serif !important;
  font-size: 40px !important;
  line-height: 1.2 !important;
  color: rgb(106, 138, 204) !important;
  font-weight: 400 !important;
  text-transform: none !important;
}
body.home #content #mh-home .ls-l-h,
body.home #mh-home .ls-l-h {
  font-family: 'Open Sans', Arial, Helvetica, sans-serif !important;
  font-size: 22px !important;
  line-height: 1.35 !important;
  color: rgb(51, 51, 51) !important;
  font-weight: 400 !important;
  text-transform: none !important;
  background: rgba(250, 223, 50, 0.49) !important;
}

/* Post-footer headings are UI labels, not content headings, so they stay at
   their archived sizes (resolved from the theme cascade):
     .share-box h4                      13px / 20px  - style.css font shorthand
     .about-author .title-heading-left  18px / 27px  - #wrapper .title h2
     .comment-reply-title .title-heading-left 18px / 27px
   The outer .comment-reply-title h3 wraps the title and only sets the size of
   the "Cancel reply" link; the archive has no author rule for it, so it is put
   back to the UA default instead of picking up the 20px content h3.
   Placed after the scale above and one class more specific, so these win at
   every breakpoint without needing to repeat them in the media query. */
#content .share-box h4 {
  font-size: 13px !important;
  line-height: 20px;
}
#content .about-author .title-heading-left,
#content .comment-reply-title .title-heading-left {
  font-size: 18px !important;
  line-height: 27px;
}
#content .comment-reply-title {
  font-size: 1.17em !important;
  line-height: normal;
}

/* Single post Previous / Next — above featured image (archived .single-navigation) */
#content .single-navigation {
  height: 34px;
  line-height: 34px;
  border-top: 1px solid #e7e6e6;
  border-bottom: 1px solid #e7e6e6;
  margin: 0 0 40px;
  padding: 0;
  overflow: hidden;
}
#content .single-navigation a {
  display: inline-block;
  position: relative;
  color: #333333;
  text-decoration: none;
  font-size: 13px;
}
#content .single-navigation a:hover {
  color: #87a5e1;
}
#content .single-navigation a[rel="prev"] {
  float: left;
  padding-left: 12px;
}
#content .single-navigation a[rel="next"] {
  float: right;
  padding-right: 12px;
}
#content .single-navigation a[rel="prev"]:before {
  content: '\2039';
  font-family: Arial, Helvetica, sans-serif;
  position: absolute;
  left: 0;
  top: 0;
  font-size: 16px;
  line-height: 34px;
  color: inherit;
  margin: 0;
  padding: 0;
}
#content .single-navigation a[rel="next"]:after {
  content: '\203A';
  font-family: Arial, Helvetica, sans-serif;
  position: absolute;
  right: 0;
  top: 0;
  font-size: 16px;
  line-height: 34px;
  color: inherit;
  margin: 0;
  padding: 0;
}

@media (min-width: 100px) and (max-width: 1179px) {
  .nopmargin {
    display: none !important;
  }
}

@media (min-width: 100px) and (max-width: 800px) {
  .icoons-mk .fusion-one-fifth {
    width: 50% !important;
    margin-right: 0;
  }
}

.form_column {
  width: 34%;
  float: left;
  padding: 0 7px 0 0;
}

.form_column1 {
  width: 32%;
  float: right;
}

.form_column2 {
  width: 100%;
  clear: both;
}

.wp-image-693,
.wp-image-690,
.wp-image-694,
.wp-image-695,
.wp-image-696 {
  margin-bottom: 10px;
}

/* Theme equivalents of the two ID scoped rules above, so they keep working
   regardless of the menu item IDs WordPress assigns. */
.fusion-menu > li.menu-item-has-children > a {
  cursor: default;
}

.fusion-menu > li.menu-item-has-children li a {
  cursor: pointer;
}

/* Sticky header must clear the WordPress admin bar.
   Avada pins the sticky header at top:0
   (.fusion-is-sticky .fusion-header-v1 .fusion-header), so while scrolling in
   wp-admin the 32px admin bar sits on top of it and hides the top of the logo
   and nav. 32px on desktop, 46px at the <=782px breakpoint the admin bar uses. */
body.admin-bar .fusion-is-sticky .fusion-header-v1 .fusion-header,
body.admin-bar .fusion-is-sticky .fusion-header-v2 .fusion-header,
body.admin-bar .fusion-is-sticky .fusion-header-v3 .fusion-header,
body.admin-bar .fusion-is-sticky .fusion-sticky-header-wrapper,
body.admin-bar .fusion-is-sticky .fusion-secondary-main-menu,
body.admin-bar .fusion-is-sticky #header-sticky {
  top: 32px;
}

@media screen and (max-width: 782px) {
  body.admin-bar .fusion-is-sticky .fusion-header-v1 .fusion-header,
  body.admin-bar .fusion-is-sticky .fusion-header-v2 .fusion-header,
  body.admin-bar .fusion-is-sticky .fusion-header-v3 .fusion-header,
  body.admin-bar .fusion-is-sticky .fusion-sticky-header-wrapper,
  body.admin-bar .fusion-is-sticky .fusion-secondary-main-menu,
  body.admin-bar .fusion-is-sticky #header-sticky {
    top: 46px;
  }
}

/* Keep the mobile sticky nav clear of the admin bar too. */
body.admin-bar .fusion-is-sticky .fusion-mobile-nav-holder.fusion-mobile-sticky-nav-holder {
  top: 46px;
}

/* Single post comment block.
   This theme folder ships Avada's style.css and avada-layout.css but not
   base.css, so #respond / .comment-respond / .comment-reply-title have no rules
   at all and the "Leave A Comment" title collides with the paragraph under it.
   .fusion-meta-info, .share-box and .about-author are already styled upstream. */
#respond,
.comment-respond {
  overflow: hidden;
  margin-top: 20px;
}

.comment-reply-title {
  margin-bottom: 15px;
}

.comment-respond .must-log-in {
  margin-top: 0;
}

/* --------------------------------------------------------------------------
   Layout Options -> Content Width = Full Width
   (body class mh-layout-fullwidth, added by avada_body_classes()).

   page.php prints `#main.width-100 > .fusion-row > #content.full-width
   > .post-content` and wraps the title / body copy in its own .fusion-row.
   Result: .fullwidth-box bands (Google map, hero, …) run edge-to-edge while
   the text stays inside the 1170px container.
   Row geometry: max-width 1230px + 30px side padding = 1170px of content
   with the archived gutters at every width.
   -------------------------------------------------------------------------- */
body.mh-layout-fullwidth {
  overflow-x: hidden;
}
body.mh-layout-fullwidth #content,
body.mh-layout-fullwidth #content.full-width {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
/* Full-bleed bands break out of the text container. */
body.mh-layout-fullwidth .post-content .fullwidth-box {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  position: relative;
  display: block;
  box-sizing: border-box;
}
body.mh-layout-fullwidth .post-content .hundred-percent-fullwidth {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
/* Text container + band rows: 1170px of content, 30px gutters. */
body.mh-layout-fullwidth .post-content > .fusion-row,
body.mh-layout-fullwidth .post-content .fullwidth-box:not(.hundred-percent-fullwidth) > .fusion-row {
  max-width: 1230px !important;
  padding-left: 30px !important;
  padding-right: 30px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box;
}
