* {
	--brand-blue: #203060;
    --brand-yellow: #e1b121;
/* Override existing */
}
.zptab {
	color: var(--brand-blue);
}
.theme-site-name {
	width: auto !important;
    padding-left: 10px;
}
.theme-branding-info {
	flex-wrap: nowrap !important;
}
.zpelem-heading:has(h1) {
	border-style: solid;
  border-color: var(--brand-yellow) !important;
  border-width: 1px;
    background-color: var(--brand-blue);
    margin-left: auto;
    margin-right: auto;
    padding-left: .75em;
    padding-right: .75em;
}
.zpelem-heading:has(h2) {
    background-color: var(--brand-blue);
    padding-inline-start: 1em;
  box-shadow: 6px 6px 0px 0px var(--brand-yellow);
}
.zpelem-heading:has(h3) {
    background-color: var(--brand-yellow);
    padding-inline-start: 1em;
  box-shadow: 4px 4px 0px 0px var(--brand-blue);
}
.zpelem-heading h1 {
    font-size: 2rem;
    font-family: 'Poppins',sans-serif !important;
  font-weight: 700;
}
h1 {
    font-size: 2rem;
    font-family: 'Poppins',sans-serif !important;
  font-weight: 700;
}
.zpelem-heading h2 {
    font-size: 1.85rem;
    font-family: 'Poppins',sans-serif !important;
  font-weight: 600;
}
h2 {
    font-size: 1.85rem;
    font-family: 'Poppins',sans-serif !important;
  font-weight: 600;
}
.zpelem-heading h3 {
    font-size: 1.5rem;
    font-family: 'Poppins',sans-serif !important;
  font-weight: 500;
}
h3 {
    font-size: 1.5rem;
    font-family: 'Poppins',sans-serif !important;
  font-weight: 500;
}
.zpelem-heading h5 {
  text-decoration: underline;
  text-decoration-color: var(--brand-blue);
   text-underline-offset: .25em;
        text-decoration-line: underline overline;
}
h5 {
  text-decoration: underline;
  text-decoration-color: var(--brand-blue);
   text-underline-offset: .25em;
        text-decoration-line: underline overline;
}
.zpelem-heading h4, h6 {
  text-decoration: underline;
  text-decoration-color: var(--brand-yellow);
   text-underline-offset: .25em;
        text-decoration-line: underline overline;
}
h4, h6 {
  text-decoration: underline;
  text-decoration-color: var(--brand-yellow);
   text-underline-offset: .25em;
        text-decoration-line: underline overline;
}
.five-stars-container {
	display: flex;
    flex-direction: row;
    justify-content: center;
    vertical-align: center;
    flex-wrap: nowrap;
    align-content: center;
  	align-items: center;
  	padding-bottom: 12px;
}
.zpcarousel-content-inner {
	padding: 15px !important;
}
.inline-block{
	display: inline-block;
}
.highlight-yellow {
  --ink: rgba(230, 187, 69, 0.75);   /* highlight color */
  --shadow: rgba(0, 0, 0, 0.08);     /* subtle depth */
  --tilt: -2deg;

  position: relative;
  display: inline;
  padding: 0 .12em;
  background: none;
}

.highlight-yellow::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: -0.12em;
  right: -0.12em;

  /* vertically sit behind the text like a marker stroke */
  top: 55%;
  height: 0.9em;
  transform: translateY(-50%) rotate(var(--tilt));

  /* “hand-drawn” edges: jaggy top/bottom using gradients */
  background:
    /* edge noise (top) */
    radial-gradient(8px 10px at 10px 6px, rgba(0,0,0,0.12) 0 35%, transparent 36% 100%) repeat-x,
    /* edge noise (bottom) */
    radial-gradient(9px 10px at 18px 14px, rgba(0,0,0,0.10) 0 32%, transparent 33% 100%) repeat-x,
    /* main fill with slight streaking */
    repeating-linear-gradient(
      90deg,
      color-mix(in srgb, var(--ink) 92%, white) 0 10px,
      color-mix(in srgb, var(--ink) 82%, white) 10px 18px,
      color-mix(in srgb, var(--ink) 90%, white) 18px 30px
    );

  background-size:
    24px 16px,   /* top noise */
    28px 18px,   /* bottom noise */
    auto;        /* fill */
  background-position:
    0 0,
    0 100%,
    0 0;

  border-radius: 999px;
  filter: saturate(1.05) contrast(1.02);
  box-shadow: 0 2px 0 var(--shadow);
  opacity: 0.95;
}
.background-blue {
	background-color: var(--brand-blue);
}
.background-yellow {
	background-color: var(--brand-yellow);
}
.dropshadow-blue {
	box-shadow: 6px 6px 0px 0px var(--brand-blue);
}
.dropshadow-yellow {
	box-shadow: 6px 6px 0px 0px var(--brand-yellow);
}
.border-blue {
border-style: solid;
  border-color: var(--brand-blue) !important;
  border-width: 1px;
}
.border-yellow {
border-style: solid;
  border-color: var(--brand-yellow) !important;
  border-width: 1px;
}
.testimonial-citation {
  background-color: #e2d683;
  background-image: unset;
  border-style: solid;
  border-color: var(--brand-blue) !important;
  border-width: 1px;
  border-radius: 10px;
  box-shadow: 0px 0px 10px 4px var(--brand-yellow);
  width: 85%;
  margin-left: auto;
  margin-right: auto;
    overflow: scroll;
}
.testimonial-image {
    display: inline-flex;
  	padding: 12px;
    box-shadow: 6px 6px 0px 0px var(--brand-yellow);
}
.testimonial-image img {
	width: auto !important;
    height: 150px !important;
}
@media all and (max-width: 767px) {
   .testimonial-citation {
    font-size: .9rem;
  }
    .testimonial-five-star-rating {
    font-size: .75rem;
    }
    .theme-site-name {
    font-size: 1.5rem !important;
    }
    .zpelem-heading h1 {
  font-size: 1.5rem;
    }
    h1 {
  font-size: 1.5rem;
    }
        .zpelem-heading h2 {
  font-size: 1.25rem;
    }
h2 {
  font-size: 1.25rem;
    }
}
@media all and (max-width: 540px) {
    .theme-logo-parent img{
    height: 80px !important;
        width: auto !important;
    }
}

