/*
Theme Name: Mathis Landscapes
Theme URI: https://ramblinjackson.com/
Version: 1.1.1
Description: Custom Child Theme For Mathis Landscapes.
Author: The Ramblin Jackson Team
Author URI: https://ramblinjackson.com/
template: bb-theme
*/

/* Add your custom styles here...Remember to change the Version number above! */

/* Expandable Services Section */
/* Hide grid cols by default */
body .services-section .service-box-row .service-grid-col {
  display: none;
  opacity: 0;
  transform: translateY(10px);
  transition:
    opacity 0.4s ease,
    transform 0.4s ease;
}

/* Active state for grid cols */
body .services-section.active .service-box-row .service-grid-col {
  display: flex;
  opacity: 1;
  transform: translateY(0);
}

/* Smooth button transitions */
body .services-section .service-show-more .fl-button,
body .services-section .service-show-less .fl-button {
  transition:
    opacity 0.3s ease,
    visibility 0.3s;
}

/* Show Less button - fades out immediately when closing */
body .services-section .service-show-less .fl-button {
  opacity: 0;
  visibility: hidden;
  transition-delay: 0s; /* fade out immediately */
}

body .services-section.active .service-show-less .fl-button {
  opacity: 1;
  visibility: visible;
  transition-delay: 0.3s; /* delay fade-in when opening */
}

/* Show More button - fades in after Show Less is gone */
body .services-section.active .service-show-more .fl-button {
  opacity: 0;
  visibility: hidden;
  transition-delay: 0s; /* fade out immediately when opening */
}

body .services-section .service-show-more .fl-button {
  opacity: 1;
  visibility: visible;
  transition-delay: 0.3s; /* delay fade-in when closing */
}

/* Respect reduced motion preference */
@media (prefers-reduced-motion: reduce) {
  body .services-section .service-box-row .service-grid-col {
    transition: none;
  }
}

/* E2M Code Is Being Placed here -- Needs further clean up as of 02-18-26
----------------------------------------------------------------------------- */
/* Header 
-------------------------------------- */
header {
  position: absolute;
  z-index: 8;
  left: 0;
  right: 0;
  width: 100%;
  top: 0;
}
header .head-main-menu .menu li {
  border-top: 1px solid transparent !important;
  border-bottom: 1px solid transparent !important;
}
header .head-main-menu ul.menu > li:hover,
header .head-main-menu ul.menu > li.current-menu-item,
header .head-main-menu ul.menu > li.current-menu-parent {
  border-top: 1px solid rgba(255, 255, 255, 0.8) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.8) !important;
  transition: all 0.3s linear;
}

header .head-main-menu .menu .current-menu-item > a {
  color: rgba(255, 255, 255, 0.8) !important;
}
header .fl-menu a {
  text-decoration: none !important;
}

/* Hero Sections 
-------------------------------------- */
.home-banner-row {
  position: relative;
}
.home-banner-row::after {
  content: "";
  position: absolute;
  background: linear-gradient(
    0deg,
    rgba(112, 60, 45, 0.5) -18.06%,
    rgba(112, 60, 45, 0) 100%
  );
  mix-blend-mode: multiply;
  width: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
}
.banner-content-box {
  z-index: 2;
}
.banner-title.fl-module.fl-module-heading span {
  line-height: 36px;
}

/* Mountain Laurel 
-------------------------------------- */
.mt-laurel .fl-photo-content img {
  opacity: 0.5;
}

/* Soutions Slider 
-------------------------------------- */
.solutions-slider .fl-slide-title span {
  line-height: 1em !important;
  text-transform: lowercase !important;
  margin-top: -10px;
}
.fl-module.fl-module-heading span,
.solutions-slider .fl-slide-title span {
  font-size: inherit !important;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  font-style: italic;
  text-transform: initial;
  letter-spacing: 0;
  line-height: 1.25em;
  display: block;
  color: inherit !important;
}

