/*
 Theme Name:   Astra-Child
 Theme URI:    https://wpastra.com/
 Description:  Astra Child Theme
 Author:       Advantage Marketing
 Template:     astra
 Version:      1.0.17
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         one-column, two-columns, left-sidebar, e-commerce, right-sidebar, custom-colors, custom-menu, editor-style, featured-images, full-width-template, microformats, post-formats, rtl-language-support, theme-options, threaded-comments, translation-ready, blog
 Text Domain:  astra
*/

/* #region New Ad Styles */
.side-by-side {
  text-align: center;
}

@media (max-width: 600px) {
  .side-by-side .elementor-column {
    width: 100%;
  }
}

@media (min-width: 601px) {
  .side-by-side .elementor-column {
    width: 50%;
  }
}

/* #endregion */

/* #region New Ad Styles */
:root {
  --ad-link-text-color: #275ca1;
}

.new-ad-col {
  /* background-color: pink; */
  border: 1px solid #8c8c8c;
  padding: 0px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.new-ad-col img {
  margin: 10px auto 0 auto;
  width: 400px;
}

.new-ad-col.listing p {
  width: 50%;
}

.new-ad-col.oneU .new-ad-words-section p {
  display: none;
}

.new-ad-col p {
  padding: 10px;
  line-height: 150%;
  margin: 0px;
  font-size: 0.95rem;
}

.new-ad-col>a:has(img) {
  display: block;
  width: 40%;
  align-self: center;
  padding: 10px;
}

.new-ad-words-section {
  /* background-color: lightblue; */
  display: flex;
  flex-direction: column;
  width: 60%;
}

.listing .new-ad-words-section {
  width: 50%;
}

.new-ad-words-section>div {
  /* background-color: lightskyblue; */
  text-align: center;
  align-items: center;
  display: flex;
  flex-direction: column;
  padding: 10px;
}

.new-ad-col a {
  color: var(--ad-link-text-color) !important
}

.new-ad-col .phone {
  background: #fff url(https://westmichiganguides.com/wp-content/uploads/2019/12/icon-phone.png) no-repeat 2px center !important;
  background-size: auto 20px !important;
  padding-left: 20px !important;
}

.new-ad-col .website {
  background: #fff url(https://westmichiganguides.com/wp-content/uploads/2019/12/icon-website.png) no-repeat 2px center;
  background-size: auto 20px;
  padding-left: 28px;
}

.new-ad-col .location::before {
  background: #fff url(https://westmichiganguides.com/wp-content/uploads/2019/12/icon-location.png) no-repeat 2px center;
  background-size: auto 20px;
  content: '';
  width: 20px;
  height: 20px;
  display: inline-block;
  translate: 0px 4px;
}

@media (max-width: 600px) {
  .new-ad-col {
    flex-direction: column;
  }

  .new-ad-col.oneU .new-ad-words-section p {
    display: block;
  }

  .new-ad-col.oneU>p {
    display: none;
  }

  .new-ad-words-section>div {
    width: 100%;
  }

  .new-ad-words-section {
    flex-direction: column-reverse;
    width: 100%;
  }

  .new-ad-col>a:has(img) {
    width: 100%;
    text-align: center;
  }

  .listing .new-ad-words-section {
    width: 100%;
  }

  .new-ad-col.listing p {
    width: 100%;
  }
}

.new-ad-col h5 {
  color: #3c3e3f;
  text-transform: uppercase;
  margin: 12px 0;
  font-size: 24px;
  text-align: center;
}

/* #endregion */


/* table of contents - stopping sticky header from covering the title of the section */
body:not(.elementor-editor-active) .elementor-widget-menu-anchor {
  position: relative;
  z-index: -1;
}

body:not(.elementor-editor-active) .elementor-menu-anchor:before {
  content: '';
  display: block;
  height: 80px;
  margin: -80px 0 0;
  visibility: hidden;
  pointer-events: none;
}

/* featured images in archive pages and search results */
.archive .ast-blog-featured-section,
.search-results .ast-blog-featured-section {
  width: 25%;
  float: right;
  margin: 20px 40px 0 0;
}

.archive .entry-header,
.search-results .entry-header,
.archive .entry-content,
.search-results .entry-content {
  width: 68%;
  float: left;
  clear: none;
  margin: 20px 0 0 0;
}

@media (max-width: 500px) {

  .archive .ast-blog-featured-section,
  .search-results .ast-blog-featured-section {
    width: auto;
    float: none;
    margin: 10px 0;
    max-width: 200px;
  }

  .archive .entry-header,
  .search-results .entry-header,
  .archive .entry-content,
  .search-results .entry-content {
    width: auto;
    clear: both;
    float: none;
  }
}

/* read more links in text widget */
.textwidget a.readmore {
  white-space: nowrap;
  font-size: 14px !important;
  display: inline-block;
}

.textwidget a.readmore:hover {
  text-decoration: underline !important;
}

/* sticky nav - minimize styles */

#header-wrap.scroll,
#header-wrap.scroll .site-logo-img .custom-logo-link img {
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
}

#header-wrap.scroll {
  position: fixed;
  top: 0;
  z-index: 100;
  width: 100%;
}

#header-wrap.scroll .ast-site-identity {
  padding: 0.25em 0;
}

#header-wrap header {
  -moz-transition: all 1.5s !important;
  -webkit-transition: all 1.5s !important;
  transition: all 1.5s !important;
  padding: 10px 20px 0 20px;
}