.testimonial-five-star-rating {
border-style: solid;
  border-color: var(--brand-yellow) !important;
  border-width: 1px;
  border-radius: 10px;
  padding: 20px;
  margin: 15px;
    color: var(--brand-yellow);
    > div > p::before {
  content: "";
  display: block;
  width: 10em;          /* controls overall star row width */
  height: 2em;         /* star size */
  margin-bottom: .5em;  /* gap before text */

  /* 5 SVGs as a repeated background */
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23f5b301' d='M12 17.27 18.18 21 16.54 13.97 22 9.24 14.81 8.63 12 2 9.19 8.63 2 9.24 7.46 13.97 5.82 21z'/%3E%3C/svg%3E")
              left center / 1.2em 1.2em repeat-x;
  background-repeat: repeat-x;
  background-size: 2em 2em;
  background-position: left center;
}
}

.testimonial-focus-text {
	border-style: solid;
  	border-color: var(--brand-blue);
  	border-width: 1px;
    background-color: var(--brand-yellow);
}
.testimonial-img-rating-container {
display: inline-flex;
  flex-flow: row;
  justify-content: center;
  align-items: center;
}
.float-image  {
  display: flex;
  overflow: hidden;
  margin-bottom: -45px;
    margin-top: -45px;
  position: relative;
  z-index: 1000;
    justify-content: flex-end;
}
.checkmarks ul{
  list-style: none;
}
.checkmarks li {
  position: relative;
  margin-left: 1.5em !important;
  padding: 0.3em 1em 0.3rem 3em;
    font-family: 'Poppins', sans-serif !important;
}
.checkmarks-yellow li::before {
  content: '';
  display: inline-block;
  height: 1em;
  width: 1em;
  background-image: url('data:image/svg+xml,<svg transform="translate(0,0)" transform-origin="center" width="65px" height="65px" viewBox="0 0 128 128" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--noto" preserveAspectRatio="xMidYMid meet" fill="%23000000"><g id="SVGRepo_bgCarrier" stroke-width="0"/><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"/><g id="SVGRepo_iconCarrier"><path d="M36.02 123.97c-.7-.02-1.41-.08-2.1-.2a12.05 12.05 0 0 1-9.3-8l-20-60c-2.1-6.3 1.3-13.1 7.6-15.2c6.3-2.1 13.1 1.3 15.2 7.6l13 39l62.2-78.6c4.11-5.22 11.68-6.11 16.9-2s6.11 11.68 2 16.9l-76 96a12.35 12.35 0 0 1-9.5 4.5z" fill="%23e1b121"/><path d="M75.17 58.91c1.49-1.24 29.97-35.22 29.97-35.22s2.38-2.53.36-4.75c-1.9-2.03-4.38-.7-5.57.62S73.04 51.18 71.98 52.68a5.426 5.426 0 0 0-.09 5.53c.94 1.52 2.25 1.6 3.28.7z" opacity=".35" fill="%23ffffff"/><circle cx="108.45" cy="12.83" r="3.3" opacity=".35" fill="%23ffffff"/><path d="M12.73 65.49c.67-.01.53-3.76 2.28-7.35c1.23-2.54 2.82-3.82 2.81-5.24s-1.92-8.34-3.35-7.88c-1.99.63-4.53 3.19-5.1 7.18c-.89 6.28 2.13 13.31 3.36 13.29z" opacity=".35" fill="%23ffffff"/></g></svg>');
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 0.5em -0.25em -1em;
}
.li-zipcode {
  display: inline-block;
    word-break: keep-all;
    margin-left: 10px;
}
.zip-list {
    background: var(--brand-blue);
  color: var(--brand-yellow);
    overflow-wrap: break-word;
}
.service-list{
  padding-left: 2em;
}
.service-area {
border: 1px solid var(--brand-blue);
    padding: 1.5rem;
    margin-bottom: 2rem;
}
.services-available {
margin-top: 1.5em;
  margin-bottom: 1.5em;
    margin-left: 2em;
}
.zptab-name{
font-size: 1.3em;
  font-weight: bold;
}

/* =================== zenbooker ============================== */
.zenbooker-inline-button{
color: var(--brand-blue) !important;
  border: 1px solid var(--brand-blue);
  border-radius: 0.5rem;
  font-size: 1.5em;
  background-color: var(--brand-yellow);
  cursor: pointer;
  padding: .5em;
}
.cmaPaPh0 {
	display: none !important;
}
.contact-details-row {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
}

.contact-details-icon-column {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.contact-details-text-column {
  flex: 1 1 auto;
  min-width: 0;
}

.contact-details-text-column a {
  white-space: nowrap;
}
.theme-menu-name{
	font-size: 1.25rem;
}