:root {
  /*colors — match live www.lctimberframes.com theme */
  --color-white: #FFFFFF;
  --color-black: #000000;
  --color-dark-green: #2C3E2F;
  --color-dark-green-2: #273D2D;
  --color-ice-blue: #CDE3F2;
  --color-light-cream: #DEDBCE;
  --color-light-grey: #F7F7F7;
  --color-dark-brown: #4F423A;

  /* Brand-book aliases (same hexes; optional naming) */
  --color-franklin-green: var(--color-dark-green);
  --color-slab-blue: var(--color-ice-blue);
  --color-pebble-grey: var(--color-light-cream);
  --color-forest-brown: var(--color-dark-brown);
  --color-ivory-white: var(--color-light-grey);

  /* Fonts — match live site (Typekit neue-haas + local Granjon) */
  --primary-font: 'GranjonLTStd';
  --title-fonts: "neue-haas-grotesk-display";
  --font-body: var(--primary-font);
  --font-headline: var(--title-fonts);
  --font-button: var(--title-fonts);
}

html {
  scroll-behavior: smooth;
}
html, body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body {
    font-family: var(--primary-font);
	font-size: 20px;
    font-weight: 400;
	line-height: 1.15;
	color: var(--color-dark-green);
	padding: 0;
	margin: 0;
	text-size-adjust: none ;
	-webkit-text-size-adjust: none;
    min-height: 100vh;
    background-color: var(--color-light-grey);
}
*{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

button:focus { outline: none; }
a {
	color: var(--color-dark-green-2);
	text-decoration:none;
	outline:none;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
a:hover, a:focus {
	outline: none;
	text-decoration:none;
}
h1,h2,h3,h4,h5,h6 {
    font-family: var(--title-fonts);
	font-weight: 600;
	margin-top: 0px;
}
p {
	margin-top: 0;
	margin-bottom:25px;
}
p:last-child {
    margin-bottom:0px;
}
img {
	max-width: 100%;
    width: auto;
	height: auto;
    vertical-align: middle;
}
strong {
    font-weight: 700;
}
.d-flex {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
}
.d-block {
    display: block !important;
}
.text-center {
    text-align: center !important;
}
.text-white {
    color: #fff !important;
}
.mb-0 {
    margin-bottom: 0 !important;
}
dl,
ol,
ul {
 margin-top:0;
 margin-bottom:1rem
}
ol ol,
ol ul,
ul ol,
ul ul {
 margin-bottom:0
}
h1 {
 font-size:2.5rem
}
h2 {
 font-size:2rem
}
h3 {
 font-size:1.75rem
}
h4 {
 font-size:1.5rem
}
h5 {
 font-size:1.25rem
}
h6 {
 font-size:1rem
}
.container, .container-large {
    padding-inline:40px;
    margin-inline: auto;
    width: 100%;
}
.container {
 max-width:1320px;
}
.container-large {
    max-width: 1630px;
}

/*---Global CSS Start---*/
.bg-dark-green {
    background-color: var(--color-dark-green);
}
.bg-light-cream {
    background-color: var(--color-light-cream);
}
.bg-ice-blue {
    background-color: var(--color-ice-blue);
}
.bg-dark-brown {
    background-color: var(--color-dark-brown);
}
.fs-122 {
    font-size: 122px;
    font-weight: 400;
    color: var(--color-white);
}
.fs-96 {
    font-size: 96px;
}
.fs-48 {
    font-size: 48px;
}
.fs-28 {
    font-size: 28px;
    line-height: 1.1;
}
.header-space {
    padding-top: 150px;
}
.btn-underline a {
    font-size: 36px;
    color: var(--color-white);
    font-family: var(--title-fonts);
    text-decoration: underline;
    text-underline-offset: 5px;
}
.btn-underline a:hover {
    text-decoration: none;
}
.cms-banner {
    position: relative;
    height: 100%;
    z-index: 1;
    background-image: var(--hero-bg-image);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}
.cms-banner::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.06);
    z-index: -1;
}

/*Global Slider With Progressbar*/
.btn-outline a {
    font-size: 36px;
    color: var(--color-white);
    border: 4px solid var(--color-dark-green);
	background-color:var(--color-dark-green);
    padding: 15px 25px;
    font-family: var(--title-fonts);
    font-weight: 600;
    display: inline-block;
}
.btn-outline a:hover {
    background: transparent;
	color:var(--color-dark-green);
}
.global-slide-img img {
    aspect-ratio: 7/4.3;
    object-fit: cover;
}
.global-slider .swiper-wrapper {
    touch-action: none;
    pointer-events: none;
}
.global-slider-arrow .swiper-button {
    position: unset;
    width: auto;
    height: auto;
    margin: 0;
}
.global-slider-arrow .swiper-button::after {
    display: none;
}
.global-slider-arrow {
    display: flex;
    justify-content: flex-end;
    column-gap: 20px;
    margin-top: 15px;
    padding-right: 10px;
}
.global-progressbar .swiper-pagination.swiper-pagination-progressbar {
    height: 2px;
    position: unset;
}
.global-progressbar .swiper-pagination-progressbar-fill {
    background: var(--color-black) !important;
}
.global-progressbar {
    padding-block: 25px;
}