.solutions-slider .fl-content-slider-navigation {
  top: auto;
  bottom: -72px;
}
.solutions-slider .fl-content-slider-navigation .slider-prev {
  left: auto;
  right: 50px;
}
.solutions-slider .fl-content-slider-navigation .fl-content-ui-button {
  outline: none;
  opacity: 1;
}
.solutions-slider
  .fl-content-slider-navigation
  .fl-content-ui-button:hover
  path {
  fill: #8c9078 !important;
}

.solutions-slider
  .fl-content-slider-navigation
  .fl-content-slider-svg-container {
  width: 20px;
  height: 20px;
}

/* Headings
-------------------------------------- */
.font-family-eb-garamond.fl-module-heading span {
  font-family: "EB Garamond";
  line-height: 55px;
  font-weight: 400;
}
.span-mb-ten.fl-module-heading span {
  margin-bottom: 8px;
}
.frequently-asked-heading.fl-module-heading span {
  margin-top: 10px;
}

/* Padding Containers
-------------------------------------- */
.padding-left-container.fl-row-full-width > .fl-row-content-wrap {
  padding-left: calc(50% - 1200px / 2);
}

.padding-right-container.fl-row-full-width > .fl-row-content-wrap {
  padding-right: calc(50% - 1200px / 2);
}

/* Image Sizes
-------------------------------------- */
.custom-img-height-300 {
  height: 300px;
}
.custom-img-height-375 {
  height: 375px;
}
.custom-img-height-425 {
  height: 425px;
}
.custom-img-height-500 {
  height: 500px;
}
.custom-img-height-620 {
  height: 620px;
}
.custom-img-height-100 {
  height: 100%;
}
.custom-img-height-300.fl-module.fl-module-photo .fl-photo-content,
.custom-img-height-300.fl-module.fl-module-photo img,
.custom-img-height-500.fl-module.fl-module-photo .fl-photo-content,
.custom-img-height-500.fl-module.fl-module-photo img,
.custom-img-height-425.fl-module.fl-module-photo .fl-photo-content,
.custom-img-height-425.fl-module.fl-module-photo img,
.custom-img-height-100.fl-module.fl-module-photo .fl-photo-content,
.custom-img-height-100.fl-module.fl-module-photo img,
.custom-img-height-375.fl-module.fl-module-photo .fl-photo-content,
.custom-img-height-375.fl-module.fl-module-photo img,
.custom-img-height-620.fl-module.fl-module-photo .fl-photo-content,
.custom-img-height-620.fl-module.fl-module-photo img {
  height: 100%;
}
.custom-img-height-300.fl-module.fl-module-photo img,
.custom-img-height-500.fl-module.fl-module-photo img,
.custom-img-height-425.fl-module.fl-module-photo img,
.custom-img-height-100.fl-module.fl-module-photo img,
.custom-img-height-375.fl-module.fl-module-photo img,
.custom-img-height-620.fl-module.fl-module-photo img {
  object-fit: cover;
  object-position: center;
}

.footer-copyright-text a:hover {
  color: #8c9078 !important;
}
.added-link-in-head a:hover {
  color: #000000 !important;
}
.solution-slider-main-row {
  position: relative;
}
.solution-slider-main-row::before {
  content: "";
  position: absolute;
  background: linear-gradient(
    0deg,
    rgba(107, 99, 80, 0.75) -180%,
    rgba(107, 99, 80, 0) 64%
  );
  width: 100%;
  height: 100px;
  top: -100px;
  z-index: 0;
}

/* Lists
-------------------------------------- */
.list-typ1 ul {
  padding-left: 30px !important;
}
.list-typ2 ul {
  padding-left: 25px;
}
.list-typ2 ul li {
  margin-bottom: 10px;
}
.list-typ2 ul li:last-child {
  margin-bottom: 0;
}
.list-typ2 ul li strong,
.list-typ2 li::marker {
  color: #9e5e1a;
}

