/*
Theme Name: Thistle 2026 Theme
Theme URI: https://www.thistlebuildingcompany.co.nz
Version: 1.0
Description: A custom theme for Thistle Building Company
Author: Dave Murray at Satellite Design
Template: Divi
*/


@import url("../Divi/style.css");

@import url("https://use.typekit.net/sbj7dqs.css");

/* font-family: museo-sans-rounded, sans-serif;
font-weight: 100/300/500/700;
font-style: normal; */

/* font-family: "brandon-grotesque", sans-serif;
font-weight: 400/700;
font-style: normal; */

:root {
  --thistle-blue: #5896c5;
  --thistle-medium-blue: #9bc0dc;
  --thistle-light-blue: #d8e0f1;
  --thistle-grey: #515151;
  --thistle-light-grey: #e6e6e7;
  --thistle-light-grey-tint: #f7f7f7;
  --thistle-black: #333333;
  
}

*, *::after, *::before { margin: 0; padding: 0; box-sizing: inherit; }

html { font-size: 62.5%;  box-sizing: border-box; }

body { line-height: 1.7; padding: 0; box-sizing: border-box; }

h1, h2, h3, h4, h5, h6, p, li {
  font-family: museo-sans-rounded, sans-serif;
  text-wrap: pretty; 
}


.contentSection {
  width: 100%;
  margin: clamp(3rem, 4vw, 6rem) 0 !important;
  padding: 0 !important;
}

.contentRow {
  min-width: min(90%, 120rem) !important;
  padding: 0 !important;
}

.videoSection {
  width: 100%;
  padding: 0 !important;
}

.homepageVideo {
  margin: 0 !important;
}

.fullwidthSection {
  padding: clamp(3rem, 4vw, 6rem) 0 !important;
}

.fullwidthSection.grey {
  background-color: var(--thistle-grey);
}

.fullwidthSection.lightGrey {
  background-color: var(--thistle-light-grey);
}

.fullwidthSection.lightBlue {
  background-color: var(--thistle-light-blue);
}

.fullwidthSection.mediumBlue {
  background-color: var(--thistle-medium-blue);
} 

.fullwidthRow {
  padding: 0 !important;
  margin: 0;
  width: 100% !important;
  max-width: 100% !important;
}

/*-----------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------[HEADER STYLES]-----------------------------------------------------*/
/*-----------------------------------------------------------------------------------------------------------------*/

.headerSection {
  width: 100%;
  padding: 0 !important;
}

.headerRow {
  min-width: 100% !important;
  padding: 0 !important;
}

.headerGrid {
  display: grid;
  grid-template-columns:
    minmax(5%, calc((100% - 120rem) / 2)) 1fr 22rem minmax(5%, calc((100% - 120rem) / 2));
  grid-template-rows: 18rem auto;
  align-items: center;
  row-gap: 2rem;
  column-gap: 0;
  margin-bottom: 3.5rem;
}

.headerGrid::before {
  content: '';
  position: absolute;
  inset: 0;
  grid-column: 1 / 3;
  grid-row: 1 / 2;
  background-color: var(--thistle-blue);
  border-radius: 0 0 3rem 0;
}

.headerGrid::after{
  content: '';
  position: absolute;
  inset: 0;
  grid-column: 3 / -1;
  grid-row: 1 / 2;
  background-color: var(--thistle-grey);
  border-radius: 0 0 0 3rem;
}

.headerContent {
  grid-column: 2 / 3;
  margin: 0 !important;
}

.headerContent .et_pb_code_inner {
  display: grid;
  grid-template-columns: 45rem 1fr;
  align-items: end;
}

.headerLogo {
  width: min(37rem, 100%);
  line-height: 1;
  margin: 0 !important;
}

.headerText {
  grid-column: 2 / 3;
  border-left: 3px solid #FFF;
  padding: 0 0 0.3rem 3rem;
}

.headerText p {
  color: #FFF;
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700;
  font-size: clamp(1.5rem, 1.5vw, 1.8rem) !important;
  line-height: 1;
  padding: 0 !important;
}

.headerText p:not(:last-of-type) {
  padding-bottom: 1rem !important;
}

.headerText p a.underline {
  color: #FFF;
  text-decoration: none;
  position: relative;
  transition: all 0.3s;
}

.headerText p a.underline:hover {
  color: #FFF;
  letter-spacing: 1px;
}

.headerText p a.underline::after {
  content: '';
  width: 0%;
  height: 2px;
  background: #FFF;
  position: absolute;
  bottom: -4px;
  left: 50%;
  transition: all 0.3s ease;
}

.headerText p a.underline:hover::after {
  left: 0%;
  width: 100%;
}

.mainNav {
  grid-column: 2 / 4;
}

.beautifulHomes {
  grid-column: 3 / 4;
  grid-row: 1 / 2;
  width: 14rem !important;
  height: 14rem !important;
  margin: 0 0 0 4rem !important;
  z-index: 100;
}

.et_pb_image_wrap {
  height: 100%;
  width: 100%;
  display: flex !important;
  align-self: center;
  justify-content: center;
}

.et_pb_image_wrap img {
  height: 100% !important;
  width: 100% !important;
  object-fit: cover;
  object-position: center;
}

.thistleTint {
  width: 100% !important;
  height: 100% !important;
  grid-column: 3 / -1;
  grid-row: 1 / 2;
  opacity: 0.4;
  z-index: 100;
  margin: 0 !important;
}


/*-----------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------[MAIN NAVIGATION STYLES]--------------------------------------------*/
/*-----------------------------------------------------------------------------------------------------------------*/

.et_pb_menu_inner_container {
  min-width: 100%;
}

.mainNav {
  grid-column: 2 / 4;
  align-self: start !important;
}

.et_pb_menu__menu {
  min-width: 100%;
}

.et-menu-nav {
  min-width: 100%;
}

ul#menu-mainnav.et-menu.nav {
  min-width: 100%;
  margin: 0;
}

.mainNav ul li {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 500;
  font-size: 1.5rem;
  text-transform: uppercase;
  padding: 0 !important;
  line-height: 1.5rem;
  margin: 0 4rem 0 0 !important;
}

.mainNav ul li a {
  color: var(--thistle-grey);
  padding: 3.2rem 0 1rem 0 !important;
  background-position: center;
  background-size: 2.5rem;
  opacity: 1;
  position: relative;
  background-position: center 0;
  transition: all 0.3s;
}

.mainNav ul li a:after {
  display: none;
}

.mainNav ul li a:hover {
  background-image: url(/wp-content/uploads/2026/09/thistle-icon.svg);
  background-repeat: no-repeat;
  background-size: 2.5rem;
  background-position: center 0;
  opacity: 1;
}

.mainNav ul li a::before {
  content: '';
  width: 0%;
  height: 3px;
  background: var(--thistle-blue);
  position: absolute;
  bottom: 0;
  left: 50%;
  transition: all 0.3s ease !important;
}

.mainNav ul li a:hover::before {
  left: 0%;
  width: 100%;
}

ul.sub-menu {
  border-top: none !important;
  padding: 0 0 1rem 0 !important;
  top: 5.7rem !important;
  width: 24rem !important;
  -webkit-box-shadow: 0 1rem 1rem rgba(0, 0, 0, 0.3) !important;
  -moz-box-shadow: 0 1rem 1rem rgba(0, 0, 0, 0.3) !important;
  box-shadow: 0 1rem 1rem rgba(0, 0, 0, 0.3) !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  border-radius: 0 0 3px 3px;
}

ul.sub-menu li {
  padding: 0 1rem !important;
  text-align: center;
  width: 100%;
}

ul.sub-menu li a {
  border-bottom: none !important;
  padding: 1.2rem 0 1rem 0 !important;
  width: 100% !important;
}

ul.sub-menu li a:hover {
  background-color: rgba(88, 150, 197, .3);
}

ul.sub-menu li a:link {
  border-bottom: none;
  border-bottom-style: none;
  padding: 0.5rem 0;
  letter-spacing: 0;
  font-size: 1.4rem;
  background-image: none;
}

.mainNav ul li.clientLog {
  margin-left: auto !important;
  margin-right: 0 !important;
  padding: 0 !important;
  align-self: flex-end;
}

.mainNav ul li.clientLog a {
  color: #FFF;
  background-color: var(--thistle-grey);
  border: 2px solid var(--thistle-grey);
  border-radius: 3px;
  padding: 1rem 1.5rem 0.8rem 1.5rem !important;
}

.mainNav ul li.clientLog a::before {
  content: '';
  display: none;
}

.mainNav ul li.clientLog a:hover {
  background-image: none;
  background-color: var(--thistle-blue);
  border: 2px solid var(--thistle-blue);
  color: #FFF !important;
}




/*-----------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------[HOMEPAGE STYLES]----------------------------------------------------*/
/*-----------------------------------------------------------------------------------------------------------------*/

h1, h2.prominent {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 100;
  font-style: normal;
  font-size: clamp(3.5rem, 6vw, 6rem);
  line-height: 1.1;
  padding: 0 0 clamp(1.5rem, 3vw, 3rem) 0 !important;
  color: var(--thistle-blue);
}

h2 {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 500;
  font-size: clamp(2.1rem, 3.5vw, 3.3rem);
  line-height: 1.2;
  padding: 0 0 clamp(0.7rem, 1.3vw, 1.5rem) 0 !important;
  color: var(--thistle-grey);
}

h1.white, h2.white {
  color: #FFF;
}

h3 {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 500;
  font-size: clamp(1.9rem, 2.3vw, 2.3rem);
  line-height: 1.2;
  padding: 0.5rem 0 !important;
  color: var(--thistle-blue);
}

.fourOhFour h3 a {
  color: var(--thistle-grey);
  text-decoration: underline;
  text-underline-offset: 6px;
}

.fourOhFour h3 a:hover {
  color: var(--thistle-grey);
  text-decoration: underline;
  text-underline-offset: 6px;
  cursor: pointer;
}

p {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 300;
  font-size: 1.7rem;
  /* font-size: clamp(1.5rem, 1.7vw, 1.7rem); */
  line-height: 1.5;
  padding: 0 0 1rem 0 !important;
  color: var(--thistle-black);
}