#header-wrap.scroll header {
  background-color: rgba(255, 255, 255);
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), 0 3px 10px 0 rgba(0, 0, 0, 0.19)
}

#header-wrap header,
#header-wrap.scroll:hover header {
  background-color: #fff;
}

nav#site-navigation {
  max-width: 350px;
  position: absolute;
  right: 0;
}

body .ast-mobile-popup-drawer .ast-mobile-popup-inner {
  max-width: 320px;
}

.ast-header-break-point .ast-primary-header-bar {
  border: none !important;
}

[data-section='section-header-mobile-trigger'] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg {
  height: 32px;
  width: 32px;
}

.cursive h1,
.cursive h2,
.cursive h3 {
  font-family: 'Galada', cursive !important;
  font-weight: 400 !important;
}

a,
input,
button {
  outline: none !important;
}

.ast-site-identity {
  padding: 0 !important;
}

.photo-credit,
.photo-credit p,
figcaption,
.wp-caption .wp-caption-text {
  color: #777;
  font-size: 11px;
  padding: 0 20px;
}

.photo-credit {
  padding: 0 20px;
}

li.widget {
  list-style-type: none;
}

.widget ul {
  list-style-type: disc;
  padding-left: 20px;
}

h2.widgettitle,
h2.widget-title {
  font-size: 24px;
  color: #275ca1;
  font-weight: 400;
  margin-bottom: 1em;
  line-height: 1.5;
}

/* site title fallback and headings */
.site-title,
h1,
.entry-content h1,
h2,
.entry-content h2,
h3,
.entry-content h3,
h4,
.entry-content h4,
h5,
.entry-content h5,
h6,
.entry-content h6 {
  color: #275ca1;
}

#header-wrap header button.menu-toggle {
  margin-top: 10px;
}

#header-wrap header {
  padding: 0px 20px;
}

footer {
  background-color: #bfefff;
  background-color: #efe9cf;
  background-color: rgba(238, 232, 205, 0.6);
}

.entry-title a {
  color: #dc890c;
}

.entry-title a:hover,
.entry-title a:focus {
  color: #f9a11e;
}

button,
input[type='submit'],
input[type='button'] {
  -moz-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

/* Hide Author and Date Meta */
div.post-author,
div.post-date {
  display: none !important;
}

@media (max-width: 767px) {

  /* premium blog goes to 1 column on mobile */
  .premium-blog-post-inner-container {
    width: 100% !important;
  }
}

/* list categories on a post widget */
.list-cats strong {
  display: inline-block;
  padding: 0;
  line-height: 1.3;
}

.list-cats ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: inline;
}

.list-cats ul li {
  display: inline-block;
  padding: 0 2px;
  line-height: 1.3;
}

.search-no-results #primary {
  padding-left: 40px !important;
}

/* ==== post container ==== */

.ast-separate-container .ast-article-post,
.ast-separate-container .ast-article-single,
.search-results #content {
  padding: 40px;
}

/* photo credit */
.photo-credit {
  font-size: 12px;
  clear: both;
  margin: 0 auto !important;
  padding: 0 40px !important;
  position: relative;
  z-index: 98;
  top: -3px;
  color: #888;
  max-width: 1040px;
  text-align: right !important;
}

.photo-credit::after {
  content: '';
  clear: both;
  display: block;
  margin-bottom: 20px;
}

/* remove sidebar margin */
#primary {
  border: none !important;
}

#secondary {
  border: none !important;
  margin: 0;
  padding: 40px 3% 40px 3% !important;
}

/* images - figures */
figure {
  padding: 0 12px 12px 0 !important;
}

.category-container,
.post-container {
  max-width: 1140px !important;
  margin: 20px auto;
  padding-right: 20px;
  padding-left: 20px;
}

.category-header,
.post-header {
  width: 100%;
  height: 400px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  margin: 0;
  position: relative;
}

/* #splash,
  #splash .elementor-container {
	height: auto !important;
	min-height: 320px;
  } */

/* #splash-tall,
  #splash-tall .elementor-container {
	height: auto !important;
	min-height: 40px;
  } */

/* ==== Ad Styles ==== */

/* local advertiser images */
img.ad-local-img {
  border: none;
}

.ad-row {
  border: 1px solid #8c8c8c;
}

/* bottom padding */
.ad-row {
  padding-bottom: 5px;
}

/* clearfix */
.clearfix::after,
.ad-row::after {
  content: '';
  clear: both;
  display: table;
  background: none;
}

/* ad-columns */
.ad-col-10,
.ad-col-20,
.ad-col-30,
.ad-col-40,
.ad-col-50,
.ad-col-60,
.ad-col-70,
.ad-col-80,
.ad-col-90,
.ad-col-100 {
  padding: 10px;
  box-sizing: border-box;
  float: left;
}

.ad-col-10 {
  width: 10%;
}

.ad-col-20 {
  width: 20%;
}

.ad-col-30 {
  width: 30%;
}

.ad-col-40 {
  width: 40%;
}

.ad-col-50 {
  width: 50%;
}

.ad-col-60 {
  width: 60%;
}

.ad-col-70 {
  width: 70%;
}

.ad-col-80 {
  width: 80%;
}

.ad-col-90 {
  width: 90%;
}

.ad-col-100 {
  width: 100%;
  clear: both;
  padding-top: 0;
}