.gfield_checkbox label,
.gfield_radio label,
label.gform-field-label--type-sub {
  font-weight: 400 !important;
}
.privacy-policy-text-module h4 {
  margin-top: 30px;
}
.blog-post-grid .fl-post-grid-title a:hover {
  color: #000000;
}
.blog-content-module .wp-block-heading {
  text-transform: capitalize;
}
.blog-content-module h2 {
  margin-top: 30px;
}
.blog-content-module h3 {
  margin-top: 20px;
}

/* slider dot */

.bx-wrapper .bx-pager.bx-default-pager a,
.bx-wrapper .bx-pager.bx-default-pager button {
  background: transparent;
  text-indent: -9999px;
  display: block;
  width: 12px;
  height: 12px;
  border-radius: 12px;
  border: 1px solid #8c9078;
}
.bx-wrapper .bx-pager.bx-default-pager button.active,
.bx-wrapper .bx-pager.bx-default-pager button:focus {
  background: #8c9078;
  outline: none;
  box-shadow: none;
}

/* solutions-slider */

.solutions-slider .fl-slide-title,
.fl-slide-text > * {
  margin: 0 0 45px !important;
}
.solutions-slider .bx-wrapper .bx-pager {
  text-align: left;
}
.solutions-slider .bx-wrapper .bx-pager.bx-default-pager a,
.solutions-slider .bx-wrapper .bx-pager.bx-default-pager button {
  margin: 0 20px;
}
.solutions-slider
  .bx-wrapper
  .bx-pager.bx-default-pager
  .bx-pager-item:first-child
  button {
  margin-left: 0;
}
.solutions-slider
  .bx-wrapper
  .bx-pager.bx-default-pager
  .bx-pager-item:last-child
  button {
  margin-right: 0;
}
.solutions-slider .fl-slide-foreground {
  margin: 0;
}
.solutions-slider .bx-wrapper .bx-controls-auto,
.solutions-slider .bx-wrapper .bx-pager {
  bottom: -97px;
}
.solution-slider-right-img,
.solution-slider-right-img .fl-photo-content.fl-photo-img-jpg {
  height: 100%;
  width: 100%;
}
.solution-slider-right-img img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100% !important;
  display: block;
  object-fit: cover;
}
.solutions-slider .fl-content-slider-wrapper .fl-slide {
  overflow: hidden;
  padding-top: 8px;
}

/* Form */

body .gform_wrapper.gravity-theme select {
  cursor: pointer;
  padding-right: 30px !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-color: transparent;
  background-image: url(https://mathislandscapes.com/wp-content/uploads/2026/01/select-arrow.svg);
}
body .gform_wrapper.gravity-theme select {
  background-position: right 15px center;
  background-repeat: no-repeat;
  background-size: 12px;
}
body .gform_wrapper.gravity-theme input,
body .gform_wrapper.gravity-theme select,
body .gform_wrapper.gravity-theme textarea {
  line-height: 1.4 !important;
  min-height: auto !important;
}
body .fl-node-vsidc0wke6j1 .pp-gf-content .gform_wrapper .gfield.gfield_error {
  background-color: transparent;
}
body .pp-gf-content .gform_wrapper .gfield .gfield_description {
  padding-top: 8px;
  padding-bottom: 8px;
}
.fl-node-64jvdwmxytub .pp-gf-content .gform_wrapper .gsection {
  margin-bottom: 10px;
}
select#input_4_5_6 {
  background-color: #fcfcfc;
  border: 1px solid #e6e6e6;
}

/* Modern browsers: use accent-color */
body .gform_wrapper input[type="radio"],
body .gform_wrapper input[type="checkbox"] {
  accent-color: #1e2419; /* Selected / checked color */
}

