:root {
 --wv-primary:#afc73c;
 --wv-dark:#353b37;
 --wv-white:#ffffff;
 --wv-ink:#172019;
 --wv-muted:#6c746e;
 --wv-soft:#f4f6ef;
 --wv-line:rgba(53,59,55,.14);
 --wv-radius:28px;
 --wv-shadow:0 24px 70px rgba(27,34,29,.14);
}
* {
  box-sizing: border-box
}
html {
  scroll-behavior: smooth
}
body {
  font-family: "Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--wv-dark);
  background: #fff;
  overflow-x: hidden
}
h1, h2, h3, h4, h5, .display-font {
  font-family: "DM Sans", system-ui, sans-serif;
  letter-spacing: -.035em
}
a {
  text-decoration: none
}
img {
  max-width: 100%;
  display: block
}
::selection {
  background: var(--wv-primary);
  color: var(--wv-dark)
}
.container-xxl {
  max-width: 1440px
}
.text-primary-wv {
  color: var(--wv-primary)!important
}
.bg-dark-wv {
  background: var(--wv-dark)!important
}
.bg-soft {
  background: var(--wv-soft)!important
}
.section-pad {
  padding: 110px 0
}
.section-pad-sm {
  padding: 80px 0
}
.eyebrow {
  display: inline-flex;
  align-items: center;
gap:.65rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .16em;
font-size:.75rem;
  color: var(--wv-dark)
}
.eyebrow:before {
  content: "";
  width: 38px;
  height: 2px;
  background: var(--wv-primary)
}
.lead-copy {
  font-size: clamp(1.05rem, 1.5vw, 1.25rem);
  line-height: 1.8;
  color: var(--wv-muted)
}
.btn-wv {
  display: inline-flex;
  align-items: center;
  justify-content: center;
gap:.7rem;
  border-radius: 999px;
  padding: 14px 22px;
  font-weight: 800;
  transition: .3s ease;
  border: 1px solid transparent
}
.btn-wv-primary {
  background: var(--wv-primary);
  color: var(--wv-dark)
}
.btn-wv-primary:hover {
  transform: translateY(-2px);
  background: #bdd747;
  color: var(--wv-dark);
  box-shadow: 0 12px 30px rgba(175,199,60,.28)
}
.btn-wv-dark {
  background: var(--wv-dark);
  color: #fff
}
.btn-wv-dark:hover {
  background: #242a26;
  color: #fff;
  transform: translateY(-2px)
}
.btn-wv-outline {
  border-color: rgba(255,255,255,.45);
  color: #fff;
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(8px)
}
.btn-wv-outline:hover {
  background: #fff;
  color: var(--wv-dark)
}
/* Header */
.site-header {
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 1000;
  padding: 18px 0;
  transition: .35s ease
}
.site-header .nav-shell {
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(255,255,255,.9);
  box-shadow: 0 12px 40px rgba(30,40,32,.08);
  border-radius: 22px;
  padding: 10px 14px;
  backdrop-filter: blur(16px)
}
.site-header.scrolled {
  padding: 10px 0
}
.site-header.scrolled .nav-shell {
  box-shadow: 0 10px 35px rgba(20,30,24,.16)
}
.navbar-brand img {
  width: 210px;
  height: 72px;
  object-fit: contain
}
.navbar-nav .nav-link {
  font-weight: 800;
  color: var(--wv-dark);
padding:.75rem .86rem!important;
  position: relative;
font-size:1rem
}
.navbar-nav .nav-link:after {
  content: "";
  position: absolute;
left:.85rem;
right:.85rem;
bottom:.5rem;
  height: 2px;
  background: var(--wv-primary);
  transform: scaleX(0);
  transform-origin: left;
  transition: .3s
}
.navbar-nav .nav-link:hover:after, .navbar-nav .nav-link.active:after {
  transform: scaleX(1)
}
.navbar-toggler {
  border: 0;
  box-shadow: none!important
}
.menu-lines {
  width: 28px;
  height: 18px;
  position: relative;
  display: block
}
.menu-lines:before, .menu-lines:after, .menu-lines span {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background: var(--wv-dark);
  border-radius: 2px
}
.menu-lines:before {
  top: 0
}
.menu-lines span {
  top: 8px
}
.menu-lines:after {
  bottom: 0
}
/* Hero */
.hero {
  min-height: 100vh;
  position: relative;
  display: flex;
  align-items: end;
  padding: 160px 0 70px;
  background: #202722;
  overflow: hidden
}
.hero-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .76;
  transform: scale(1.05)
}
.hero:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(13,18,14,.08) 0%, rgba(13,18,14,.2) 30%, rgba(13,18,14,.84) 92%)
}
.hero .container-xxl {
  position: relative;
  z-index: 2
}
.hero h1 {
  font-size: clamp(3.4rem, 8.4vw, 8.4rem);
  line-height: .86;
  color: #fff;
  max-width: 1150px;
  margin: 18px 0 26px;
  font-weight: 800
}
.hero h1 .accent {
  color: var(--wv-primary)
}
.hero-kicker {
  color: #fff;
  display: flex;
  align-items: center;
  gap: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .16em;
font-size:.8rem
}
.hero-kicker:before {
  content: "";
  width: 48px;
  height: 2px;
  background: var(--wv-primary)
}
.hero-bottom {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 30px
}
.hero-copy {
  max-width: 660px;
  color: rgba(255,255,255,.82);
  font-size: 1.12rem;
  line-height: 1.75
}
.scroll-cue {
  color: #fff;
  display: flex;
  align-items: center;
  gap: 10px;
font-size:.8rem;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-weight: 800
}
.scroll-dot {
  width: 42px;
  height: 42px;
  border: 1px solid rgba(255,255,255,.45);
  border-radius: 50%;
  display: grid;
  place-items: center;
  animation: bob 1.7s infinite
}
@keyframes bob {
50% {
transform:translateY(7px)
}
}
/* Intro / stats */
.intro-title {
  font-size: clamp(2.5rem, 5vw, 5rem);
  line-height: 1.02;
  font-weight: 800
}
.stat-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px
}
.stat-card {
  border-top: 1px solid var(--wv-line);
  padding-top: 22px
}
.stat-card .num {
  font-size: 2.2rem;
  font-weight: 800;
  color: var(--wv-dark)
}
.stat-card .label {
  color: var(--wv-muted);
font-size:.92rem
}
/* Services */
.services-wrap {
  background: var(--wv-dark);
  color: #fff;
  border-radius: 38px;
  padding: 34px;
  overflow: hidden
}
.service-card {
  position: relative;
  min-height: 510px;
  border-radius: 26px;
  overflow: hidden;
  background: #111
}
.service-card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .8s cubic-bezier(.2, .8, .2, 1);
  opacity: .82
}
.service-card:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10,14,11,.03), rgba(10,14,11,.82))
}
.service-card-content {
  position: absolute;
  z-index: 2;
  inset: auto 26px 26px 26px
}
.service-index {
  position: absolute;
  z-index: 3;
  top: 24px;
  right: 24px;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(255,255,255,.9);
  color: var(--wv-dark);
  font-weight: 800
}
.service-card h3 {
  font-size: clamp(2rem, 3vw, 2.188rem);
  margin-bottom: 10px;
  color: #fff
}
.service-card p {
  color: rgba(255,255,255,.76);
  margin-bottom: 18px
}
.service-card:hover img {
  transform: scale(1.07)
}
.service-link {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #fff;
  font-weight: 800
}
.service-link i {
  color: var(--wv-primary)
}
/* Showcase */
.showcase-grid {
  display: grid;
grid-template-columns:1.2fr .8fr;
  gap: 22px
}
.showcase-main, .showcase-side {
  border-radius: 28px;
  overflow: hidden;
  position: relative
}
.showcase-main {
  min-height: 720px
}
.showcase-side {
  min-height: 350px
}
.showcase-main img, .showcase-side img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  inset: 0
}
.showcase-caption {
  position: absolute;
  z-index: 2;
  left: 26px;
  bottom: 24px;
  background: rgba(255,255,255,.92);
  padding: 16px 18px;
  border-radius: 16px;
  font-weight: 800;
  backdrop-filter: blur(10px)
}
/* Process */
.process-card {
  padding: 32px 0;
  border-top: 1px solid var(--wv-line);
  display: grid;
  grid-template-columns: 90px 1fr 1.1fr;
  gap: 26px;
  align-items: start
}
.process-no {
  font-size: 1.1rem;
  font-weight: 800;
  color: var(--wv-primary)
}
.process-card h4 {
  font-size: 2rem;
  margin: 0
}
.process-card p {
  color: var(--wv-muted);
  line-height: 1.75;
  margin: 0
}
/* CTA */
.cta {
  position: relative;
  border-radius: 34px;
  overflow: hidden;
  min-height: 520px;
  display: flex;
  align-items: center
}
.cta img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover
}
.cta:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(31,37,33,.92) 0%, rgba(31,37,33,.68) 55%, rgba(31,37,33,.18) 100%)
}
.cta-inner {
  position: relative;
  z-index: 2;
  padding: 60px;
  max-width: 760px;
  color: #fff
}
.cta h2 {
  font-size: clamp(2.6rem, 5vw, 5rem);
  line-height: 1
}
.cta p {
  color: rgba(255,255,255,.78);
  font-size: 1.1rem;
  line-height: 1.7
}
/* Inner pages */
.inner-hero {
  position: relative;
  min-height: 78vh;
  display: flex;
  align-items: end;
  padding: 180px 0 70px;
  background: #1d241f;
  overflow: hidden
}
.inner-hero img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .7
}
.inner-hero:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(15,20,16,.08), rgba(15,20,16,.83))
}
.inner-hero .container-xxl {
  position: relative;
  z-index: 2
}
.inner-hero h1 {
  font-size: clamp(3.5rem, 8vw, 7.5rem);
  color: #fff;
  line-height: .92;
  font-weight: 800;
  max-width: 1050px
}
.inner-hero p {
  max-width: 680px;
  color: rgba(255,255,255,.8);
  font-size: 1.15rem;
  line-height: 1.75
}
.content-prose h2 {
  font-size: clamp(2.3rem, 4.8vw, 4.3rem);
  line-height: 1.06;
  margin-bottom: 24px;
  font-weight: 600;
}
.content-prose h3 {
  font-size: 2rem;
  margin-top: 42px;
  margin-bottom: 16px;
  font-weight:600;
}
.content-prose p, .content-prose li {
  font-size: 1.05rem;
  line-height: 1.8;
  color: var(--wv-muted)
}
.content-prose ul {
  padding-left: 1.15rem
}
.feature-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-top: 26px
}
.feature-pill {
  display: flex;
  gap: 10px;
  align-items: center;
  padding: 14px 16px;
  border: 1px solid var(--wv-line);
  border-radius: 14px;
  font-weight: 700
}
.feature-pill i {
  color: var(--wv-primary)
}
.sticky-image {
  position: sticky;
  top: 130px;
  border-radius: 28px;
  overflow: hidden;
  min-height: 680px;
  box-shadow: var(--wv-shadow)
}
.sticky-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  inset: 0
}
.area-strip {
  display: flex;
  gap: 10px;
  flex-wrap: wrap
}
.area-chip {
  background: var(--wv-soft);
  padding: 10px 14px;
  border-radius: 999px;
  font-weight: 800
}
/* Contact */
.contact-card {
  background: var(--wv-dark);
  color: #fff;
  border-radius: 30px;
  padding: 38px
}
.contact-card a {
  color: #fff
}
.contact-card .contact-row {
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.12)
}
.form-control, .form-select {
  border-radius: 14px;
  border: 1px solid var(--wv-line);
  padding: 14px 16px
}
.form-control:focus, .form-select:focus {
  border-color: var(--wv-primary);
box-shadow:0 0 0 .2rem rgba(175,199,60,.15)
}
textarea.form-control {
  min-height: 160px
}
/* Footer */
footer {
  background: #232925;
  color: #fff;
  padding: 70px 0 30px;
  margin-top: 100px
}
.footer-logo {
  width: 240px;
  background: #fff;
  border-radius: 18px;
  padding: 10px
}
.footer-copy {
  color: rgba(255,255,255,.65);
  max-width: 520px
}
.footer-title {
  font-weight: 800;
  margin-bottom: 16px
}
.footer-link {
  display: block;
  color: rgba(255,255,255,.72);
  margin: 8px 0;
  word-break: break-all;
}
.footer-link:hover {
  color: var(--wv-primary)
}
.footer-bottom {
  border-top: 1px solid rgba(255,255,255,.1);
  margin-top: 42px;
  padding-top: 24px;
  color: rgba(255,255,255,.55);
font-size:.9rem
}
/* Reveal */
.reveal {
  opacity: 0;
  transform: translateY(30px)
}
.parallax-img {
  will-change: transform
}
 @media (max-width:1199.98px) {
.navbar-brand img {
  width: 170px
}
.navbar-collapse {
  margin-top: 12px;
  padding: 14px;
  background: #fff;
  border-radius: 18px
}
.hero {
  min-height: 92vh
}
.showcase-main {
  min-height: 620px
}
}
@media (max-width:991.98px) {
.section-pad {
  padding: 85px 0
}
.hero-bottom {
  align-items: center;
  flex-direction: column
}
.scroll-cue {
  display: none
}
.stat-grid {
  margin-top: 35px
}
.showcase-grid {
  grid-template-columns: 1fr
}
.showcase-main {
  min-height: 580px
}
.showcase-side {
  min-height: 420px
}
.process-card {
  grid-template-columns: 60px 1fr
}
.process-card p {
  grid-column: 2
}
.sticky-image {
  position: relative;
  top: 0;
  min-height: 520px;
  margin-bottom: 40px
}
.cta-inner {
  padding: 40px
}
.feature-list {
  grid-template-columns: 1fr
}
}
@media (max-width:767.98px) {
.site-header {
  padding: 10px 0
}
.site-header .nav-shell {
  border-radius: 16px;
  padding: 8px 10px
}
.navbar-brand img {
  width: 145px;
  height: 58px
}
.hero {
  padding-top: 130px;
  min-height: 88vh
}
.hero h1 {
  font-size: clamp(3rem, 16vw, 5.2rem)
}
.hero-copy {
  font-size: 1rem
}
.section-pad {
  padding: 70px 0
}
.services-wrap {
  border-radius: 24px;
  padding: 16px
}
.service-card {
  min-height: 430px
}
.service-card-content {
  inset: auto 20px 20px
}
.showcase-main {
  min-height: 450px
}
.showcase-side {
  min-height: 310px
}
.process-card {
  grid-template-columns: 48px 1fr;
  padding: 24px 0
}
.process-card h4 {
  font-size: 1.55rem
}
.cta {
  min-height: 520px;
  border-radius: 24px
}
.cta-inner {
  padding: 30px 24px
}
.inner-hero {
  min-height: 70vh;
  padding: 145px 0 55px
}
.inner-hero h1 {
  font-size: clamp(3.2rem, 15vw, 5.5rem)
}
.contact-card {
  padding: 26px
}
.footer-logo {
  width: 200px
}
footer {
  margin-top: 70px;
  padding-top: 55px
}
}
/* ===== Premium full-width two-tier header ===== */
.site-header {
  padding: 0;
  background: transparent
}
.header-top {
  background: var(--wv-dark);
  color: #fff;
  width: 100%;
  transition: .3s ease
}
.topbar-inner {
  min-height: 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px
}
.topbar-contact, .topbar-social {
  display: flex;
  align-items: center;
  gap: 22px
}
.topbar-contact a, .topbar-social a {
  color: rgba(255,255,255,.84);
font-size:.8rem;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: .25s ease
}
.topbar-contact a:hover, .topbar-social a:hover {
  color: var(--wv-primary)
}
.topbar-contact i {
  color: var(--wv-primary)
}
.topbar-social {
  gap: 12px
}
.topbar-social>span {
  text-transform: uppercase;
  letter-spacing: .12em;
font-size:.68rem;
  font-weight: 800;
  color: rgba(255,255,255,.5);
  margin-right: 4px
}
.topbar-social a {
  width: 27px;
  height: 27px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 50%;
  display: grid;
  place-items: center;
font-size:.75rem
}
.header-main {
  width: 100%;
  background: rgba(255,255,255,.97);
  border-bottom: 1px solid rgba(53,59,55,.09);
  box-shadow: 0 8px 28px rgba(23,32,25,.06);
  backdrop-filter: blur(16px);
  transition: .35s ease
}
.header-main .navbar {
  min-height: 88px
}
.site-header .nav-shell {
  background: none;
  border: 0;
  box-shadow: none;
  border-radius: 0;
  padding: 0;
  backdrop-filter: none
}
.site-header.scrolled {
  padding: 0
}
.site-header.scrolled .header-top {
  margin-top: -42px
}
.site-header.scrolled .header-main {
  box-shadow: 0 10px 32px rgba(23,32,25,.13)
}
.site-header.scrolled .nav-shell {
  box-shadow: none
}
.navbar-brand img {
  width: 205px;
  height: 72px;
  object-fit: contain
}
.header-quote {
  padding: 13px 20px
}
/* Background video hero */
.video-hero {
  padding-top: 190px
}
.hero-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0
}
.hero-shade {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(12,18,14,.15) 0%, rgba(12,18,14,.27) 34%, rgba(12,18,14,.9) 100%)
}
.video-hero:after {
  display: none
}
.video-hero .container-xxl {
  z-index: 2
}
/* Before / after comparison */
.before-after-section {
  background: #fff
}
.comparison-card {
  height: min(72vh, 760px);
  min-height: 520px;
  position: relative;
  overflow: hidden;
  border-radius: 34px;
  background: #1d241f;
  box-shadow: var(--wv-shadow);
  touch-action: none;
  user-select: none
}
.compare-base, .compare-overlay img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover
}
.compare-overlay {
  position: absolute;
  inset: 0 50% 0 0;
  overflow: hidden;
  z-index: 2
}
.compare-overlay img {
  width: 100vw;
  max-width: none
}
.comparison-card .compare-overlay img {
  width: var(--compare-width, 100%)
}
.compare-label {
  position: absolute;
  top: 24px;
  z-index: 5;
  padding: 10px 15px;
  border-radius: 999px;
  background: rgba(255,255,255,.9);
  backdrop-filter: blur(10px);
font-size:.72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: var(--wv-dark)
}
.compare-before {
  left: 24px
}
.compare-after {
  right: 24px;
  background: var(--wv-primary)
}
.compare-handle {
  position: absolute;
  z-index: 6;
  left: 50%;
  top: 0;
  bottom: 0;
  width: 64px;
  transform: translateX(-50%);
  border: 0;
  background: transparent;
  padding: 0;
  cursor: ew-resize
}
.compare-line {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 2px;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(0,0,0,.08)
}
.compare-knob {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 58px;
  height: 58px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  background: #fff;
  color: var(--wv-dark);
  box-shadow: 0 14px 40px rgba(0,0,0,.22);
  font-size: 1rem
}
/* Testimonials */
.testimonials-section {
  position: relative;
  overflow: hidden
}
.testimonials-section:before {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: rgba(175,199,60,.08);
  filter: blur(20px);
  right: -120px;
  top: -150px
}
.testimonials-section .container-xxl {
  position: relative;
  z-index: 1
}
.testimonial-intro {
  color: rgba(255,255,255,.66);
  font-size: 1.08rem;
  line-height: 1.75
}
.testimonial-card {
  height: 100%;
  min-height: 350px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 28px;
  padding: 32px;
  background: rgba(255,255,255,.055);
  display: flex;
  flex-direction: column;
  transition: .35s ease
}
.testimonial-card:hover {
  transform: translateY(-7px);
  border-color: rgba(175,199,60,.5);
  background: rgba(255,255,255,.075)
}
.quote-mark {
  font-family: Georgia, serif;
  font-size: 5rem;
  line-height: .65;
  color: var(--wv-primary);
  margin-bottom: 26px
}
.testimonial-card p {
  font-size: 1.2rem;
  line-height: 1.7;
  color: rgba(255,255,255,.9);
  flex: 1
}
.testimonial-meta {
  padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,.11);
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center
}
.testimonial-meta strong {
font-size:.9rem
}
.testimonial-meta span {
font-size:.78rem;
  color: rgba(255,255,255,.5)
}
.testimonial-note {
font-size:.72rem;
  color: rgba(255,255,255,.38)
}
 @media(max-width:1199.98px) {
.header-main .navbar {
  min-height: 78px
}
.site-header.scrolled .header-top {
  margin-top: -42px
}
.navbar-collapse {
  margin-top: 0;
  padding: 18px 0 20px;
  background: #fff;
  border-radius: 0
}
}
@media(max-width:767.98px) {
.topbar-inner {
  min-height: 38px
}
.topbar-contact a:first-child span {
  display: inline
}
.topbar-contact a:nth-child(2) {
  display: none
}
.topbar-social>span {
  display: none
}
.topbar-social {
  gap: 8px
}
.topbar-contact {
  gap: 12px
}
.site-header.scrolled .header-top {
  margin-top: -38px
}
.header-main .navbar {
  min-height: 70px
}
.navbar-brand img {
  width: 150px;
  height: 58px
}
.video-hero {
  padding-top: 170px;
  min-height: 92svh;
  text-align: center;
}
.comparison-card {
  min-height: 440px;
  height: 62vh;
  border-radius: 22px
}
.compare-label {
  top: 16px
}
.compare-before {
  left: 16px
}
.compare-after {
  right: 16px
}
.compare-knob {
  width: 50px;
  height: 50px
}
.testimonial-card {
  min-height: 300px;
  padding: 26px
}
}
/* ===== Refined intro / animated stats ===== */
.refined-intro-section {
  overflow: hidden;
  background: #fff
}
.refined-intro-head {
  margin-bottom: 64px
}
.refined-title {
  font-family: "DM Sans", sans-serif;
  font-size: clamp(3.2rem, 5.7vw, 5rem);
  line-height: .95;
  letter-spacing: -.065em;
  font-weight: 800;
  max-width: 930px;
  color: var(--wv-dark)
}
.refined-title span {
  color: var(--wv-primary);
  position: relative;
  white-space: nowrap
}
.refined-title span:after {
  content: "";
  position: absolute;
  left: 3%;
  right: 0;
  bottom: -8px;
  height: 3px;
  background: var(--wv-primary);
  transform: scaleX(.35);
  transform-origin: left center;
  opacity: .55
}
.refined-lead {
  font-size: 1.2rem;
  line-height: 1.85;
  color: #747b76;
  max-width: 560px;
  margin: 84px 0 0
}
.refined-signature {
  margin-top: 30px;
  color: #91aa20;
  font-size: 1.08rem;
  font-weight: 700;
  font-style: italic;
  letter-spacing: .02em
}
.refined-signature:before {
  content: "—";
  margin-right: 9px
}
.refined-intro-body {
  margin-top: 6px
}
.refined-visual {
  position: relative;
  min-height: 590px;
  height: 100%;
  border-radius: 32px;
  overflow: visible
}
.refined-visual>img {
  width: calc(100% - 24px);
  height: 100%;
  min-height: 590px;
  object-fit: cover;
  border-radius: 30px;
  box-shadow: 0 24px 70px rgba(31,43,35,.14)
}
.refined-mini-image {
  position: absolute;
  left: -28px;
  bottom: -28px;
  width: 44%;
  height: 205px;
  padding: 7px;
  background: #fff;
  border-radius: 24px;
  box-shadow: 0 18px 50px rgba(30,40,34,.2);
  z-index: 3
}
.refined-mini-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 18px
}
.refined-care-card {
  position: absolute;
  right: -14px;
  bottom: 20px;
  z-index: 4;
  background: var(--wv-dark);
  color: #fff;
  border-radius: 20px;
  padding: 18px 20px;
  display: flex;
  align-items: center;
  gap: 15px;
  min-width: 275px;
  box-shadow: 0 18px 50px rgba(20,28,23,.2)
}
.refined-care-icon {
  width: 56px;
  height: 56px;
  flex: 0 0 56px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--wv-primary);
  color: #fff;
  font-size: 1.45rem
}
.refined-care-card strong {
  display: block;
  font-size: 1rem
}
.refined-care-card small {
  display: block;
  color: rgba(255,255,255,.62);
  margin-top: 3px;
  line-height: 1.4
}
.premium-stats {
  height: 100%;
  min-height: 590px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  background: #fff;
  border: 1px solid rgba(53,59,55,.09);
  border-radius: 32px;
  box-shadow: 0 24px 70px rgba(31,43,35,.08);
  overflow: hidden
}
.premium-stat {
  padding: 44px 38px;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  transition: .35s ease
}
.premium-stat:nth-child(odd) {
  border-right: 1px solid rgba(53,59,55,.09)
}
.premium-stat:nth-child(-n+2) {
  border-bottom: 1px solid rgba(53,59,55,.09)
}
.premium-stat:hover {
  background: #fafcf4
}
.premium-stat:hover .premium-stat-icon {
  transform: translateY(-5px) rotate(-3deg);
  background: var(--wv-primary);
  color: #fff
}
.premium-stat-icon {
  width: 66px;
  height: 66px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(175,199,60,.13);
  color: #83a000;
  font-size: 1.55rem;
  transition: .35s ease
}
.premium-stat-number {
  margin-top: 24px;
  display: flex;
  align-items: baseline;
  gap: 1px;
  font-family: "DM Sans", sans-serif;
  color: #769300;
  font-weight: 800;
  font-size: clamp(2.9rem, 4vw, 4.3rem);
  line-height: 1;
  letter-spacing: -.055em
}
.premium-stat h3 {
  font-size: 1rem;
  margin: 18px 0 8px;
  color: var(--wv-dark);
  font-weight: 800
}
.premium-stat p {
  margin: 0;
  color: #747b76;
  line-height: 1.6;
font-size:.92rem;
  max-width: 220px
}
.refined-trust-row {
  margin-top: 0;
  padding: 30px 0 30px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;  
}
.refined-trust-item {
  display: flex;
  align-items: center;
  gap: 17px;
  padding: 0 30px;
  border-right: 1px solid rgba(53,59,55,.12)
}
.refined-trust-item:first-child {
  padding-left: 0
}
.refined-trust-item:last-child {
  border-right: 0;
  padding-right: 0
}
.refined-trust-item>i {
  font-size: 2.1rem;
  color: #91ad18
}
.refined-trust-item strong, .refined-trust-item span {
  display: block
}
.refined-trust-item strong {
font-size:.9rem;
  color: var(--wv-dark)
}
.refined-trust-item span {
font-size:.78rem;
  color: #818681;
  margin-top: 3px
}
 @media(max-width:1199.98px) {
.refined-lead {
  margin-top: 20px
}
.refined-intro-head {
  margin-bottom: 45px
}
.refined-trust-row {
  grid-template-columns: repeat(2, 1fr);
  row-gap: 28px
}
.refined-trust-item:nth-child(2) {
  border-right: 0
}
.refined-trust-item:nth-child(3) {
  padding-left: 0
}
}
@media(max-width:991.98px) {
.refined-visual {
  min-height: 520px;
  margin-bottom: 38px
}
.refined-visual>img {
  min-height: 520px
}
.premium-stats {
  min-height: 0
}
.refined-mini-image {
  left: 18px;
  bottom: -25px
}
.refined-care-card {
  right: 18px;
  bottom: 18px
}
}
@media(max-width:767.98px) {
.refined-intro-head {
  margin-bottom: 32px
}
.refined-title {
  font-size: clamp(2.7rem, 13vw, 4.4rem)
}
.refined-lead {
  font-size: 1.02rem;
  line-height: 1.7
}
.refined-signature {
  margin-top: 18px
}
.refined-visual {
  min-height: 430px
}
.refined-visual>img {
  width: 100%;
  min-height: 430px;
  border-radius: 22px
}
.refined-mini-image {
  width: 42%;
  height: 145px;
  left: 12px;
  bottom: -18px;
  border-radius: 18px
}
.refined-mini-image img {
  border-radius: 13px
}
.refined-care-card {
  right: 12px;
  bottom: 12px;
  min-width: 0;
  max-width: 70%;
  padding: 13px 14px;
  border-radius: 16px
}
.refined-care-icon {
  width: 44px;
  height: 44px;
  flex-basis: 44px;
  font-size: 1.05rem
}
.refined-care-card strong {
font-size:.84rem
}
.refined-care-card small {
font-size:.7rem
}
.premium-stats {
  grid-template-columns: 1fr;
  margin-top: 20px;
  border-radius: 22px
}
.premium-stat {
  padding: 28px 25px;
  min-height: 230px;
  border-right: 0!important;
  border-bottom: 1px solid rgba(53,59,55,.09)!important
}
.premium-stat:last-child {
  border-bottom: 0!important
}
.premium-stat-icon {
  width: 56px;
  height: 56px;
  font-size: 1.3rem
}
.premium-stat-number {
  font-size: 3.2rem;
  margin-top: 17px
}
.refined-trust-row {
  margin-top: 46px;
  grid-template-columns: 1fr;
  padding-top: 24px;
  gap: 0
}
.refined-trust-item {
  padding: 18px 0!important;
  border-right: 0;
  border-bottom: 1px solid rgba(53,59,55,.09)
}
.refined-trust-item:last-child {
  border-bottom: 0
}
}
/* ===== V4: full-width header, mobile drawer, showcase refinement & touch testimonials ===== */
.site-header {
  padding: 0;
  background: transparent
}
.site-header .header-main {
  background: rgba(255,255,255,1);
  border-bottom: 1px solid rgba(53,59,55,.08);
  box-shadow: 0 10px 34px rgba(28,35,30,.08);
  backdrop-filter: blur(16px);
  transition: .3s ease
}
.site-header.scrolled {
  padding: 0
}
.site-header.scrolled .header-main {
  box-shadow: 0 12px 36px rgba(28,35,30,.14)
}
.header-main .navbar {
  min-height: 92px
}
.header-top {
  background: var(--wv-dark);
  color: #fff
}
.topbar-inner {
  min-height: 42px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px
}
.topbar-contact, .topbar-social {
  display: flex;
  align-items: center;
  gap: 22px
}
.topbar-contact a, .topbar-social a {
  color: rgba(255,255,255,1);
  font-size:.82rem;
  font-weight: 700;
  transition: .25s
}
.topbar-contact a {
  display: inline-flex;
  align-items: center;
  gap: 8px
}
.topbar-contact a:hover, .topbar-social a:hover {
  color: var(--wv-primary)
}
.topbar-contact i {
  color: var(--wv-primary)
}
.topbar-social span {
font-size:.72rem;
  text-transform: uppercase;
  letter-spacing: .15em;
  color: rgba(255,255,255,.48);
  font-weight: 800
}
.topbar-social {
  gap: 13px
}
.desktop-navigation .navbar-nav {
  display: flex;
  flex-direction: row
}
.navbar-brand img {
  width: 205px;
  height: 68px
}
.mobile-header-actions {
  gap: 9px
}
.mobile-call-btn {
  height: 46px;
  padding: 0 16px;
  border-radius: 999px;
  background: var(--wv-primary);
  color: var(--wv-dark);
  display: inline-flex;
  align-items: center;
  gap: 8px;
font-size:.86rem;
  font-weight: 800;
  box-shadow: 0 8px 20px rgba(175,199,60,.22)
}
.mobile-call-btn:hover {
  color: var(--wv-dark)
}
.mobile-menu-toggle {
  border: 1px solid var(--wv-line);
  background: #fff;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  padding: 0
}
.mobile-menu-toggle .menu-lines {
  width: 22px;
  height: 16px
}
.mobile-menu-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(17,23,19,.56);
  backdrop-filter: blur(3px);
  opacity: 0;
  visibility: hidden;
  transition: .35s ease;
  z-index: 1200
}
.mobile-menu-backdrop.is-open {
  opacity: 1;
  visibility: visible
}
.mobile-drawer {
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  width: min(88vw, 410px);
  background: #fff;
  z-index: 1210;
  transform: translateX(-105%);
  transition: transform .48s cubic-bezier(.22, .8, .2, 1);
  box-shadow: 30px 0 80px rgba(18,26,20,.2);
  display: flex;
  flex-direction: column
}
.mobile-drawer.is-open {
  transform: translateX(0)
}
.mobile-drawer-head {
  height: 92px;
  padding: 14px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--wv-line)
}
.mobile-drawer-logo img {
  width: 180px;
  height: 62px;
  object-fit: contain
}
.mobile-menu-close {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  border: 1px solid var(--wv-line);
  background: var(--wv-soft);
  color: var(--wv-dark);
  font-size: 1.25rem;
  display: grid;
  place-items: center
}
.mobile-drawer-body {
  padding: 34px 24px 28px;
  overflow: auto
}
.mobile-menu-eyebrow {
  display: block;
font-size:.68rem;
  text-transform: uppercase;
  letter-spacing: .18em;
  font-weight: 800;
  color: #8b918d;
  margin-bottom: 16px
}
.mobile-nav-list {
  list-style: none;
  padding: 0;
  margin: 0 0 28px
}
.mobile-nav-list .nav-item {
  border-bottom: 1px solid var(--wv-line)
}
.mobile-nav-list .nav-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 17px 0!important;
  font-family: "DM Sans", sans-serif;
  font-size: 1.45rem;
  font-weight: 800;
  color: var(--wv-dark)
}
.mobile-nav-list .nav-link:after {
  content: "\F135";
  font-family: "bootstrap-icons";
  position: static;
  width: auto;
  height: auto;
  background: none;
  transform: none;
font-size:.82rem;
  color: #a0a6a1
}
.mobile-nav-list .nav-link.active {
  color: #7f980f
}
.mobile-drawer-quote {
  width: 100%;
  margin-bottom: 28px
}
.mobile-drawer-contact {
  padding-top: 22px;
  border-top: 1px solid var(--wv-line);
  display: grid;
  gap: 12px
}
.mobile-drawer-contact a {
  color: var(--wv-muted);
font-size:.8rem;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  word-break: break-word
}
.mobile-drawer-contact i {
  color: var(--wv-primary)
}
body.mobile-menu-open {
  overflow: hidden
}
/* Selected work cards: consistent clipping and radii */
.showcase-grid, .showcase-grid>.d-grid {
  min-width: 0
}
.showcase-main, .showcase-side {
  border-radius: 30px!important;
  overflow: hidden!important;
  isolation: isolate;
  transform: translateZ(0);
  background: #e9ede4
}
.showcase-main img, .showcase-side img {
  border-radius: inherit;
  clip-path: inset(0 round 30px);
  will-change: transform
}
.showcase-caption {
  border-radius: 999px;
  padding: 14px 20px;
  box-shadow: 0 8px 28px rgba(18,28,21,.08)
}
/* Touch-friendly testimonial slider */
.testimonial-slider-wrap {
  position: relative;
  overflow: hidden
}
.testimonial-swiper {
  overflow: visible
}
.testimonial-swiper .swiper-slide {
  height: auto
}
.testimonial-card {
  height: 100%;
  min-height: 350px;
  display: flex;
  flex-direction: column;
  padding: 34px;
  border-radius: 26px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.1);
  transition: transform .3s ease, background .3s ease
}
.testimonial-card:hover {
  transform: translateY(-4px);
  background: rgba(255,255,255,.09)
}
.testimonial-card p {
  font-size: 1.15rem;
  line-height: 1.75
}
.testimonial-stars {
  display: flex;
  gap: 5px;
  color: var(--wv-primary);
font-size:.9rem;
  margin-bottom: 18px
}
.testimonial-meta {
  margin-top: auto
}
.testimonial-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-top: 30px
}
.testimonial-pagination {
  position: static!important;
  width: auto!important;
  display: flex;
  align-items: center;
  gap: 8px
}
.testimonial-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: rgba(255,255,255,.38);
  opacity: 1;
  margin: 0!important;
  transition: .25s
}
.testimonial-pagination .swiper-pagination-bullet-active {
  width: 28px;
  border-radius: 999px;
  background: var(--wv-primary)
}
.testimonial-arrows {
  display: flex;
  gap: 10px
}
.testimonial-prev, .testimonial-next {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.07);
  color: #fff;
  display: grid;
  place-items: center;
  transition: .25s
}
.testimonial-prev:hover, .testimonial-next:hover {
  background: var(--wv-primary);
  color: var(--wv-dark);
  border-color: var(--wv-primary)
}
 @media(max-width:1199.98px) {
.header-top {
  display: none!important
}
.header-main .navbar {
  min-height: 82px
}
.navbar-brand img {
  width: 165px;
  height: 58px
}
.hero {
  padding-top: 100px;
}
.inner-hero {
  padding-top: 145px
}
}
@media(max-width:767.98px) {
.header-main .container-fluid {
  padding-left: 14px!important;
  padding-right: 14px!important
}
.header-main .navbar {
  min-height: 76px
}
.navbar-brand img {
  width: 138px;
  height: 52px
}
.mobile-call-btn {
  height: 42px;
  padding: 0 13px
}
.mobile-menu-toggle {
  width: 42px;
  height: 42px
}
.mobile-drawer-head {
  height: 76px
}
.mobile-drawer-logo img {
  width: 220px !important;
  height: 50px
}
.mobile-drawer-body {
  padding: 28px 20px
}
.mobile-nav-list .nav-link {
  font-size: 1.25rem;
  padding: 15px 0!important
}
.showcase-grid {
  grid-template-columns: 1fr;
  gap: 16px
}
.showcase-grid>.d-grid {
  gap: 16px!important
}
.showcase-main {
  min-height: 480px
}
.showcase-side {
  min-height: 260px
}
.showcase-main, .showcase-side {
  border-radius: 22px!important
}
.showcase-main img, .showcase-side img {
  clip-path: inset(0 round 22px)
}
.showcase-caption {
  left: 16px;
  bottom: 16px;
  padding: 11px 14px;
font-size:.85rem
}
.testimonial-card {
  min-height: 310px;
  padding: 26px
}
.testimonial-controls {
  margin-top: 22px
}
.testimonial-prev, .testimonial-next {
  width: 44px;
  height: 44px
}
}
@media(max-width:420px) {
.mobile-call-btn span {
  display: none
}
.mobile-call-btn {
  width: 42px;
  padding: 0;
  justify-content: center
}
.navbar-brand img {
  width: 220px !important;
}
}




