.elementor-6116 .elementor-element.elementor-element-e6258d5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-6116 .elementor-element.elementor-element-e6258d5 > .elementor-shape-bottom .elementor-shape-fill, .elementor-6116 .elementor-element.elementor-element-e6258d5 > .e-con-inner > .elementor-shape-bottom .elementor-shape-fill{fill:var( --e-global-color-wanzor_accent );}.elementor-6116 .elementor-element.elementor-element-e6258d5 > .elementor-shape-bottom svg, .elementor-6116 .elementor-element.elementor-element-e6258d5 > .e-con-inner > .elementor-shape-bottom svg{width:calc(300% + 1.3px);height:77px;}.elementor-6116 .elementor-element.elementor-element-d7f7d47{text-align:center;}.elementor-6116 .elementor-element.elementor-element-d7f7d47 .elementor-heading-title{font-family:"Barlow Semi Condensed", Sans-serif;font-size:225px;font-weight:800;}.elementor-6116 .elementor-element.elementor-element-d1ba379{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-6116 .elementor-element.elementor-element-d1ba379:not(.elementor-motion-effects-element-type-background), .elementor-6116 .elementor-element.elementor-element-d1ba379 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-wanzor_accent );}.elementor-6116 .elementor-element.elementor-element-0e3e434{--display:flex;}.elementor-6116 .elementor-element.elementor-element-04b7c2f{--display:flex;--min-height:603px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:14px;--padding-left:70px;--padding-right:70px;}.elementor-6116 .elementor-element.elementor-element-04b7c2f:not(.elementor-motion-effects-element-type-background), .elementor-6116 .elementor-element.elementor-element-04b7c2f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#C30000;}.elementor-6116 .elementor-element.elementor-element-04b7c2f > .elementor-shape-bottom svg, .elementor-6116 .elementor-element.elementor-element-04b7c2f > .e-con-inner > .elementor-shape-bottom svg{width:calc(104% + 1.3px);}.elementor-6116 .elementor-element.elementor-element-1897e53{--display:flex;}.elementor-6116 .elementor-element.elementor-element-a54069b{text-align:center;}.elementor-6116 .elementor-element.elementor-element-a54069b .elementor-heading-title{color:var( --e-global-color-fe60b62 );}.elementor-6116 .elementor-element.elementor-element-8b3873c > .elementor-widget-container{margin:35px 0px 0px 0px;}.elementor-6116 .elementor-element.elementor-element-8b3873c.elementor-element{--align-self:center;}.elementor-6116 .elementor-element.elementor-element-8b3873c{text-align:center;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-fe60b62 );}.elementor-6116 .elementor-element.elementor-element-8b3873c p{margin-block-end:0px;}.elementor-6116 .elementor-element.elementor-element-c187d7c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--margin-top:65px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6116 .elementor-element.elementor-element-aa90cae .elementor-button{background-color:var( --e-global-color-fe60b62 );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );fill:var( --e-global-color-wanzor_accent );color:var( --e-global-color-wanzor_accent );border-radius:11px 11px 11px 11px;}.elementor-6116 .elementor-element.elementor-element-aa90cae > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-6116 .elementor-element.elementor-element-1ddda52 .elementor-button{background-color:var( --e-global-color-fe60b62 );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-shadow:0px 0px 10px rgba(0,0,0,0.3);fill:var( --e-global-color-wanzor_accent_4 );color:var( --e-global-color-wanzor_accent_4 );border-radius:11px 11px 11px 11px;}.elementor-6116 .elementor-element.elementor-element-70c795d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-6116 .elementor-element.elementor-element-543878c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-6116 .elementor-element.elementor-element-1a8e46b{--display:flex;}.elementor-6116 .elementor-element.elementor-element-24de80b{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-6116 .elementor-element.elementor-element-4bb1e16{--display:flex;}.elementor-6116 .elementor-element.elementor-element-6cae998{--display:flex;--min-height:417px;--border-radius:0px 100px 100px 3px;}.elementor-6116 .elementor-element.elementor-element-6cae998:not(.elementor-motion-effects-element-type-background), .elementor-6116 .elementor-element.elementor-element-6cae998 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#C63023;}.elementor-6116 .elementor-element.elementor-element-0aa4934{--display:flex;}.elementor-6116 .elementor-element.elementor-element-a60c94d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-6116 .elementor-element.elementor-element-8a2fd7d{--display:flex;}.elementor-6116 .elementor-element.elementor-element-b5bf2ac{width:var( --container-widget-width, 65% );max-width:65%;--container-widget-width:65%;--container-widget-flex-grow:0;text-align:left;font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );color:#444444;}.elementor-6116 .elementor-element.elementor-element-b5bf2ac p{margin-block-end:0px;}.elementor-6116 .elementor-element.elementor-element-05b9985{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;}.elementor-6116 .elementor-element.elementor-element-82212d0{--display:flex;--min-height:260px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--padding-top:0px;--padding-bottom:120px;--padding-left:0px;--padding-right:0px;}.elementor-6116 .elementor-element.elementor-element-82212d0:not(.elementor-motion-effects-element-type-background), .elementor-6116 .elementor-element.elementor-element-82212d0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#4C120F;}.elementor-6116 .elementor-element.elementor-element-76384b8{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:-140px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-6116 .elementor-element.elementor-element-3474f10{--display:flex;--margin-top:-140px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-6116 .elementor-element.elementor-element-24198b7{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-6116 .elementor-element.elementor-element-990eb28{--display:flex;}.elementor-6116 .elementor-element.elementor-element-ac7e53e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-6116 .elementor-element.elementor-element-af440fc{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-6116 .elementor-element.elementor-element-f19ea00{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--border-radius:35px 35px 35px 35px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:24px;--padding-right:24px;}.elementor-6116 .elementor-element.elementor-element-f19ea00:not(.elementor-motion-effects-element-type-background), .elementor-6116 .elementor-element.elementor-element-f19ea00 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#191919;background-image:url("https://shawneefamily.wpenginepowered.com/wp-content/uploads/2025/11/dc62c08fcea90c3a96e01a6eee4bff9d77456133-scaled.jpg");}.elementor-6116 .elementor-element.elementor-element-f58ff27{--display:flex;--min-height:0px;--border-radius:24px 24px 24px 24px;}.elementor-6116 .elementor-element.elementor-element-5d9dbcb{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6116 .elementor-element.elementor-element-42ea7dd{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:20px;}.elementor-6116 .elementor-element.elementor-element-a61e8e1{--display:flex;--justify-content:middle;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:0px;}.elementor-6116 .elementor-element.elementor-element-06b424c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(min-width:768px){.elementor-6116 .elementor-element.elementor-element-04b7c2f{--width:100%;}.elementor-6116 .elementor-element.elementor-element-4bb1e16{--content-width:520px;}.elementor-6116 .elementor-element.elementor-element-6cae998{--width:100%;}.elementor-6116 .elementor-element.elementor-element-f19ea00{--width:100%;}}@media(max-width:1366px){.elementor-6116 .elementor-element.elementor-element-d7f7d47 .elementor-heading-title{font-size:200px;}}@media(max-width:1199px){.elementor-6116 .elementor-element.elementor-element-d7f7d47 .elementor-heading-title{font-size:150px;}}@media(max-width:1024px){.elementor-6116 .elementor-element.elementor-element-d7f7d47 .elementor-heading-title{font-size:120px;}}@media(max-width:767px){.elementor-6116 .elementor-element.elementor-element-d7f7d47 .elementor-heading-title{font-size:66px;}}/* Start custom CSS for heading, class: .elementor-element-d7f7d47 */.elementor-6116 .elementor-element.elementor-element-d7f7d47 h1 {
    mix-blend-mode: screen;
    background-color: #ffffffdd;
    color: #000;
    padding: 18vh 0 12vh;
    width: 100%;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e6258d5 */.elementor-6116 .elementor-element.elementor-element-e6258d5 video {
    -webkit-clip-path: url(#clip)
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-37a086b *//* Position section so it overlaps the maroon band slightly */
.elementor-6116 .elementor-element.elementor-element-37a086b {
  position: relative;
  z-index: 3;
}

/* Flex row container */
.elementor-6116 .elementor-element.elementor-element-37a086b .fph-cta-row {
  max-width: 1200px;
  margin: -70px auto 0;   /* pull down into maroon section */
  padding: 0 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  justify-content: center;
}

/* Card base */
.elementor-6116 .elementor-element.elementor-element-37a086b .fph-cta-card {
  flex: 1 1 0;
  min-width: 260px;
  max-width: 360px;
  background: #ffffff;
  border-radius: 26px;
  padding: 24px 32px;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.08);
  color: #191919;
  border: 1px solid #f3e8e6;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    border-color 0.2s ease,
    background-color 0.2s ease;
}

/* Subtle hover state */
.elementor-6116 .elementor-element.elementor-element-37a086b .fph-cta-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 24px 55px rgba(0, 0, 0, 0.12);
  border-color: #f0bc00;
}