/* Optional: hover / focus state for better UI */
body .gform_wrapper input[type="radio"]:hover,
body .gform_wrapper input[type="checkbox"]:hover,
body .gform_wrapper input[type="radio"]:focus,
body .gform_wrapper input[type="checkbox"]:focus {
  outline-color: #1e2419;
  cursor: pointer;
}
.gsection_title {
  font-family: "Cormorant Garamond", serif !important;
  font-weight: 500 !important;
  font-size: 30px !important;
  line-height: 36px !important;
  text-transform: capitalize !important;
}
.gchoice {
  position: relative;
}
.gchoice .gfield-choice-input {
  position: absolute;
  left: 0 !important;
  top: 8px !important;
}
.gchoice .gform-field-label {
  padding-left: 20px;
  line-height: 1.6 em !important;
}

/* Testimonials Slider */

.testimonials-slider .pp-testimonial.carousel-enabled {
  display: flex;
  flex-direction: column;
}
.testimonials-slider .pp-testimonial.carousel-enabled .pp-vertical-align {
  order: 2;
}
.testimonials-slider .owl-dots {
  margin-top: 40px !important;
}
.testimonials-slider .pp-testimonials-wrap .owl-theme .owl-dots .owl-dot span {
  opacity: 1;
  background: transparent !important;
  border: 1px solid #8c9078;
  width: 12px;
  height: 12px;
  margin: 5px 29px;
}
.testimonials-slider
  .pp-testimonials-wrap
  .owl-theme
  .owl-dots
  .owl-dot.active
  span,
.testimonials-slider
  .pp-testimonials-wrap
  .owl-theme
  .owl-dots
  .owl-dot:hover
  span,
.testimonials-slider
  .pp-testimonials-wrap
  .owl-theme
  .owl-dots
  .owl-dot:focus
  span {
  background: #8c9078 !important;
}

/* explore-our-work-slider */

.explore-our-work-slider .fl-slide-cta-button {
  padding-top: 35px;
}
.explore-our-work-slider .fl-content-slider,
.explore-our-work-slider .bx-wrapper {
  position: static;
}
.explore-our-work-slider .bx-wrapper .bx-controls-auto,
.explore-our-work-slider .bx-wrapper .bx-pager {
  bottom: 25px;
  left: 0;
  right: 0;
}
.explore-our-work-slider .bx-wrapper .bx-pager.bx-default-pager a,
.explore-our-work-slider .bx-wrapper .bx-pager.bx-default-pager button {
  margin: 0 29px;
}
.explore-our-work-slider
  .bx-wrapper
  .bx-pager.bx-default-pager
  .bx-pager-item:first-child
  button {
  margin-left: 0;
}
.explore-our-work-slider
  .bx-wrapper
  .bx-pager.bx-default-pager
  .bx-pager-item:last-child
  button {
  margin-right: 0;
}
.explore-our-work-slider .bx-wrapper {
  margin-bottom: 0;
}

.create-the-outdoor-box .blur-image {
  position: absolute;
  right: -20px;
  top: -145px;
  max-width: calc(50% - 100px);
}
.create-the-outdoor-main-row .fl-row-content.fl-row-fixed-width {
  position: relative;
}
.fl-accordion-button .fl-accordion-button-icon:focus,
.fl-accordion-button .fl-accordion-button-icon:active {
  outline: none;
}

.the-mathis-main-row .solutions-slider .fl-slide-title,
.fl-slide-text > * {
  margin: 0 0 25px !important;
}
.the-mathis-main-row .solutions-slider .fl-slide-title span {
  margin-top: 8px;
}
.portfolio-content-box {
  max-width: 609px;
  position: absolute;
  top: 43%;
  right: calc(50% - (1366px / 2));
  transform: translateY(-50%);
}
.portfolio-content-box .fl-module-box.fl-module-box[class*="fl-node-"] {
  background-color: rgb(255 255 255 / 0%);
  backdrop-filter: blur(3px);
}
.custom-css-slider.explore-our-work-slider .bx-wrapper {
  position: relative;
}

/* Beautiful Results */

.beautiful-results-grid-img {
  width: 100%;
}
.beautiful-results-grid-img .fl-photo-content {
  height: 100%;
  width: 100%;
}
.beautiful-results-grid-img .fl-photo-content img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.error-page-title .fl-heading span {
  color: #ffffff !important;
}
body .error-message-text-color .fl-heading .fl-heading-text {
  color: #3e3633 !important;
}