strong {
  font-weight: 700;
}

.blueButton {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700;
  font-size: clamp(1.5rem, 1.7vw, 1.7rem);
  line-height: 1;
  text-transform: uppercase;
  color: #FFF !important;
  background-color: var(--thistle-blue);
  border: none;
  border-radius: 3px !important;
  text-box-trim: trim-both;
  padding: 0.7rem 3rem;
  margin: 2rem 0 0 0;
  transition: all 0.3s;
}

.blueButton:hover {
  background-color: var(--thistle-grey) !important;
  letter-spacing: 1px;
  border: none !important;
  cursor: pointer;
}

.blueButton.black:hover {
  background-color: var(--thistle-black) !important;
}

.blueButton.outline {
  background-color: transparent;
  border: 2px solid var(--thistle-blue);
  color: var(--thistle-blue) !important;
  padding: 0.7rem 4rem;
  margin: 2rem 3rem 0 0;
  width: 100%;
}

.blueButton.outline:hover {
  letter-spacing: 0;
  color: #FFF !important;
  background-color: var(--thistle-blue) !important;
  border: 2px solid var(--thistle-blue) !important;

}

.contentRow .whyChoose {
  background-color: var(--thistle-light-grey) !important;
  padding: 4rem 5% 5rem 5% !important;
  border-radius: 3px;
  margin: 3rem 0 0 0 !important;
}

.whyChoose .et_pb_code_inner {
  display: grid;
  grid-template-columns: clamp(6rem, 10%, 10rem) 1fr;
  grid-template-rows: auto 1fr;
  row-gap: 1.5rem;
  column-gap: 7.5%;
}

.chooseLogoOne, .chooseLogoTwo {
  display: block;
  width: 100% !important;
  height: auto !important;
  align-self: start;
  line-height: 1;
}

.whyChooseText {
  grid-column: 2 / 3;
  grid-row: 1 / span 2;
}

.whyChooseText ul {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 500;
  font-size: 1.7rem;
  line-height: 1.2;
  padding: 0;
}

.whyChooseText ul li {
  list-style-type: none;
  color: var(--thistle-blue);
  position: relative;
  font-size: clamp(1.5rem, 2.3vw, 2.3rem);
  padding: 0 0 clamp(0.8rem, 1.5vw, 1.5rem) clamp(1.8rem, 2vw, 2.5rem);
}

.whyChooseText ul li::before {
  content: '';
  position: absolute;
  width: 1ex;
  height: 1ex;
  background-color: var(--thistle-blue);
  border-radius: 2px;
  top: 0.8ex;
  left: 0;
}

.whyChooseText ul li:last-of-type {
  padding-bottom: 0;
}

.chooseBlurbHeadline {
  margin: 0 0 1rem 0 !important;
}

.chooseBlurb {
  background: var(--thistle-light-blue);
  border-radius: 3px;
  padding: 1rem 10%;
  margin-bottom: clamp(1rem, 1vw, 1.5rem) !important;
}

.chooseBlurb:nth-of-type(7) {
  margin-bottom: 0 !important;
}

.chooseBlurb .et_pb_blurb_content {
  display: grid;
  grid-template-columns: 12rem 1fr;
  align-items: center;
  margin: 0;
  min-width: 100% !important;
  column-gap: 3rem !important;
}

.chooseBlurb .et_pb_blurb_container {
  padding: 0;
}

.chooseBlurb .et_pb_blurb_description p {
  padding: 0 !important;
}

.chooseBlurb .et_pb_main_blurb_image {
  width: 12rem;
  height: 12rem;
  border-radius: 20rem;
  overflow: hidden;
  margin: 0 !important;
}


.welcomeHomepageGrid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 5%;
}

.welcomeHomepageText {
  grid-column: 1 / -1;
}

.welcomeHomepageBlurb {
  background-color: #FFF;
  border-radius: 3px;
  overflow: hidden;
}

.welcomeHomepageBlurb .et_pb_blurb_content {
  margin: 0;
}

.welcomeHomepageBlurb .et_pb_main_blurb_image {
  margin: 0 !important;
}

.welcomeHomepageBlurb .et_pb_blurb_container {
  padding: 2rem 3rem;
}

.welcomeHomepageBlurb p.readMore {
  color: var(--thistle-blue);
  font-weight: 500;
  padding: 0 !important;
  position: relative;
  display: inline-block;
  transition: all 0.3s;
}

.welcomeHomepageBlurb:hover p.readMore {
  letter-spacing: 1px;
}

.welcomeHomepageBlurb p.readMore::after {
  content: '';
  width: 0%;
  height: 2px;
  background: var(--thistle-blue);
  position: absolute;
  bottom: 0;
  left: 50%;
  transition: all 0.2s ease;
}

.welcomeHomepageBlurb:hover p.readMore::after {
  left: 0%;
  width: 100%;
}

.onsiteBuildText {
  margin: 0 0 1rem 0 !important;
}

.onsiteBuildImage {
  border-radius: 3px;
  overflow: hidden;
  margin: 0 !important;
}

.thinkingGrid {
  display: grid;
  grid-template-columns: 45% 50%;
  column-gap: 5%;
  align-items: center;
}

.thinkingImage {
  border-radius: 3px;
  overflow: hidden;
  margin: 0 !important;
}

.thinkingText {
  margin: 0 !important;
}

.thinkingText p:last-of-type {
  padding: 0 !important;
}

.thinkingText button {
  margin-top: 2rem;
}



/*-----------------------------------------------------------------------------------------------------------------*/
/*------------------------------------------[MOMENTUM RANGE PAGE]--------------------------------------------------*/
/*-----------------------------------------------------------------------------------------------------------------*/

.contentRow.questions {
  background-color: var(--thistle-light-grey-tint);
  border-radius: 3px;
  margin-bottom: 3rem !important;
  overflow: hidden;
  width: 100% !important;
  display: block;
}

.faqHeadline {
  margin: 0 !important;
}

.contentRow.questions h3 {
  background-color: var(--thistle-medium-blue);
  padding: 0.8rem 3rem 0.6rem 2rem !important;
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 500;
  font-size: 2rem;
  line-height: 1.3;
  color: #FFF;
}

.faqToggle {
  padding: 0 !important;
}

.faqToggle.et_pb_toggle_close {
  border: none;
  padding: 0 !important;
  margin: 1.5rem 3rem 1.5rem 1.3rem !important;
  background: none;
}

.faqToggle.et_pb_toggle_open {
  border: none;
  padding: 0 !important;
  margin: 1.5rem 3rem 1.5rem 1.3rem !important;
  background: none;
}

.et_pb_toggle_content.clearfix {
  padding: 0.7rem 0 0 0;
}

.et_pb_toggle_content.clearfix p {
  padding-bottom: 1rem !important;
}

.et_pb_toggle_content.clearfix ul {
  padding: 0 0 0 5.5rem !important;
}

.et_pb_toggle_content.clearfix ul li {
  padding-bottom: 1rem !important;
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 300;
  font-size: 1.7rem;
  color: var(--thistle-black);
}

.faqToggle h4 {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.8rem;
  line-height: 1.3;
  padding: 0 0 0 3.5rem !important;
  color: var(--thistle-grey) !important;
  position: relative;
}

.faqToggle h4::before {
  left: 0 !important;
  top: 1rem;
  color: var(--thistle-grey);
  font-size: 2.5rem !important;
  height: 2.5rem !important;
  width: 2.5rem !important;
  position: absolute;
  transform-origin: center;
  display: inline-block !important;
  transition: all 0.3s;
}

.faqToggle p {
  padding: 0 0 1.5rem 3.5rem !important;
}

.faqToggle .et_pb_toggle_title:before { transition: transform 0.3s ease; }
.faqToggle.is-open .et_pb_toggle_title:before { transform: rotate(90deg); }

.customPlans {
  width: 100%;
  margin: 0;
}

.dm-no-controls .mejs-controls,
.dm-no-controls .mejs-overlay,
.dm-no-controls .mejs-overlay-play {
  display: none !important;
}
.dm-no-controls video {
  pointer-events: none;
}

.quote {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700 !important;
  font-style: italic;
  font-size: clamp(1.6rem, 2.3vw, 2.3rem);
  line-height: 1.4;
  padding: 0 0 2rem 0 !important;
  color: #FFF;
}

.quoteGrid {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 5%;
  align-items: center;
}

.quoteIcon {
  width: 15rem !important;
  aspect-ratio: 14 / 15;
}

.quotee {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700 !important;
  font-style: italic;
  font-size: clamp(1.6rem, 2vw, 2rem);
  line-height: 1.2;
  padding: 0 !important;
  color: var(--thistle-grey);
}

.startToday {
  background-color: var(--thistle-light-grey);
  border-radius: 3px;
  overflow: hidden;
}

.startTodayGrid {
  display: grid;
  grid-template-columns: 45% 50%;
  column-gap: 5%;
  align-items: center;
}

.startTodayImage {
  height: 100%;
  margin-bottom: 0 !important;
}

.startTodayImage .et_pb_image_wrap {
  height: 100% !important;
  width: 100% !important;
  display: flex !important;
  align-self: center;
  justify-content: center;
}

.startTodayImage .et_pb_image_wrap img {
  height: 100% !important;
  width: 100% !important;
  object-fit: cover;
  object-position: center right;
}

.startTodayText {
  padding: 3rem 5rem 3rem 0;
}

.startTodayText button {
  margin-top: 2rem;
}

.yourHomeYourWay {
  margin: 0 !important;
}

/* .contentRow.yourHome {
  padding-top: 5rem !important;
  padding-bottom: 2rem !important;
} */

/*-----------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------[ALL GALLERIES AND SLIDERS ]----------------------------------------------*/
/*-----------------------------------------------------------------------------------------------------------------*/

.gallerySlider .et_pb_gallery_item.et-pb-moved-slide {
  display: block !important;
}

.gallerySlider {
  margin: 0 0 3rem 0 !important;
}