/*---Global CSS End---*/

/*** 
====================================================================
  Header start 
====================================================================
***/
.home header.cms-header .navbar img {
    position: absolute;
    inset-inline: 0;
    margin: 0 auto;
    max-width: 500px;
}
.home .mobile-menu li a:hover, .page-template-inquire .mobile-menu li a:hover,
.home .mobile-menu li.current_page_item > a, .page-template-inquire .mobile-menu li.current_page_item > a,
.home .mobile-menu li a:focus, .page-template-inquire .mobile-menu li a:focus{
    color: #2D3C2E;
}
.inner-header__logo {
    max-height: 70px;
}
header.cms-header {
    position: absolute;
    left: 0;
    padding-top: 34px;
    width: 100%;
    z-index: 3;
    transition: all 0.3s ease-in;
}
header.cms-header .navbar {
    display: flex;
    justify-content: space-between;
}
.off-canvas-inner {
    font-family: var(--title-fonts);
    text-transform: uppercase;
    text-align: right;
}
.off-canvas-inner .toggle-btn {
    cursor: pointer;
	position: relative;
    min-height: 29px;
	min-width: 105px;
}
.off-canvas-inner .toggle-btn .toggle-btn-text,
.off-canvas-inner .toggle-btn .toggle-btn-close-text {
  transition: 0.3s;width: 100%;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
}
.off-canvas-inner .toggle-btn .toggle-btn-close-text,
.off-canvas-inner .toggle-btn.active .toggle-btn-text { opacity:0; visibility:hidden; }
.off-canvas-inner .toggle-btn.active .toggle-btn-close-text { opacity:1; visibility:visible; }

.off-canvas-inner .toggle-btn, .mobile-menu li a {
    color: var(--color-black);
    font-size: 24px;
    line-height: 1.2;
    font-weight: 300;
}
.home .off-canvas-inner .toggle-btn, .home .mobile-menu li a, 
.page-template-inquire .off-canvas-inner .toggle-btn, .page-template-inquire .mobile-menu li a {
    color: var(--color-white);
}
.mobile-menu  {
	list-style: none;
	margin: 0;
	padding: 0;
    max-height: 0;
    overflow: hidden;
    transition: 0.3s;
}
.mobile-menu li a:hover,
.mobile-menu li.current_page_item > a, 
.mobile-menu li a:focus {
    color: #CDE3F2;
}

/*** 
====================================================================
banner css
====================================================================
***/
.well {
    height: 100vh;
    width: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    scroll-snap-type: y mandatory;
    scroll-behavior: smooth;
	overscroll-behavior: contain;
/*     -webkit-overflow-scrolling: touch; */
	-webkit-overflow-scrolling: auto;
}
.panelscroll {
    height: 100vh;
    width: 100%;
    display: flex;
    color: var(--color-white);
    scroll-snap-align: start;
    transition: transform .45s ease, 
}
.cms-banner:not(.hero-banner-slide), .home .half-block-section {
    position: relative;
    z-index: 99;
}