/* ===== Turfing page: editorial project imagery ===== */.turf-editorial-grid {
  display: grid;
  grid-template-columns:1.05fr .95fr;
  gap: 18px
}
.turf-editorial-card {
  position: relative;
  min-height: 330px;
  margin: 0;
  border-radius: 24px;
  overflow: hidden;
  background: #eef1e8;
  box-shadow: 0 16px 45px rgba(27,34,29,.10)
}
.turf-editorial-card.turf-editorial-tall {
  min-height: 460px
}
.turf-editorial-card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .7s cubic-bezier(.2, .8, .2, 1)
}
.turf-editorial-card:after {
  content: "";
  position: absolute;
  inset: 45% 0 0;
  background: linear-gradient(180deg, transparent, rgba(18,25,20,.66))
}
.turf-editorial-card:hover img {
  transform: scale(1.035)
}
.turf-editorial-card figcaption {
  position: absolute;
  z-index: 2;
  left: 20px;
  right: 20px;
  bottom: 18px;
  color: #fff;
  font-weight: 700;
  line-height: 1.45;
font-size:.92rem
}
.turf-feature-image {
  position: relative;
  border-radius: 28px;
  overflow: hidden;
  min-height: 520px;
  box-shadow: var(--wv-shadow)
}
.turf-feature-image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover
}
.turf-feature-image:after {
  content: "";
  position: absolute;
  inset: 45% 0 0;
  background: linear-gradient(180deg, transparent, rgba(20,27,22,.70))
}
.turf-feature-caption {
  position: absolute;
  z-index: 2;
  left: 26px;
  right: 26px;
  bottom: 24px;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  color: #fff
}
.turf-feature-caption span {
  text-transform: uppercase;
  letter-spacing: .15em;
font-size:.7rem;
  font-weight: 800;
  color: var(--wv-primary)
}
.turf-feature-caption strong {
  font-family: "DM Sans", sans-serif;
  font-size: 1.35rem;
  max-width: 520px;
  line-height: 1.25;
  text-align: right
}
.turf-project-gallery {
  padding: 34px;
  background: var(--wv-soft);
  border-radius: 30px
}
.turf-gallery-head h3 {
  margin-top: 12px!important;
  font-size: clamp(2rem, 3.3vw, 3.1rem);
  line-height: 1.08
}
.turf-gallery-grid {
  display: grid;
grid-template-columns:1.25fr .75fr;
  grid-template-rows: repeat(2, 250px);
  gap: 14px;
  margin-top: 26px
}
.turf-gallery-item {
  margin: 0;
  border-radius: 20px;
  overflow: hidden;
  position: relative;
  background: #dfe5d7
}
.turf-gallery-item.turf-gallery-wide {
  grid-row: 1 / span 2
}
.turf-gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .7s cubic-bezier(.2, .8, .2, 1)
}
.turf-gallery-item:hover img {
  transform: scale(1.04)
}
@media(max-width:991.98px) {
.turf-editorial-grid {
grid-template-columns:1fr 1fr
}
.turf-editorial-card, .turf-editorial-card.turf-editorial-tall {
min-height:360px
}
.turf-feature-image {
min-height:440px
}
.turf-gallery-grid {
grid-template-rows:repeat(2, 210px)
}
}
@media(max-width:767.98px) {
.turf-editorial-grid {
grid-template-columns:1fr
}
.turf-editorial-card, .turf-editorial-card.turf-editorial-tall {
min-height:360px
}
.turf-feature-image {
min-height:430px;
border-radius:22px
}
.turf-feature-caption {
left:18px;
right:18px;
bottom:18px;
display:block
}
.turf-feature-caption strong {
display:block;
text-align:left;
font-size:1.08rem;
margin-top:7px
}
.turf-project-gallery {
padding:20px;
border-radius:22px
}
.turf-gallery-grid {
grid-template-columns:1fr;
grid-template-rows:auto;
gap:12px
}
.turf-gallery-item, .turf-gallery-item.turf-gallery-wide {
grid-row:auto;
min-height:280px
}
.turf-gallery-head h3 {
font-size:2rem
}
}