.gallerySlider .et_pb_gallery_image {
  height: 39vw !important;
  width: calc(100% - 8rem);
  margin-inline: 4rem;
}

.gallerySlider .et_pb_gallery_image a,
.gallerySlider .et_pb_gallery_image img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center;
}

.gallerySlider .et_pb_gallery_items {
  height: auto !important;
}

.mfp-gallery .mfp-content {
  width: 90vw !important;
  max-width: 90vw !important;
}

.mfp-gallery img.mfp-img {
  width: 90vw !important;
  height: 85vh !important;
  max-width: 100% !important;
  max-height: 85vh !important;
  object-fit: contain;
  padding: 20px 0 !important;
  box-sizing: border-box;
}

.mfp-gallery .mfp-figure:after {
  background: rgba(255, 255, 255, 0.8);
}

.gallerySlider .et-pb-arrow-prev,
.gallerySlider:hover .et-pb-arrow-prev {
  left: 0;
  opacity: 1;
  -webkit-transition: none !important;
  transition: none !important;
}

.gallerySlider .et-pb-arrow-next,
.gallerySlider:hover .et-pb-arrow-next {
  right: 0;
  opacity: 1;
  -webkit-transition: none !important;
  transition: none !important;
}

.et-pb-arrow-prev::before {
  content: '';
  height: 6rem;
  width: 3rem;
  aspect-ratio: 1 / 1;
  background: url('/wp-content/uploads/2026/10/left-slider-arrow.svg');
  background-repeat: no-repeat !important;
  position: absolute;
  top: -2rem;
  left: 0;
}

.et-pb-arrow-next::before {
  content: '';
  height: 6rem;
  width: 3rem;
  aspect-ratio: 1 / 1;
  background: url('/wp-content/uploads/2026/10/right-slider-arrow.svg');
  background-repeat: no-repeat !important;
  position: absolute;
  top: -2rem;
  right: 0;
}

.et_pb_slider:hover .et-pb-arrow-next {
  right: 0;
}

.et-pb-controllers {
  position: static !important;
  text-align: center;
  height: 1.5rem;
  margin-top: 1rem !important;
}

.et-pb-controllers a {
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 2rem;
  background-color: transparent !important;
  border: 1px solid var(--thistle-blue);
  opacity: 1;
}

.et-pb-controllers a.et-pb-active-control {
  background-color: var(--thistle-blue) !important;
}



/* ------------- [ MODULAR SLIDER ] ------------- */

.gallerySlider.modular {
  margin: 3rem 0 !important;
}

.gallerySlider.modular .et-pb-controllers {
  margin-top: 2rem;
}



/* ------------- [ HOMEPAGE SLIDER ] ------------- */

.gallerySlider.homepage {
  margin: 2rem 0 0 0 !important;
}

.gallerySlider.homepage .et-pb-arrow-prev::before {
  background: url('/wp-content/uploads/2026/10/left-slider-arrow-white.svg');
}

.gallerySlider.homepage .et-pb-arrow-next::before {
  background: url('/wp-content/uploads/2026/10/right-slider-arrow-white.svg');
}

.gallerySlider.homepage .et_pb_gallery_image {
  height: auto !important;
  border-radius: 3px;
  overflow: hidden;
  padding: 0 0 1rem 0;
}

.gallerySlider.homepage .et_pb_gallery_image a {
  pointer-events: none;
  cursor: default;
}

/* .gallerySlider.homepage .et-pb-controllers {
  margin-top: 1rem;
} */



/* ------------- [ MOVES YOU SLIDER ] ------------- */

.gallerySlider.moveYou {
  margin: 1rem 0 0 0 !important;
}

.gallerySlider.moveYou .et_pb_gallery_image {
  height: auto !important;
  border-radius: 3px;
  overflow: hidden;
  padding: 0 0 1rem 0;
}

.gallerySlider.moveYou .et_pb_gallery_image a {
  pointer-events: none;
  cursor: default;
}

/* .gallerySlider.moveYou .et-pb-controllers {
  margin-top: 1rem;
} */

/* ------------- [ HOW IT WORKS SLIDER ] ------------- */

/* .gallerySlider.howItWorks {
  background: orange;
} */

.gallerySlider.howItWorks .et_pb_container {
  /* height: 30rem !important; */
  height: auto !important;
}

.gallerySlider.howItWorks .et-pb-arrow-prev::before {
  display: none;
}

.howItWorksText {
  margin: 0 !important;
}

.howItWorksText h2 {
  padding: 0 !important;
}

.gallerySlider.howItWorks .et_pb_slider_container_inner {
  display: grid !important;
  grid-template-columns: 1fr 30rem;
  grid-template-rows: 30rem !important;
  column-gap: 7.5%;
  align-items: start !important;
}

.gallerySlider.howItWorks .et_pb_slide_0,
.gallerySlider.howItWorks .et_pb_slide_1,
.gallerySlider.howItWorks .et_pb_slide_2,
.gallerySlider.howItWorks .et_pb_slide_3,
.gallerySlider.howItWorks .et_pb_slide_4,
.gallerySlider.howItWorks .et_pb_slide_5,
.gallerySlider.howItWorks .et_pb_slide_6 {
  padding: 0 5rem 0 7rem;
}

.gallerySlider.howItWorks .et_pb_slide_description {
  grid-column: 1 / 2 !important;
  grid-row: 1 / 2 !important;
  width: auto !important;
  float: none !important;
  padding: 0 0 0 2rem !important;
  margin: 3rem 0 0 0 !important;
  animation-name: plainFadeIn !important;
}

@keyframes plainFadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

.gallerySlider.howItWorks .et_pb_slide_image {
  grid-column: 2 / 3 !important;
  grid-row: 1 / 2 !important;
  margin: 0 !important;
  width: 100% !important;
  float: none !important;
  position: relative !important;
  top: auto !important;
  border-radius: 50rem;
  overflow: hidden;
  aspect-ratio: 1 / 1;
}

.gallerySlider.howItWorks .et_pb_slide_image img {
  width: 100% !important;
  max-height: 100% !important;
}

.gallerySlider.howItWorks h3 {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700 !important;
  font-size: clamp(1.7rem, 2.3vw, 2.3rem);
  line-height: 1.2;
  padding: 0 0 0.5rem 0 !important;
  color: var(--thistle-blue) !important;
  position: relative;
}

/* .gallerySlider.howItWorks .et-pb-controllers {
  height: 1.5rem;
} */

.gallerySlider.howItWorks h3::before {
  content: '';
  position: absolute;
  top: -0.5rem;
  left: -9rem;
  width: 7rem;
  height: 7rem;
  border: 3px solid var(--thistle-blue);
  border-radius: 10rem;
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700 !important;
  font-size: 5rem;
  text-align: center;
  line-height: 6.5rem;
}

.gallerySlider.howItWorks .et_pb_slide_0 h3::before {
  content: '1';
}

.gallerySlider.howItWorks .et_pb_slide_1 h3::before {
  content: '2';
}

.gallerySlider.howItWorks .et_pb_slide_2 h3::before {
  content: '3';
}

.gallerySlider.howItWorks .et_pb_slide_3 h3::before {
  content: '4';
}

.gallerySlider.howItWorks .et_pb_slide_4 h3::before {
  content: '5';
}

.gallerySlider.howItWorks .et_pb_slide_5 h3::before {
  content: '6';
}

.gallerySlider.howItWorks .et_pb_slide_6 h3::before {
  content: '7';
}




/*-----------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------[DISPLAY HOME PAGE]---------------------------------------------------*/
/*-----------------------------------------------------------------------------------------------------------------*/

.showhomeVideo {
  border-radius: 3px;
  overflow: hidden;
  margin: 3rem 0 0 0 !important;
}

.onsiteText {
  margin: 2rem 0 0 0 !important;
}

.onsiteImage {
  border-radius: 3px;
  overflow: hidden;
  margin:  0 !important;
}

#momentum120 {
  padding: clamp(3rem, 4vw, 6rem) 0 !important;
}

.momentumGalleryHead {
  margin: 0 !important; 
}

.momentumGalleryButtons .et_pb_code_inner {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 5rem;
}

.momentumSpecPanel {
  background-color: var(--thistle-light-blue);
  padding: 3rem !important;
  border-radius: 3px;
  overflow: hidden;
}

.momentumSpecPanelGrid {
  display: grid;
  grid-template-columns: 28rem 1fr;
  grid-template-rows: auto 1fr auto;
  column-gap: 6rem;
}

.momentumSpecPanelGrid::before {
  content: '';
  position: absolute;
  width: 4px;
  height: 100%;
  background-color: var(--thistle-blue);
  grid-column: 2 / 3;
  transform: translateX(-3rem);
}

.floorArea {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
  padding: 0 0 1rem 0 !important;
}

.floorArea p {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.2;
  padding: 0 0 0.5rem 0 !important;
  color: var(--thistle-blue);
}

.floorArea p sup {
  font-size: 1.4rem;
  top: -0.7rem;
}

span.grey {
  color: var(--thistle-grey);
}

span.greyLength {
  color: var(--thistle-grey);
  padding-right: 1rem;
}

.momentumSpecText {
  grid-column: 2 / 3;
  grid-row: 1 / 3;
}

.momentumSpecText p {
  padding: 0 !important;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
}

.momentumSpecPanelGrid .et_pb_button_module_wrapper {
  grid-column: 2 / 3;
  grid-row: 3 / 4;
  align-self: end !important;
  margin: 1rem 0 0 0;
}

.momentumSpecIcons {
  grid-column: 1 / 2;
  grid-row: 2 / span 2;
  align-self: end !important;
}

.momentumSpecsGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 10%;
}

.momentumSpecsIconText p {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1;
  padding: 0 !important;
  color: var(--thistle-blue);
  text-align: center;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
}

.tg-main {
  margin: 3rem 0 2rem 0 !important;
  border-radius: 3px;
  overflow: hidden;
}

.tg-thumbs .et_pb_gallery_items {
  grid-auto-flow: column !important;
  column-gap: 2rem;
}

.tg-thumbs .et_pb_gallery_item {
  border-radius: 3px;
  overflow: hidden;
  cursor: pointer;
  opacity: 0.5;
  transition: opacity 0.3s;
}