/* Icon wrapper with soft pill background */
.elementor-6116 .elementor-element.elementor-element-37a086b .fph-cta-icon-wrap {
  width: 72px;
  height: 72px;
  border-radius: 999px;
  background: #ffeded;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Icon itself */
.elementor-6116 .elementor-element.elementor-element-37a086b .fph-cta-icon svg {
  width: 44px;
  height: 44px;
  stroke: none;
  fill: none;
}

.elementor-6116 .elementor-element.elementor-element-37a086b .fph-cta-icon svg path,
.elementor-6116 .elementor-element.elementor-element-37a086b .fph-cta-icon svg circle {
  stroke: #9a2620;
  stroke-width: 2;
  fill: transparent;
}

/* Title text */
.elementor-6116 .elementor-element.elementor-element-37a086b .fph-cta-title {
  font-family: "Josefin Sans", sans-serif;
  font-size: 22px;
  line-height: 1.4;
  font-weight: 400;
  letter-spacing: 0.02em;
  margin: 0;
  text-align: center;
  color: #191919;
}

/* Tablet: 2 per row */
@media (max-width: 1024px) {
  .elementor-6116 .elementor-element.elementor-element-37a086b .fph-cta-card {
    flex: 1 1 calc(50% - 24px);
  }
}

/* Mobile: stack full width */
@media (max-width: 767px) {
  .elementor-6116 .elementor-element.elementor-element-37a086b .fph-cta-row {
    margin-top: -40px;
    padding: 0 16px;
  }

  .elementor-6116 .elementor-element.elementor-element-37a086b .fph-cta-card {
    flex: 1 1 100%;
    max-width: 100%;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-693383b *//* Overall section layout */
.elementor-6116 .elementor-element.elementor-element-693383b .fph-services-grid {
  max-width: 1200px;
  margin: 120px auto;
  padding: 0 24px;
}

/* Header row */
.elementor-6116 .elementor-element.elementor-element-693383b .fph-services-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 50px;
}

/* Section title */
.elementor-6116 .elementor-element.elementor-element-693383b .fph-services-title {
  font-size: 50px;
  line-height: 1.2;
  letter-spacing: -0.02em;
  margin: 0;
  max-width: 650px;
}

/* Top "All services" button */
.elementor-6116 .elementor-element.elementor-element-693383b .fph-services-all-btn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 10px 26px;
  border-radius: 50px;
  border: 2px solid #9a2620;
  color: #C30000;
  font-weight: 700;
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease;
}

.elementor-6116 .elementor-element.elementor-element-693383b .fph-services-all-btn:hover {
  background: #C30000;
  color: #ffffff;
}

/* Cards row */
.elementor-6116 .elementor-element.elementor-element-693383b .fph-services-cards {
  display: flex;
  flex-wrap: wrap;
  gap: 28px;
  justify-content: center;
}

/* Individual card */
.elementor-6116 .elementor-element.elementor-element-693383b .fph-service-card {
  flex: 1 1 calc(25% - 28px);
  min-width: 260px;
  max-width: 300px;
  background: #ffffff;
  border-radius: 26px;
  padding: 26px 26px 34px;
  text-align: center;
  box-shadow: 0 12px 35px rgba(0,0,0,0.06);
  display: flex;
  flex-direction: column;
  gap: 18px;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  border: 1px solid #f1e9e7;
}

.elementor-6116 .elementor-element.elementor-element-693383b .fph-service-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 45px rgba(0,0,0,0.12);
}