.ad-col-mobile {
  display: none;
}

.ad-col-desktop {
  display: block;
}

/* business names */
.ad-row h5,
.ad-row h5 a {
  color: #3c3e3f;
  text-transform: uppercase;
  margin: 12px 0;
  font-size: 24px;
  text-align: center;
}

.ad-row.basic h5,
.ad-row.basic h5 a {
  font-size: 22px;
}

/* ad images */
.ad-row img,
.ad-local-img,
.ad-img {
  width: 400px;
}

.ad-row img {
  display: block;
  margin: 10px auto 0 auto;
}

/* different text style for ads */
.ad-row p {
  font-size: 15px;
  line-height: 150%;
  color: #444;
  margin-bottom: 0;
}

.ad-row p a {
  color: #05a7d3;
}

.ad-row p a:hover,
.ad-row a:active {
  text-decoration: underline;
}

/* add padding to enhanced listing paragraph but no to paragraph icons */
.enhanced p {
  margin-top: 15px;
}

.enhanced p.icons {
  margin-top: 0;
}

.icons {
  width: 100%;
}

p.icons a,
.icons a,
.icons .location,
.icons a,
.sidebar-advertorial .website a,
.sidebar-advertorial .location p,
.sidebar-advertorial .location a,
.sidebar-advertorial .phone a {
  display: table;
  text-align: center;
  line-height: 1.3;
  margin: 6px auto;
  padding: 4px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  color: #275ca1 !important;
}

p.icons {
  max-width: 100% !important;
}

.noicon {
  height: 1px;
  width: 1px;
  position: absolute;
  left: -300%;
  top: -20000px;
}

.sidebar-advertorial .website,
.sidebar-advertorial .location,
.sidebar-advertorial .phone {
  margin: 0;
  padding: 0;
}

p.icons a,
.sidebar-advertorial .website a,
.sidebar-advertorial .location p,
.sidebar-advertorial .phone a {
  max-width: 90% !important;
}

p.icons a:hover,
p.icons a:active,
.sidebar-advertorial .website a:hover,
.sidebar-advertorial .location a:hover,
.sidebar-advertorial .phone a:hover,
.sidebar-advertorial .website a:active,
.sidebar-advertorial .location a:active,
.sidebar-advertorial .phone a:active {
  text-decoration: none;
}

/* Icons Section */

p.icons a:hover,
p.icons a:active {
  background-color: #f5f5f3 !important;
}

a.phone,
.phone a {
  background: url(/wp-content/uploads/icon-phone.png) no-repeat 2px 6px;
  padding-left: 20px !important;
}

a.website,
.website a {
  background: url(/wp-content/uploads/icon-website.png) no-repeat 2px 6px;
  padding-left: 28px !important;
}

.ad-row a.location,
.ad-row .location a {
  background: url(/wp-content/uploads/icon-location.png) no-repeat 2px 6px;
  padding-left: 20px !important;
}

a.phone,
.phone a,
a.website,
.website a,
.ad-row a.location,
.location a {
  background-color: white;
  background-size: auto 20px !important;
  background-position-y: center;
}

a.phone:hover,
.phone a:hover,
a.website:hover,
.website a:hover,
a.location:hover,
.location a:hover,
a.phone:active,
.phone a:active,
a.website:active,
.website a:active,
a.location:active,
.location a:active {
  background-color: #f5f5f3;
  text-decoration: none;
}

/* End Icons Section */


.btn-advertorial {
  margin: 15px 0 25px 0 !important;
}

@media (max-width: 950px) {

  /* exception for 2u and 3u ads */
  .ad-col-60 {
    width: 100% !important;
    float: none !important;
    display: block;
    clear: left;
  }

  .ad-col-60.ad-col-desktop {
    width: 60% !important;
    float: left !important;
    clear: none;
  }
}

@media (max-width: 800px) {

  .ad-row h5,
  p.icons {
    text-align: center;
  }

  .ad-col-mobile {
    display: block;
  }

  .ad-col-desktop {
    display: none;
  }

  .ad-col-10,
  .ad-col-20,
  .ad-col-30,
  .ad-col-40,
  .ad-col-50,
  .ad-col-60,
  .ad-col-70,
  .ad-col-80,
  .ad-col-90,
  .ad-col-100 {
    width: 100%;
    clear: both;
    float: none;
  }

  .photo-credit {
    font-size: 11px;
  }

  p.icons a.phone,
  p.icons a.phone:hover,
  p.icons a.phone:active,
  p.icons a.website,
  p.icons a.website:hover,
  p.icons a.website:active,
  p.icons a.location,
  p.icons a.location:hover,
  p.icons a.location:active,
  .sidebar-advertorial .website a,
  .sidebar-advertorial .location a,
  .sidebar-advertorial .phone a,
  .sidebar-advertorial .website a:hover,
  .sidebar-advertorial .location a:hover,
  .sidebar-advertorial .phone a:hover,
  .sidebar-advertorial .website a:active,
  .sidebar-advertorial .location a:active,
  .sidebar-advertorial .phone a:active {
    background-size: auto 18px;
  }
}

@media (max-width: 921px) {

  .photo-credit,
  .photo-credit p {
    font-size: 10px;
  }
}

@media (max-width: 500px) {

  .photo-credit,
  .photo-credit p {
    font-size: 8px;
    padding: 0 20px;
  }
}