.tg-thumbs .et_pb_gallery_items::before,
.tg-thumbs .et_pb_gallery_items::after {
  content: none !important;
  display: none !important;
}

.tg-thumbs .et_pb_gallery_item:hover {
  opacity: 1;
}

.tg-thumbs .et_pb_gallery_item.is-active {
  opacity: 1 !important;
}

.tg-thumbs .et_overlay {
  display: none !important;
}

.tg-gallery .et_animated,
.tg-gallery .et_pb_gallery_item {
  animation: none !important;
  transform: none !important;
}


/*-----------------------------------------------------------------------------------------------------------------*/
/*----------------------------------------[ON SITE BUILD PAGE STYLES]----------------------------------------------*/
/*-----------------------------------------------------------------------------------------------------------------*/

.clientVideoGrid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 6rem;
}

.clientVideoHead {
  grid-column: 1 / -1;
  margin: 0 0 4rem 0;
}

.clientVideo {
  border-radius: 3px 3px 0 0;
  overflow: hidden;
  margin: 0 !important;
}

.clientVideoText {
  background-color: var(--thistle-medium-blue);
  border-radius: 0 0 3px 3px;
  padding: 2rem 3rem;
  margin: 0 0 6rem 0;
}

.clientVideoText p {
 font-family: museo-sans-rounded, sans-serif;
 font-weight: 500;
 font-style: italic;
 font-size: 1.7rem;
 font-size: clamp(1.5rem, 1.7vw, 1.7rem);
 line-height: 1.5;
 padding: 0 0 1rem 0 !important;
 color: var(--thistle-grey);
}

.clientVideoText p.quotee {
  font-weight: 700 !important;
  color: #FFF;
  font-style: normal;
  text-align: left;
}

.videoOne {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
}

.textOne {
  grid-column: 1 / 2;
  grid-row: 3 / 4;
}

.videoTwo {
  grid-column: 2 / 3;
  grid-row: 2 / 3;
}

.textTwo {
  grid-column: 2 / 3;
  grid-row: 3 / 4;
}

.videoThree {
  grid-column: 1 / 2;
  grid-row: 4 / 5;
}

.textThree {
  grid-column: 1 / 2;
  grid-row: 5 / 6;
}

.videoFour {
  grid-column: 2 / 3;
  grid-row: 4 / 5;
}

.textFour {
  grid-column: 2 / 3;
  grid-row: 5 / 6;
}

.videoFive {
  grid-column: 1 / 2;
  grid-row: 6 / 7;
}

.textFive {
  grid-column: 1 / 2;
  grid-row: 7 / 8;
  margin: 0 !important;
}

.videoSix {
  grid-column: 2 / 3;
  grid-row: 6 / 7;
}

.textSix {
  grid-column: 2 / 3;
  grid-row: 7 / 8;
  margin: 0;
}

.portfolioGridHead {
  margin: 0 !important;
}

.portfolioGrid {
  margin-top: 3rem;
}

.portfolioGrid .et_pb_posts {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3rem;
}

.portfolioGrid .et_pb_grid_item {
  width: 100% !important;
  margin: 0 !important;
  border-radius: 3px;
  overflow: hidden;
  position: relative;
}

.et_portfolio_image:hover::before {
  content: '';
  width: 100%;
  height: 100%;
  background-image: url(/wp-content/uploads/2026/10/thistle-icon-white.svg);
  background-repeat: no-repeat;
  background-size: 5rem;
  background-color: rgba(80, 150, 197, 0.4);
  background-position: center;
  opacity: 1 !important;
  position: absolute;
}

.portfolioGrid .pagination.clearfix {
  margin: 2rem 0 0 0;
}

.wp-pagenavi {
  text-align: center;
  border: none;
}

.wp-pagenavi a.page.larger, .wp-pagenavi a.page.smaller {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700 !important;
  font-size: 1.7rem !important;
  color: var(--thistle-light-grey) !important;
  padding: 0.8rem 1rem;
  border: 2px solid var(--thistle-light-grey) !important;
  margin: 0 0.3rem;
  border-radius: 3px;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
  transition: all 0.3s;
}

.wp-pagenavi a.page.larger:hover, .wp-pagenavi a.page.smaller:hover {
  color: var(--thistle-grey) !important;
  border: 2px solid var(--thistle-grey) !important;
}

.wp-pagenavi span.current {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700 !important;
  font-size: 1.7rem !important;
  color: var(--thistle-grey) !important;
  padding: 0.8rem 1rem;
  border: 2px solid var(--thistle-blue) !important;
  margin: 0 0.3rem;
  border-radius: 3px;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
}

a.nextpostslink, a.previouspostslink {
  display: none;
}

span.pages {
  display: none;
}


/*-----------------------------------------------------------------------------------------------------------------*/
/*-----------------------------------------[THISTLE GALLERY STYLES]------------------------------------------------*/
/*-----------------------------------------------------------------------------------------------------------------*/

.projectSection {
  width: 100%;
  margin: 0 0 clamp(3rem, 4vw, 6rem) 0 !important;
  padding: 0 !important;
}

.projectQuote {
  background-color: var(--thistle-medium-blue);
  border-radius: 3px;
  padding: 3rem 4rem;
  margin: 2rem 0 0 0;
}

.projectQuote p {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700 !important;
  font-style: italic;
  font-size: clamp(1.7rem, 2vw, 2rem);
  line-height: 1.4;
  padding: 0 0 1rem 0 !important;
  color: #FFF;
}

.projectQuote p.quotee {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700 !important;
  font-style: italic;
  font-size: clamp(1.7rem, 2vw, 2rem);
  line-height: 1.4;
  padding: 1rem 0 0 0 !important;
  color: var(--thistle-grey);
  text-align: left;
}

.projectVideo {
  border-radius: 3px;
  overflow: hidden;
  margin: 3rem 0 0 0 !important;
}

.projectNavRow {
  margin: 0 !important;
  min-width: 100% !important;
}

.projectNavigation {
  min-width: 100%;
  margin-top: 3rem !important;
}

.et_pb_posts_nav.projectNavigation span.nav-next a,
.et_pb_posts_nav.projectNavigation span.nav-previous a {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700 !important;
  font-style: normal;
  font-size: 1.5rem;
  color: var(--thistle-blue) !important;
  text-transform: uppercase;
}

.et_pb_posts_nav.projectNavigation span.nav-next a span.nav-label,
.et_pb_posts_nav.projectNavigation span.nav-previous a span.nav-label {
  color: var(--thistle-blue) !important;
}

span.nav-previous a span.meta-nav,
span.nav-next a span.meta-nav {
  display: none;
}

span.nav-previous a span.nav-label::before {
  content: "<< ";
}

span.nav-next a span.nav-label::after {
  content: " >>";
}


/*-----------------------------------------------------------------------------------------------------------------*/
/*-----------------------------------------[HOUSE PLAN PAGE STYLES]------------------------------------------------*/
/*-----------------------------------------------------------------------------------------------------------------*/

.searchPanel {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: 3rem;
  row-gap: 1rem;
  padding: 1.5rem 3rem 2rem 3rem;
  margin: 2rem 0 3rem 0 !important;
  background-color: var(--thistle-light-blue);
  border-radius: 3px;
}

.momentumSearchPanel {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 2rem;
  row-gap: 1rem;
  padding: 1.5rem 3rem 2rem 3rem;
  margin: 2rem 0 3rem 0 !important;
  background-color: var(--thistle-light-blue);
  border-radius: 3px;
}

.searchHeadline {
  grid-column: 1 / -1;
  margin: 0 !important;
}

.searchHeadline h3 {
  color: var(--thistle-grey);
}

.momentumFilterModule {
  margin: 0 !important;
}

.filterModule {
  margin: 0 !important;
}

.search-filter-label {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 500;
  font-size: clamp(1.5rem, 1.7vw, 1.7rem);
  line-height: 1.5;
  padding: 0 !important;
  color: var(--thistle-grey);
}

.search-filter-input-text,
.search-filter-component-combobox-base {
  border: 1px solid var(--thistle-blue);
}

body .search-filter-component-combobox-base__listbox-option--selected,
body .search-filter-component-combobox-base__listbox-option:hover,
body .search-filter-component-combobox-base__listbox-option[aria-selected="true"] {
  background-color: var(--thistle-light-grey);
  color: var(--thistle-grey);
}

body .search-filter-field,
body .search-filter-field input,
body .search-filter-field select,
body .search-filter-field button,
body [class*="search-filter-component"] {
  font-family: museo-sans-rounded, sans-serif !important;
  font-weight: 300;
  font-size: clamp(1.5rem, 1.7vw, 1.7rem) !important;
  color: var(--thistle-grey);
}

body .search-filter-field input::placeholder,
body [class*="search-filter-component"] input::placeholder {
  font-family: museo-sans-rounded, sans-serif !important;
  font-weight: 300;
  font-size: clamp(1.5rem, 1.7vw, 1.7rem) !important;
  color: var(--thistle-grey);
  opacity: 1;
}

#search-filter-query-instance-1 {
  min-height: 25rem;
}

.housePlansGrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  margin: 2rem 0 0 0 !important;
}

.housePlansIntro {
  grid-column: 1 / -1;
  margin: 0 !important;
}

.housePlansOne,
.housePlansThree {
  grid-column: 1 / 2;
  margin: 0 !important;
}

.housePlansTwo,
.housePlansFour {
  grid-column: 2 / 3;
  margin: 0 !important;
}

.housePlansOne .et_pb_code_inner {
  width: 100%;
  height: 100%;
}

.transportableHomesPanel {
  background-color: var(--thistle-medium-blue);
  border-radius: 3px;
  overflow: hidden;
  padding: 3rem 5rem 5rem 5rem;
  width: 100%;
  height: 100% !important;
  display: grid;
  align-items: center;
}

.transportableHomesPanel h2 {
  font-size: 3.5rem;
  line-height: 1.1 !important;
  color: #FFF;
}

.transportableHomesPanel p {
  font-weight: 500;
}