/* Image wrapper (fixed height, aligned) */
.elementor-6116 .elementor-element.elementor-element-693383b .fph-service-img-wrap {
  width: 100%;
  height: 240px;
  border-radius: 18px;
  overflow: hidden;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.elementor-6116 .elementor-element.elementor-element-693383b .fph-service-img-wrap::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #ffe7e7;
  border-radius: 999px;
  width: 90%;
  height: 70%;
  top: 15%;
  left: 5%;
  z-index: 0;
}

.elementor-6116 .elementor-element.elementor-element-693383b .fph-service-img-wrap img {
  height: 100%;
  width: auto;
  object-fit: contain;
  z-index: 1;
  position: relative;
}

/* Card title */
.elementor-6116 .elementor-element.elementor-element-693383b .fph-service-title {
  font-size: 22px;
  margin: 0;
  line-height: 1.3;
}

/* Card description — let height be natural */
.elementor-6116 .elementor-element.elementor-element-693383b .fph-service-desc {
  font-size: 18px;
  line-height: 1.7778;
  color: #444;
  margin: 0;
  /* removed min-height so flexbox can handle spacing */
}

/* Learn More button — stick to bottom of card */
.elementor-6116 .elementor-element.elementor-element-693383b .fph-service-btn {
  display: inline-block;
  margin-top: auto;        /* pushes the button to the bottom */
  padding: 12px 24px;
  background: #C30000;
  color: #ffffff;
  border-radius: 50px;
  font-weight: 700;
  text-decoration: none;
  transition: background 0.2s ease;
}