/*---Hero Section Start---*/
.hero-banner-slide {
    align-items: center;
    padding-block: 220px 0;
	background: url(/wp-content/uploads/2026/01/video-bg.webp);
    background-size: cover;
    background-position: center;
}
.hero-banner-wrapper h1,
.hero-banner-wrapper .hero-brand-word {
    font-size: 124px;
    font-weight: 400;
    color: var(--color-white);
    margin-bottom: 20px;
}
.hero-banner-wrapper .hero-seo-title {
  /* Visually hidden for crawlers — see .hero-seo-title in site.css */
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.hero-banner-left, .hero-banner-right {
    width: 50%;
}
.hero-banner-left {
    padding-right: 28px;
}
.hero-banner-right {
    margin-left: auto;
    text-align: right;
    padding-left: 28px;
    padding-top: 0;
}
/*---Hero Section End---*/

/*---Home Slide Start---*/
.slide-block-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    height: 100%;
    padding-block: 36px;
}
.slide-block-item {
    text-align: center;
}
.slide-text-block {
    align-self: center;
}
.slide-title-block {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.slide-title-block h2 {
    text-transform: uppercase;
    margin-bottom: 0;
}
/*---Home Slide End---*/

/*---Half Block Section Start---*/
.half-block-wrapper {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    height: 100vh;
}
.half-block-item {
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-inline: 30px;
}
.home .half-block-img {
    position: relative;
}
.home .half-block-img::before {
    content: "";
    position: absolute;
    inset: 0;
    height: 100%;
    width: 100%;
    background: #0000003D;
}
.half-block-item a {
    color: var(--color-light-grey);
    text-transform: uppercase;
    font-family: var(--title-fonts);
    text-align: center;
	transition: inherit;
}
.half-block-item a:hover {
	font-weight:600;
	color: var(--color-ice-blue);
}
.home .half-block-img a {
    position: relative;
}
.half-block-item.bg-ice-blue a:hover {
    color: var(--color-dark-green);
}
/*---Half Block Section End---*/

/*---Portfolio Page Start---*/
.portfolio-tabs {
    display: flex;
    justify-content: center;
    gap: 50px;
    font-family: var(--title-fonts);
    text-transform: uppercase;
    padding-bottom: 40px;
    color: var(--color-black);
}
.portfolio-tabs a {
    color: var(--color-black);
}
.portfolio-grids {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}
.portfolio-grid-item {
    position: relative;
}
.portfolio-hover {
    position: absolute;
    opacity: 0;
    inset: 0;
    transition: 0.5s;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin: 15px;
    border: 1px solid var(--color-black);
    text-transform: uppercase;
    font-family: var(--title-fonts);
    gap: 10px;
    color: var(--color-black);
    padding: 20px;
}
.portfolio-grid-item:hover::before, .portfolio-grid-item:hover .portfolio-hover {
    opacity: 1;
}
.portfolio-grid-item::before {
    content: "";
    position: absolute;
    inset: 0;
    height: 100%;
    width: 100%;
    background: rgba(255,255,255,0.7);
    transition: 0.5s;
    opacity: 0;
}
.portfolio-grid-item img {
    aspect-ratio: 1/0.6;
    object-fit: cover;
    transition: 0.5s;
}
.portfolio-hover .text-two {
    font-size: 16px;
}
.portfolio-bottom-description {
    width: 50%;
    color: var(--color-black);
    padding-top: 40px;
    margin-left: auto;
    text-align: right;
}
.portfolio-slide-img img {
    aspect-ratio: 1/1.2;
    object-fit: cover;
}
.portfolio-slide-wrapper {
    padding-block: 175px;
}
/**/
.portfolio-header {
    color: var(--color-black);
    padding-bottom: 40px;
    font-family: var(--title-fonts);
    font-weight: normal;
    margin-bottom: 0;
}
.portfolio-header span {
    display: block;
}
.portfolio-description-center {
    max-width: 875px;
    margin-inline: auto;
    padding-block: 125px;
    color: var(--color-black);
}
.portfolio-details-page .portfolio-grid-item::before {
    display: none;
}
.portfolio-details-page .portfolio-grid-item {
    overflow: hidden;
}
.portfolio-details-page .portfolio-grid-item:hover img {
    transform: scale(1.1);
}
/*---Portfolio Page End---*/

/*---Enquire Page Start----*/
.inquire-slider-wrapper .swiper-slide {
    display: flex;
    align-items: center;
}
.inquire-slider-wrapper {
    overflow: hidden;
    padding-inline: 85px;
    text-align: center;
}
.inquire-slide-title {
    font-family: var(--title-fonts);
    color: var(--color-dark-green-2);
    font-weight: 400;
    margin-bottom: 0;
}
.inquire-slide-description {
    margin-block: 50px;
    font-size: 18px;
}
.inquire-slide .scroll {
    text-transform: uppercase;
    font-family: var(--title-fonts);
    font-size: 12px;
    color: var(--color-black);
}
.inquire-slide {
    max-width: 600px;
    margin-inline: auto;
}
.inquire-btn a {
    text-transform: inherit;
    border: 4px solid var(--color-dark-green-2);
    color: var(--color-dark-green-2);
    padding: 6px 24px;
    font-weight: 600;
    display: inline-block;
    font-size: 24px;
}
.inquire-btn a:hover {
    color: var(--color-white);
    background-color: var(--color-dark-green-2);
}
/*---Enquire Page End----*/

/*-----About Page Start------*/
.team-section-description {
    max-width: 660px;
    margin-inline: auto;
    padding-block: 50px 100px;
}
.team-members-wrapper {
    display: flex;
    flex-direction: column;
    gap: 40px;
    padding-bottom: 100px;
}
.team-members-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 25px 95px;
}
.team-item {
    grid-row: 1 / span 1;
}
.members-bio {
    grid-column: 1 / span 3;
    grid-row: 2;
    height: 0;
    visibility: hidden;
    transition: 0.2s;
    opacity: 0;
}
.members-bio.open {
    height: auto;
    visibility: visible;
    padding-block: 70px;
    border-block: 1px solid var(--color-dark-green);
    opacity: 1;
}
.members-bio-inner {
    display: flex;
}
.members-bio-left {
    width: 30%;
    padding-right: 30px;
}
.members-bio-right {
    width: 70%;
    position: relative;
}
.member-name {
    margin-top: 12px;
    cursor: pointer;
}
.designation, .members-bio-designetion, .members-bio-title {
    font-size: 16px;
}
.member-name, .members-bio-name, .members-bio-title {
    font-family: var(--title-fonts);
    margin-bottom: 12px;
}
.members-bio-title {
    margin-bottom: 70px;
    text-transform: uppercase;
}
.members-bio-title {
    margin-bottom: 70px;
    text-transform: uppercase;
}
.close-bio img {
    cursor: pointer;
    width: 20px;
    position: absolute;
    right: 0;
}
.team-profile {
    overflow: hidden;
	cursor:pointer;
}
.team-profile img {
    transition: 0.5s;
}
.team-item:hover img {
    transform: scale(1.1);
}
.brand-banner {
    aspect-ratio: 21.5 / 9;
    display: flex;
    align-items: center;
    justify-content: center;
    background-size: cover;
	position: relative;
	max-width:100%;
}
.brand-banner-inner h2 {
    color: var(--color-light-cream);
    margin-bottom: 0;
}
.paragraph-blocks {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 30px;
    padding-block: 80px;
}
.title-slider-wrapper {
    display: flex;
}
.half-title-block, .half-slider-block {
    width: 50%;
}
.half-title-block, .content-above-slider {
    max-width: 815px;
}
.half-title-block {
    margin-left: auto;
    padding-left: 40px;
}
.half-title-block h2 {
    color: var(--color-dark-green-2);
}
.content-above-slider {
    padding-right: 40px;
}
.content-above-slider h3 {
    margin-bottom: 70px;
    color: var(--color-dark-green-2);
    font-weight: 400;
}
.team-members-wrapper.mobile { display:none; }
/*-----About Page End------*/