.transportableHomesPanel button {
  pointer-events: none;
}

.transportableHomesPanel:hover button {
  background-color: var(--thistle-grey);
  letter-spacing: 1px;
}

.housePlansRow {
  display: flex;
  display: -webkit-flex;
}

.housePlansRowOne {
  flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  margin-bottom: 3rem;
}

.housePlansRowTwo {
  flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  margin-bottom: 3rem;
}

.housePlans {
  border-radius: 5px;
  overflow: hidden;
  background-color: var(--thistle-grey);
}

.housePlansImage {
  line-height: 0;
}

.housePlansCopy {
  background-color: var(--thistle-grey);
  padding: 2rem 2rem 1.7rem 2rem !important;
}

.housePlansCopy h2 {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 300;
  font-size: 2rem;
  color: #FFF;
  padding: 0 0 0 6rem !important;
  position: relative;
  text-transform: uppercase;
}

.housePlansCopy h2::before {
  content: '';
  position: absolute;
  height: 4rem;
  width: 4rem;
  background-image: url(/wp-content/uploads/2026/10/thistle-icon-white.svg);
  background-repeat: no-repeat;
  left: 0;
  top: -1rem;
}


/*-----------------------------------------------[THISTLE PLANS BLOG STYLES]-------------------------------------------------------*/

.plansHeadline {
  margin: 0 !important;
}

.houseBlogHeadline {
  margin: 0 0 0 0 !important;
}

.houseBlogContent .et_pb_blog_posts {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3rem !important;
}

.houseBlogContent .et_pb_post {
  margin: 0 !important;
  padding: 0 !important;
  border: none;
}

.et_pb_post_main_image {
  border-radius: 3px 3px 0 0;
}

a.entry-featured-image-url {
  margin-bottom: 0 !important;
  width: 100%;
  height: auto;
}

h3.entry-title {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 300;
  font-size: 2rem !important;
  text-transform: none;
  background-color: var(--thistle-medium-blue);
  color: #FFF;
  padding: 1rem 2rem !important;
  border-radius: 0 0 3px 3px;
  overflow: hidden;
}

p.post-meta {
  display: none;
}


/*-----------------------------------------------------------------------------------------------------------------*/
/*-----------------------------------------[HOUSE PLAN POST STYLES]------------------------------------------------*/
/*-----------------------------------------------------------------------------------------------------------------*/

.et_post_meta_wrapper {
  display: none;
}

.container {
  min-width: min(90%, 120rem) !important;
  padding: 0 !important;
}

.postSection {
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

.postRow {
  min-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

h1.entry-title {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 300;
  background-color: var(--thistle-medium-blue);
  color: #FFF;
  padding: 1.5rem 2rem 1rem 2rem !important;
  margin-bottom: 1rem;
  border-radius: 3px;
  width: 100% !important;
  text-transform: none;
}

.et_pb_title_featured_container {
  border-radius: 3px 3px 0 0;
  overflow: hidden;
  margin: 0 !important;
}

.postPanel {
  background-color: var(--thistle-light-grey);
  padding: 4rem 3rem !important;
  border-radius: 0 0 3px 3px;
  overflow: hidden;
}

.newPostGrid {
  display: grid;
  grid-template-columns: 35% 60%;
  grid-column-gap: 5%;
}

.newPostIncludes {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
  margin-bottom: 0 !important;
}

.newPostDescription {
  grid-column: 2 / 3;
  grid-row: span 3;
}

#houseArea p {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700 !important;
  font-size: 2rem;
  color: #000;
}

#houseArea p sup, #momentumArea p sup {
  font-size: 1.3rem;
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 900 !important;
}

#momentumArea p {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700 !important;
  font-size: 2rem;
  color: #000;
  padding: 0 !important;
}

#houseIcons {
  display: grid;
  grid-template-columns: 4.15rem max-content 4.2rem max-content 4.2rem max-content 3.9rem max-content;
  height: 4rem;
  align-items: end;
  position: relative;
  margin: 0.5rem 0 2rem 0;
  width: auto !important;
}

#carsCopy p,
#bedsCopy p,
#bathsCopy p,
#livingCopy p {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 500;
  font-size: 2rem;
  color: #000;
  padding: 0 2rem 0 1rem !important;
}

.housePrice {
  padding: 0 0 1rem 0 !important;
}

.housePrice p {
  font-size: 2.2rem !important;
  line-height: 1.2;
  color: var(--thistle-blue) !important;
}

span.transport {
  font-size: 1.5rem;
  display: block;
}

/*-------------------------------------------[WP FORM STYLES]---------------------------------------------------*/

#toggleThis {
  background-color: var(--thistle-blue);
  border-radius: 3px;
  padding: 1rem;
  text-align: center;
  margin-top: 1.5rem;
  margin-bottom: 1rem;
  z-index: 10 !important;
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700 !important;
  font-size: 1.8rem;
  line-height: 2rem;
  color: #FFF;
  cursor: pointer;
}

#slider {
  display: none;
}

.slideBox .wpforms-container.wpforms-container-full {
  margin: 0 0 0 0 !important;
}

.wpforms-field {
  padding: 0.5rem 0 !important;
}

input.wpforms-field-large.wpforms-field-required {
  border-radius: 3px !important;
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 500 !important;
  font-size: 1.3rem !important;
  color: var(--thistle-grey) !important;
  opacity: 1 !important;
  line-height: 1 !important;
}

.wpforms-field-large.wpforms-field-required::placeholder {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 500 !important;
  font-size: 1.3rem !important;
  color: var(--thistle-grey) !important;
  opacity: 1 !important;
}

.choices__item.choices__item--selectable,
.choices__item.choices__placeholder.choices__item--selectable {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 500 !important;
  font-size: 1.3rem !important;
  color: var(--thistle-grey) !important;
  opacity: 1 !important;
  padding: 0 0.5rem !important;
}

.choices__item.choices__item--choice.choices__item--selectable {
  background-color: #FFF;
  padding: 1rem 1.5rem !important;
}

.choices__item.choices__item--choice.choices__item--selectable.is-highlighted,
.choices__item.choices__item--choice.choices__item--selectable:hover {
  background-color: var(--thistle-medium-blue) !important;
}

label.wpforms-field-label {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 500 !important;
  font-size: 1.5rem !important;
  margin: 0.5rem 0 !important;
}

.wpforms-field-description {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 500 !important;
  font-style: italic;
  margin-top: 0 !important;
  font-size: 1.3rem !important;
  line-height: 1.5 !important;
}

.wpforms-submit {
  font-size: 1.4rem !important;
  text-transform: uppercase !important;
  text-align: center !important;
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  padding: 1.2rem 1.5rem !important;
  height: auto !important;
  outline: none !important;
  border: none !important;
  border-radius: 5px !important;
  color: #FFF !important;
  background-color: var(--thistle-grey) !important;
  width: 100% !important;
  transition: all .3s;
}

.wpforms-submit:hover {
  background-color: var(--thistle-blue) !important;
}

.wpforms-field-required.wpforms-error {
  border: 2px solid var(--thistle-blue) !important;
}



/*-----------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------[OUR STORY STYLES]---------------------------------------------------*/
/*-----------------------------------------------------------------------------------------------------------------*/

.builtLocallyGrid {
  display: grid;
  grid-template-columns: 45% 50%;
  column-gap: 5%;
  align-items: center;
}

.builtLocallyImage {
  border-radius: 3px;
  overflow: hidden;
  margin: 0 !important;
  height: 100%;
}

.builtLocallyText {
  margin: 0 !important;
}

.builtLocallyText p:last-of-type {
  padding: 0 !important;
}

/* .builtLocallyButton {
  
} */

.signature {
  width: 24rem;
  margin: 2rem 0 0.5rem 0;
}

.historyGrid {
  display: grid;
  grid-template-columns: 20% 2rem 20% 5% 1fr;
  grid-template-rows: auto auto;
  row-gap: 2rem;
  align-items: center;
}

.historyImage {
  border-radius: 3px;
  overflow: hidden;
  margin: 0 !important;
}

.historyImage.one {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
}

.historyImage.two {
  grid-column: 3 / 4;
  grid-row: 1 / 2;
}

.historyImage.three {
  grid-column: 1 / 4;
  grid-row: 2 / 3;
}

.historyText {
  grid-column: 5 / 6;
  grid-row: 1 / -1;
}

.historyText h2 {
  color: #FFF;
}

.meetTeamGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 7rem;
  row-gap: 3rem;
}

.meetTeamText {
  grid-column: 1 / -1;
  margin: 0 !important;
}

.teamBlurb .et_pb_main_blurb_image {
  border-radius: 3px;
  overflow: hidden;
  margin: 0 0 2rem 0 !important;
}

.teamBlurb h4 {
  color: var(--thistle-blue);
  font-weight: 700;
}

.appreciateGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 5%;
}

.appreciateText {
  grid-column: 1 / -1;
  margin: 0 0 1rem 0 !important;
}

.appreciateBlurb .et_pb_main_blurb_image {
  border-radius: 3px;
  overflow: hidden;
  margin: 0 0 2rem 0 !important;
}

.appreciateBlurb h3 {
  color: var(--thistle-blue);
  font-weight: 700;
}

.thislteTeamGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  /* grid-template-rows: repeat(3, 45rem); */
  grid-template-rows: repeat(3, min(45rem, 37.5vw));
  gap: clamp(2rem, 3vw, 3rem);
}


.thistleTeamImage.one {
  grid-column: 1 / span 2;
  grid-row: 1 / 2;
}

.thislteTeamImage.two {
  grid-column: 3 / 4;
  grid-row: 1 / 2;
}

.thistleTeamImage.three {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
}

.thistleTeamImage.four {
  grid-column: 2 / 4;
  grid-row: 2 / 3;
}

.thistleTeamImage.five {
  grid-column: 1 / 3;
  grid-row: 3 / 4;
}

.thislteTeamImage.six {
  grid-column: 3 / 4;
  grid-row: 3 / 4;
}

.thistleReadyGrid {
  display: grid;
  grid-template-columns: 45% 50%;
  column-gap: 5%;
  align-items: center;
}