.elementor-6116 .elementor-element.elementor-element-693383b .fph-service-btn:hover {
  background: #691612;
}

/* Tablet */
@media (max-width: 1024px) {
  .elementor-6116 .elementor-element.elementor-element-693383b .fph-service-card {
    flex: 1 1 calc(50% - 28px);
  }
}

/* Mobile */
@media (max-width: 767px) {
  .elementor-6116 .elementor-element.elementor-element-693383b .fph-services-header {
    flex-direction: column;
    text-align: center;
  }

  .elementor-6116 .elementor-element.elementor-element-693383b .fph-services-all-btn {
    width: 100%;
  }

  .elementor-6116 .elementor-element.elementor-element-693383b .fph-service-card {
    flex: 1 1 100%;
    max-width: 100%;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e1df0a3 *//* Overall wrapper */
.elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources {
  max-width: 1200px;
  margin: 120px auto;
  padding: 0 24px;
}

/* Two-column layout */
.elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources-inner {
  display: flex;
  align-items: center;
  gap: 60px;
}

/* Image block */
.elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources-image {
  flex: 0 0 50%;
  max-width: 560px;
  height: 380px;
  position: relative;
  overflow: visible;
}

.elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources-image::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #C30000;
  border-radius: 32px 220px 220px 32px;
  z-index: 1;
}

.elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources-image img {
  position: absolute;
  width: 180%;
  height: auto;
  top: -77%;
  left: -43%;
  max-width: none;
  object-fit: cover;
  z-index: 2;
  pointer-events: none;
}

/* Right column */
.elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources-content {
  flex: 1;
  max-width: 520px;
}

/* Heading (inherits Quicksand from theme/global heading) */
.elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources-heading {
  font-size: 50px;        /* MAE Default */
  line-height: 1.2;
  letter-spacing: -0.02em;
  margin: 0 0 26px;       /* MAE Default */
}

/* Body text (inherits DM Sans from Elementor Text global typog.) */
.elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources-text {
  font-size: 18px;         /* matches Wanzor body default */
  line-height: 1.7778;     /* theme default */
  color: #444;
  margin: 0 0 28px;
}

/* Button (inherits Quicksand via Accent) */
.elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 28px;
  border-radius: 999px;
  border: 2px solid #9a2620;
  color: #C30000;
  font-weight: 700;        /* accent weight */
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources-btn:hover {
  background: #C30000;
  color: #ffffff;
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.12);
}