@media (min-width: 769px) and (max-width: 840px) {
  .ad-row p {
    font-size: 13px;
  }

  p.icons a.phone,
  p.icons a.phone:hover,
  p.icons a.phone:active,
  p.icons a.website,
  p.icons a.website:hover,
  p.icons a.website:active,
  p.icons a.location,
  p.icons a.location:hover,
  p.icons a.location:active,
  .sidebar-advertorial .website a,
  .sidebar-advertorial .location a,
  .sidebar-advertorial .phone a,
  .sidebar-advertorial .website a:hover,
  .sidebar-advertorial .location a:hover,
  .sidebar-advertorial .phone a:hover,
  .sidebar-advertorial .website a:active,
  .sidebar-advertorial .location a:active,
  .sidebar-advertorial .phone a:active {
    background-size: auto 17px;
  }
}

@media (min-width: 841px) and (max-width: 1080px) {
  .ad-row p {
    font-size: 15px;
  }
}

.nf-form-content {
  margin: 20px 0 !important;
}

/* images within text */
#content p img .alignright,
#content p img .alignleft {
  margin: 10px 20px;
}

/* buttons */
.btn,
.nf-form-content input[type='button'],
p .btn {
  color: #fff !important;
  text-decoration: none !important;
  text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
  background-color: #05a7d3;
  -moz-border-radius: 5px;
  border-radius: 5px;
  display: inline-block;
  padding: 10px 15px !important;
}

nav.anchor-menu .elementor-button-text {
  white-space: nowrap;
}

/* button in advertorial contact info */
.icons .btn {
  margin-top: 30px;
}

.nf-form-content input[type='button'] {
  background-color: #05a7d3 !important;
}

.btn small {
  display: block;
  font-size: 12px;
}

.btn-xl {
  background-color: #d9534f;
  padding: 15px 20px;
}

.btn:hover,
.btn:active,
p .btn:hover,
p .btn:active,
.nf-form-content input[type='button']:hover,
.nf-form-content input[type='button']:active {
  opacity: 0.75;
}

/* buttons w icons */
.widget .elementor-align-icon-left {
  float: left;
  width: 12%;
  text-align: center;
}

.widget .elementor-button-text {
  width: 88%;
}

/* ninja forms */

#contact-form .nf-form-content textarea.ninja-forms-field {
  height: 150px;
}

#ninja_forms_required_items,
.nf-field-container {
  margin-bottom: 18px;
}

.nf-form-fields-required {
  font-size: 12px;
}

/* no background on dropdown arrows */
#primary-menu .ast-menu-toggle {
  background-color: transparent !important;
  border: none !important;
  z-index: 999;
}

/* parent toggles children */
.ast-header-break-point .main-header-bar .main-header-bar-navigation .menu-item-has-children>.ast-menu-toggle {
  text-align: right;
  width: 95%;
}

#primary-menu a {
  line-height: 1.3;
  padding-top: 8px;
  padding-bottom: 8px;
}

/* splash area */

/* Commented out by Branden to allow elementor to set the height of the splash */
/* #splash,
  #splash .elementor-container {
	height: auto !important;
	min-height: 320px;
  }
  
  #splash-tall,
  #splash-tall .elementor-container {
	height: auto !important;
	min-height: 400px;
  } */

/* @media screen and (max-width: 2000px) {
	.category-header,
	.post-header {
	  height: 500px;
	}
  
	#splash {
	  min-height: 500px;
	}
  
	#splash-tall {
	  min-height: 600px;
	}
  } */
@media screen and (max-width: 1415px) {

  .category-header,
  .post-header {
    height: 400px;
  }

  #splash {
    min-height: 400px;
  }

  #splash-tall {
    min-height: 500px;
  }
}

@media screen and (max-width: 767px) {

  .category-header,
  .post-header {
    height: 320px;
  }

  #splash {
    min-height: 320px;
  }

  #splash-tall {
    min-height: 400px;
  }
}

.category-header .category-title,
.post-header .post-title {
  padding: 100px 20px 0px 20px;
}

.category .entry-content,
.search-results .entry-content {
  padding: 0 20px;
}

/* no outlines on nav please */
#primary-menu .ast-menu-toggle,
#primary-menu button,
#primary-menu a,
#primary-menu button:hover,
#primary-menu button:active,
button.menu-toggle {
  outline: none !important;
}

/* remove arrow on submenu list items */
.ast-header-break-point .main-navigation ul.sub-menu .menu-item .menu-link:before {
  display: none;
}

/* White Text on Splash Photos */
#splash h1,
#splash-tall h1 {
  font-size: 58px;
  margin: 0;
  padding: 0;
}

#splash h3,
#splash-tall h2 {
  font-size: 36px;
  margin: 0 0 6px 0;
  padding: 0;
}

#splash.category-title h1,
#splash-tall.category-title h1 {
  font-size: 58px;
  line-height: 1;
  padding: 0 0 12px 0;
  margin: 0 !important;
}

#splash.category-title h3,
#splash-tall.category-title h3 {
  margin: 0 !important;
  line-height: 1;
  padding: 0;
}

#splash-advertorial h1 {
  font-size: 55px;
  margin: 0;
  padding: 0;
}

#splash-advertorial h3 {
  font-size: 33px;
  margin: 0 0 6px 0;
  padding: 0;
}