.thistleReadyImage {
  height: 100%;
  border-radius: 3px;
  overflow: hidden;
  margin: 0 !important;
}

.thistleReadyText {
  margin: 0 !important;
}

.thistleReadyText p:last-of-type {
  padding: 0 !important;
}

.logoGallery {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: 5%;
  row-gap: 2vw;
}

.logoGalleryHead {
  grid-column: 1 / -1;
  margin: 0 !important;
}

.logoGalleryHead h2{
  padding: 0 !important;
}

.logoGalleryImage {
  margin: 0 !important;
}


/*-----------------------------------------------------------------------------------------------------------------*/
/*--------------------------------------------[CONTACT US STYLES]--------------------------------------------------*/
/*-----------------------------------------------------------------------------------------------------------------*/

.experienceGrid {
  display: grid;
  grid-template-columns: 45% 50%;
  column-gap: 5%;
  align-items: center;
}

.experienceImage {
  grid-column: 2 / 3;
  grid-row: 1 / 2;
  border-radius: 3px;
  overflow: hidden;
  margin: 0 !important;
  height: 100%;
}

.experienceGrid .et_pb_button_module_wrapper {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
  margin: 0 !important;
}

.experienceText {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
  margin: 0 !important;
}

.experienceText h3 {
  color: #FFF;
}



.locationGrid {
  display: grid;
  grid-template-columns: 34rem 1fr;
  grid-template-rows: auto 1fr;
  column-gap: 5rem;
  row-gap: 2rem;
}

.locationText {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
  align-self: start;
}

.openingHoursText {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
  align-self: start;
}

.locationMap {
  grid-column: 2 / 3;
  grid-row: 1 / -1;
}

.locationText h2 {
  padding: 2rem 0 0.5rem 0 !important;
}

.locationText h2:first-of-type, .openingHoursText h2 {
  padding: 0 0 0.5rem 0 !important;
}

.locationText p, .openingHoursText p {
  font-weight: 500;
  padding: 0 !important;
  line-height: 1.6;
}

.locationText p.contact {
  font-size: 1.9rem;
}

.locationText p a {
  color: var(--thistle-blue);
  position: relative;
  transition: all 0.3s;
}

.locationText p a:hover {
  letter-spacing: 1px;
}

.locationText p a::after {
  content: '';
  width: 0%;
  height: 2px;
  background: var(--thistle-blue);
  position: absolute;
  bottom: -3px;
  left: 50%;
  transition: all 0.3s ease;
}

.locationText p a:hover::after {
  left: 0%;
  width: 100%;
}


/*-----------------------------------------------------------------------------------------------------------------*/
/*------------------------------------------[WELCOME HOME STYLES]--------------------------------------------------*/
/*-----------------------------------------------------------------------------------------------------------------*/

.tg-gallery .tg-main {
  position: relative;
}

.tg-gallery .tg-main::after {
  content: attr(data-panel);
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 34%;
  padding: clamp(1rem, 4vw, 8rem) clamp(1rem, 3vw, 4rem);
  background: var(--thistle-medium-blue);
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 500;
  font-style: italic;
  color: #fff;
  font-size: clamp(1.3rem, 2vw, 2.5rem);
  line-height: 1.5;
  opacity: 0;
  transition: opacity .3s ease;
  pointer-events: none;
}

.tg-gallery.tg-show-panel .tg-main::after {
  opacity: 1;
}

.tg-gallery .tg-main:not([data-panel])::after {
  display: none;
}

.welcomeHome {
  margin: 3rem 0 0 0 !important;
}

.welcomeHome h1 {
  font-weight: 300;
  font-size: clamp(2.5rem, 5vw, 5rem);
  padding: 0 !important;
}

.welcomeHome h2 {
  font-weight: 500;
  font-size: clamp(1.9rem, 3.5vw, 2.8rem);
  line-height: 1.2;
  padding: 0.5rem 0 !important;
}

.welcomeHome h3 {
  font-weight: 500;
  font-size: clamp(1.9rem, 3.5vw, 3.3rem);
  line-height: 1.2;
  padding: 4rem 0 0 0 !important;
  color: var(--thistle-grey);
}

.welcomeHome h4 {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 500;
  font-size: clamp(1.7rem, 2.3vw, 2.3rem);
  line-height: 1.3;
  padding: 1rem 0 !important;
  color: var(--thistle-blue);
}


/*-----------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------[BACK TO TOP STYLES]--------------------------------------------------*/
/*-----------------------------------------------------------------------------------------------------------------*/

.et_pb_scroll_top.et-pb-icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  width: 6rem;
  height: 6rem;
  border-radius: 6rem;
  padding: 0.7rem 0.4rem;
  right: 20px;
  bottom: 20px;
  background-color: var(--thistle-blue); 
  border: 1px solid #FFF;
  color: #fff;
  font-size: 0;
  -webkit-box-shadow: 0.3rem 0.3rem 0.7rem rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0.3rem 0.3rem 0.7rem rgba(0, 0, 0, 0.5);
  box-shadow: 0.3rem 0.3rem 0.7rem rgba(0, 0, 0, 0.5);
}

.et_pb_scroll_top.et-pb-icon::before {
  content: "";
  display: block;
  width: 2.5rem;
  height: 2.5rem;
  top: 1rem;
  background: url("/wp-content/uploads/2026/10/thistle-icon-white.svg") center / contain no-repeat;
}

.et_pb_scroll_top.et-pb-icon::after {
  content: "TOP OF PAGE";
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700;
  font-size: 0.9rem;
  line-height: 1;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
}

.et_pb_scroll_top.et-pb-icon:hover {
  background-color: var(--thistle-grey);
}



/*-----------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------[FOOTER STYLES]-----------------------------------------------------*/
/*-----------------------------------------------------------------------------------------------------------------*/

.footerSection {
  width: 100%;
  padding: 6rem 0 !important;
  background-color: #D5D5D6;
}

/* Full-width (4/4) columns in Divi 5 flex rows otherwise shrink to their content */
.et_flex_row > .et_pb_column_4_4 {
  flex: 1 1 100%;
  width: 100%;
}

.footerRow {
  min-width: min(90%, 120rem) !important;
  padding: 0 !important;
}

.footerGrid {
  display: grid;
  flex: 1 1 100%;
  width: 100%;
  grid-template-columns: auto 1fr 14rem;
  grid-template-rows: auto;
  column-gap: 5%;
  row-gap: 6rem;
}

.footerLogos {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
  min-width: 100%;
  padding: 0 !important;
}

.footerLogoGrid {
  display: grid;
  grid-template-columns: 6.3rem 10.8rem 8.5rem 24.2rem;
  grid-template-rows: 11.9rem;
  grid-gap: 3rem;
  align-items: center;
  justify-items: center;
}

.logoOne {
  height: auto !important;
  width: 6.3rem !important;
}

.logoTwo {
  height: auto !important;
  width: 10.8rem !important;
  
}

.logoThree {
  height: auto !important;
  width: 8.5rem !important;
}

.logoFour {
  height: auto !important;
  width: 24.2rem !important;
}

.socialWrapper {
  grid-column: 3 / 4;
  grid-row: 1 / 2;
  align-self: end;
  padding-bottom: 0.5rem;
}

.socialMedia {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: auto;
  grid-gap: 10%;
  margin-bottom: 0.5rem;
}

.facebook {
  grid-column: 3 / 5;
}

.instagram {
  grid-column: 5 / 7;
}

.hqCopy {
  grid-column: 2 / 3;
  grid-row: 1 / 2;
  align-self: end;
}

.hqCopy p {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 1.2;
  padding: 0;
  color: var(--thistle-grey);
}

.hqCopy p a {
  color: var(--thistle-grey);
  text-decoration: none;
  position: relative;
  transition: all 0.3s;
}

.hqCopy p a:hover {
  text-decoration: none !important;
}

.hqCopy p a::after {
  content: '';
  width: 0%;
  height: 2px;
  background: var(--thistle-grey);
  position: absolute;
  bottom: -4px;
  left: 50%;
  transition: all 0.3s ease;
}

.hqCopy p a:hover::after {
  left: 0%;
  width: 100%;
}

.copyrightText {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
  justify-self: start !important;
}

.copyrightText p {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 300;
  font-size: 1.2rem;
  color: var(--thistle-grey);
  line-height: 1.2;
  letter-spacing: 1px;
  text-transform: uppercase !important;
  padding: 0 !important;
}

.satDesign {
  grid-column: 2 / 4;
  justify-self: start !important;
}

.satDesign p {
 font-family: museo-sans-rounded, sans-serif;
  font-weight: 300;
  font-size: 1.2rem;
  color: var(--thistle-grey);
  line-height: 1.2;
  letter-spacing: 1px;
  text-transform: uppercase !important;
  padding: 0 !important;
}

.satDesign p a {
  color: var(--thistle-grey);
  transition: all 0.3s;
  text-decoration: none;
}

.satDesign p a:hover {
  letter-spacing: 2px;
  text-decoration: none;
}


/*---------------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------[RESPONSIVE STYLES]-----------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------------*/


/*--------------------------------------------- [ 1250px WIDE ] -----------------------------------------------------*/


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

.footerGrid {
  margin: 0;
  grid-template-columns: 100% !important;
  grid-template-rows: auto auto;
  row-gap: 3rem;
}

.footerLogos {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
  min-width: 58.8rem !important;
  justify-self: center !important;
}

.footerLogoGrid {
  margin-inline: auto !important;
}

.hqCopy {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
  width: 100% !important;
  text-align: center !important;
  margin: 0 !important;
}

.socialWrapper {
  grid-column: 1 / 2;
  grid-row: 3 / 4;
  padding-top: 1rem;
  width: 14rem;
  margin-inline: auto;
}

.facebook {
  grid-column: 2 / 4;
}

.instagram {
  grid-column: 4 / 6;
}

.copyrightText {
  grid-column: 1 / 2;
  grid-row: 4 / 5;
  width: 100%;
}

.satDesign {
  grid-column: 1 / 2;
  grid-row: 5 / 6;
  width: 100%;
}