/* Tablet */
@media (max-width: 1024px) {
  .elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources-inner {
    gap: 40px;
  }
  .elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources-heading {
    font-size: 42px;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources {
    margin: 80px auto;
    padding: 0 16px;
  }
  .elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources-inner {
    flex-direction: column;
  }
  .elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources-image,
  .elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources-content {
    max-width: 100%;
  }
  .elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources-heading {
    font-size: 32px;
  }
  .elementor-6116 .elementor-element.elementor-element-e1df0a3 .fph-resources-btn {
    width: 100%;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6cae998 *//* Blob container = clipping mask */
.elementor-6116 .elementor-element.elementor-element-6cae998 {
  position: relative;
  overflow: hidden; /* keeps dog from dropping into footer */
}

/* Dog wrapper */
.elementor-6116 .elementor-element.elementor-element-6cae998 .fph-dog {
  position: absolute;
  top: -28%;      /* how high the head sits */
  left: -32%;     /* how far left the dog starts */
  width: 195%;    /* how big the dog is overall */
  height: auto;
  z-index: 2;
}

/* Dog image */
.elementor-6116 .elementor-element.elementor-element-6cae998 .fph-dog img {
  width: 100%;
  height: auto;
  object-fit: cover;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0aa4934 */.elementor-6116 .elementor-element.elementor-element-0aa4934 .fph-resources-heading {
  font-family: "Josefin Sans";
  font-size: 32px;
  line-height: 1.3;
  font-weight: 400;
  margin-bottom: 20px;
}

.elementor-6116 .elementor-element.elementor-element-0aa4934 .fph-resources-text {
  font-family: "Mulish";
  font-size: 16px;
  line-height: 1.7;
  color: #444;
  margin-bottom: 30px;
}

.elementor-6116 .elementor-element.elementor-element-0aa4934 .fph-resources-btn {
  display: inline-flex;
  padding: 12px 32px;
  border-radius: 999px;
  border: 2px solid #9a2620;
  color: #9a2620;
  text-decoration: none;
  font-family: "Mulish";
  font-weight: 700;
  transition: 0.2s ease;
}

.elementor-6116 .elementor-element.elementor-element-0aa4934 .fph-resources-btn:hover {
  background: #9a2620;
  color: white;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-05b9985 *//* Arrow Styling */
.fph-reviews-arrow {
    width: 48px;
    height: 48px;
    border: 1px solid #9A2620;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all .2s ease;
}

.fph-reviews-arrow:hover {
    background: #9A2620;
}

.fph-reviews-arrow:hover svg path {
    stroke: #ffffff;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8a2fd7d */.fph-reviews-heading {
    font-family: var(--font-heading, 'Josefin Sans', sans-serif);
    font-size: 32px;
    line-height: 1.3;
    font-weight: 400;
    color: #121212;
    margin: 0 0 12px 0;
}

.fph-reviews-subtext {
    font-family: var(--font-body, 'Mulish', sans-serif);
    font-size: 16px;
    line-height: 1.7;
    font-weight: 400;
    color: #444444;
    max-width: 760px;
    margin: 0 0 28px 0;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-76384b8 *//* Card wrapper */
.fph-review-card {
  background: #ffffff;
  border-radius: 24px;
  padding: 32px;
  width: 360px;
  min-height: 320px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-shadow: 0 16px 40px rgba(0,0,0,0.08);
  flex-shrink: 0; /* Prevent squish */
}

/* Stars */
.fph-stars {
  color: #F0BC00;
  font-size: 20px;
  letter-spacing: 4px;
  margin-bottom: 16px;
}

/* Title */
.fph-review-title {
  font-family: var(--font-heading);
  font-size: 20px;
  font-weight: 600;
  margin: 0 0 10px;
}

/* Review text */
.fph-review-text {
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.7;
  color: #444444;
  margin: 0 0 20px;
}

/* Author row */
.fph-review-author {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 10px;
}

/* Avatar */
.fph-review-avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: cover;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-990eb28 *//* ============================================
   REVIEWS / TESTIMONIALS SECTION
   "Why People Love Us"
   ============================================ */

.fph-reviews-section {
  width: 100%;
  padding: 76px 24px;
  background-color: transparent;
}

.fph-reviews-container {
  max-width: var(--container-max-width, 1440px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 51px;
}

/* Section Header */
.fph-reviews-header {
  display: flex;
  flex-direction: column;
  gap: 6px;
  max-width: 920px;
}

.fph-reviews-heading {
  /* Inherits Quicksand from global heading styles */
  font-size: 50px;          /* MAE main heading default */
  line-height: 1.2;
  letter-spacing: -0.02em;
  font-weight: 600;
  color: var(--color-text, #000000);
  margin: 0 0 26px;
  font-family: "Quicksand";
}

.fph-reviews-description {
  /* Inherits DM Sans from global Text style */
  font-size: 18px;          /* theme body size */
  line-height: 1.7778;      /* ≈32px */
  font-weight: 400;
  color: var(--color-text, #000000);
  margin: 0;
}

.fph-reviews-description strong {
  font-weight: 700;
}

.fph-reviews-description .fph-highlight {
  color: var(--color-primary, #9a2620);
  text-decoration: underline;
  text-underline-position: from-font;
}

/* Navigation Arrows */
.fph-reviews-navigation {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: flex-end;
  margin-top: -51px;
  position: relative;
  z-index: 2;
}

.fph-reviews-nav-btn {
  width: 60px;
  height: 60px;
  border-radius: 100px;
  background-color: #C30000;
  border: 1px solid var(--color-primary, #9a2620);
  color: var(--color-white, #ffffff);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
  padding: 0;
  flex-shrink: 0;
}

.fph-reviews-nav-btn:hover {
  background-color: var(--color-primary-dark, #691612);
  border-color: var(--color-primary-dark, #691612);
}

.fph-reviews-nav-btn svg {
  width: 28px;
  height: 28px;
  flex-shrink: 0;
  display: block;
}

/* Force the previous arrow to point LEFT */
.fph-reviews-nav-prev svg path {
  transform: scaleX(-1);
  transform-origin: center;
}

/* Reviews Grid */
.fph-reviews-grid {
  display: flex;
  gap: 20px;
  overflow-x: auto;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding-bottom: 10px;
}

.fph-reviews-grid::-webkit-scrollbar {
  display: none;
}

/* Review Card */
.fph-review-card {
  flex: 0 0 410px;
  background-color: var(--color-white, #ffffff);
  border: 1px solid rgba(0, 0, 0, 0.06);
  border-radius: 30px;
  padding: 60px 38px 50px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-height: 634px;
}

.fph-review-stars {
  display: flex;
  gap: 6px;
  align-items: center;
}

.fph-review-stars svg {
  width: 36px;
  height: 36px;
  flex-shrink: 0;
}

.fph-review-content {
  display: flex;
  flex-direction: column;
  gap: 40px;
  flex: 1;
}

.fph-review-title {
  /* Inherits heading font (Quicksand) */
  font-size: 30px;
  line-height: 1.2;
  font-weight: 500;
  color: var(--color-primary-dark, #691612);
  margin: 0;
}

.fph-review-text {
  /* Inherits body font (DM Sans) */
  font-size: 18px;
  line-height: 1.7778;     /* ≈32px */
  font-weight: 400;
  color: var(--color-text, #000000);
  margin: 0;
}

.fph-review-author {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: auto;
}

.fph-review-author-name {
  /* Inherits heading font (Quicksand) */
  font-size: 22px;
  line-height: 1.5;
  font-weight: 500;
  color: var(--color-primary-dark, #691612);
  margin: 0;
}

.fph-review-author-avatar {
  width: 81px;
  height: 81px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
}

.fph-review-author-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* Responsive: Tablet */
@media (max-width: 1024px) {
  .fph-reviews-section {
    padding: 60px 24px;
  }

  .fph-reviews-container {
    gap: 40px;
  }

  .fph-reviews-heading {
    font-size: 40px;
    line-height: 1.2;
  }

  .fph-reviews-description {
    font-size: 18px;
    line-height: 1.7;
  }

  .fph-reviews-navigation {
    margin-top: -40px;
  }

  .fph-review-card {
    flex: 0 0 350px;
    min-height: 580px;
  }
}

/* Responsive: Mobile */
@media (max-width: 767px) {
  .fph-reviews-section {
    padding: 40px 24px;
  }

  .fph-reviews-container {
    gap: 30px;
  }

  .fph-reviews-heading {
    font-size: 32px;
    line-height: 1.25;
  }

  .fph-reviews-description {
    font-size: 18px;
    line-height: 1.7;
  }

  .fph-reviews-navigation {
    margin-top: -30px;
    justify-content: center;
  }

  .fph-review-card {
    flex: 0 0 320px;
    min-height: auto;
    padding: 40px 24px 40px;
  }

  .fph-review-title {
    font-size: 26px;
    line-height: 1.3;
  }

  .fph-review-text {
    font-size: 18px;
    line-height: 1.7;
  }

  .fph-review-content {
    gap: 30px;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ac7e53e *//* ============================================
   AWARDS SECTION
   "Recognition and Honorable Awards"
   ============================================ */

.fph-awards-section {
  width: 100%;
  padding: 76px 24px;
  background-color: transparent;
}

.fph-awards-container {
  max-width: var(--container-max-width, 1440px);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.fph-awards-heading {
  font-family: var(--font-heading, 'Josefin Sans', sans-serif);
  font-size: 45px;
  line-height: 54px;
  font-weight: var(--font-weight-regular, 400);
  color: var(--color-text, #000000);
  margin: 0;
}

.fph-awards-grid {
  display: flex;
  gap: 120px;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.fph-award-item {
  position: relative;
  flex-shrink: 0;
}

.fph-award-item img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  display: block;
  pointer-events: none;
}

/* Award 1 & 2 - Square badges (131.265px) */
.fph-award-item:first-child,
.fph-award-item:nth-child(2) {
  width: 131.265px;
  height: 131.265px;
}

/* Award 3 - Plaque (115.438px x 144.298px) */
.fph-award-item-plaque {
  width: 115.438px !important;
  height: 144.298px !important;
}

/* Award 4 - Badge (172.227px) */
.fph-award-item-badge {
  width: 172.227px !important;
  height: 172.227px !important;
}

/* Responsive: Tablet */
@media (max-width: 1024px) {
  .fph-awards-section {
    padding: 60px 24px;
  }
  
  .fph-awards-container {
    gap: 30px;
  }
  
  .fph-awards-heading {
    font-size: 38px;
    line-height: 46px;
  }
  
  .fph-awards-grid {
    gap: 80px;
    justify-content: center;
  }
  
  .fph-award-item:first-child,
  .fph-award-item:nth-child(2) {
    width: 110px;
    height: 110px;
  }
  
  .fph-award-item-plaque {
    width: 97px !important;
    height: 121px !important;
  }
  
  .fph-award-item-badge {
    width: 145px !important;
    height: 145px !important;
  }
}

/* Responsive: Mobile */
@media (max-width: 767px) {
  .fph-awards-section {
    padding: 40px 24px;
  }
  
  .fph-awards-container {
    gap: 30px;
  }
  
  .fph-awards-heading {
    font-size: 32px;
    line-height: 40px;
    text-align: center;
  }
  
  .fph-awards-grid {
    gap: 40px;
    justify-content: center;
  }
  
  .fph-award-item:first-child,
  .fph-award-item:nth-child(2) {
    width: 100px;
    height: 100px;
  }
  
  .fph-award-item-plaque {
    width: 87px !important;
    height: 110px !important;
  }
  
  .fph-award-item-badge {
    width: 130px !important;
    height: 130px !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f58ff27 */.contact-bg-img {
  background-position: -120px center !important;
}

/* keep cover so it fills the box */
.elementor-6116 .elementor-element.elementor-element-f58ff27 {
  background-size: cover;
  background-repeat: no-repeat;
}

/* desktop: slide the background image LEFT so more dog is visible */
@media (min-width: 768px) {
  .elementor-6116 .elementor-element.elementor-element-f58ff27 {
    /* negative X value = move image left, dog comes into view */
    background-position: -300px center !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f19ea00 */.contact-bg-img {
  background-position: -120px center !important;
}

/* keep cover so it fills the box */
.elementor-6116 .elementor-element.elementor-element-f19ea00 {
  background-size: cover;
  background-repeat: no-repeat;
}

/* desktop: slide the background image LEFT so more dog is visible */
@media (min-width: 768px) {
  .elementor-6116 .elementor-element.elementor-element-f19ea00 {
    /* negative X value = move image left, dog comes into view */
    background-position: -300px center !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7fea14a *//* ============================
   CONTACT SECTION – UPDATED FIXES
   ============================ */

.fph-contact-section {
  width: 100%;
  padding: 120px 24px;          /* increased padding so bottom isn't clipped */
  display: flex;
  justify-content: center;
}

.fph-contact-shell {
  width: 100%;
  max-width: 1300px;
  border-radius: 40px;
  position: relative;
  overflow: hidden;
  min-height: 480px;            /* ensures full card height fits */
}

/* Background image layer */
.fph-contact-bg {
  width: 100%;
  height: 100%;
  min-height: 556px;            /* FIX: prevents clipping */
  background-image: url("https://shawneefamily.wpenginepowered.com/wp-content/uploads/2025/11/dc62c08fcea90c3a96e01a6eee4bff9d77456133-scaled.jpg");
  
  background-repeat: no-repeat;

  /* 🔥 FIX #1 — move image left so dog is in view */
  background-position: 72% center;  
}

/* White contact card */
.fph-contact-card {
  position: absolute;
  top: 40px;
  right: 60px;
  width: 480px;
  max-width: 90%;
  background-color: #ffffff;
  border-radius: 40px;
  box-shadow: 0 22px 50px rgba(0, 0, 0, 0.28);
  padding: 50px 50px 50px;
  display: flex;
  flex-direction: column;
  gap: 24px;

  /* 🔥 FIX #2 — ensures card fits inside shell */
  box-sizing: border-box;
}

/* Heading */
.fph-contact-heading {
  font-family: "Quicksand", sans-serif;
  font-size: 42px;
  line-height: 1.3;
  font-weight: 00;
  margin: 0;
}

/* Contact rows + icons */
.fph-contact-row {
  display: flex;
  gap: 18px;
  align-items: flex-start;
}

.fph-contact-icon {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background-color: #fbe4e1;
  display: flex;
  justify-content: center;
  align-items: center;
}

.fph-contact-icon svg {
  width: 18px;
  height: 18px;
  fill: #9a2620;
}

/* Text */
.fph-contact-text p {
  margin: 0;
  font-family: "Mulish", sans-serif;
  font-size: 17px;
  line-height: 1.6;
}

/* Button */
.fph-contact-button {
  display: inline-flex;
  padding: 14px 40px;
  background-color: #C30000;
  color: #fff;
  text-decoration: none;
  font-family: "Mulish", sans-serif;
  border-radius: 999px;
  font-weight: 700;
  transition: 0.25s;
}

.fph-contact-button:hover {
  background-color: #691612;
}

/* Mobile fixes */
@media (max-width: 767px) {
  .fph-contact-shell {
    /* Let the section grow and show the card */
    overflow: visible;
    min-height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .fph-contact-bg {
    /* Keep your image, just make sure we see enough of it */
    width: 100%;
    height: 220px;
    min-height: 220px;
    background-position: 72% center; /* same as desktop */
  }

  .fph-contact-card {
    position: relative;       /* no longer absolute */
    top: auto;
    right: auto;
    width: 100%;
    max-width: 520px;
    margin: -60px 16px 0;     /* overlaps image nicely */
    padding: 32px 24px;
    border-radius: 24px;
    box-shadow: 0 16px 40px rgba(0,0,0,0.18);
  }

  .fph-contact-heading {
    font-size: 30px;
  }
}/* End custom CSS */