/* Back to top */

#fl-to-top {
  background: #9e5e1a !important;
  opacity: 0.7;
}
#fl-to-top:hover {
  opacity: 1;
}
.thank-you-description-module a {
  color: #9e5e1a !important;
}
.thank-you-description-module a:hover {
  color: #ffffff !important;
}

body .building-maintaining-row {
  z-index: 1;
}

/* Timeline number Increment css */

/* Timeline counter reset */
.pp-timeline {
  counter-reset: timeline-counter;
}

/* Each timeline item */
.pp-timeline-item {
  counter-increment: timeline-counter;
}

/* Hide arrow icon */
.pp-timeline-item .fa-angle-down:before {
  content: counter(timeline-counter);
  font-family: inherit;
  font-size: 18px;
  color: #1e2419; /* text color */
  width: 18px;
  height: 18px;
  line-height: 18px;
  text-align: center;
  border-radius: 50%;
  display: inline-block;
}

/* Optional: remove font-awesome arrow completely */
.pp-timeline-item .fa-angle-down {
  font-family: inherit !important;
}

/* Responsive */

@media (min-width: 576px) {
  header .request-appointment-col {
    position: absolute;
    right: 20px;
    top: 23px;
  }
  .ld-hidden {
    display: none !important;
  }
}

@media (max-width: 1400px) and (min-width: 1201px) {
  header .head-main-menu .menu a {
    padding-left: 16px;
    padding-right: 16px;
  }
  .fl-module.fl-module-box.trust-grid-box,
  .fl-module.fl-module-box.trust-leaf-grid {
    gap: 30px;
  }
  .fl-module.fl-module-box.trust-leaf-grid.landscape-design-leaf-row {
    gap: 170px;
  }
  .fl-module.fl-module-box.trust-leaf-grid
    .left-module
    .fl-module.fl-module-box {
    margin-left: 0;
  }
  .create-the-outdoor-box .create-the-outdoor-img {
    padding-right: 75px;
  }
}