.copyrightText p, .satDesign p {
  text-align: center !important;
}

}

/*--------------------------------------------- [ 1180px WIDE ] -----------------------------------------------------*/

@media only screen and ( max-width: 1180px ) {
  
  
/*------------[MOBILE MENU]------------*/
  
/**** This hides the sub menu items on mobile ****/
#page-container .mobile_nav li ul.hide {
  display: none !important;
}

/**** This adjusts the positioning and the background transparency of the parent menu item on mobile ****/
#page-container .mobile_nav .menu-item-has-children {
  position: relative;
}

#page-container .mobile_nav .menu-item-has-children>a {
  background: transparent;
}

/**** This styles the icon and moves it to the right ****/
#page-container .mobile_nav .menu-item-has-children>a+span {
  position: absolute;
  right: 0;
  top: 0;
  padding: 10px 1rem;
  font-size: 20px;
  font-weight: 700;
  cursor: pointer;
  z-index: 3;
  transition: transform 0.2s ease;
}

/**** Rotates the + into a cross (close) when the sub menu is open ****/
#page-container .mobile_nav .menu-item-has-children>a+span[aria-expanded="true"] {
  transform: rotate(45deg);
}

.et_mobile_nav_menu {
  display: block;
  border: 4px solid #FFF;
  border-radius: 50%;
  width: 8rem;
  height: 8rem;
}

.et_pb_menu__menu, .beautifulHomes {
  display: none !important;
}

.et_pb_menu__wrap {
  justify-content: center !important;
  align-items: center !important;
  right: 0 !important;
}

.headerGrid {
  grid-template-columns:
    minmax(5%, calc((100% - 1200px) / 2)) 1fr 25rem;
  grid-template-rows: 18rem;
}

.headerContent .et_pb_code_inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: end;
}

.headerText {
  grid-column: 2 / 3;
  border-left: 3px solid #FFF;
  padding: 0 0 0 2rem;
  margin: 0 0 0.5rem 2rem;
}

.headerText p:last-of-type {
  padding: 0 !important;
}

.mainNav {
  background-color: transparent !important;
  width: 100%;
  height: 100%;
  grid-column: 3 / 4;
  grid-row: 1 / 2;
  z-index: 300;
  align-self: center;
  justify-self: center;
}

.mainNav .et_pb_menu_inner_container {
  height: 100% !important;
}

ul#mobile_menu1.et_mobile_menu {
  top: 18rem;
  border: none;
  padding: 0;
  width: 25rem;
  -webkit-box-shadow: 0 1rem 1rem rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 1rem 1rem rgba(0, 0, 0, 0.5);
  box-shadow: 0 1rem 1rem rgba(0, 0, 0, 0.5);
}

ul#mobile_menu1.et_mobile_menu li {
  padding-right: 0 !important;
  margin-right: 0 !important;
  list-style-type: none;
}

ul#mobile_menu1.et_mobile_menu li.clientLog a {
  border: none !important;
  background-color: var(--thistle-grey) !important;
  border-radius: 0;
  color: #FFF !important;
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 500 !important;
}

ul#mobile_menu1.et_mobile_menu li a {
  font-family: museo-sans-rounded, sans-serif;
  font-weight: 500 !important;
  padding: 1rem 1.5rem 0.8rem 1.5rem !important;
  border-bottom: 2px solid var(--thistle-medium-blue) !important;
  color: var(--thistle-grey) !important;
  background-color: #FFF;
  font-size: 1.5rem !important;
  line-height: 2rem !important;
}

ul#mobile_menu1.et_mobile_menu li a:hover {
  background-color: var(--thistle-medium-blue) !important;
  color: #FFF !important;
  opacity: 1;
  background-image: none !important;
}

.mainNav ul li a:hover::before {
  left: 0%;
  width: 0%;
}



ul#mobile_menu1.et_mobile_menu li ul.sub-menu {
  border-top: none !important;
  padding: 0 !important;
  width: 25rem !important;
  -webkit-box-shadow: none !important;
  -moz-box-shadow: none !important;
  box-shadow: none !important;
  left: 0 !important;
  transform: translateX(0) !important;
}

ul#mobile_menu1.et_mobile_menu li:hover a {
  background-image: none !important;
}

ul#mobile_menu1.et_mobile_menu li ul.sub-menu li {
  text-align: left;
  padding: 0 !important;
  margin-left: 0;
}

ul#mobile_menu1.et_mobile_menu li ul.sub-menu li a:hover {
  background-color: var(--thistle-medium-blue) !important;
  color: #FFF !important;
}

  
/*--------------------------------------------------------------------------------------------------*/
/*---------------------------------------[MMMMM HAMBURGERS]-----------------------------------------*/
/*--------------------------------------------------------------------------------------------------*/

span.mobile_menu_bar.et_divi_100_custom_hamburger_menu__icon {
  top: 1.7rem;
  right: -0.9rem !important;
  margin: 0 !important;
  width: 5rem;
  height: 5rem;
  padding: 0;
  line-height: 9rem;
}

span.mobile_menu_bar.et_divi_100_custom_hamburger_menu__icon div {
  background: #FFF;
  width: 4.5rem;
  height: 0.4rem;
  margin: 0.4rem 0;
  border-radius: .15rem;
  transition: 0.3s;
  float: right !important;
  transform-origin: center;
}

span.mobile_menu_bar.et_divi_100_custom_hamburger_menu__icon--toggled div {
 opacity: 0;
}

span.mobile_menu_bar.et_divi_100_custom_hamburger_menu__icon--toggled div:first-child {
  background: #FFF;
  transform: translateY(1.2rem) rotate(45deg);
  opacity: 1;
}

span.mobile_menu_bar.et_divi_100_custom_hamburger_menu__icon--toggled div:last-child {
  background: #FFF;
  transform: translateY(-1.2rem) rotate(-45deg);
  opacity: 1;
}


/* ------------- [ HOW IT WORKS SLIDER ] ------------- */

.gallerySlider.howItWorks .et_pb_container {
  height: auto !important;
}

.gallerySlider.howItWorks .et_pb_slider_container_inner {
  grid-template-columns: 1fr 22rem;
  grid-template-rows: 31rem !important;
  column-gap: 5%;
}

}

/*--------------------------------------------- [ 1150px WIDE ] -----------------------------------------------------*/

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

.newPostGrid {
  grid-template-columns: 40% 55%;
}

}

/*--------------------------------------------- [ 1055px WIDE ] -----------------------------------------------------*/

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


.momentumSpecPanelGrid {
  grid-template-columns: auto 1fr;
  grid-template-rows: 5rem auto auto;
  column-gap: 6rem;
  row-gap: 2rem;
}

.floorArea {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
  padding: 0 !important;
  margin: 0 !important;
}

.momentumSpecText {
  grid-column: 2 / 3;
  grid-row: 1 / -1;
  margin: 0 !important;
}

.momentumSpecPanelGrid .et_pb_button_module_wrapper {
  grid-column: 1 / 2;
  grid-row: 3 / 4;
  margin: 0;
}

.momentumSpecIcons {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
}

.momentumSpecsGrid {
  grid-template-columns: repeat(3, 7.2rem);
  column-gap: 2rem;
}

.momentumSpecBtn {
  margin: 0 !important;
}

.transportableHomesPanel {
  padding: 3rem;
}

.searchPanel {
  grid-template-columns: repeat(2, 1fr);
  column-gap: 3rem;
  row-gap: 1.5rem;
}

}















/*--------------------------------------------- [ 980px WIDE ] -----------------------------------------------------*/

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

.headerGrid {
  margin-bottom: 2rem !important;
}

.headerContent .et_pb_code_inner {
  grid-template-columns: 1fr;
}

.headerText {
  display: none;
} 
  
span.mobile_menu_bar.et_divi_100_custom_hamburger_menu__icon {
  top: 0.6rem;
}

.mainNav .et_pb_menu_inner_container {
  eight: 100% !important;
}

.mainNav .et_pb_menu_inner_container .et_pb_menu__wrap {
  justify-content: center !important;
  align-items: center !important;
}

.clientVideoGrid {
  grid-template-columns: 100%;
}

.clientVideoText {
  padding: 1.5rem 2rem 0.5rem 2rem;
}

.clientVideoText p {
  text-align: center;
}

.clientVideoText p.quotee {
  text-align: center;
}

.videoOne {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
}

.textOne {
  grid-column: 1 / 2;
  grid-row: 3 / 4;
}

.videoTwo {
  grid-column: 1 / 2;
  grid-row: 4 / 5;
}

.textTwo {
  grid-column: 1 / 2;
  grid-row: 5 / 6;
}

.videoThree {
  grid-column: 1 / 2;
  grid-row: 6 / 7;
}

.textThree {
  grid-column: 1 / 2;
  grid-row: 7 / 8;
}

.videoFour {
  grid-column: 1 / 2;
  grid-row: 8 / 9;
}

.textFour {
  grid-column: 1 / 2;
  grid-row: 9 / 10;
}

.videoFive {
  grid-column: 1 / 2;
  grid-row: 10 / 11;
}

.textFive {
  grid-column: 1 / 2;
  grid-row: 11 / 12;
  margin: 0 !important;
}

.videoSix {
  grid-column: 1 / 2;
  grid-row: 12 / 13;
}

.textSix {
  grid-column: 1 / 2;
  grid-row: 13 / 14;
  margin: 0;
}


.builtLocallyGrid {
  grid-template-columns: 100%;
}

.builtLocallyText {
  margin: 0 0 3rem 0 !important;
}

.meetTeamGrid {
  grid-template-columns: repeat(2, 1fr);
}

.locationGrid {
  grid-template-columns: 34rem 1fr;
  grid-template-rows: auto 1fr;
  column-gap: 3rem;
}

.locationText {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
}

.openingHoursText {
  grid-column: 2 / 3;
  grid-row: 1 / 2;
}

.locationMap {
  grid-column: 1 / -1;
  grid-row: 2 / 3;
}

.experienceGrid {
  grid-template-columns: 100%;
  gap: 2rem;
}

.experienceImage {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
}