#splash h1,
#splash h2,
#splash h3,
#splash h4,
#splash h5,
#splash-tall h1,
#splash-tall h2,
#splash-tall h3,
#splash-tall h4,
#splash-tall h5,
#splash-advertorial h1,
#advertorial-splash h2,
#splash-advertorial h3,
#splash-advertorial h4,
#splash-advertorial h5 {
  color: #fff;
  text-shadow: 1px 1px 20px rgba(0, 0, 0, 0.75);
  line-height: 1.2;
}

/* White Text on Splash Photos - Tablet Size */
@media (max-width: 1024px) {
  #splash h1 {
    font-size: 48px;
  }

  #splash h3 {
    font-size: 30px;
  }

  #splash-tall h1 {
    font-size: 48px;
  }

  #splash-tall h3 {
    font-size: 30px;
  }

  #splash-advertorial h1 {
    font-size: 45px;
  }

  #splash-advertorial h3 {
    font-size: 30px;
  }
}

/* White Text on Splash Photos -Mobile Size */
@media (max-width: 768px) {
  #splash h1 {
    font-size: 40px;
  }

  #splash h3 {
    font-size: 22px;
  }

  #splash-tall h1 {
    font-size: 40px;
  }

  #splash-tall h3 {
    font-size: 22px;
  }

  #splash-advertorial h1 {
    font-size: 33px;
  }

  #splash-advertorial h3 {
    font-size: 18px;
  }
}

/* White Text on Splash Sections */
.splash-section h1 {
  font-size: 62px;
  margin: 0;
  padding: 0;
  line-height: 1.2;
}

.splash-section h2 {
  font-size: 48px;
  margin: 0 0 6px 0;
  padding: 0;
  line-height: 1.2;
}

.splash-section h3 {
  font-size: 40px;
  font-family: 'Mulish', sans-serif;
  font-weight: 400;
  margin: 0 0 6px 0;
  padding: 0;
  line-height: 1.2;
}

.splash-section h4 {
  font-size: 36px;
  font-family: 'Mulish', sans-serif;
  font-weight: 400;
  margin: 0 0 6px 0;
  padding: 0;
  line-height: 1.2;
}

.splash-section h5 {
  font-family: 'Mulish', sans-serif;
  font-weight: 400;
  font-size: 24px;
  margin: 0 0 6px 0;
  padding: 0;
  line-height: 1.2;
}

.white h1,
.white h2,
.white h3,
.white h4,
.white h5,
h1.white,
h2.white,
h3.white,
h4.white,
h5.white,
.white p,
p.white,
h1 a.white,
.white h1 a,
h2 a.white,
.white h2 a,
h3 a.white,
.white h3 a,
h4 a.white,
.white h4 a,
h5 a.white,
.white h5 a {
  color: #fff !important;
  text-shadow: 1px 1px 20px rgba(0, 0, 0, 0.4);
}

/* White Text on Splash Sections - Tablet Size */
@media (max-width: 1024px) {
  .splash-section h1 {
    font-size: 58px;
  }

  .splash-section h2 {
    font-size: 48px;
  }

  .splash-section h3 {
    font-size: 38px;
  }

  .splash-section h4 {
    font-size: 24px;
  }

  .splash-section h5 {
    font-size: 22px;
  }
}

/* White Text on Splash Sections -Mobile Size */
@media (max-width: 767px) {
  .splash-section h1 {
    font-size: 44px;
  }

  .splash-section h2 {
    font-size: 34px;
  }

  .splash-section h3 {
    font-size: 24px;
  }

  .splash-section h4 {
    font-size: 22px;
  }

  .splash-section h5 {
    font-size: 20px;
  }
}

/* some category photos need alignment */
.archive.category.category-ludington-state-park .category-header {
  background-position: center bottom !important;
}

#primary {
  margin-top: 20px !important;
}

#secondary {
  margin-top: 60px !important;
}

/* ===== widget titles ==== */
h2.widgettitle,
h3.widgettitle,
h4.widgettitle,
h5.widgettitle,
h2.widget-title,
h3.widget-title,
h4.widget-title,
h5.widget-title {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 400 !important;
  font-size: 20px;
  color: #275ca1 !important;
  text-transform: uppercase;
  letter-spacing: 0.014em;
}

/* ==== Typography and Content Styles ==== */

#secondary {
  line-height: 1.5;
}

.elementor-heading-title {
  line-height: 1.3;
}

h1,
h1 a,
.elementor-heading-title h1,
.widget h1,
.widget h1 a {
  padding: 0;
  margin: 0 0 30px 0;
  font-weight: 400;
}

.entry-title a,
.entry-title {
  color: #275ca1;
  font-weight: 400;
}

.entry-title a:hover,
.entry-title a:active {
  color: #275ca1;
}

h2,
.entry-content h2,
h2 a,
.elementor-heading-title h2,
.widget h2,
.widget h2 a {
  padding: 0;
  margin: 0 0 20px 0;
  color: #275ca1;
}

h3,
.entry-content h3,
h3 a,
.elementor-heading-title h3,
.widget h3,
.widget h3 a,
h2.widgettitle,
h2.widgettitle a {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 400 !important;
  padding: 0;
  margin: 0 0 20px 0;
}

h4,
h4 a,
.widget h4,
.elementor-heading-title h4,
.widget h4 a {
  padding: 0;
  margin: 15px 0 5px 0;
}

h5,
.entry-content h5,
h5 a,
.widget h5,
.elementor-heading-title h5,
.widget h5 a {
  font-family: 'Mulish', sans-serif;
  font-weight: 400 !important;
  padding: 0;
  margin: 0 0 15px 0;
}