/*-----Faq Page Start------*/
.concept-bid-wrapper {
    display: flex;
    align-items: center;
    position: relative;
}
.concept-bid-content {
    width: 50%;
    padding-right: 130px;
    padding-bottom: 70px;
}
.concept-bid-content h1 {
    font-size: 64px;
    text-transform: uppercase;
    margin-bottom: 15px;
    font-weight: 400;
}
.concept-bid-slider .swiper {
    position: unset;
}
.concept-bid-slider .global-progressbar {
    position: absolute;
    width: 100%;
    left: 0;
    padding: 0;
}
.concept-bid-slider .global-slider-arrow {
    margin-block: 30px;
    padding-right: 0;
}
.slider-description-blocks {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 20px;
    padding-block: 100px;
}
.slider-description-heading {
    font-family: var(--title-fonts);
    text-transform: uppercase;
    margin-bottom: 15px;
    cursor: pointer;
}
.slider-description-heading.active {
    font-weight: 600;
}
.concept-bid-slider .global-slide-img img {
    aspect-ratio: 7/3.5;
}
.concept-grid-wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 50px;
}
.concept-grid-item img {
    aspect-ratio: 3/1.5;
    object-fit: cover;
}
.behind-beams-para {
    padding-bottom: 100px;
}
.behind-beams-para h2 {
    text-transform: uppercase;
    margin-block: 50px;
    line-height: 1;
    font-weight: 400;
}
.beams-para-blocks {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 50px;
}

/*faq*/
.faq-section {
    padding-bottom: 150px;
}
.faq-title-banner {
    background-size: cover;
    margin-bottom: 50px;
}
.faq-title-banner h2 {
    max-width: 600px;
    text-transform: uppercase;
    color: #F7F7F7;
    text-align: right;
    line-height: 1.14;
    font-weight: 600;
    margin: 0 0 0 auto;
    padding-block: 30px;
}
.faq-title h3 {
    font-size: 40px;
    text-transform: uppercase;
    margin-bottom: 0;
    cursor: pointer;
    transition: 0.3s;
    font-weight: 400;
}
.faq-item.active .faq-title h3 {
    margin-bottom: 30px;
}
.faq-description {
    transition: 0.3s;
    max-height: 0;
    overflow: hidden;
}
.faq-item:not(:last-child) {
    margin-bottom: 40px;
}
.contact-title {
    font-family: var(--title-fonts);
}
.contact-info a {
    margin-left: 50px;
    margin-top: 10px;
    display: inline-block;
}
.contact-info.phone a {
    text-decoration: underline;
}
.opening-hours {
    padding-block: 80px;
}
.contact-info-wrapper .contact-info:first-child {
    margin-bottom: 30px;
}