.experienceGrid .et_pb_button_module_wrapper {
  grid-column: 1 / 2;
  grid-row: 3 / 4;
}

.experienceButton {
  margin: 0 !important;
}

.experienceText {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
}

.experienceText p {
  padding: 0 !important;
}

/*------------[POSTS]------------*/

.postPanel {
  padding: 3rem 3rem 2rem 3rem !important;
} 

.newPostGrid {
  grid-template-columns: 100%;
}

.newPostDescription {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
  margin-bottom: 2rem !important;
}

.newPostIncludes {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
  margin-bottom: 0 !important;
}







}


/*--------------------------------------------- [ 925px WIDE ] -----------------------------------------------------*/

@media only screen and ( max-width: 925px ) {
  
.housePlansGrid {
  grid-template-columns: 100%;
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
}

.housePlansIntro {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
}

.housePlansOne {
  grid-column: 1 / 2;
  grid-row: 4 / 5;
}

.housePlansTwo {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
}

 .housePlansThree {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
}

 .housePlansFour {
  grid-column: 1 / 2;
  grid-row: 3 / 4;
}



}  
  
/*--------------------------------------------- [ 840px WIDE ] -----------------------------------------------------*/

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

/* ------------- [ HOW IT WORKS SLIDER ] ------------- */

.gallerySlider.howItWorks .et_pb_container {
  height: auto !important;
}

.gallerySlider.howItWorks .et_pb_slider_container_inner {
  grid-template-columns: 100%;
  grid-template-rows: 18rem 22rem !important;
  row-gap: 1rem;
}

.gallerySlider.howItWorks .et_pb_slide_image {
  grid-column: 1 / 2 !important;
  grid-row: 1 / 2 !important;
  width: 18rem !important;
  justify-self: end;
}

.gallerySlider.howItWorks .et_pb_slide_description {
  grid-column: 1 / 2 !important;
  grid-row: 2 / 3 !important;
  width: auto !important;
  float: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.gallerySlider.howItWorks h3::before {
  top: -8rem;
  left: 0;
}

.gallerySlider.howItWorks .et_pb_slide_0,
.gallerySlider.howItWorks .et_pb_slide_1,
.gallerySlider.howItWorks .et_pb_slide_2,
.gallerySlider.howItWorks .et_pb_slide_3,
.gallerySlider.howItWorks .et_pb_slide_4,
.gallerySlider.howItWorks .et_pb_slide_5,
.gallerySlider.howItWorks .et_pb_slide_6 {
  padding: 0 5rem 0 0;
}




.quoteGrid {
  display: grid;
  grid-template-columns: 1fr 10rem 1fr;
  row-gap: 1rem;
  align-items: start;
}

.quoteIcon {
  grid-column: 2 / 3;
  grid-row: 1 / 2;
  width: 10rem !important;
  margin: 0 !important;
}

.quoteText {
  grid-column: 1 / -1;
  grid-row: 2 / 3;
}

.quoteText h2 {
  text-align: center;
}

.quote {
  text-align: center;
}

.quotee {
  text-align: center;
}

.searchPanel {
  grid-template-columns: 100%;
  row-gap: 1.5rem;
}

.momentumSearchPanel {
  grid-template-columns: 100%;
  row-gap: 1.5rem;
}

.momentumGalleryButtons .et_pb_code_inner {
  display: grid;
  grid-template-columns: 100%;
  column-gap: 5rem;
}



}


/*--------------------------------------------- [ 800px WIDE ] -----------------------------------------------------*/

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

.momentumSpecPanelGrid {
  grid-template-columns: 100%;
  grid-template-rows: auto;
  column-gap: 6rem;
  row-gap: 2rem;
}

.floorArea {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
  padding: 0 !important;
  margin: 0 !important;
}

.momentumSpecText {
  grid-column: 1 / -1;
  grid-row: 3 / 4;
  margin: 0 0 1rem 0 !important;
}

.momentumSpecPanelGrid .et_pb_button_module_wrapper {
  grid-column: 1 / 2;
  grid-row: 4 / 5;
  margin: 0;
}

.momentumSpecIcons {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
}

.momentumSpecPanelGrid::before {
  display: none;
}

.momentumSpecBtn {
  margin: 0 !important;
}


.startTodayGrid {
  grid-template-columns: 100%;
}

.startTodayImage .et_pb_image_wrap img {
  content: url('/wp-content/uploads/2026/10/show-home-image-mobile.jpg');
}

.startTodayText {
  padding: 2rem 3rem !important;
}

.startTodayText button {
  margin-top: 1rem;
}

.historyGrid {
  grid-template-columns: 23% 23% 1fr;
  grid-template-rows: auto auto;
  gap: 2rem;
}

.historyImage {
  height: 100%;
  width: 100%;
}

.historyImage.one {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
}

.historyImage.two {
  grid-column: 2 / 3;
  grid-row: 1 / 2;
}

.historyImage.three {
  grid-column: 3 / 4;
  grid-row: 1 / 2;
}

.historyText {
  grid-column: 1 / -1;
  grid-row: 2 / 3;
}

.historyText h2 {
  color: #FFF;
}






}


/*--------------------------------------------- [ 780px WIDE ] -----------------------------------------------------*/

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


.chooseBlurb {
  padding: 1rem 2rem 1rem 1rem;
}

.chooseBlurb .et_pb_blurb_content {
  column-gap: 2rem !important;
}

.sliderText {
  margin: 0 0 2rem 0 !important;
}

.gallerySlider.homepage {
  margin: 0 !important;
  padding: 0 0 1rem 0;
}

.gallerySlider.homepage .et_pb_gallery_image {
  width: calc(100% - 9rem);
  margin-inline: 4.5rem;
  padding: 0;
}

.tg-thumbs .et_pb_gallery_items {
  column-gap: 1rem;
  grid-template-rows: auto;
}

.tg-main {
  margin: 3rem 0 1rem 0 !important;
}

.thistleReadyGrid {
  grid-template-columns: 100%;
  gap: 2rem;
}

.thistleReadyImage {
  height: auto;
}

.locationGrid {
  grid-template-columns: 100%;
  grid-template-rows: auto 1fr;
  column-gap: 3rem;
}

.locationText {
  grid-column: 1 / 2;
  grid-row: 1 / 2;
}

.openingHoursText {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
}

.locationMap {
  grid-column: 1 / 2;
  grid-row: 3 / 4;
}

}



/*--------------------------------------------- [ 680px WIDE ] -----------------------------------------------------*/

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

.headerGrid {
  grid-template-columns: 5% 1fr 15rem;
  grid-template-rows: 15rem;
}

.headerLogo {
  padding: 0 5% 0 0 !important;
}

ul#mobile_menu1.et_mobile_menu {
  top: 15rem;
  left: -10rem;
}

.contentRow .whyChoose {
  padding: 3rem 5% !important;
  margin: 2rem 0 0 0 !important;
}

.thinkingGrid {
  grid-template-columns: 100%;
  row-gap: 2rem;
  align-items: center;
}

.thinkingImage {
  border-radius: 3px;
  overflow: hidden;
  margin: 0 !important;
}

.thinkingText p:last-of-type {
  padding: 0 !important;
}

.welcomeHomepageGrid {
  grid-template-columns: 100%;
}



}



/*--------------------------------------------- [ 650px WIDE ] -----------------------------------------------------*/

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

.footerLogoGrid {
  display: grid;
  grid-template-columns: 
  clamp(3.2rem, 10vw, 6.3rem)
  clamp(5.4rem, 17vw, 10.8rem)
  clamp(4.3rem, 14vw, 8.5rem)
  clamp(12.1rem, 37vw, 24.2rem);
  grid-gap: 4.5% !important;
}

.footerLogos {
  min-width: 100% !important;
}

.logoOne {
  height: auto !important;
  width: clamp(3.2rem, 10vw, 6.3rem) !important;
}

.logoTwo {
  height: auto !important;
  width: clamp(5.4rem, 17vw, 10.8rem) !important;
}

.logoThree {
  height: auto !important;
  width: clamp(4.3rem, 14vw, 8.5rem) !important;
}

.logoFour {
  height: auto !important;
  width: clamp(12.1rem, 37vw, 24.2rem) !important;
}


/* ------------- [ GALLERY SLIDER ] ------------- */

.gallerySlider .et_pb_gallery_item.et-pb-moved-slide {
  display: block !important;
}

.gallerySlider {
  margin: 0 0 3rem 0 !important;
}

.gallerySlider .et_pb_gallery_image {
  width: calc(100% - 6rem) !important;
  margin-inline: 3rem !important;
}

.et-pb-arrow-prev::before {
  height: 4rem;
  width: 2rem;
  top: 0;
  left: 0;
}

.et-pb-arrow-next::before {
  height: 4rem;
  width: 2rem;
  top: 0;
  right: 0;
}

.et-pb-controllers a {
  width: 1.2rem;
  height: 1.2rem;
}

/* ------------- [ HOW IT WORKS SLIDER ] ------------- */

.gallerySlider.howItWorks .et_pb_slider_container_inner {
  grid-template-rows: 12rem 33rem !important;
}

.gallerySlider.howItWorks .et_pb_slide_image {
  width: 12rem !important;
}

.gallerySlider.howItWorks h3::before {
  top: -6.5rem;
  left: 0;
  width: 5.5rem;
  height: 5.5rem;
  font-size: 4rem;
  line-height: 5.2rem;
}

.houseBlogContent .et_pb_blog_posts {
  grid-template-columns: repeat(1, 1fr);
  gap: 2rem !important;
}


.portfolioGrid .et_pb_posts {
  display: grid;
  grid-template-columns: 100%;
  gap: 3rem;
}

.meetTeamGrid {
  grid-template-columns: 100%;
}

.appreciateGrid {
  display: grid;
  grid-template-columns: 100%;
  column-gap: 5%;
}


.chooseBlurb .et_pb_blurb_content {
  grid-template-columns: 10rem 1fr;
  column-gap: 2rem !important;
}

.chooseBlurb .et_pb_main_blurb_image {
  width: 10rem;
  height: 10rem;
}

}