h6,
h6 a,
.elementor-heading-title h6,
.widget h6,
.widget h6 a {
  font-family: 'Mulish', sans-serif;
  font-weight: 400 !important;
  color: #d9534f;
  letter-spacing: 0.014em;
  padding: 0;
  margin: 0 0 15px 0;
}

h6 a:hover,
h6 a:active {
  color: #d9534f;
  opacity: 0.8;
}

/* content text links */

/* Lists */
.entry-content ul,
.entry-content ol,
.widget ul,
.widget ol {
  margin: 0 0 30px 20px;
  padding: 0;
}

/* Links within content */

.entry-content p a,
.sidebar-1 li a,
.list-cats a,
.entry-content a,
#content .elementor-column a {
  color: #dc890c;
  text-decoration: underline;
  -webkit-text-decoration-color: #a2dffb;
  text-decoration-color: #a2dffb;
  font-weight: 600 !important;
}

.slick-arrow,
.slick-arrow i {
  text-decoration: none !important;
  color: #fff;
}

.entry-content p a:hover,
.sidebar-1 li a:hover,
.list-cats li a:hover,
.entry-content a:hover,
#content .elementor-column a:hover,
#content .elementor-column a:active,
.list-cats li a:active,
.entry-content a:active,
.entry-content p a:active,
.sidebar-1 li a:active {
  -webkit-text-decoration-color: #d9534f;
  text-decoration-color: #d9534f;
}

.btn,
.nf-form-content input[type='button'],
#content .btn,
#content .nf-form-content input[type='button'],
a.elementor-button-link {
  color: #fff !important;
  text-decoration: none !important;
}

#content .elementor-column a:active,
.list-cats li a:active,
.entry-content a:active,
.entry-content p a:active,
.sidebar-1 li a:active,
.elementor-widget-wp-widget-advads_ad_widget a:hover {
  color: #d9534f;
}

.elementor-widget-wp-widget-advads_ad_widget a {
  text-decoration: none !important;
}

.elementor-widget-wp-widget-advads_ad_widget a:active {
  text-decoration: none !important;
}

#primary ol li,
#primary ul li {
  margin: 0;
  padding: 4px 0;
}

.widget ol li {
  list-style-type: decimal !important;
}

.widget ul li {
  list-style-type: disc !important;
}

/* Sidebar Stuff */

.entry-content li,
#primary li,
.widget li,
#secondary ul li,
#secondary p,
#content .sidebar-1 ul li,
.search-no-results #secondary ul li {
  margin: 9px 0;
  padding: 0;
  line-height: 130%;
}

#secondary,
.sidebar-1 {
  border: none !important;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}

.sidebar-1 {
  padding: 20px 40px 40px 40px !important;
}

#secondary {
  padding: 40px !important;
}

.single #secondary {
  margin-top: 40px;
}

.elementor-widget-container li.widget {
  list-style-type: none !important;
  margin: 0 !important;
  padding: 20px 0 0 0 !important;
}

.text-center {
  text-align: center !important;
}

.text-left {
  text-align: left !important;
}

.text-right {
  text-align: left !important;
}

/* fix elementor margins for inner sections that make the left and right columns not flush */

.flush-rl {
  margin-right: -10px;
  margin-left: -10px;
  margin-bottom: 20px;
}

.entry-content hr {
  border: none;
  border-top: 2px solid #f5f5f3;
  margin: 20px 0;
}

/* featured box*/
.well {
  background: #f5f5f3;
  -moz-border-radius: 5px;
  border-radius: 5px;
  box-sizing: border-box;
  padding: 15px;
}

/* ==== Photo Content Styles ==== */

/* figure and figure caption */
figure {
  text-align: center;
  margin: 0 auto !important;
  padding: 0 12px 12px 12px;
}

figure img {
  width: 100% !important;
}

figcaption {
  font-size: 12px;
  color: #444;
  text-align: center;
}

.thumbnail-box .elementor-widget-wrap {
  -moz-border-radius: 4px;
  border-radius: 4px;
  overflow: hidden;
  height: 160px;
  margin-bottom: 6px;
}

.thumbnail-box a {
  display: block;
  padding: 80px 0 64px 0;
  text-align: center;
  color: #fff !important;
  text-decoration: none !important;
}

.thumbnail-box .elementor-heading-title {
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
}

.thumbnail-box .elementor-heading-title:hover,
.thumbnail-box .elementor-heading-title:active {
  background-color: rgba(0, 0, 0, 0.2);
}

/* ===== RESPONSIVE STYLES ============*/
@media (max-width: 767px) {

  .entry-content li,
  #primary li,
  .widget li,
  #secondary ul li,
  #secondary p,
  #content .sidebar-1 ul li,
  .search-no-results #secondary ul li {
    line-height: 160% !important;
    margin: 12px 0;
  }

  .thumbnail-box {
    width: 32% !important;
    height: 166px;
    display: inline-block !important;
  }

  .thumbnail-box a {
    padding: 40px 0 106px 0;
  }
}

@media (max-width: 800px) {
  /* columns in tablet portrait mode */

  #content>.elementor-row>.elementor-column:first-of-type,
  #primary,
  #secondary {
    width: 100%;
  }
}

.noicon {
  height: 1px;
  width: 1px;
  position: absolute;
  left: -300%;
  top: -20000px;
}