/*-----Faq Page End------*/


  /*-----Inquire Page Start------*/
  .inquire-page-wrapper {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100vh;
      overflow: hidden;
  }
  .inquire-page-container {
      position: relative;
      width: 100%;
      height: 100vh;
  }
  .inquire-step {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;   /* 🔑 IMPORTANT */
    transition: opacity 0.5s ease;
  }
  
  .inquire-step.active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;   /* 🔑 IMPORTANT */
    z-index: 10;
  }
  
  .inquire-split-layout {
      display: grid;
      grid-template-columns: 1fr 1fr;
      height: 100vh;
      width: 100%;
  }
  .inquire-left-panel {
      background-color: var(--color-light-cream);
      padding: 80px 60px;
      display: flex;
      flex-direction: column;
      overflow-y: auto;
  }
  .inquire-right-panel {
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      position: relative;
      transition: background-image 0.5s ease;
  }
  .inquire-right-panel::before {
      content: "";
      position: absolute;
      inset: 0;
      background: rgba(0, 0, 0, 0.2);
  }
  .inquire-header {
      display: flex;
      align-items: center;
      gap: 20px;
      margin-bottom: 40px;
  }
  .inquire-page-label {
      font-family: var(--title-fonts);
      font-size: 24px;
      font-weight: 500;
      color: var(--color-black);
      text-transform: uppercase;
      letter-spacing: 2px;
      margin: 0;
  }
  .inquire-logo {
      margin-bottom: 0;
  }
  .inquire-logo-circle {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 60px;
      height: 60px;
      border: 2px solid var(--color-dark-green);
      border-radius: 50%;
      font-family: var(--title-fonts);
      font-size: 16px;
      font-weight: 600;
      color: var(--color-dark-green);
      text-transform: uppercase;
      letter-spacing: 1px;
  }
  .inquire-content {
      flex: 1;
      display: flex;
      flex-direction: column;
      justify-content: center;
      max-width: 550px;
      margin: 0 auto;
      width: 100%;
	  text-align: center;
  }
  .inquire-main-title {
      font-family: var(--title-fonts);
      font-size: 28px;
      font-weight: 500;
      color: var(--color-dark-green);
      margin-bottom: 30px;
      line-height: 1.2;
      text-transform: none;
  }
  .inquire-description {
      font-size: 18px;
      line-height: 1.6;
      color: var(--color-dark-green);
      margin-bottom: 40px;
  }
  .inquire-question {
      font-family: var(--title-fonts);
      font-size: 36px;
      font-weight: 500;
      color: var(--color-dark-green);
      margin-bottom: 40px;
      line-height: 1.3;
  }
  .inquire-radio-group {
      margin-bottom: 50px;
  }
  .inquire-radio-label {
      display: flex;
      align-items: flex-start;
      margin-bottom: 25px;
      cursor: pointer;
      font-size: 20px;
      line-height: 1.5;
      color: var(--color-dark-green);
  }
  .inquire-radio {
      position: absolute;
      opacity: 0;
      width: 0;
      height: 0;
  }
  .radio-custom {
      display: inline-block;
      width: 24px;
      height: 24px;
      border: 2px solid var(--color-dark-green);
      border-radius: 50%;
      margin-right: 15px;
      margin-top: 2px;
      flex-shrink: 0;
      position: relative;
      transition: all 0.3s ease;
  }
  .inquire-radio:checked + .radio-custom {
      border-color: var(--color-dark-green);
  }
  .inquire-radio:checked + .radio-custom::after {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 12px;
      height: 12px;
      background-color: var(--color-dark-green);
      border-radius: 50%;
  }
  .radio-text {
      flex: 1;
  }
  .inquire-btn {
      font-family: var(--title-fonts);
      font-size: 24px;
      font-weight: 500;
      color: var(--color-dark-green);
      background: transparent;
      border: 2px solid var(--color-dark-green);
      padding: 15px 40px;
      cursor: pointer;
      text-transform: uppercase;
      letter-spacing: 1px;
      transition: all 0.3s ease;
      align-self: flex-start;
  }
  .inquire-btn:hover {
      background-color: var(--color-dark-green);
      color: var(--color-white);
  }
  .inquire-btn:focus {
      outline: 2px solid var(--color-dark-green);
      outline-offset: 2px;
  }
  .inquire-form-title {
      font-family: var(--title-fonts);
      font-size: 36px;
      font-weight: 500;
      color: var(--color-dark-green);
      margin-bottom: 20px;
      line-height: 1.3;
  }
  .inquire-privacy-text {
      font-size: 14px;
      line-height: 1.5;
      color: var(--color-dark-green);
      margin-bottom: 40px;
      opacity: 0.8;
  }
  .inquire-contact-form {
      display: flex;
      flex-direction: column;
      gap: 30px;
      margin-bottom: 30px;
  }
  .inquire-form-group {
      display: flex;
      align-items: center;
      gap: 20px;
  }
  .inquire-form-label {
      font-size: 18px;
      color: var(--color-dark-green);
      min-width: 150px;
      text-align: right;
      flex-shrink: 0;
  }
  .inquire-form-label .required {
      color: #d32f2f;
      margin-left: 3px;
  }
  .inquire-form-input {
      flex: 1;
      padding: 12px 15px;
      font-size: 18px;
      font-family: var(--primary-font);
      color: var(--color-dark-green);
      background-color: transparent;
      border: none;
      border-bottom: 1px solid var(--color-dark-green);
      transition: border-color 0.3s ease;
  }
  .inquire-form-input:focus {
      outline: none;
      border-bottom-color: var(--color-dark-green);
      border-bottom-width: 2px;
  }
  .inquire-form-input::placeholder {
      color: rgba(44, 62, 47, 0.5);
  }
  .inquire-confirmation-title {
      font-family: var(--title-fonts);
      font-size: 28px;
      font-weight: 400;
      color: var(--color-dark-green);
      margin-bottom: 30px;
      line-height: 1.2;
  }
  .inquire-confirmation-text {
      font-size: 20px;
      line-height: 1.6;
      color: var(--color-dark-green);
      margin-bottom: 40px;
  }
  .inquire-link {
      color: var(--color-dark-green);
      text-decoration: underline;
      transition: opacity 0.3s ease;
  }
  .inquire-link:hover {
      opacity: 0.7;
  }
  .inquire-ready-text {
      font-family: var(--title-fonts);
      font-size: 16px;
      font-weight: 400;
      color: var(--color-dark-green);
      margin-bottom: 15px;
      margin-top: 20px;
  }
  .inquire-contact-text {
      font-size: 18px;
      color: var(--color-dark-green);
      margin-bottom: 30px;
  }
  .inquire-contact-info {
      display: flex;
      flex-direction: column;
      gap: 15px;
  }
  .inquire-contact-item {
      font-size: 18px;
      color: var(--color-dark-green);
      margin: 0;
  }
  .inquire-contact-label {
      font-weight: 600;
      margin-right: 10px;
  }
  .inquire-contact-link {
      color: var(--color-dark-green);
      text-decoration: underline;
      transition: opacity 0.3s ease;
  }
  .inquire-contact-link:hover {
      opacity: 0.7;
  }