@media (max-width: 1400px) {
  .create-the-outdoor-box .blur-image {
    top: -125px;
  }
  .portfolio-content-box {
    right: 0;
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media (max-width: 1230px) {
  .padding-left-container.fl-row-full-width > .fl-row-content-wrap {
    padding-left: 20px;
  }
  .padding-right-container.fl-row-full-width > .fl-row-content-wrap {
    padding-right: 20px;
  }
  .solution-slider-main-row::before {
    height: 75px;
    top: -75px;
  }
}

@media (max-width: 992px) {
  header .fl-menu-horizontal {
    margin-top: 20px;
  }
  header .sub-menu li a {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }
  .solution-slider-right-img img {
    position: relative;
  }
  .solutions-slider .bx-wrapper .bx-controls-auto,
  .solutions-slider .bx-wrapper .bx-pager {
    bottom: -60px;
  }
  .solutions-slider .fl-slide-title,
  .fl-slide-text > * {
    margin: 0px 0 30px !important;
  }
  .bx-wrapper .bx-pager.bx-default-pager a,
  .bx-wrapper .bx-pager.bx-default-pager button {
    width: 8px;
    height: 8px;
  }
  .solutions-slider .bx-wrapper .bx-pager.bx-default-pager a,
  .solutions-slider .bx-wrapper .bx-pager.bx-default-pager button {
    margin: 0 15px;
  }
  .testimonials-slider .owl-dots {
    margin-top: 10px;
  }
  .testimonials-slider
    .pp-testimonials-wrap
    .owl-theme
    .owl-dots
    .owl-dot
    span {
    width: 10px;
    height: 10px;
    margin: 5px 18px;
  }
  .explore-our-work-slider .bx-wrapper .bx-pager.bx-default-pager a,
  .explore-our-work-slider .bx-wrapper .bx-pager.bx-default-pager button {
    margin: 0 15px;
  }
  .create-the-outdoor-box .blur-image {
    max-width: 90%;
  }
  .solutions-slider .fl-slide-title span {
    margin-top: 0;
  }
  .solution-slider-main-row::before {
    height: 50px;
    top: -50px;
  }
  .frequently-asked-heading.fl-module-heading span {
    margin-top: 0;
  }
  .custom-img-height-500 {
    height: 350px;
  }
  .custom-img-height-620 {
    height: 400px;
    width: 100%;
  }
  .solutions-slider .fl-content-slider-navigation {
    bottom: -40px;
  }
  .font-family-eb-garamond.fl-module-heading span {
    line-height: 45px;
  }
  .gsection_title {
    font-size: 28px !important;
  }
  .portfolio-content-box {
    right: 0;
    left: 0;
    margin-left: auto;
    margin-right: auto;
  }
  .portfolio-content-box .fl-module.fl-module-heading {
    text-align: center;
  }
  /* .create-the-outdoor-box .fl-module.fl-module-heading, .create-the-outdoor-box .fl-module.fl-module-rich-text{
		text-align:center;
	}	 */

  .pp-timeline-item .fa-angle-down:before {
    content: counter(timeline-counter);
    width: 16px;
    height: 16px;
    line-height: 16px;
  }
}

@media (min-width: 768px) {
  .below-section-overwrite.explore-our-work-slider
    .bx-wrapper
    .bx-controls-auto,
  .below-section-overwrite.explore-our-work-slider .bx-wrapper .bx-pager {
    bottom: 90px;
  }
}

@media (max-width: 767px) {
  .solutions-slider .fl-slide-content {
    text-align: start !important;
  }
  .solutions-slider .bx-wrapper .bx-controls-auto,
  .solutions-slider .bx-wrapper .bx-pager {
    bottom: -50px;
  }
  .banner-title.fl-module.fl-module-heading span {
    line-height: 32px;
  }
  body .back-to-top {
    height: 40px;
    width: 40px;
    right: 0;
  }

  body .back-to-top.active {
    bottom: 40px;
  }

  body .back-to-top > a i::before {
    font-size: 28px;
  }
  .solutions-slider
    .fl-content-slider-navigation
    .fl-content-slider-svg-container {
    width: 15px;
    height: 15px;
  }
  .solutions-slider .fl-content-slider-navigation {
    bottom: -30px;
  }
  .custom-css-slider {
    background: #1e2419;
  }
  .custom-css-slider .fl-slide-content {
    padding: 0 !important;
  }
  .portfolio-content-box {
    max-width: 100%;
    position: relative;
    top: auto;
    right: auto !important;
    transform: none;
    margin: 0 auto;
    width: 100%;
  }
  .beautiful-results-grid-img .fl-photo-content img {
    position: relative;
    height: 350px;
  }
  body .justified-filters ul.pp-gallery-filters {
    border-bottom: 1px solid #000 !important;
  }
  body
    .pp-gallery-filters
    .pp-gallery-filter-label.pp-filter-active
    + .pp-gallery-filter-label {
    border-top-color: #cfae8d !important;
  }
  .gsection_title {
    font-size: 26px !important;
  }
  .gchoice .gfield-choice-input {
    position: absolute;
    left: 0 !important;
    top: 10px !important;
  }
  .pp-timeline-item .fa-angle-down:before {
    content: counter(timeline-counter);
    width: 14px;
    height: 14px;
    line-height: 14px;
  }

  .timeline-module-custom-class .pp-timeline-text li {
    font-size: 14px;
  }
}

@media (max-width: 575px) {
  .banner-content-box p br {
    display: none;
  }
  header .request-appointment-col {
    padding-top: 20px;
  }
  header .head-menu-call .fl-col-content {
    padding-top: 0 !important;
  }

  .beautiful-results-grid-img .fl-photo-content img {
    height: 250px;
  }
}

@media (max-width: 480px) {
  .top-head-flex-box {
    flex-wrap: wrap;
  }
}