/* footer lists */
footer ul,
footer li {
  list-style: none !important;
  list-style-type: none !important;
}

/* calendar month menu */
#month-menu ul,
.content-menu ul,
ul.content-menu {
  margin: 0 auto;
  padding: 0;
  list-style: none;
  list-style-type: none;
  text-align: center !important;
  max-width: 750px;
}

#month-menu li,
.content-menu li {
  list-style: none;
  list-style-type: none;
  display: inline-block;
}

#month-menu li a,
.content-menu li a {
  display: inline-block;
  padding: 4px;
  margin: 4px 8px;
}

#month-menu li a:hover,
#month-menu li a:active,
.content-menu li a:hover,
.content-menu li a:active {
  text-decoration: underline;
}

#month-menu li::after,
.content-menu li::after {
  content: '•';
  display: inline-block;
  padding: 0px;
  color: rgba(100, 100, 100, 0.3);
}

#month-menu ul li:last-child a::after,
.content-menu li:last-child a::after {
  content: '';
  display: none;
}

/* === Post Styles === */

.single .post-navigation {
  display: none;
}

.category-header .category-title,
.post-header .post-title {
  width: 100%;
  text-align: left;
  padding: 130px 20px 0 20px;
  max-width: 1140px;
  margin: 0 auto;
}

.category-header .category-title h1,
.category-header .category-title h3,
.category-header .category-title h4,
.category-header .category-title h5,
.post-header .post-title h1,
.post-header .post-title h3,
.post-header .post-title h4,
.post-header .post-title h5 {
  color: #fff !important;
  text-shadow: 1px 1px 12px rgba(0, 0, 0, 0.6);
  line-height: 1;
}

.category-header .border-shape,
.post-header .border-shape {
  position: absolute;
  bottom: 0;
  z-index: 80;
  left: 0;
  width: 100%;
  height: 55px;
  background: transparent url('/wp-content/uploads/border-shape-waves-2700.png');
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

@media screen and (max-width: 2000px) {

  .category-header,
  .post-header {
    height: 500px;
  }

  #splash-tall {
    min-height: 600px;
  }

  #splash {
    min-height: 500px;
  }
}

@media screen and (max-width: 1415px) {

  .category-header,
  .post-header {
    height: 400px;
  }

  #splash-tall {
    min-height: 500px;
  }

  #splash {
    min-height: 400px;
  }
}

@media screen and (max-width: 767px) {

  .category-header,
  .post-header {
    height: 320px;
  }

  #splash {
    min-height: 320px;
  }

  #splash-tall {
    min-height: 400px;
  }
}

#content {
  padding: 70px 0 0 0;
}

/* advertorial directions */
.directions h5 {
  font-size: 18px !important;
  margin: 0;
  padding: 0;
}

.directions p {
  font-size: 12px !important;
  margin: 0;
  padding: 0;
}

@media (min-width: 769px) {
  .photo-left-20 {
    float: left;
    width: 20% !important;
    padding: 12px;
  }

  .photo-left-30 {
    float: left;
    width: 30% !important;
    padding: 12px;
  }

  .photo-left-50 {
    float: left;
    width: 50% !important;
    padding: 12px;
  }

  .photo-right-20 {
    float: right;
    width: 20% !important;
    padding: 12px;
  }

  .photo-right-30 {
    float: right;
    width: 30% !important;
    padding: 12px;
  }

  .photo-right-50 {
    float: right;
    width: 50% !important;
    padding: 12px;
  }
}

section.privacy-policy h1,
.page-title h1,
h1.page-title {
  font-family: 'Mulish', sans-serif;
  font-weight: 300 !important;
  color: #dc890c;
}

h3 {
  color: #5a7fbc;
}

/* Privacy Styles */
section.privacy-policy h1,
section.privacy-policy h2,
.privacy-policy h3,
section.privacy-policy h4,
section.privacy-policy h5,
section.privacy-policy h6 {
  font-family: 'Mulish', sans-serif !important;
}

section.privacy-policy h2 {
  font-size: 36px;
}

section.privacy-policy h3 {
  font-size: 24px;
}

section.privacy-policy h4 {
  font-size: 16px;
}

@media (max-width: 920px) {
  #header-wrap header button.menu-toggle {
    margin-top: 0px;
  }

  #header-wrap header {
    padding: 0 0 0 20px;
  }

  section.privacy-policy h1 {
    font-size: 45px;
  }

  section.privacy-policy h2 {
    font-size: 35px;
  }

  section.privacy-policy h3 {
    font-size: 25px;
  }

  section.privacy-policy h4 {
    font-size: 15px;
  }
}

footer a,
footer a:active,
footer a:hover {
  text-decoration: underline;
  font-weight: 600;
}

footer .site-footer-primary-section-2 ul#menu-footer-menu,
.widget ul#menu-footer-menu li {
  list-style-type: none !important;
  list-style: none !important;
  margin-left: 0;
  text-align: left !important;
}

footer .site-footer-primary-section-3 .ast-builder-html-element {
  text-align: left !important;
  border: 1px solid #ee9900;
  -moz-border-radius: 6px;
  border-radius: 6px;
  padding: 15px;
  max-width: 400px;
  margin: 0 auto;
}

footer .site-footer-primary-section-3 .ast-builder-html-element,
footer .site-footer-primary-section-2 ul#menu-footer-menu,
.widget ul#menu-footer-menu li {
  text-align: center !important;
}