.inquire-left-panel .inquire-btn-primary {
    background: transparent;
    border: 0;
    display: inline-block;
    width: max-content;
    margin-inline: auto;
    cursor: pointer;
    padding: 0;
    font-size: 14px;
    outline: none;
    color: #000;
}
.inquire-left-panel .inquire-content p > a {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
}
.inquire-left-panel .inquire-content .inquire-contact-item a {
	text-decoration:none;
}
	
  @media (max-width: 991px) {
      .inquire-split-layout {
          grid-template-columns: 1fr;
      }
      .inquire-right-panel {
          display: none;
      }
      .inquire-left-panel {
          padding: 60px 40px;
      }
      .inquire-main-title {
          font-size: 48px;
      }
      .inquire-question,
      .inquire-form-title {
          font-size: 28px;
      }
      .inquire-form-group {
          flex-direction: column;
          align-items: flex-start;
          gap: 10px;
      }
      .inquire-form-label {
          min-width: auto;
          text-align: left;
      }
      .inquire-form-input {
          width: 100%;
      }
  }
  
  /* Gravity Forms Styling for Inquire Page */

  .inquire-content .gform_wrapper {
      max-width: 100%;
      margin: 0;
  }
  .inquire-content .gform_wrapper .gform_body {
      width: 100%;
  }
  .inquire-content .gform_wrapper .gform_fields {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 10px 20px;
    flex-wrap: wrap;
}
.inquire-content .gform_wrapper .gform_fields .inquire_form--field-half {
    width: calc(50% - 10px);
}
  /* Radio button styling for Gravity Forms */
  .inquire-content .gform_wrapper .gfield_radio {
      display: flex;
      flex-direction: column;
      gap: 25px;
  }
  .inquire-content .gform_wrapper .gfield_radio .gchoice {
      margin: 0;
      padding: 0;
  }
  .inquire-content .gform_wrapper .gfield_radio label {
      display: flex;
      align-items: flex-start;
      cursor: pointer;
      font-size: 20px;
      line-height: 1.5;
      color: var(--color-dark-green);
      margin: 0;
  }
  .inquire-content .gform_wrapper .gfield_radio input[type="radio"] {
      position: absolute;
      opacity: 0;
      width: 0;
      height: 0;
  }
  .inquire-content .gform_wrapper .gfield_radio input[type="radio"] + label::before {
      content: "";
      display: inline-block;
      width: 12px;
      height: 12px;
      border: 1px solid var(--color-dark-green);
      border-radius: 50%;
      margin-right: 20px;
      margin-top: 8px;
      flex-shrink: 0;
      transition: all 0.3s ease;
  }
  .inquire-content .gform_wrapper .gfield_radio input[type="radio"]:checked + label::before {
      border-color: var(--color-dark-green);
      background-color: var(--color-dark-green);
  }
  /* Form field labels */
  .inquire-content .inquire_form--field .gfield_label {
    font-size: 18px;
    color: var(--color-dark-green);
    margin-bottom: 0;
    font-weight: normal;
    text-align: right;
    min-width: 150px;
    flex-shrink: 0;
    flex-direction: row !important;
    gap: 0 !important;
    justify-content: flex-end;
}
.inquire-content .inquire_form--field .gfield_label .gfield_required {
	color: var(--color-dark-green);
    font-size: 18px;
}
  /* Form field inputs */