.navbar-brand figure,
.mobile-drawer-logo figure{
  margin-bottom: 0 !important;
}
.showcase-main img, .showcase-side img{
  transform: translate(0%, 0%) !important;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
.navbar-nav .nav-link{
  padding: .75rem .5rem !important;
}
.navbar-brand img{
  width: 242px !important;
}
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
.refined-trust-row {
  grid-template-columns: repeat(4, 1fr);
}
.refined-trust-item:nth-child(2){
  border-right: 1px solid rgba(53,59,55,.12);
}
.refined-trust-item:nth-child(3){
  padding-left: 30px;
}
.refined-trust-item{
  align-items: start;
}
.section-pad {
  padding: 50px 0;
}

}

@media only screen and (min-width: 768px) and (max-width: 991px) {

.hero-kicker:before{
  display: none;
}
.hero-buttons-wrapper{
  justify-content: center;
}
.refined-trust-row{
  margin-top: 0;
  grid-template-columns: repeat(4, 1fr);
}
.refined-trust-item {
  padding: 10px 15px !important;
  border-right: 1px solid rgba(53,59,55,.09);
  border-bottom: none;
  flex-direction: column;
  text-align: center;
}
.refined-trust-item:nth-child(2){
  border-right: 1px solid rgba(53,59,55,.09);
}
.section-pad{
  padding: 40px 0;
}
.refined-intro-head{
  text-align: center;
}
.eyebrow:before{
  display: none !important;
}
.refined-intro-body{
  margin-top: 0;
}
.refined-intro-body > *:first-child{
  margin-top: 0;
}
.premium-stats{
  grid-template-columns: repeat(2, 1fr);
}
.premium-stat{
  border-right: 1px solid rgba(53,59,55,.09) !important;
  text-align: center;
  align-items: center;
  justify-content: start;
  padding: 20px;
}
.premium-stat-number{
  font-size: 2.65rem;
}
.premium-stat:nth-child(3){
  border-bottom: 0 !important;
}
.services-wrap-section{
  flex-direction: column;
  text-align: center;
  align-items: center !important;
}
.custom-heading-wrapper{
  text-align: center;
}
.process-card{
  grid-template-columns: 15px 1fr;
}
footer {
  margin-top: 50px;
  padding-top: 50px;
  text-align: center;
}
.hero-kicker{
  flex-direction: column;
}
.refined-lead,
.footer-copy{
  max-width: 100%;
}
footer figure.wp-block-image.size-full img{
  max-width: 400px;
  height: auto;
  margin: 0 auto;
}

.video-hero{
  text-align: center;
}
.refined-visual > img{
  width: 100%;
}
.refined-care-card{
  right: 60px;
}
.service-card{
  min-height: 400px;
}
.showcase-grid{
  grid-template-columns: 1.2fr .8fr;
}
.showcase-side{
  min-height: 300px;
}
.inner-hero {
  padding-top: 110px;
  text-align: center;
}
.content-prose{
  text-align: center;
}
.feature-pill{
  text-align: left;
}
.turf-feature-caption strong{
  text-align: right;
}
.area-strip{
  justify-content: center;
}
.feature-list {
  grid-template-columns: repeat(2, 1fr);
}
.turf-feature-caption span{
  text-align: left;
}
.inner-hero p{
  max-width: 100%;
}

}