footer .site-footer-primary-section-1,
footer .site-footer-primary-section-2,
footer .site-footer-primary-section-3 {
  width: 100% !important;
  display: block !important;
  float: none !important;
}

.ast-builder-grid-row-container.ast-builder-grid-row-mobile-full .ast-builder-grid-row {
  grid-template-columns: 1fr;
}

/* ==== Header Search ==== */

#header-widget-area input[type='submit'],
#header-widget-area input[type='button'],
#header-widget-area input.search-submit,
#header-widget-area input[type='submit']:focus {
  padding: 8px 20px !important;
  margin: 5px 0px !important;
  display: inline-block;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
  text-align: center;
  font-size: 16px;
  font-weight: 700;
  background-color: #dc890c !important;
  color: #fff;
  -moz-border-radius: 5px;
  border-radius: 5px;
  line-height: 1 !important;
}

#header-widget-area button,
#header-widget-area input[type='submit'],
#header-widget-area input[type='button'] {
  padding: 8px 20px !important;
  margin: 5px 0px !important;
  display: inline-block;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
  text-align: center;
  font-size: 16px;
  font-weight: 700;
  background-color: #dc890c !important;
  color: #fff;
  -moz-border-radius: 5px;
  border-radius: 5px;
  line-height: 1 !important;
}

#header-widget-area input[type='submit']:hover,
#header-widget-area input[type='submit']:active {
  opacity: 0.8;
  text-decoration: none;
}

#header-widget-area form {
  text-align: center;
}

#header-widget-area .search-field {
  padding: 0.52em;
}

/* ---- */
@media (max-width: 899px) {
  #header-widget-area {
    display: none;
    position: absolute;
    z-index: 99;
    top: 120px;
    left: 20%;
    width: 60%;
    background: rgb(2, 29, 68, 0.82);
    -moz-border-radius: 5px;
    border-radius: 5px;
    box-sizing: border-box;
    padding: 10px;
  }

  #header-search-toggle {
    display: block;
    position: absolute;
    z-index: 99;
    top: 4px;
    right: 70px;
    color: #dc890c;
    font-weight: 700;
    font-size: 36px;
  }

  #header-widget-area .search-field {
    width: 60%;
  }

  #header-wrap.scroll #header-search-toggle {
    top: 4px;
  }

  #header-search-toggle:hover,
  #header-search-toggle:active,
  #search-close-button:hover,
  #search-close-button:active {
    opacity: 0.8;
  }

  #header-search-toggle:before {
    content: '\e8b6';
    font-family: Astra;
    text-decoration: inherit;
  }

  #search-close-button:before {
    content: '\e5cd';
    font-family: Astra;
    text-decoration: inherit;
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
  }

  #search-close-button {
    float: right;
    padding: 10px 10px 10px 10px;
    margin-top: -10px;
    margin-right: -10px;
    color: #fff;
    display: block;
  }
}

/* ---- */
@media (max-width: 767px) {
  #header-search-toggle {
    top: 4px;
  }
}

/* ---- */
@media (max-width: 650px) {
  #header-widget-area {
    left: 10%;
    top: 108px;
    width: 80%;
  }
}

/* ---- */
@media (max-width: 544px) {
  #header-search-toggle {
    top: 4px;
  }
}

/* ---- */
@media (max-width: 320px) {
  #header-search-toggle {
    top: 4px;
  }
}

/* ---- */
@media (min-width: 900px) {

  #header-search-toggle,
  #search-close-button {
    display: none;
  }

  #header-widget-area .search-field {
    width: 70%;
  }

  #header-widget-area {
    display: block !important;
    position: absolute;
    z-index: 99;
    left: auto;
    right: 200px;
    top: 18px;
    width: 40%;
  }

  #header-wrap.scroll #header-widget-area {
    top: 12px;
  }

  #header-search-toggle {
    right: 80px;
  }
}

@media print {

  /*#splash h1, #splash-tall h1, #splash-advertorial h1 {text-shadow:none !important; color:#111 !important;}*/
  .menu-toggle,
  #header-widget-area,
  #header-search-toggle,
  .ast-pagination,
  footer,
  .photo-credit,
  #ad-iframe {
    display: none !important;
  }

  .site-branding,
  .site-title,
  .site-title a {
    display: block !important;
    background-color: none !important;
    background: none !important;
    color: #275ca1 !important;
  }
}

hr,
.elementor-widget-divider {
  border-top: 3px solid rgba(0, 0, 0, 0.1) !important;
  --divider-border-width: 0px !important;
}

.anchor-area {
  margin-top: -75px;
  padding-top: 75px;
  position: relative;
  z-index: 2;
}

.elementor-html .anchor-area {
  margin-top: 0;
  padding-top: 0;
}

.anchor-area p:last-child {
  margin-bottom: -12px !important;
}

/* h4 in calendar */
.anchor-area h4 {
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 700 !important;
  margin-top: 20px;
  font-family: 'Mulish', sans-serif;
  color: #035099;
}

.anchor-area .elementor-widget-container {
  margin-bottom: 10px;
  border-top: 1px solid #ddd;
}

.anchor-area .elementor-widget-container:last-child {
  border-bottom: none !important;
}

/* Makes the mobile nav menu scrollable if it's too tall */
.ast-mobile-header-content {
  overflow: auto;
  max-height: 80vh
}