.inquire-content .inquire_form--field {
    display: flex;
    align-items: center;
    gap: 0 20px;
    line-height: 1;
    flex-wrap: wrap;
}
.inquire-content .inquire_form--field .validation_message {
    padding-top: 0;
    text-align: left;
    padding-left: 20px;
}
.inquire-content .gform_previous_button {
    margin-right: 20px !important;
}
  .inquire-content .gform_wrapper .gfield .ginput_container {
      flex: 1;
  }
  .inquire-content .gform_wrapper input[type="text"],
  .inquire-content .gform_wrapper input[type="email"],
  .inquire-content .gform_wrapper input[type="tel"],
  .inquire-content .gform_wrapper input[type="url"],
  .inquire-content .gform_wrapper textarea,
  .inquire-content .gform_wrapper select {
    width: 100%;
    padding: 0;
    font-size: 18px;
    color: var(--color-dark-green);
    background-color: transparent;
    border: none;
    margin: 0;
    text-align: left;
    box-shadow: none;
  }
  .inquire-content .gform_wrapper input:focus,
  .inquire-content .gform_wrapper textarea:focus,
  .inquire-content .gform_wrapper select:focus {
      outline: none;
  }
  .inquire-content .gform_wrapper input::placeholder,
  .inquire-content .gform_wrapper textarea::placeholder {
      color: rgba(44, 62, 47, 0.5);
  }
  /* Form field wrapper - horizontal layout */
.inquire-content .gfield--type-radio legend.gfield_label.gform-field-label .gfield_required {
    display: none;
}
.inquire-content .gfield--type-radio .validation_message {
    text-align: center;
    width: 100% !important;
}
  .inquire-content .gform_wrapper .gfield.gfield--type-radio {
      display: flex;
      flex-direction: column;
  }
  /* Radio field label (question) */
  .inquire-content .gform_wrapper .gfield--type-radio .gfield_label, .inquire-step .inquire-content .gfield.gfield--type-html h2 {
      font-family: var(--title-fonts);
      font-size: 28px;
      font-weight: 500;
      color: var(--color-dark-green);
      margin-bottom: 20px;
      line-height: 1.3;
      text-align: center;
      min-width: auto;
	  width:auto;
  }