@media only screen and (max-width: 767px) {
.hero-kicker:before{
  display: none;
}
.hero-buttons-wrapper{
  justify-content: center;
}
.refined-trust-row{
  margin-top: 0;
  grid-template-columns: repeat(2, 1fr);
}
.refined-trust-item {
  padding: 10px 15px !important;
  border-right: 1px solid rgba(53,59,55,.09);
  border-bottom: 1px solid rgba(53,59,55,.09) !important;
  flex-direction: column;
  text-align: center;
}
.section-pad{
  padding: 40px 0;
}
.refined-intro-head{
  text-align: center;
}
.eyebrow:before{
  display: none !important;
}
.refined-intro-body{
  margin-top: 0;
}
.refined-intro-body > *:first-child{
  margin-top: 0;
}
.premium-stats{
  grid-template-columns: repeat(2, 1fr);
}
.premium-stat{
  border-right: 1px solid rgba(53,59,55,.09) !important;
  text-align: center;
  align-items: center;
  justify-content: start;
  padding: 20px;
}
.premium-stat-number{
  font-size: 2.65rem;
}
.premium-stat:nth-child(3){
  border-bottom: 0 !important;
}
.services-wrap-section{
  flex-direction: column;
  text-align: center;
  align-items: center !important;
}
.custom-heading-wrapper{
  text-align: center;
}
.process-card{
  grid-template-columns: 15px 1fr;
}
footer {
  margin-top: 50px;
  padding-top: 50px;
  text-align: center;
}
.hero-kicker{
  flex-direction: column;
}
.refined-lead,
.footer-copy{
  max-width: 100%;
}
footer figure.wp-block-image.size-full img{
  max-width: 320px;
  height: auto;
  margin: 0 auto;
}

.inner-hero {
  padding-top: 110px;
  text-align: center;
}
.content-prose{
  text-align: center;
}
.feature-pill{
  text-align: left;
}
.turf-feature-caption strong{
  text-align: center;
  max-width: 100%;
}
.area-strip{
  justify-content: center;
}
.inner-hero p{
  max-width: 100%;
}

}