.inquire-content .gform_wrapper .ginput_container_radio {
    margin-inline: auto;
    margin-top: 15px;
}
  /* Form description/text */
  .inquire-content .gform_wrapper .gfield_description,
  .inquire-content .gform_wrapper .gform_description {
      font-size: 14px;
      line-height: 1.5;
      color: var(--color-dark-green);
      margin-bottom: 40px;
      opacity: 0.8;
  }
  /* Submit button */
  .inquire-content .gform_wrapper .gform_footer {
      margin: 0;
      padding: 0;
      margin-top: auto;
  }
  .inquire-content .gform_wrapper .gform_button,
  .inquire-content .gform_wrapper input[type="submit"],
  .inquire-content .gform_wrapper button[type="submit"] {
      font-family: var(--title-fonts) !important;
      font-size: 24px !important;
      font-weight: 500 !important;
      color: var(--color-dark-green) !important;
      background: transparent !important;
      border: 2px solid var(--color-dark-green) !important;
      padding: 15px 40px !important;
      cursor: pointer !important;
      text-transform: uppercase !important;
      letter-spacing: 1px !important;
      transition: all 0.3s ease !important;
      align-self: flex-start !important;
      margin: 0 !important;
  }
  .inquire-content .gform_wrapper .gform_button:hover,
  .inquire-content .gform_wrapper input[type="submit"]:hover,
  .inquire-content .gform_wrapper button[type="submit"]:hover {
      background-color: var(--color-dark-green) !important;
      color: var(--color-white) !important;
  }
  /* Next/Previous buttons for multistep */
  .inquire-content .gform_wrapper .gform_page_footer .gform_button,
  .inquire-content .gform_wrapper .gform_next_button,
  .inquire-content .gform_wrapper .gform_previous_button {
      font-family: var(--title-fonts) !important;
      font-size: 24px !important;
      font-weight: 500 !important;
      color: var(--color-dark-green) !important;
      background: transparent !important;
      border: 2px solid var(--color-dark-green) !important;
      padding: 15px 40px !important;
      cursor: pointer !important;
      text-transform: uppercase !important;
      letter-spacing: 1px !important;
      transition: all 0.3s ease !important;
  }
  .inquire-content .gform_wrapper .gform_button:hover,
  .inquire-content .gform_wrapper .gform_next_button:hover,
  .inquire-content .gform_wrapper .gform_previous_button:hover {
      background-color: var(--color-dark-green) !important;
      color: var(--color-white) !important;
  }
  /* Hide Gravity Forms default confirmation */
  .inquire-content .gform_confirmation_message {
      display: none !important;
  }
  /* Error messages */
  .inquire-content .gform_wrapper .gfield_error input,
  .inquire-content .gform_wrapper .gfield_error textarea,
  .inquire-content .gform_wrapper .gfield_error select {
      border-bottom-color: #d32f2f !important;
  }
  .inquire-content .gform_wrapper .validation_message {
      color: #d32f2f;
      font-size: 14px;
      margin-top: 5px;
	  padding-top:0 !important;
  }
  /* Page progress indicator (optional - hide if not needed) */
  .inquire-content .gform_wrapper .gf_progressbar_wrapper,
  .inquire-content .gform_wrapper .gf_page_steps {
      display: none;
  }
.inquire-content .gform_validation_errors {
    display: none !important;
}
.inquire-step .inquire-content .gform-page-footer input.button {
    border: 0 !important;
    padding: 0 !important;
    font-size: 14px !important;
	outline:none !important;
	box-shadow:none !important;
	background:none !important;
	color:#000 !important;
}
.inquire-step .inquire-content .gform-page-footer input.button:hover {
    background: none !important;
}
.inquire-step .inquire-content .gform-page-footer.gform_page_footer.left_label {
	display:block;
}
.inquire-step .inquire-content .gfield.gfield--type-html {
    margin-inline: 0 !important;
    margin-bottom: 20px;
}
  @media (max-width: 991px) {
      .inquire-content .gform_wrapper .gfield:not(.gfield--type-radio) {
          flex-direction: column;
          align-items: flex-start;
          gap: 10px;
      }
      .inquire-content .gform_wrapper .gfield_label {
          min-width: auto;
          text-align: left;
      }
      .inquire-content .gform_wrapper .gfield--type-radio .gfield_label {
          font-size: 28px;
      }
  }
  /*-----Inquire Page End------*/
  
  .gform_required_legend {
    display: none !important;
}

/*-----404 Page-----*/
.error-404.not-found {
    text-align: center;
    min-height: 100vh;
    display: flex;
    align-items: center;
}
.content-wrapper-404 {
    background: #FFF;
    padding: 60px;
}
.error-404 .btn-home a {
    background: #2C3E2F;
    color: #FFF;
    border: 2px solid #2C3E2F;
    padding: 10px 30px;
    display: inline-block;
}
.error-404 .btn-home a:hover {
    background: transparent;
    color: #2C3E2F;
}

/*Changes*/
.kits_description-wrapper {
    display: flex;
	align-items: center;
}
.kits_description-wrapper .btn-outline {
    padding-top: 40px;
}
.hero-banner-wrapper .btn-outline a {
    background:transparent;
    border-color: #FFF;
	color: #FFFFFF;
}
.hero-banner-wrapper .btn-outline a:hover {
    background: #FFF;
	color: #2D3C2E;
}
.half-block-section:not(.home .half-block-section) {
    height: 100vh;
}
