@font-face {
  font-family: "Fa V 4 Compatibility";
  src: url('../fonts/fa-v4compatibility.woff2') format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Fa 400";
  src: url('../fonts/fa-regular-400.woff2') format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Fa Solid 900";
  src: url('../fonts/fa-solid-900.woff2') format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Fa Brands 400";
  src: url('../fonts/fa-brands-400.woff2') format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:root {
  --paragraphs: #535c62;
  --heading: #101b22;
  --accent: #fdc23e;
  --background: #f0f6f8;
  --firebrick: #c50100;
  --white: white;
  --red-2: #4b83c0;
  --paragraphs-dark: #95a3b2;
  --info-text: #778697;
  --border: #101b2233;
  --light-blue: #74a6dd;
  --red: #ff0100;
  --dark-grey: #95a3b269;
}

.w-layout-hflex {
  flex-direction: row;
  align-items: flex-start;
  display: flex;
}

.w-layout-grid {
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.w-checkbox {
  margin-bottom: 5px;
  padding-left: 20px;
  display: block;
}

.w-checkbox:before {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox:after {
  content: " ";
  clear: both;
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox-input {
  float: left;
  margin: 4px 0 0 -20px;
  line-height: normal;
}

.w-checkbox-input--inputType-custom {
  border: 1px solid #ccc;
  border-radius: 2px;
  width: 12px;
  height: 12px;
}

.w-checkbox-input--inputType-custom.w--redirected-checked {
  background-color: #3898ec;
  background-image: url('https://d3e54v103j8qbb.cloudfront.net/static/custom-checkbox-checkmark.589d534424.svg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border-color: #3898ec;
}

.w-checkbox-input--inputType-custom.w--redirected-focus {
  box-shadow: 0 0 3px 1px #3898ec;
}

body {
  color: var(--paragraphs);
  letter-spacing: .13px;
  flex-direction: column;
  align-items: center;
  padding: 14px;
  font-family: Barlow, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 170%;
  display: flex;
}

h1 {
  color: var(--heading);
  letter-spacing: -1.4px;
  margin-top: 0;
  margin-bottom: 28px;
  font-size: 70px;
  font-weight: 500;
  line-height: 100%;
}

h2 {
  color: var(--heading);
  letter-spacing: -1.4px;
  margin-top: 0;
  margin-bottom: 26px;
  font-size: 58px;
  font-weight: 500;
  line-height: 107%;
}

h3 {
  color: var(--heading);
  letter-spacing: -1.4px;
  margin-top: 0;
  margin-bottom: 22px;
  font-size: 46px;
  font-weight: 500;
  line-height: 110%;
}

h4 {
  color: var(--heading);
  letter-spacing: -1.2px;
  margin-top: 0;
  margin-bottom: 20px;
  font-size: 36px;
  font-weight: 500;
  line-height: 115%;
}

h5 {
  color: var(--heading);
  letter-spacing: -.8px;
  margin-top: 0;
  margin-bottom: 18px;
  font-size: 26px;
  font-weight: 500;
  line-height: 120%;
}

h6 {
  color: var(--heading);
  letter-spacing: -.2px;
  margin-top: 0;
  margin-bottom: 16px;
  font-size: 18px;
  font-weight: 500;
  line-height: 130%;
}

p {
  margin-bottom: 28px;
}

a {
  color: var(--heading);
  text-decoration: underline;
}

ul, ol {
  margin-top: 0;
  margin-bottom: 28px;
  padding-left: 34px;
}

li {
  padding-top: 3px;
  padding-bottom: 3px;
  padding-left: 7px;
}

strong {
  color: var(--heading);
  font-weight: 500;
}

em {
  font-style: italic;
}

blockquote {
  border-left: 1px solid var(--accent);
  margin-bottom: 28px;
  margin-left: 15px;
  padding: 2px 24px;
  font-size: 20px;
  font-style: italic;
  line-height: 165%;
}

figure {
  margin-top: 36px;
  margin-bottom: 36px;
}

figcaption {
  text-align: center;
  letter-spacing: .08px;
  margin-top: 12px;
  font-size: 16px;
  line-height: 160%;
}

.link-text {
  box-shadow: inset 0 -1px 0 0 var(--heading);
  color: var(--heading);
  text-decoration: none;
  transition: box-shadow .25s cubic-bezier(.215, .61, .355, 1);
  display: inline-block;
}

.link-text:hover {
  box-shadow: inset 0 -30px 0 0 var(--accent);
}

.rich-text-block a {
  box-shadow: inset 0 -1px 0 0 var(--heading);
  color: var(--heading);
  text-decoration: none;
  transition: box-shadow .25s cubic-bezier(.215, .61, .355, 1);
  display: inline-block;
}

.rich-text-block a:hover {
  box-shadow: inset 0 -30px 0 0 var(--accent);
}

.section-hero-a {
  z-index: 10;
  background-color: var(--background);
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  min-height: 85vh;
  margin-bottom: 14px;
  display: flex;
  position: relative;
}

.navbar {
  width: 100%;
  max-width: none;
  box-shadow: none;
  background-color: #fff0;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  padding-top: 13px;
  padding-bottom: 13px;
  padding-right: 14px;
  display: flex;
  position: sticky;
  top: 14px;
  left: 14px;
  right: 14px;
}

.nav-block {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  display: flex;
}

.nav {
  z-index: 1;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

.logo {
  width: 80%;
  max-width: none;
  height: auto;
  position: absolute;
}

.brand {
  justify-content: flex-start;
  align-items: center;
  width: 300px;
  height: 100px;
  margin-left: 0;
  margin-right: 0;
  padding: 10px;
  display: flex;
}

.nav-menu {
  align-items: center;
  display: flex;
}

.nav-link {
  opacity: 1;
  height: 100%;
  color: var(--heading);
  text-align: center;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 40px 9px;
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
  transition: all .4s;
  display: flex;
}

.nav-link:hover {
  opacity: .65;
  color: #13569e;
}

.nav-link.w--current {
  color: var(--heading);
}

.nav-link.hidden {
  display: none;
}

.nav-button {
  background-color: var(--firebrick);
  justify-content: center;
  align-items: center;
  margin-left: 15px;
  padding: 27px 35px;
  text-decoration: none;
  display: flex;
}

.text-button {
  color: var(--heading);
  text-align: center;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
}

.text-button.white {
  color: var(--white);
}

.icon-button {
  object-fit: contain;
  width: 4px;
  max-width: none;
  height: 8px;
  margin-left: 8px;
  position: relative;
  top: 0;
}

.icon-button.yellow {
  color: #fdc23e;
}

.icon-button.lower-down {
  top: 5px;
}

.dropdown-toggle {
  justify-content: center;
  align-items: center;
  padding: 40px 20px;
  display: flex;
}

.icon-dropdown {
  width: 8px;
  height: 4px;
  margin-left: 4px;
  display: block;
}

.dropdown-link {
  opacity: 1;
  color: var(--white);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 12px 20px;
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
  transition: opacity .25s cubic-bezier(.215, .61, .355, 1);
}

.dropdown-link:hover {
  opacity: .65;
}

.dropdown-link.w--current {
  color: var(--white);
}

.dropdown-list {
  padding-bottom: 0;
}

.dropdown-list.w--open {
  background-color: var(--red-2);
  left: -54px;
  overflow: hidden;
}

.dropdown-list-block {
  padding: 14px;
}

.hero-a {
  z-index: 20;
  width: 100%;
  max-width: 1200px;
}

.background-video {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.heading-hero {
  max-width: 730px;
  color: var(--white);
}

.heading-hero.size-vw {
  font-size: 3.5vw;
}

.heading-hero.dark {
  color: var(--heading);
  font-size: 44px;
}

.grid-hero-services {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  margin-top: 80px;
}

.text-hero-service {
  color: var(--red-2);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
}

.link-hero-service {
  width: 100%;
  text-decoration: none;
  position: relative;
}

.link-hero-service:hover {
  color: var(--red-2);
}

.description {
  z-index: 50;
  background-color: var(--red-2);
  width: 100%;
  position: absolute;
  overflow: hidden;
}

.line-block {
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 3px;
  display: flex;
  position: relative;
}

.line-1px {
  background-color: var(--white);
  width: 100%;
  height: 1px;
}

.line-1px.dark {
  background-color: var(--heading);
}

.line-1px.opacity {
  background-color: var(--heading);
  opacity: .2;
}

.line-full {
  background-color: var(--red-2);
  width: 100%;
  position: absolute;
  inset: 0%;
}

.line-full.dark {
  background-color: var(--red-2);
}

.paragraph-description {
  color: var(--background);
  margin-bottom: 0;
  font-size: 16px;
  line-height: 22px;
}

.description-block {
  width: 100%;
  padding: 20px 32px 25px;
}

.hero-service {
  justify-content: space-between;
  align-items: center;
  padding-bottom: 12px;
  display: flex;
}

.icon-arrow-a {
  width: 10px;
  max-width: none;
  height: 10px;
  color: var(--red-2);
}

.icon-arrow {
  flex-direction: column;
  flex: none;
  justify-content: center;
  align-items: center;
  width: 10px;
  height: 10px;
  margin-left: 12px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.icon-arrow-b {
  width: 10px;
  max-width: none;
  height: 10px;
  position: absolute;
  transform: translate(-120%, 120%);
}

.section {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-bottom: 14px;
  padding: 58px 50px;
  display: flex;
}

.section.background {
  background-color: var(--background);
}

.section.background.hidden {
  display: flex;
}

.section.padding {
  padding-top: 60px;
  padding-bottom: 70px;
}

.section.hidden {
  display: flex;
}

.section.background-colour {
  background-color: var(--background);
  padding-top: 50px;
  padding-bottom: 50px;
}

.section.space-up {
  padding-top: 183px;
}

.section.no-padding-left-right {
  padding: 31px 0;
}

.content {
  width: 100%;
  max-width: none;
}

.content.slim {
  max-width: none;
}

.grid-2-columns {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  grid-template-rows: auto;
  width: 100%;
}

.grid-stats {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  grid-template-rows: auto;
}

.block-right {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 45px 3% 45px 10%;
  display: flex;
}

.button {
  background-color: var(--red-2);
  justify-content: center;
  align-items: center;
  margin-top: 24px;
  padding: 23px 35px;
  text-decoration: none;
  display: flex;
}

.button.dark {
  background-color: var(--heading);
  margin-top: 20px;
}

.button.dark.red-button {
  background-color: var(--firebrick);
  letter-spacing: 1.5px;
  background-image: url('../images/icon_button_white.svg');
  background-position: 85%;
  background-repeat: no-repeat;
  background-size: auto;
  padding-top: 10px;
  padding-bottom: 10px;
  font-size: 14px;
  font-weight: 600;
}

.button.accent {
  background-color: var(--white);
}

.paragraph {
  max-width: 500px;
  margin-bottom: 10px;
  line-height: 24px;
}

.paragraph.white {
  color: var(--background);
}

.paragraph.dark {
  color: var(--heading);
}

.subtitle {
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 8px;
  display: flex;
}

.subtitle.space-down {
  margin-bottom: 26px;
  display: flex;
}

.line-subtitle {
  background-color: var(--heading);
  width: 27px;
  height: 1px;
}

.line-subtitle.white {
  background-color: var(--white);
}

.line-subtitle.center {
  width: 14px;
}

.text-subtitle {
  color: var(--heading);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-left: 12px;
  font-size: 18px;
  font-weight: 600;
  line-height: 130%;
}

.text-subtitle.white {
  color: var(--white);
}

.text-subtitle.center {
  margin-right: 12px;
}

.heading {
  letter-spacing: 0;
  max-width: 700px;
  font-size: 48px;
}

.heading.white {
  color: var(--white);
  margin-bottom: 0;
}

.heading.white-text {
  color: var(--background);
}

.stats {
  background-color: var(--white);
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  padding: 10px;
  display: flex;
}

.stats.full {
  background-color: var(--background);
  padding: 18px;
}

.heading-stats {
  max-width: 220px;
  margin-bottom: 0;
}

.numbers-stats {
  color: var(--heading);
  letter-spacing: -1.4px;
  margin-bottom: 12px;
  font-size: 58px;
  font-weight: 500;
  line-height: 100%;
}

.numbers-stats.full {
  font-size: 70px;
}

.icon-stats-block {
  background-color: var(--background);
  margin-bottom: auto;
  margin-left: auto;
  padding: 14px;
}

.icon-stats-block.white {
  background-color: var(--white);
}

.stats-block {
  margin: 18px;
}

.icon {
  object-fit: contain;
  width: 40px;
  max-width: none;
  height: 40px;
  display: block;
}

.block-left {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 45px 10% 45px 0%;
  display: flex;
}

.image-block {
  width: 100%;
  position: relative;
}

.image {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.image-absolute {
  object-fit: cover;
  width: 54%;
  height: 60%;
  position: absolute;
  inset: auto -3% -3% auto;
  box-shadow: 0 35px 120px #101b2240;
}

.section-full {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-bottom: 14px;
  padding-bottom: 0;
  padding-left: 0;
  padding-right: 0;
  display: flex;
}

.section-full.inside {
  width: 1300px;
  margin-top: 60px;
  margin-bottom: 60px;
  padding-left: 0;
  padding-right: 0;
}

.section-full.inside._100vw {
  width: 100vw;
}

.section-full.padding-top-bottom {
  padding-top: 50px;
  padding-bottom: 50px;
}

.grid-full {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: var(--heading);
  grid-template-rows: auto;
  width: 100%;
}

.grid-full.padding-up {
  margin-top: 45px;
}

.block-full {
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 66px 10%;
  display: flex;
}

.block {
  grid-column-gap: 2px;
  grid-row-gap: 2px;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  max-width: none;
  height: 100%;
  display: flex;
}

.image-bg-services {
  background-image: linear-gradient(270deg, var(--heading), transparent 30%), url('../images/IMG_5352-scaled-B.jpg');
  background-position: 0 0, 50%;
  background-size: auto, cover;
  width: 100%;
  min-height: 670px;
}

.image-bg-services.hiring {
  background-image: linear-gradient(270deg, var(--heading), transparent 30%), url('../images/IMG_5552-scaled.jpeg');
  background-position: 0 0, 70% 100%;
  min-height: auto;
}

.grid-3-columns-full {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  width: 100%;
}

.image-gallery {
  object-fit: cover;
  width: 100%;
  height: 20vw;
}

.block-heading-text {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.grid-4-columns {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  width: 100%;
  display: flex;
}

.block-heading {
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 24px;
  display: flex;
}

.block-heading.top {
  margin-bottom: 0;
}

.block-heading-button {
  margin-bottom: 30px;
  margin-left: 25px;
}

.expertise {
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.expertise.full {
  background-color: var(--background);
  padding: 13% 15%;
}

.heading-expertise {
  max-width: none;
}

.icon-expertise-block {
  background-color: var(--background);
  width: 70px;
  height: 70px;
  margin-bottom: 0;
  padding: 14px 0 0 14px;
}

.icon-expertise-block.white {
  background-color: var(--white);
}

.paragraph-expertise {
  max-width: none;
  margin-bottom: 0;
  line-height: 28px;
}

.image-bg-testimonials {
  background-image: linear-gradient(270deg, var(--heading), transparent 30%), url('../images/89.png');
  background-position: 0 0, 50%;
  background-size: auto, cover;
  min-height: 670px;
}

.image-bg-testimonials.other-way-gradient {
  background-image: linear-gradient(270deg, transparent 70%, var(--heading)), url('../images/WhatsApp-Image-2025-09-27-at-8.07.22-PM.jpeg');
  background-position: 0 0, 50%;
  background-size: auto, cover;
}

.paragraph-testimonials {
  max-width: 500px;
  color: var(--paragraphs-dark);
  margin-bottom: 14px;
  font-size: 20px;
  font-style: italic;
  line-height: 28px;
}

.testimonials {
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.logo-testimonials {
  object-fit: contain;
  height: 20px;
  margin-right: 28px;
}

.info-testimonials {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.name-testimonials {
  color: var(--white);
  margin-bottom: 3px;
}

.position-testimonials {
  color: var(--info-text);
  font-size: 14px;
  line-height: 130%;
}

.collection-list-project {
  grid-column-gap: 30px;
  grid-row-gap: 55px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.link-image-project {
  width: 100%;
  margin-bottom: 25px;
  transition: opacity .35s cubic-bezier(.215, .61, .355, 1);
  display: block;
}

.link-image-project:hover {
  opacity: .8;
}

.image-project {
  object-fit: cover;
  width: 100%;
  height: 450px;
}

.image-project.large {
  height: 660px;
}

.link-block-project {
  width: 100%;
  text-decoration: none;
  display: block;
}

.block-project {
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 20px;
  display: flex;
}

.heading-project {
  max-width: 310px;
  margin-bottom: -5px;
}

.heading-project.large {
  max-width: 480px;
}

.text-project-type {
  color: var(--info-text);
  letter-spacing: 0;
  margin-bottom: 8px;
  font-size: 14px;
  line-height: 130%;
}

.empty-state {
  background-color: var(--background);
  padding: 14px 20px;
}

.empty-state.white {
  background-color: var(--white);
}

.text-message {
  color: var(--heading);
  font-size: 16px;
  line-height: 130%;
}

.collection-list-blog {
  grid-column-gap: 30px;
  grid-row-gap: 55px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.text-blog-date {
  color: var(--info-text);
  letter-spacing: 0;
  margin-bottom: 8px;
  font-size: 14px;
  line-height: 130%;
}

.link-block-blog {
  width: 100%;
  text-decoration: none;
  display: block;
}

.block-blog {
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 20px;
  display: flex;
}

.heading-blog {
  max-width: 310px;
  margin-bottom: -5px;
}

.heading-blog.large {
  max-width: 450px;
}

.paragraph-summary {
  max-width: 350px;
  margin-top: 10px;
  margin-bottom: 0;
  line-height: 24px;
}

.paragraph-summary.large {
  max-width: 500px;
}

.grid-2-columns-full {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  grid-template-rows: auto;
  grid-auto-columns: auto;
  width: 100%;
  height: auto;
}

.image-bg-banner {
  background-image: url('../images/IMG_5410-scaled.jpeg');
  background-position: 50% 100%;
  background-size: cover;
}

.block-banner {
  background-color: var(--red-2);
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 80px 17%;
  display: flex;
}

.heading-banner {
  max-width: 700px;
  color: var(--background);
  margin-bottom: 38px;
}

.section-footer {
  grid-column-gap: 22px;
  grid-row-gap: 22px;
  background-color: var(--red-2);
  background-image: none;
  background-repeat: repeat;
  background-size: auto;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-top: auto;
  padding: 30px 30px 10px;
  display: flex;
}

.grid-footer {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  grid-template-rows: auto auto;
  grid-template-columns: 2fr 1fr 1fr .75fr 1.25fr;
  width: 100%;
  margin-bottom: 34px;
}

.footer-down-block {
  border-top: 1px solid var(--white);
  flex-direction: row;
  justify-content: space-between;
  margin-top: 40px;
  padding-top: 12px;
  padding-bottom: 0;
  display: flex;
}

.footer-down {
  color: #a3b3bd;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.footer-down.background {
  background-color: var(--red-2);
  border-radius: 100px;
  padding: 1px 12px 6px;
}

.block-footer {
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.logo-footer {
  height: auto;
  margin-bottom: 32px;
}

.paragraph-footer {
  max-width: 350px;
  color: var(--white);
  font-size: 16px;
  line-height: 20px;
}

.heading-footer {
  color: var(--white);
  text-align: left;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-top: 3px;
  margin-bottom: 32px;
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
}

.link-footer {
  color: var(--white);
  letter-spacing: 1px;
  padding-top: 7px;
  padding-bottom: 7px;
  font-size: 16px;
  font-weight: 500;
  line-height: 130%;
  text-decoration: none;
  transition: color .25s cubic-bezier(.215, .61, .355, 1);
}

.link-footer:hover {
  color: var(--white);
}

.link-footer.hidden {
  display: none;
}

.text-footer-down {
  color: #d0d7df;
  font-size: 12px;
  line-height: 130%;
}

.link-footer-down {
  opacity: .53;
  color: var(--white);
  text-decoration: none;
  transition: color .25s cubic-bezier(.215, .61, .355, 1);
}

.link-footer-down:hover {
  color: var(--paragraphs-dark);
}

.grid-social {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-flow: column;
}

.icon-social {
  width: 20px;
  max-width: none;
  height: 20px;
}

.link-social {
  transition: opacity .25s cubic-bezier(.215, .61, .355, 1);
}

.link-social:hover {
  opacity: .5;
}

.block-hero-a {
  z-index: 20;
  background-image: linear-gradient(#0000, #000c);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 140px 50px 50px;
  display: flex;
  position: relative;
}

.section-hero-b {
  z-index: 10;
  background-color: #0000;
  flex-direction: row;
  justify-content: center;
  align-items: stretch;
  width: 100%;
  min-height: 85vh;
  margin-bottom: 14px;
  display: flex;
  position: relative;
}

.grid-hero-b {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  width: 100%;
}

.link-hero-b {
  width: 100%;
  height: 100%;
  text-decoration: none;
}

.image-hero-b {
  z-index: 10;
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
}

.hero-b {
  z-index: 20;
  background-image: linear-gradient(to top, #000c, #0000);
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  width: 100%;
  padding: 180px 40px 40px;
  display: flex;
  position: relative;
}

.block-hero-service {
  width: 100%;
  margin-top: 15px;
}

.block-hero-b {
  background-color: var(--background);
  justify-content: center;
  align-items: flex-end;
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
  overflow: hidden;
}

.extra {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-top: 50px;
  padding-bottom: 50px;
  display: flex;
}

.heading-extra {
  max-width: 920px;
  margin-bottom: 34px;
  line-height: 140%;
}

.block-accent {
  background-color: #e0010000;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 0 7%;
  display: flex;
}

.image-bg-accent {
  background-image: url('../images/WhatsApp-Image-2025-08-12-at-7.31.59-PM.jpeg');
  background-position: 50%;
  background-size: cover;
  min-height: 670px;
}

.services {
  width: 25%;
}

.link-image-services {
  width: 100%;
  margin-bottom: 22px;
  transition: opacity .35s cubic-bezier(.215, .61, .355, 1);
  display: block;
}

.link-image-services:hover {
  opacity: .8;
}

.image-services {
  object-fit: cover;
  width: 100%;
  height: 170px;
}

.link-block-services {
  width: 100%;
  text-decoration: none;
  display: block;
}

.block-services {
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 20px;
  display: flex;
}

.heading-services {
  letter-spacing: 0;
  max-width: 310px;
  margin-bottom: -5px;
  font-size: 20px;
}

.section-hero-c {
  z-index: 10;
  background-color: #0000;
  flex-direction: row;
  justify-content: center;
  align-items: stretch;
  width: 100%;
  height: 97vh;
  min-height: auto;
  margin-top: -127px;
  margin-bottom: 14px;
  display: flex;
  position: relative;
}

.section-hero-c.hidden {
  display: none;
}

.grid-hero-c {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1.3fr;
  width: 100%;
}

.block-hero-c {
  background-color: var(--background);
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  height: 100%;
  padding: 127px 6% 0;
  display: flex;
}

.hero-c {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  max-width: 650px;
  display: flex;
}

.grid-image-hero-c {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  grid-template-rows: 1fr .25fr 1.2fr;
  grid-template-columns: 1.4fr 1fr;
}

.image-bg-hero-c1 {
  background-image: url('../images/WhatsApp-Image-2025-08-12-at-4.27.09-AM.jpeg');
  background-position: 50%;
  background-size: cover;
}

.image-bg-hero-c2 {
  background-image: url('../images/WhatsApp-Image-2025-09-27-at-8.07.22-PM.jpeg');
  background-position: 0%;
  background-size: cover;
}

.image-bg-hero-c3 {
  background-image: url('../images/WhatsApp-Image-2025-08-17-at-5.31.43-AM.jpeg');
  background-position: 50%;
  background-size: cover;
}

.image-bg-hero-c4 {
  background-image: url('../images/F0BFBD9B-E6C6-4850-B5AF-4E6643EC14CF-scaled.jpeg');
  background-position: 75%;
  background-size: cover;
}

.section-top {
  z-index: 10;
  background-color: var(--background);
  flex-direction: row;
  justify-content: center;
  align-items: stretch;
  width: 100%;
  margin-bottom: 14px;
  padding: 200px 50px 110px;
  display: flex;
  position: relative;
}

.section-top.vertical {
  flex-direction: column;
  align-items: flex-start;
  padding-top: 150px;
}

.grid-services {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  grid-template-rows: auto;
}

.services-page {
  background-color: var(--white);
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  min-height: 600px;
  padding: 10% 12%;
  display: flex;
}

.text-service-page {
  color: var(--heading);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
}

.block-services-page {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
  display: flex;
}

.text-services-page {
  width: 100%;
}

.collection-list-blog-page {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.link-image-blog {
  width: 100%;
  transition: opacity .35s cubic-bezier(.215, .61, .355, 1);
}

.link-image-blog:hover {
  opacity: .8;
}

.image-blog {
  object-fit: cover;
  width: 100%;
  height: 360px;
}

.block-blog-page {
  background-color: var(--white);
  padding: 9% 11% 11%;
}

.collection-list-project-page {
  grid-column-gap: 30px;
  grid-row-gap: 80px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.text-field {
  border-style: none none solid;
  border-width: 1px;
  border-color: black black var(--white);
  background-color: var(--white);
  height: 52px;
  color: var(--heading);
  margin-bottom: 0;
  padding: 12px 20px;
  font-size: 18px;
  line-height: 130%;
  transition: border-color .35s cubic-bezier(.215, .61, .355, 1);
}

.text-field:focus {
  border-bottom-color: var(--accent);
}

.text-field::placeholder {
  color: #101b2280;
}

.form {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.form-block {
  margin-top: 5px;
  margin-bottom: 5px;
}

.textarea {
  border-style: none none solid;
  border-width: 1px;
  border-color: black black var(--white);
  background-color: var(--white);
  min-width: 100%;
  max-width: 100%;
  min-height: 150px;
  max-height: 350px;
  color: var(--heading);
  margin-bottom: 14px;
  padding: 12px 20px;
  font-size: 18px;
  line-height: 130%;
  transition: border-color .35s cubic-bezier(.215, .61, .355, 1);
}

.textarea:focus {
  border-bottom-color: var(--accent);
}

.textarea::placeholder {
  color: #101b2280;
}

.submit-button {
  background-color: var(--heading);
  color: var(--white);
  text-align: center;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 23px 35px;
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
  transition: color .35s cubic-bezier(.215, .61, .355, 1), background-color .35s cubic-bezier(.215, .61, .355, 1);
}

.submit-button:hover {
  background-color: var(--red-2);
  color: var(--background);
}

.success-message {
  background-color: #95daaa;
  padding: 24px;
}

.error-message {
  text-align: center;
  background-color: #ffaeae;
  margin-top: 16px;
  padding: 22px;
}

.image-bg-map {
  background-image: none;
  background-size: auto;
  height: 100%;
  min-height: auto;
}

.link-contact {
  width: 100%;
  text-decoration: none;
}

.contact {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
  display: flex;
}

.text-contact {
  text-align: right;
  margin-left: auto;
  font-size: 18px;
  font-weight: 500;
  line-height: 130%;
}

.icon-contact {
  width: 18px;
  max-width: none;
  height: 18px;
  margin-right: 8px;
}

.info-contact {
  align-items: center;
  margin-right: 20px;
  display: flex;
}

.grid-contacts {
  grid-column-gap: 0px;
  grid-row-gap: 20px;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  width: 100%;
}

.section-top-img {
  z-index: 10;
  background-color: var(--background);
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  min-height: 50vh;
  margin-top: 120px;
  margin-bottom: 14px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.block-top-img {
  z-index: 20;
  background-image: linear-gradient(#0000, #000c);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 140px 50px 50px;
  display: flex;
  position: relative;
}

.background-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  inset: 0%;
}

.grid-stats-full {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  grid-template-rows: auto;
}

.image-bg-about {
  background-image: url('../images/WhatsApp-Image-2025-08-12-at-4.27.09-AM.jpeg');
  background-position: 50%;
  background-size: cover;
  min-height: auto;
}

.grid-4-columns-full {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  width: 100%;
}

.grid-4-columns-full.hidden {
  display: flex;
}

.grid-image-about {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  width: 100%;
  height: 740px;
}

.image-bg-about-a1 {
  background-image: url('../images/WhatsApp-Image-2025-08-12-at-7.31.59-PM.jpeg');
  background-position: 50%;
  background-size: cover;
}

.image-bg-about-a2 {
  background-image: url('../images/IMG_5352-scaled-B.jpg');
  background-position: 0%;
  background-size: cover;
}

.image-bg-about-a3 {
  background-image: url('../images/WhatsApp-Image-2025-08-17-at-5.31.43-AM.jpeg');
  background-position: 50%;
  background-size: cover;
}

.image-bg-about-a4 {
  background-image: url('../images/Solar-Panel-Cleaning.jpg');
  background-position: 100%;
  background-size: cover;
}

.grid-project-page {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1.5fr;
  width: 100%;
  margin-bottom: 14px;
  position: relative;
}

.project-content {
  background-color: var(--background);
  padding: 200px 17% 75px;
}

.image-project-page {
  object-fit: cover;
  width: 100%;
  height: 98vh;
  position: sticky;
  top: 14px;
}

.utility-page-wrap {
  background-color: var(--background);
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 97vh;
  min-height: auto;
  margin-bottom: 14px;
  padding: 200px 50px 110px;
  display: flex;
}

.utility-page-content {
  text-align: center;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 310px;
  display: flex;
}

.utility-page-form {
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-items: stretch stretch;
  width: 100%;
  display: grid;
}

.space {
  background-color: var(--border);
  width: 100%;
  height: 1px;
  margin-top: 60px;
  margin-bottom: 60px;
}

.grid-colors {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  width: 100%;
}

.block-color {
  border: 1px solid var(--border);
  background-color: var(--white);
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  height: 110px;
  padding: 18px;
  display: flex;
}

.block-color.background {
  background-color: var(--background);
}

.block-color.border {
  background-color: var(--border);
}

.block-color.heading {
  background-color: var(--heading);
}

.block-color.paragraphs {
  background-color: var(--paragraphs);
}

.block-color.accent {
  background-color: var(--accent);
}

.block-color.paragraphs-dark {
  background-color: var(--paragraphs-dark);
}

.block-color.info-text {
  background-color: var(--info-text);
}

.text-color {
  color: var(--heading);
  font-size: 16px;
  font-weight: 500;
  line-height: 140%;
}

.text-color.white {
  color: var(--white);
}

.hex-color {
  opacity: .5;
  color: var(--heading);
  text-transform: uppercase;
  font-size: 14px;
  line-height: 140%;
}

.hex-color.white {
  color: var(--white);
}

.template-info {
  background-color: var(--background);
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  padding: 20px 30px;
  display: flex;
}

.grid-button {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  grid-template-rows: auto;
  grid-template-columns: auto;
  grid-auto-columns: auto;
  grid-auto-flow: column;
  place-items: center;
}

.paragraph-hero {
  max-width: 700px;
  color: var(--white);
}

.grid-licensing {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  width: 100%;
}

.licensing {
  object-fit: cover;
  width: 100%;
  height: 300px;
}

.block-icon-licensing {
  width: 100%;
  display: inline-block;
}

.icon-licensing-bg {
  background-color: var(--background);
  margin-bottom: 18px;
  margin-right: 18px;
  display: inline-block;
}

.icon-licensing {
  object-fit: contain;
  width: 24px;
  height: 24px;
  margin: 16px;
  display: inline-block;
}

.template-font {
  margin-top: 10px;
  margin-bottom: 10px;
  margin-left: 25px;
}

.body {
  padding: 0;
}

.nav-button-2 {
  background-color: var(--red-2);
  width: 100%;
  height: auto;
  color: var(--white);
  justify-content: center;
  padding: 15px 10px;
  text-decoration: none;
  display: flex;
}

.nav-button-2.black {
  background-color: #101b22;
  padding: 15px;
  text-decoration: none;
}

.nav-button-2.form-button {
  transition: all .425s;
}

.nav-button-2.form-button:hover {
  background-color: var(--light-blue);
  color: var(--heading);
}

.text-button-2 {
  color: var(--white);
  text-align: center;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 600;
  line-height: 16px;
  text-decoration: none;
}

.text-button-2.white {
  color: #fff;
  text-align: left;
  background-color: #fff0;
  margin-top: 14px;
  margin-bottom: 10px;
  padding: 9px;
}

.text-button-2.bigger-font {
  font-size: 20px;
}

.bold-text-5 {
  color: #fff;
  font-weight: 600;
}

.bold-text-9 {
  color: #f0f6f8;
  text-transform: uppercase;
}

.form-contact {
  z-index: 99999;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  align-items: center;
  display: none;
  position: fixed;
  inset: 0%;
}

.bold-text-4 {
  color: #fdc23e;
}

.textarea-2 {
  height: auto;
  min-height: 100px;
}

.div-block-44 {
  margin-bottom: 24px;
}

.close-button-pop-up {
  z-index: 88888;
  color: #fff;
  cursor: pointer;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  display: flex;
  position: absolute;
  inset: 25px 54px auto auto;
}

.success-message-2 {
  color: #c1ae8e;
  text-align: left;
  background-color: #0000;
  padding-left: 0;
  font-size: 16px;
}

.success-message-2.center {
  text-align: center;
}

.wrap-form {
  background-color: #00000094;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 795px;
  height: 90%;
  padding: 0 36px;
  display: flex;
  position: relative;
}

.columns {
  align-items: center;
  width: 100%;
  display: flex;
}

.error-message-2 {
  color: #c74b4b;
  background-color: #0000;
  padding-left: 0;
  font-size: 16px;
}

.form-3 {
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  display: block;
}

.checkbox-label {
  margin-left: 7px;
}

.link-2 {
  color: #fdc23e;
}

.column {
  color: #fff;
  padding-left: 23px;
  padding-right: 23px;
}

.map {
  margin-bottom: 18px;
}

.load-bunner {
  background-color: #fdc23e;
  width: 50%;
  height: 100vh;
  display: flex;
  position: absolute;
  inset: 0% auto 0% 0%;
}

.load-bunner.second {
  z-index: 5;
  background-color: #fdc23e;
  display: flex;
  inset: 0% 0% 0% auto;
}

.bg-form {
  background-image: linear-gradient(#00000059, #00000059), url('../images/IMG_2201.JPEG');
  background-position: 0 0, 50%;
  background-size: auto, cover;
  justify-content: center;
  display: flex;
  position: absolute;
  inset: 0%;
}

.bold-text-10 {
  color: #f0f6f8;
  letter-spacing: 1px;
  font-size: 22px;
}

.button-2 {
  background-color: #fdc23e;
  justify-content: center;
  align-items: center;
  padding: 23px 35px;
  text-decoration: none;
  display: flex;
}

.button-2.shorter {
  color: #101b22;
  margin-top: 26px;
  padding-top: 7px;
  padding-bottom: 7px;
}

.button-2.accent {
  background-color: #fff;
}

.form-block-2 {
  z-index: 88888;
  position: relative;
}

.paragraph-2 {
  color: #f0f6f8;
  margin-bottom: 3px;
}

.checkbox-field {
  align-items: center;
  display: flex;
}

.heading-2 {
  color: #fdc23e;
}

.close-line {
  z-index: 88888;
  background-color: #fff;
  width: 30px;
  height: 2px;
  padding-left: 0;
  position: absolute;
  left: 0;
  transform: rotate(-45deg);
}

.close-line._2 {
  z-index: 88888;
  width: 30px;
  height: 2px;
  left: 0;
  transform: rotate(45deg);
}

.success-text {
  color: #f0f6f8;
}

.div-block-45 {
  flex-direction: column;
  width: auto;
  height: auto;
  padding-left: 0;
  padding-right: 0;
  display: flex;
}

.paragraph-40 {
  background-color: #0000;
  width: 100%;
  margin-top: 1px;
  margin-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 100%;
  line-height: 28px;
}

.close-link-2 {
  clear: none;
  color: #000;
  margin-bottom: 32px;
  text-decoration: none;
  display: none;
  position: static;
}

.close-link-2:hover {
  color: #ed0808;
}

.italic-text-11 {
  color: #000;
  font-size: 18px;
  display: none;
}

.link-23 {
  color: #fff;
  text-align: right;
  letter-spacing: 1px;
  margin-bottom: 0;
  margin-left: 0;
  margin-right: 16px;
  font-size: 16px;
  font-weight: 400;
  text-decoration: none;
}

.form-2 {
  flex-direction: column;
  align-items: stretch;
  display: flex;
}

.button-text-2 {
  color: #fff;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-left: 0;
  font-size: 12px;
  font-weight: 400;
  line-height: 22px;
  position: relative;
}

.italic-text-12 {
  color: #000;
  font-size: 26px;
}

.flex-form {
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.bold-text-61 {
  color: var(--red);
  text-transform: uppercase;
  font-size: 140%;
  font-weight: 600;
}

.modal-wrapper-2 {
  z-index: 99999;
  text-align: center;
  background-color: #000000a1;
  height: 100%;
  padding-top: 81px;
  display: none;
  position: fixed;
  inset: 0%;
}

.modal-wrapper-2.modal-2 {
  z-index: 2147483647;
  grid-column-gap: 11px;
  grid-row-gap: 11px;
  background-color: #000000c2;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100vh;
  min-height: auto;
  padding-top: 32px;
  display: none;
  position: fixed;
}

.button-wrapper {
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  width: 300px;
  margin-top: 30px;
  display: flex;
}

.button-wrapper.product {
  flex-direction: row;
  justify-content: center;
  margin-top: 0;
}

.button-link-2 {
  letter-spacing: 1px;
  text-transform: uppercase;
  background-color: #358cc2;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  width: 200px;
  height: 50px;
  font-size: 12px;
  text-decoration: none;
  transition: all .3s;
  display: flex;
  position: relative;
  overflow: hidden;
}

.button-link-2:hover {
  background-color: #e93914;
}

.image-27 {
  width: 70%;
  max-width: none;
  margin-top: 12px;
  margin-bottom: 17px;
}

.error-message-color {
  color: #fff;
  text-align: center;
  background-color: #ef3b31;
  height: auto;
  margin-top: 20px;
  padding-top: 7px;
  padding-bottom: 7px;
  font-size: 16px;
  line-height: 20px;
}

.text-field-contact {
  background-color: var(--white);
  color: #677081;
  border: 1px #eaeaea;
  border-bottom: 1px solid #dde1e7;
  width: 100%;
  margin-bottom: 20px;
  font-size: 16px;
  line-height: 24px;
}

.text-field-contact:hover {
  border-bottom-color: #142335;
}

.div-block-56 {
  justify-content: center;
  width: 100%;
  display: flex;
}

.form-block-5 {
  width: 100%;
  padding-left: 15px;
  padding-right: 15px;
}

.text-button-div {
  align-items: center;
  display: flex;
  position: static;
}

.blue-block-2 {
  background-color: #e93914;
  justify-content: center;
  align-items: center;
  width: 50px;
  display: flex;
  position: absolute;
  inset: 0%;
}

.success-message-color {
  color: #fff;
  background-color: #00b3ac;
  padding-top: 14px;
  padding-bottom: 14px;
  line-height: 22px;
}

.paragraph-29 {
  color: #ffcb05;
  justify-content: center;
  font-family: Montserrat, sans-serif;
  font-size: 18px;
  line-height: 24px;
  display: none;
}

.italic-text-25 {
  color: #1c69a7;
  font-size: 18px;
  font-weight: 400;
}

.pop-up-wrapper-2 {
  opacity: 1;
  text-align: center;
  background-color: #fff;
  background-image: linear-gradient(#ffffffbf, #ffffffbf), url('../images/iShine-Logo-Blue.png');
  background-position: 0 0, -20% 100%;
  background-repeat: repeat, no-repeat;
  background-size: auto, auto;
  border: 2px solid #247cff;
  flex-direction: column;
  align-items: center;
  width: 600px;
  margin-top: 0;
  margin-left: auto;
  margin-right: auto;
  padding: 0 15px 3px;
  display: flex;
}

.bold-text-60 {
  color: #666f77;
  margin-bottom: 16px;
  font-size: 15px;
  font-weight: 500;
  line-height: 18px;
  display: inline-block;
}

.italic-text-26 {
  color: #666f77;
  font-size: 16px;
  font-weight: 400;
  line-height: 20px;
}

.paragraph-32 {
  background-color: #0000;
  margin-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 14px;
  line-height: 20px;
}

.arrow-button {
  background-image: url('../images/Right-arrow.svg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: 18px;
  width: 25px;
  height: 25px;
}

.text-area {
  color: #677081;
  border: 1px #000;
  border-bottom: 1px solid #dde1e7;
  height: 50px;
  min-height: 100px;
  padding-top: 8px;
  font-size: 16px;
}

.text-area:hover {
  border-bottom-color: #142335;
}

.bold-text-62 {
  color: var(--paragraphs-dark);
}

.white-text {
  color: var(--white);
}

.paragraph-41 {
  margin-bottom: 0;
  font-size: 24px;
}

.bold-text-63 {
  color: var(--background);
}

.link-24 {
  color: var(--paragraphs-dark);
  text-decoration: none;
}

.slider {
  background-color: #ddd0;
  justify-content: flex-start;
  align-items: center;
  display: flex;
  position: static;
}

.opacity-0 {
  display: none;
}

.slide-nav {
  opacity: .63;
  justify-content: flex-start;
  align-items: flex-end;
  display: flex;
  inset: auto 0% -28%;
}

.mask {
  height: auto;
}

.star-image {
  background-image: url('../images/Google-Stars.png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  width: 16px;
  height: 16px;
  margin-right: 4px;
  padding-left: 2px;
  padding-right: 2px;
}

.grid {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
}

.grid-2 {
  width: 100%;
  max-width: 1200px;
  display: flex;
}

.map-2 {
  height: 100%;
  min-height: 100%;
}

.heading-3 {
  color: #343e52;
  text-align: center;
  margin-top: 10px;
  margin-bottom: 0;
  font-size: 36px;
  font-weight: 400;
  line-height: 46px;
}

.corner-line-horizontal {
  z-index: 99;
  transform-origin: 0%;
  background-color: #000;
  border-radius: 100px;
  width: 50px;
  height: 3px;
  margin-top: -2px;
  margin-left: -2px;
  position: absolute;
  inset: 0% auto auto 0%;
}

.corner-line-horizontal.features-line {
  background-color: #e93914;
  border-radius: 0;
  width: 20%;
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 0;
  inset: auto auto 0% 0%;
}

.corner-line-horizontal.features-line-righ {
  background-color: var(--red-2);
  border-radius: 0;
  width: 100%;
  margin: 0;
  inset: auto 0% 0% auto;
}

.submit-card {
  text-align: center;
  background-color: #fff;
  border: 1px solid #dde1e7;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  max-width: 630px;
  margin-left: -100px;
  padding: 50px;
  display: flex;
  position: relative;
  left: auto;
}

.container-wrapper {
  z-index: 10;
  grid-column-gap: 41px;
  grid-row-gap: 41px;
  flex-flow: column;
  flex: 1;
  order: 0;
  justify-content: space-between;
  align-self: auto;
  align-items: stretch;
  width: 100%;
  max-width: none;
  height: 100%;
  padding-left: 93px;
  padding-right: 93px;
  display: flex;
  position: relative;
}

.submit-wrapper {
  flex-direction: column;
  align-items: center;
  width: 70%;
  max-width: 370px;
  display: flex;
}

.contact-image-div {
  width: 70%;
  margin-left: 0;
  padding-left: 0;
}

.image-left-contact {
  background-image: url('../images/IMG_5644.png');
  background-position: 50% 30%;
  background-size: cover;
  width: 100%;
  height: 600px;
  margin-top: 0;
  margin-bottom: 0;
}

.social-link {
  opacity: .65;
  background-color: #0000;
  background-image: url('../images/X-Twitter-Icon.svg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: 12px;
  border: 1px solid #9d9e9d;
  border-radius: 0%;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  margin-right: 5px;
  padding: 10px;
  display: flex;
  filter: invert(1);
}

.social-link:hover {
  opacity: 1;
}

.social-link.instagram {
  background-color: #0000;
  background-image: url('../images/instagram.svg');
  background-size: 12px;
  border-style: solid;
  border-radius: 0%;
  justify-content: center;
  align-items: center;
  margin-right: 5px;
  transition: opacity .4s;
  display: flex;
  filter: invert(1);
}

.social-link.facebook {
  background-image: url('../images/facebook.svg');
  background-size: 14px;
  border-radius: 0%;
  filter: invert(1);
}

.social-link.facebook.last {
  margin-right: 0;
}

.follow-text {
  color: #343e52;
  margin-bottom: 16px;
  font-weight: 500;
}

.top-header {
  color: var(--red-2);
  text-align: center;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-top: 10px;
  margin-bottom: 0;
  font-size: 12px;
  font-weight: 400;
  display: inline-block;
}

.div-content {
  z-index: 10;
  flex-direction: column;
  align-items: flex-start;
  margin-left: auto;
  margin-right: auto;
  padding: 0 60px 0 0;
  display: flex;
  position: relative;
}

.div-content.tittle-in-div {
  text-align: center;
  margin-bottom: 40px;
}

.div-content.tittle-in-div.center {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-bottom: 50px;
  padding-right: 0;
  display: flex;
}

.div-content.tittle-in-div.center.subscribe {
  margin-bottom: 20px;
}

.section-2 {
  background-color: #dde1e778;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: auto;
  padding: 100px 50px 170px;
  display: flex;
  position: relative;
}

.section-2.no-padding-top {
  background-color: #dde1e778;
  width: 100vw;
  padding: 0;
  display: flex;
}

.social-wrapper {
  display: flex;
}

.social-wrapper.in-form {
  text-align: center;
  justify-content: center;
  align-items: center;
  width: 50%;
}

.contact-row {
  background-color: #fff;
  justify-content: center;
  align-items: center;
  display: flex;
}

.contact-row.padding-top-bottom {
  padding-top: 51px;
  padding-bottom: 51px;
}

.image-28 {
  width: 100vw;
  height: auto;
  padding-top: 0;
  padding-bottom: 0;
  position: absolute;
  inset: -62% 0% auto;
  overflow: hidden;
}

.image-28.janitorial-image {
  height: 100%;
}

.image-28.solr-panel-cleaning {
  top: -6%;
}

.image-28.pressure-washing {
  top: -18%;
}

.image-28.gutter-eavsthrough {
  top: -12%;
}

.image-28.commercial-cleaning {
  top: -160%;
}

.heading-4 {
  font-size: 38px;
}

.image-29 {
  width: 100%;
  max-width: none;
  margin-bottom: 30px;
  padding-top: 0;
}

.grid-3 {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1.5fr;
  width: 100%;
  margin-bottom: 14px;
}

.image-30 {
  width: auto;
  max-width: none;
  height: 98vh;
  position: sticky;
  top: 14px;
}

.project-content {
  background-color: var(--background);
  padding-left: 12%;
  padding-right: 12%;
}

.heading-banner-2 {
  max-width: 700px;
  margin-bottom: 38px;
}

.icon-button-2 {
  object-fit: contain;
  width: 4px;
  max-width: none;
  height: 8px;
  margin-left: 8px;
}

.block-banner-2 {
  background-color: var(--red-2);
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 80px 17%;
  display: flex;
}

.line-subtitle-2 {
  background-color: #101b22;
  width: 27px;
  height: 1px;
}

.text-button-3 {
  color: #101b22;
  text-align: center;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
}

.block-2 {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  max-width: 550px;
  display: flex;
}

.text-subtitle-2 {
  color: #101b22;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-left: 12px;
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
}

.plus-icon-line-1 {
  background-color: #222;
  border-radius: 1px;
  width: 100%;
  height: 2px;
  margin: auto;
  position: absolute;
  inset: 0;
  transform: rotate(90deg);
}

.text-grey {
  color: #000;
  margin-bottom: 31px;
  font-size: 15px;
  line-height: 26px;
  text-decoration: none;
}

.text-grey:hover {
  color: #000;
}

.mini-faq-cards {
  flex: 1;
  padding-left: 15px;
  padding-right: 15px;
}

.plus-icon {
  opacity: .4;
  justify-content: center;
  align-items: center;
  width: 16px;
  height: 16px;
  position: relative;
}

.mini-answer {
  padding-left: 0;
}

.mini-question {
  color: #222;
  justify-content: flex-end;
  align-items: center;
  padding-top: 32px;
  padding-bottom: 32px;
  display: flex;
}

.mini-faq-card {
  cursor: pointer;
  background-color: #ffffffb3;
  border: 1px solid #adadad;
  border-radius: 8px;
  margin-bottom: 16px;
  padding-left: 32px;
  padding-right: 32px;
  overflow: hidden;
}

.mini-question-text {
  letter-spacing: 0;
  flex: 1;
  margin-top: 0;
  margin-bottom: 0;
  margin-right: 24px;
  font-size: 20px;
}

.mini-question-icon {
  margin-left: -2px;
  margin-right: 14px;
}

.plus-icon-line-2 {
  background-color: #222;
  border-radius: 1px;
  width: 100%;
  height: 2px;
  margin: auto;
  position: absolute;
  inset: 0;
}

.heading-5 {
  opacity: .94;
  letter-spacing: 0;
  font-size: 28px;
}

.paragraph-3 {
  margin-bottom: 30px;
}

.container {
  margin-top: 44px;
}

.bold-text-64 {
  color: var(--white);
  text-align: center;
  font-size: 12px;
  font-weight: 500;
  line-height: 10px;
}

.paragraph-42 {
  width: 100%;
  margin-top: 17px;
  margin-bottom: 0;
  font-size: 12px;
  line-height: 14px;
}

.div-block-57 {
  grid-column-gap: 21px;
  grid-row-gap: 21px;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.image-31 {
  width: 100vw;
  max-width: 100vw;
  position: absolute;
}

.image-32 {
  width: 70%;
  margin-bottom: 50px;
}

.nav-link-2 {
  padding: 0;
  font-size: 11px;
  position: absolute;
  inset: -26% 0% auto auto;
}

.nav-link-2.hidden {
  display: none;
}

.gallery-2 {
  padding-top: 204px;
  padding-bottom: 100px;
}

.centered-container {
  text-align: center;
  flex: 1;
  max-width: 100vw;
  margin-top: 25px;
}

.heading-47 {
  color: var(--paragraphs);
  text-align: left;
  letter-spacing: 0;
  font-family: Barlow, sans-serif;
  font-size: 38px;
}

.gallery-grid-container {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  grid-template: "."
                 "."
                 "."
                 / 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  align-self: center;
  width: 100%;
  margin-top: 40px;
  display: grid;
}

.background-video-2 {
  height: 100%;
}

.grid-4 {
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
  width: 100%;
}

.projects-gallery-section {
  max-width: 1440px;
  margin-top: 48px;
  padding: 0 32px 96px;
  text-align: left;
}

.projects-gallery-heading {
  color: var(--heading);
  margin-bottom: 28px;
  padding-bottom: 18px;
  border-bottom: 1px solid #d9e4ec;
  font-size: 42px;
  line-height: 1.1;
}

.projects-gallery-grid {
  grid-column-gap: 18px;
  grid-row-gap: 18px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-flow: dense;
  align-items: stretch;
}

.projects-gallery-grid .w-lightbox {
  background-color: #f3f7fa;
  border-radius: 8px;
  min-height: 260px;
  overflow: hidden;
  box-shadow: 0 12px 32px #0b31521f;
  transition: transform .25s ease, box-shadow .25s ease, filter .25s ease;
}

.projects-gallery-grid .w-lightbox:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 42px #0b315233;
  filter: saturate(1.05);
}

.projects-gallery-grid .w-lightbox:nth-child(12n + 1),
.projects-gallery-grid .w-lightbox:nth-child(12n + 8) {
  grid-column: span 2;
  grid-row: span 2;
}

.projects-gallery-grid .w-lightbox:nth-child(12n + 5),
.projects-gallery-grid .w-lightbox:nth-child(12n + 10) {
  grid-row: span 2;
}

.projects-gallery-grid img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  min-height: 260px;
  display: block;
  transition: transform .35s ease;
}

.projects-gallery-grid .w-lightbox:hover img {
  transform: scale(1.035);
}

.block-quote {
  font-weight: 600;
}

.text-block {
  color: var(--heading);
  font-weight: 600;
}

.bold-text-65 {
  font-weight: 700;
}

.slide {
  position: static;
}

.body-3 {
  padding-top: 0;
}

.div-block-58 {
  z-index: 99;
  position: relative;
}

.list {
  padding-left: 18px;
}

.div-block-61 {
  z-index: 0;
  position: absolute;
  inset: 0%;
  box-shadow: 0 2px 16px #0003;
}

.image-33 {
  margin-top: 13px;
}

.slide-2 {
  position: static;
}

.slider-2 {
  background-color: #ddd0;
}

.link-25 {
  color: #3db4ff;
  font-weight: 700;
  text-decoration: none;
}

.link-25:hover {
  color: #7dd3ff;
  text-decoration: underline;
}

.text-footer-down a {
  color: #3db4ff;
  font-weight: 700;
  text-decoration: none;
}

.text-footer-down a:hover {
  color: #7dd3ff;
  text-decoration: underline;
}

.bold-text-67 {
  color: var(--white);
}

.div-block-9 {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding-top: 54px;
  padding-bottom: 54px;
  display: flex;
}

.heading-48 {
  font-size: 48px;
}

.text-accent {
  color: #4b83c0;
}

.div-block-111 {
  grid-column-gap: 70px;
  grid-row-gap: 70px;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.logo-2 {
  margin-top: 41px;
  transition: all .3s, color .3s;
}

.logo-2:hover {
  transform: scale(1.2);
}

.section-3 {
  justify-content: center;
  align-items: center;
  padding: 223px 40px 80px;
  display: flex;
  position: static;
  overflow: hidden;
}

.section-3.free-trial {
  background-image: linear-gradient(#00000080, #00000080), url('../images/window-cleaning-oakville.jpeg.webp');
  background-position: 0 0, 50% 100%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
  background-attachment: scroll, fixed;
  width: 100vw;
  padding-top: 88px;
  padding-bottom: 88px;
}

.base-container {
  z-index: 5;
  flex-direction: column;
  flex: 1;
  align-items: center;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
  display: flex;
  position: relative;
}

.free-trial-wrapper {
  text-align: center;
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}

.free-trial-title {
  color: #fff;
  margin-top: 0;
  margin-bottom: 40px;
}

.primary-button {
  color: #fff;
  text-align: center;
  text-transform: none;
  background-color: #4b83c0;
  border: 1px solid #4b83c0;
  border-radius: 70px;
  padding: 20px 40px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1em;
  transition: all .3s;
  display: inline-block;
}

.primary-button:hover {
  opacity: 1;
  color: #4b83c0;
  background-color: #fff;
}

.footer-link {
  color: #fff;
  text-align: left;
  font-weight: 500;
  transition: all .3s;
}

.footer-link:hover {
  color: #41c532;
}

.footer-link.right-text {
  color: var(--heading);
  text-decoration: none;
}

.footer-link.right-text:hover {
  color: #41c532;
}

.service-details-content-wrapper {
  width: 70%;
}

.accordion-toggle {
  white-space: normal;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  padding: 10px 0;
  display: flex;
}

.service-details-content {
  grid-column-gap: 30px;
  align-items: flex-start;
  width: 100%;
  display: flex;
  position: relative;
}

.left-alignment {
  text-align: center;
}

.left-alignment.smaller-text {
  font-size: 32px;
}

.accordion-list-content {
  margin-top: 0;
  margin-bottom: 0;
}

.form-4 {
  color: #000;
  flex-direction: column;
  align-items: center;
  width: 100%;
  display: flex;
}

.text-area-2 {
  color: #000;
  background-color: #fff0;
  border: 1px #000;
  border-bottom: 1px solid #babec3;
  height: 100px;
  min-height: 130px;
  padding-top: 8px;
  font-size: 14px;
}

.text-area-2:hover {
  border-bottom-color: #142335;
}

.text-button-icon {
  justify-content: center;
  align-items: center;
  margin-top: 4px;
  margin-left: 10px;
  width: 14px;
  height: 14px;
  font-size: 0;
  line-height: 1;
  display: inline-flex;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='black' d='M2 6h7M6.2 3.2 9 6l-2.8 2.8'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='black' d='M2 6h7M6.2 3.2 9 6l-2.8 2.8'/%3E%3C/svg%3E") center / contain no-repeat;
}

.contacts-icon {
  width: 22px;
  height: 22px;
  margin: 0;
  font-size: 0;
  line-height: 1;
  color: #0a5c52;
  display: inline-block;
  flex-shrink: 0;
  background-color: currentColor;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.contacts-detail:nth-child(1) .contacts-icon {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 21s6.5-5.2 6.5-10.2A6.5 6.5 0 0 0 12 4.3a6.5 6.5 0 0 0-6.5 6.5C5.5 15.8 12 21 12 21zm0-8.2a2.2 2.2 0 1 1 0-4.4 2.2 2.2 0 0 1 0 4.4z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 21s6.5-5.2 6.5-10.2A6.5 6.5 0 0 0 12 4.3a6.5 6.5 0 0 0-6.5 6.5C5.5 15.8 12 21 12 21zm0-8.2a2.2 2.2 0 1 1 0-4.4 2.2 2.2 0 0 1 0 4.4z'/%3E%3C/svg%3E");
}

.contacts-detail:nth-child(2) .contacts-icon {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7.2 3.5h3.1l1.2 4.2-2 1.2a11 11 0 0 0 5.6 5.6l1.2-2 4.2 1.2v3.1c0 .8-.7 1.5-1.5 1.5C10.5 18.3 5.7 13.5 5.7 5c0-.8.7-1.5 1.5-1.5z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7.2 3.5h3.1l1.2 4.2-2 1.2a11 11 0 0 0 5.6 5.6l1.2-2 4.2 1.2v3.1c0 .8-.7 1.5-1.5 1.5C10.5 18.3 5.7 13.5 5.7 5c0-.8.7-1.5 1.5-1.5z'/%3E%3C/svg%3E");
}

.contacts-detail:nth-child(3) .contacts-icon {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3.5 5.5h17v13h-17v-13zm1.3 2 7.2 5.4 7.2-5.4'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3.5 5.5h17v13h-17v-13zm1.3 2 7.2 5.4 7.2-5.4'/%3E%3C/svg%3E");
}

.accordion-icon {
  width: 14px;
  height: 14px;
  font-size: 0;
  line-height: 1;
  color: #0a5c52;
  display: inline-block;
  flex-shrink: 0;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath fill='black' d='M1.2 1.4 6 6.2l4.8-4.8'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath fill='black' d='M1.2 1.4 6 6.2l4.8-4.8'/%3E%3C/svg%3E") center / contain no-repeat;
}

.section-4 {
  justify-content: center;
  align-items: center;
  padding: 223px 40px 80px;
  display: flex;
  position: static;
  overflow: hidden;
}

.section-4.overflow {
  background-color: var(--background);
  width: 100%;
  padding-top: 57px;
  padding-left: 20px;
  padding-right: 20px;
  overflow: visible;
}

.flex-form-2 {
  color: #000;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.rich-text-style {
  text-align: left;
}

.link-with-icon {
  transition: all .3s;
  display: flex;
}

.link-with-icon:hover {
  color: #132121;
}

.contacts-icon {
  color: #0a5c52;
  margin-top: 0;
  margin-bottom: 0;
  margin-right: 15px;
  font-family: inherit;
}

.success-message-color-2 {
  color: #fff;
  background-color: #00b3ac;
}

.service-details-sidebar-contacts {
  grid-row-gap: 10px;
  flex-direction: column;
  margin-top: 20px;
  margin-bottom: 30px;
  display: flex;
}

.text-field-contact-2 {
  color: #000;
  background-color: #0000;
  border: 1px #eaeaea;
  border-bottom: 1px solid #babdc2;
  width: 100%;
  margin-bottom: 20px;
  margin-left: 6px;
  margin-right: 6px;
  font-size: 14px;
  line-height: 24px;
}

.text-field-contact-2:hover {
  border-bottom-color: #142335;
}

.accordion-item {
  background-color: #fff;
  width: 100%;
  margin-bottom: 30px;
  padding: 20px 30px;
  position: static;
  box-shadow: 0 0 20px #0000000f;
}

.accordion-icon {
  margin-top: 10px;
  margin-bottom: 10px;
  margin-left: 20px;
  font-family: inherit;
  font-size: 0;
  line-height: 24px;
}

.accordion-wrap-one-column {
  flex-direction: column;
  width: 100%;
  display: flex;
}

.service-details-sidebar-wrapper {
  background-color: #c6ddf6;
  width: auto;
  margin-bottom: 28px;
  padding: 20px 40px 30px;
  position: sticky;
  top: 160px;
  box-shadow: 0 0 20px #0000000f;
}

.error-message-color-2 {
  color: #fff;
  text-align: center;
  background-color: #ef3b31;
  height: auto;
  margin-top: 20px;
  padding-top: 20px;
  padding-bottom: 20px;
}

.div-block-62 {
  background-color: var(--white);
  padding: 16px;
  position: sticky;
  top: 135px;
}

.contacts-detail {
  border: 1px #000;
  align-items: center;
  padding-left: 4px;
  display: flex;
}

.accordion-list {
  background-color: #0000;
  width: 100%;
  display: block;
  position: static;
  overflow: hidden;
}

.accordion-list.w--open {
  background-color: #0000;
  padding-top: 0;
  padding-bottom: 20px;
  display: block;
}

.accordion-wrapper {
  grid-column-gap: 30px;
  width: 100%;
  display: flex;
}

.accordion-wrapper.service-details {
  margin-top: 60px;
}

.form-block-6 {
  border: 5px solid #4b83c0;
  padding: 8px;
}

.font-color-white {
  color: #fff;
  font-size: 20px;
}

.hover-slider-left {
  background-color: #000;
  width: 50%;
  position: absolute;
  inset: 0% auto 0% 0%;
}

.main-button {
  background-color: #fd4f4f;
  border: 1px #0000;
  border-radius: 8px;
  width: auto;
  position: relative;
  overflow: hidden;
}

.main-button:hover {
  border-style: none;
  border-color: #ee2e62;
}

.hover-slider-right {
  background-color: #000;
  width: 50%;
  position: absolute;
  inset: 0% 0% 0% auto;
}

.button-text-main {
  text-align: center;
  letter-spacing: -.32px;
  text-transform: capitalize;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  display: flex;
}

.marquee-main {
  flex-flow: column;
  justify-content: space-between;
  align-items: stretch;
  width: 100%;
  padding-left: 0;
  position: relative;
  top: 337px;
  left: 0;
  transform: rotate(90deg);
}

.features-card {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  text-align: center;
  background-color: #f4f4f4;
  border: 1px solid #00000014;
  border-radius: 15px;
  justify-content: flex-start;
  align-items: center;
  max-width: 408px;
  padding: 30px 30px 12px;
  overflow: hidden;
}

.features-card.center {
  perspective: 2000px;
  text-align: left;
  background-color: #6a37ae;
  border-style: none;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: none;
  padding: 0;
}

.features-card.center.position-relative {
  background-color: #6a37ae00;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: none;
  height: 100%;
  padding: 0;
}

.feature-marquee-image {
  min-width: 90px;
  box-shadow: -20px 38px 30px #0003;
}

.feature-marquee-image.border-radius-fifteen {
  box-shadow: none;
  width: 100%;
  min-width: auto;
  max-width: none;
}

.button-text-wrapper {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  justify-content: center;
  align-items: center;
  padding: 20px 30px;
  display: flex;
  position: relative;
}

.hover-slider-bottom {
  background-color: #000;
  height: 51%;
  position: absolute;
  inset: auto 0% 0%;
}

.hover-slider-top {
  background-color: #000;
  height: 51%;
  position: absolute;
  inset: 0% 0% auto;
}

.features-card-overlay {
  z-index: 2;
  background-image: linear-gradient(319deg, #0000 31%, #1d0b3863 53%, #40197ab5 67%, #6527c1e0 81%, #5415b2);
  display: flex;
  position: absolute;
  inset: 0%;
}

.button-hover-slider-wrapper {
  position: absolute;
  inset: 0%;
}

.marquee-train {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex: none;
  padding-right: 20px;
}

.marquee-train.reverse {
  grid-column-gap: 15px;
  grid-row-gap: 15px;
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  padding-right: 0;
  overflow: hidden;
}

.features-card-text {
  z-index: 3;
  grid-column-gap: 15px;
  grid-row-gap: 15px;
  justify-content: space-between;
  align-items: flex-start;
  height: 100%;
  position: relative;
}

.features-section-marquee {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  justify-content: space-between;
  align-items: stretch;
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 20.2vh;
  left: 0;
  right: 0;
}

.heading-style-h5 {
  color: #000;
  letter-spacing: -.6px;
  text-transform: capitalize;
  font-size: 30px;
  font-weight: 500;
  line-height: 30px;
}

.heading-style-h5.font-color-white {
  color: #fff;
  line-height: 36px;
}

.div-block-139 {
  grid-column-gap: 19px;
  grid-row-gap: 19px;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  margin-top: 4px;
  margin-bottom: 4px;
  display: flex;
}

.marquee-main-2 {
  justify-content: flex-start;
  align-items: center;
  width: auto;
  height: auto;
  padding-left: 0;
  position: static;
  left: 0;
  transform: rotate(0);
}

.features-section-marquee-2 {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  width: auto;
  height: auto;
  position: absolute;
  inset: 0% 0% auto;
  transform: rotate(90deg);
}

.div-block-140 {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex-flow: column;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  height: auto;
  min-height: auto;
  max-height: none;
  display: flex;
  position: absolute;
  transform: rotate(90deg);
}

.div-block-141 {
  width: 100%;
  height: 100%;
}

.div-block-142, .div-block-143 {
  width: 100%;
  transform: rotate(90deg);
}

.image-86 {
  width: 100%;
  height: 100%;
  overflow: visible;
}

.div-block-144 {
  width: 100%;
}

.image-87 {
  height: 100%;
  transform: rotate(-90deg);
}

.column-2 {
  padding-left: 0;
  padding-right: 0;
}

.columns-2 {
  display: none;
}

.features-section-marquee-3 {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  height: 450px;
  position: absolute;
  inset: 0% auto auto 0%;
  transform: rotate(90deg);
}

.marquee-main-3 {
  justify-content: flex-start;
  align-items: center;
  width: 55%;
  padding-left: 0;
  position: relative;
  left: 0;
  overflow: hidden;
}

.marquee-main-3._2nd {
  width: 45%;
}

.flex-block {
  width: 100%;
  height: 100%;
  transform: rotate(0);
}

.div-block-145 {
  grid-column-gap: 15px;
  grid-row-gap: 15px;
  flex-flow: row;
  width: 100%;
  height: auto;
  display: flex;
}

.flex-block-2 {
  justify-content: space-between;
  align-items: flex-end;
}

.div-block-146 {
  width: 55%;
  height: 100%;
}

.div-block-147 {
  width: 43.5%;
}

.div-block-148 {
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
  overflow: hidden;
}

.image-88 {
  width: 100%;
  max-width: none;
  height: 100%;
  overflow: hidden;
}

.section-5 {
  z-index: 999;
  width: 100vw;
  padding-left: 0;
  padding-right: 0;
  position: sticky;
  top: 0;
  bottom: 0;
}

.navbar-2 {
  background-color: #fff;
  width: 100vw;
  padding: 13px 15px;
  position: fixed;
  top: 0;
}

.image-89 {
  width: 80%;
  max-width: none;
}

.bold-text-68 {
  text-decoration: none;
}

.link-26 {
  font-size: 24px;
  text-decoration: none;
}

.list-item-2 {
  padding-top: 0;
  padding-bottom: 0;
}

.list-2 {
  padding-left: 20px;
}

.div-block-149 {
  margin-bottom: 30px;
}

.bold-text-69 {
  color: var(--light-blue);
}

.paragraph-51 {
  margin-bottom: 10px;
  line-height: 24px;
}

.paragraph-52 {
  margin-bottom: 10px;
}

.bold-text-70 {
  color: var(--red-2);
  font-weight: 600;
}

.bold-text-71 {
  color: var(--light-blue);
  font-weight: 700;
}

.link-27 {
  text-decoration: none;
}

.div-block-70 {
  background-color: #01052421;
  width: 100%;
  padding: 8px;
}

.div-block-68 {
  width: 100%;
}

.footer-brand-wrapper-2 {
  flex-direction: column;
  align-items: flex-start;
  width: auto;
  display: flex;
}

.div-block-69 {
  text-align: center;
  align-self: center;
  width: 100%;
}

.heading-52 {
  color: var(--white);
  letter-spacing: 2px;
  margin-bottom: 7px;
  font-size: 18px;
}

.paragraph-4 {
  color: #ffffffa1;
  letter-spacing: 1px;
  margin-bottom: 0;
  font-size: 15px;
  font-weight: 500;
}

.link {
  color: var(--light-blue);
  text-decoration: none;
}

.link:hover {
  color: #ffad81;
}

.bold-text-73 {
  color: #acd2fc;
  text-decoration: none;
}

.area-link {
  color: #afd5ff;
  font-weight: 400;
  text-decoration: none;
}

.area-link.white-text {
  color: #dcedff;
}

.div-block-150 {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  flex-flow: row;
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.div-block-151 {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  width: 100%;
  display: flex;
}

.div-block-152 {
  width: 100%;
}

@media screen and (min-width: 1280px) {
  .section-hero-c.hidden {
    display: none;
  }

  .block-hero-c {
    height: 100%;
    padding-top: 134px;
    padding-bottom: 0;
  }

  .section-3 {
    padding-top: 130px;
    padding-bottom: 130px;
  }

  .service-details-content {
    grid-column-gap: 80px;
  }

  .section-4 {
    padding-top: 130px;
    padding-bottom: 130px;
  }

  .service-details-sidebar-wrapper {
    top: 152px;
  }

  .marquee-main {
    width: 90%;
  }

  .features-card-overlay {
    background-image: linear-gradient(225deg, #0000 40%, #135e4fcc);
  }

  .features-card-text {
    width: 100%;
  }

  .marquee-main-2, .marquee-main-3 {
    width: 90%;
  }

  .div-block-146, .div-block-147 {
    height: 100%;
  }

  .div-block-148 {
    justify-content: space-between;
    align-items: stretch;
    height: 100%;
  }

  .image-88 {
    width: 100%;
    height: 100%;
  }
}

@media screen and (max-width: 991px) {
  body {
    padding: 10px;
  }

  h1 {
    font-size: 60px;
  }

  h2 {
    font-size: 48px;
  }

  h3 {
    font-size: 38px;
  }

  h4 {
    font-size: 30px;
  }

  h5 {
    font-size: 24px;
  }

  .section-hero-a {
    margin-bottom: 10px;
  }

  .nav-block {
    z-index: 2;
    position: relative;
  }

  .logo {
    width: 60%;
  }

  .brand {
    width: 400px;
    margin-left: 0;
    margin-right: 0;
  }

  .nav-menu {
    background-color: var(--background);
    width: 100%;
    padding: 0 20px 20px;
  }

  .nav-link {
    padding: 20px 10px;
  }

  .nav-button {
    margin-left: 0;
    padding: 20px 10px;
  }

  .text-button, .text-button.white {
    font-size: 12px;
  }

  .icon-button.yellow.lower-down {
    color: var(--heading);
  }

  .menu-button {
    background-color: var(--red-2);
    color: var(--heading);
    padding: 7px;
    font-size: 22px;
    line-height: 100%;
    transition: color .25s cubic-bezier(.215, .61, .355, 1), background-color .25s cubic-bezier(.215, .61, .355, 1);
  }

  .menu-button.w--open {
    background-color: var(--heading);
    color: var(--white);
  }

  .icon-menu {
    color: var(--white);
    font-size: 40px;
  }

  .dropdown {
    width: 100%;
  }

  .dropdown-toggle {
    width: 100%;
    padding: 20px 10px;
  }

  .dropdown-link {
    text-align: center;
  }

  .dropdown-list.w--open {
    left: 0;
  }

  .dropdown-list-block {
    width: 100%;
  }

  .heading-hero {
    letter-spacing: 0;
    max-width: none;
    font-size: 40px;
  }

  .heading-hero.size-vw {
    margin-bottom: 14px;
  }

  .heading-hero.dark {
    font-size: 38px;
  }

  .grid-hero-services {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .section {
    margin-bottom: 10px;
    padding: 49px 20px;
  }

  .section.padding {
    padding-top: 40px;
    padding-bottom: 50px;
  }

  .section.background-colour {
    padding-top: 53px;
    padding-bottom: 53px;
  }

  .grid-2-columns {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .grid-stats {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-template-columns: 1fr;
    grid-auto-flow: row;
  }

  .button {
    padding: 10px;
    font-size: 14px;
  }

  .button.dark {
    padding: 13px;
  }

  .button.dark.red-button {
    background-position: 90%;
    padding-left: 38px;
    padding-right: 38px;
  }

  .paragraph {
    font-size: 16px;
  }

  .paragraph.white {
    color: var(--paragraphs-dark);
    font-size: 14px;
    line-height: 140%;
  }

  .text-subtitle {
    font-size: 14px;
  }

  .text-subtitle.white {
    font-size: 10px;
  }

  .heading {
    letter-spacing: 0;
    max-width: none;
    font-size: 32px;
  }

  .heading.white {
    letter-spacing: 1px;
    font-size: 28px;
  }

  .numbers-stats, .numbers-stats.full {
    font-size: 48px;
  }

  .icon {
    width: 100%;
  }

  .section-full {
    margin-bottom: 10px;
    padding: 27px 0 0;
  }

  .section-full.inside {
    width: auto;
    display: flex;
  }

  .grid-full {
    grid-template-columns: 1fr;
  }

  .block-full {
    padding: 45px 7%;
  }

  .block {
    width: 100%;
    max-width: none;
  }

  .image-bg-services {
    min-height: auto;
  }

  .image-bg-services.hiring {
    background-position: 0 0, 50%;
    height: 200px;
  }

  .grid-3-columns-full {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  }

  .grid-4-columns {
    grid-column-gap: 20px;
    grid-row-gap: 60px;
    grid-template-columns: 1fr 1fr;
  }

  .block-heading {
    margin-bottom: 1px;
  }

  .block-heading.top {
    margin-bottom: 30px;
  }

  .heading-expertise {
    font-size: 18px;
  }

  .paragraph-expertise {
    font-size: 14px;
    line-height: 140%;
  }

  .image-bg-testimonials.other-way-gradient {
    min-height: auto;
  }

  .paragraph-testimonials {
    font-size: 14px;
    line-height: 140%;
  }

  .collection-list-project {
    grid-column-gap: 20px;
  }

  .image-project {
    height: 350px;
  }

  .image-project.large {
    height: 500px;
  }

  .collection-list-blog {
    grid-column-gap: 20px;
  }

  .paragraph-summary {
    max-width: none;
    font-size: 16px;
  }

  .grid-2-columns-full {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    height: auto;
    display: block;
  }

  .image-bg-banner {
    background-position: 50% 75%;
    min-height: 300px;
  }

  .block-banner {
    padding: 70px 14%;
  }

  .heading-banner {
    letter-spacing: 0;
    font-size: 28px;
  }

  .section-footer {
    padding: 39px 23px 9px;
  }

  .footer-down {
    font-size: 12px;
  }

  .paragraph-footer {
    font-size: 14px;
  }

  .heading-footer {
    font-size: 12px;
  }

  .link-footer {
    font-size: 14px;
  }

  .text-footer-down {
    font-size: 12px;
  }

  .block-hero-a {
    padding-bottom: 30px;
    padding-left: 30px;
    padding-right: 30px;
  }

  .section-hero-b {
    margin-bottom: 10px;
  }

  .grid-hero-b {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  }

  .hero-b {
    padding-bottom: 20px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .extra {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .block-accent {
    padding: 34px 20px 58px;
  }

  .image-bg-accent {
    min-height: 300px;
  }

  .services {
    width: auto;
    margin-bottom: 31px;
  }

  .section-hero-c {
    height: 100vh;
    margin-bottom: 10px;
  }

  .grid-hero-c {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    grid-template-columns: 1fr;
  }

  .block-hero-c {
    padding: 63px 14% 100px 4%;
  }

  .grid-image-hero-c {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    min-height: 600px;
  }

  .section-top {
    margin-bottom: 10px;
    padding: 180px 15px 90px;
  }

  .section-top.vertical {
    padding-top: 162px;
    padding-bottom: 24px;
  }

  .grid-services {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  }

  .services-page {
    padding: 5%;
  }

  .collection-list-blog-page {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  }

  .collection-list-project-page {
    grid-column-gap: 20px;
    grid-row-gap: 60px;
  }

  .image-bg-map {
    min-height: auto;
  }

  .section-top-img {
    min-height: auto;
    margin-bottom: 17px;
  }

  .block-top-img {
    padding: 209px 40px 15px;
  }

  .grid-stats-full {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    flex-direction: column;
    display: flex;
  }

  .grid-4-columns-full {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    grid-template-columns: 1fr 1fr;
  }

  .grid-image-about {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    grid-template-columns: 1fr 1fr;
    height: 900px;
  }

  .grid-project-page {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    grid-template-columns: 1fr;
    margin-bottom: 10px;
  }

  .project-content {
    padding: 90px 14% 55px;
  }

  .image-project-page {
    height: 80vh;
    position: static;
  }

  .utility-page-wrap {
    min-height: 70vh;
    margin-bottom: 10px;
    padding: 180px 30px 90px;
  }

  .nav-button-2.black {
    background-color: var(--heading);
    margin-top: 5px;
    margin-bottom: 5px;
  }

  .bold-text-5 {
    color: var(--white);
  }

  .form-contact {
    display: none;
  }

  .button-2.accent {
    padding: 14px;
  }

  .div-block-45 {
    height: auto;
  }

  .link-23 {
    margin-bottom: 18px;
    margin-left: 0;
    margin-right: 0;
    font-size: 14px;
  }

  .modal-wrapper-2 {
    padding-top: 58px;
    padding-left: 51px;
    padding-right: 51px;
    display: block;
  }

  .modal-wrapper-2.modal-2 {
    justify-content: center;
    align-items: center;
    min-height: auto;
    display: none;
  }

  .image-27 {
    width: 50%;
  }

  .error-message-color {
    padding-top: 8px;
    padding-bottom: 8px;
  }

  .text-field-contact {
    margin-bottom: 14px;
  }

  .form-block-5 {
    padding-left: 0;
    padding-right: 0;
  }

  .success-message-color {
    padding-top: 5px;
    padding-bottom: 5px;
  }

  .pop-up-wrapper-2 {
    background-image: linear-gradient(to bottom, null, null);
    text-align: center;
    margin-top: 15px;
    padding-top: 18px;
    padding-bottom: 18px;
  }

  .bold-text-60 {
    font-weight: 400;
  }

  .text-area {
    min-height: 80px;
  }

  .paragraph-41 {
    font-size: 16px;
  }

  .mask {
    height: auto;
  }

  .grid {
    grid-template-rows: auto;
  }

  .grid-2 {
    flex-direction: column;
  }

  .map-2 {
    height: 300px;
    min-height: auto;
  }

  .heading-3 {
    font-size: 28px;
    line-height: 38px;
  }

  .submit-card {
    width: 85%;
    max-width: none;
    margin-top: 0;
    margin-left: 0;
    padding: 27px 4px;
  }

  .contact-image-div {
    width: 100%;
  }

  .image-left-contact {
    width: 85%;
    height: 350px;
    margin: 14px auto;
  }

  .div-content.tittle-in-div.center {
    text-align: center;
    margin-bottom: 53px;
  }

  .section-2 {
    padding: 45px 50px;
    overflow: hidden;
  }

  .social-wrapper, .social-wrapper.in-form {
    flex-direction: row;
    margin-top: 0;
    margin-bottom: 0;
  }

  .contact-row {
    flex-direction: column;
    padding-bottom: 72px;
  }

  .grid-3 {
    display: block;
  }

  .image-30 {
    width: 100%;
    height: auto;
  }

  .project-content {
    padding-top: 60px;
    padding-left: 4%;
    padding-right: 4%;
  }

  .heading-banner-2.white-text {
    letter-spacing: 0;
    font-size: 28px;
  }

  .block-banner-2 {
    padding: 70px 14%;
  }

  .text-button-3 {
    font-size: 12px;
  }

  .mini-faq-cards {
    padding-left: 7px;
    padding-right: 7px;
  }

  .mini-answer {
    padding-left: 0;
  }

  .mini-question-text {
    font-size: 16px;
  }

  .heading-5 {
    font-size: 22px;
  }

  .paragraph-3 {
    font-size: 14px;
    line-height: 140%;
  }

  .gallery-2 {
    padding-left: 40px;
    padding-right: 40px;
  }

  .centered-container {
    margin-top: 7px;
  }

  .heading-47 {
    font-size: 28px;
  }

  .gallery-grid-container {
    grid-template-rows: 244px 234px 258px auto 259px auto auto auto;
    align-self: stretch;
  }

  .body-2 {
    padding: 14px;
  }

  .body-3 {
    padding: 16px;
  }

  .body-4 {
    padding: 20px;
  }

  .div-block-59 {
    height: auto;
  }

  .body-5 {
    padding: 161px 19px 19px;
  }

  .body-6 {
    padding: 185px 19px 19px;
  }

  .body-7 {
    padding: 611px 18px 18px;
  }

  .body-8 {
    padding: 327px 19px 19px;
  }

  .bold-text-66 {
    letter-spacing: 0;
    font-size: 32px;
  }

  .body-9 {
    padding: 18px;
  }

  .text-block-4, .text-block-5 {
    font-size: 16px;
    line-height: 20px;
  }

  .div-block-9 {
    padding-top: 40px;
    padding-bottom: 48px;
  }

  .div-block-111 {
    width: 60%;
  }

  .section-3 {
    padding: 204px 20px 71px;
  }

  .free-trial-wrapper {
    flex-direction: column;
    align-items: center;
    display: flex;
  }

  .service-details-content-wrapper {
    width: 70%;
  }

  .service-details-content {
    grid-column-gap: 25px;
  }

  .left-alignment.smaller-text {
    font-size: 20px;
  }

  .accordion-list-content {
    font-size: 16px;
  }

  .form-4 {
    padding-left: 8px;
    padding-right: 8px;
  }

  .accordion-title {
    font-size: 16px;
  }

  .section-4 {
    padding: 204px 20px 71px;
  }

  .section-4.overflow {
    padding-top: 30px;
    padding-left: 12px;
    padding-right: 12px;
  }

  .rich-text-style {
    font-size: 16px;
  }

  .accordion-item {
    padding-left: 17px;
    padding-right: 17px;
  }

  .service-details-sidebar-wrapper {
    width: auto;
    padding-left: 20px;
    padding-right: 20px;
    top: 20px;
  }

  .div-block-62 {
    width: 305px;
  }

  .heading-8 {
    font-size: 32px;
  }

  .accordion-wrapper.service-details {
    margin-top: 40px;
  }

  .form-block-6 {
    padding-left: 0;
    padding-right: 0;
  }

  .features-card {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    padding: 25px 20px 7px;
  }

  .features-card.center {
    flex: 1;
  }

  .features-card-text {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  }

  .heading-style-h5 {
    font-size: 18px;
  }

  .div-block-146 {
    justify-content: center;
    align-items: center;
    display: block;
  }

  .image-89 {
    width: 55%;
  }

  .div-block-70 {
    padding-left: 25px;
    padding-right: 25px;
  }

  .footer-brand-wrapper-2 {
    justify-content: flex-start;
    align-items: center;
  }

  .heading-52 {
    font-size: 18px;
  }

  .link {
    font-size: 12px;
  }
}

@media screen and (max-width: 767px) {
  h1 {
    font-size: 52px;
  }

  h2 {
    font-size: 40px;
  }

  h3 {
    font-size: 32px;
  }

  h4 {
    font-size: 26px;
  }

  h5 {
    font-size: 22px;
  }

  .navbar {
    padding-top: 0;
  }

  .brand {
    width: 360px;
    padding-left: 0;
    padding-right: 0;
  }

  .heading-hero {
    font-size: 32px;
  }

  .heading-hero.size-vw {
    font-size: 6vw;
  }

  .heading-hero.dark {
    max-width: none;
    font-size: 32px;
  }

  .grid-hero-services {
    grid-template-columns: 1fr;
    margin-top: 50px;
  }

  .description {
    display: none;
  }

  .section {
    padding-top: 49px;
    padding-bottom: 4px;
  }

  .section.padding {
    padding-top: 30px;
    padding-bottom: 30px;
  }

  .section.background-colour {
    margin-bottom: 0;
  }

  .section.no-padding-left-right {
    padding-top: 0;
  }

  .content {
    max-width: none;
  }

  .grid-2-columns {
    grid-row-gap: 60px;
    grid-template-columns: 1fr;
  }

  .grid-stats {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  }

  .block-right {
    padding: 0 7%;
  }

  .button.dark.red-button {
    padding: 2px 35px 2px 23px;
    font-size: 12px;
  }

  .numbers-stats.full {
    font-size: 40px;
  }

  .block-left {
    padding: 0 7%;
  }

  .section-full {
    padding-top: 0;
  }

  .section-full.inside._100vw {
    margin-top: 0;
    margin-bottom: 0;
  }

  .grid-full {
    grid-template-columns: 1fr;
  }

  .block-full {
    padding-top: 45px;
    padding-bottom: 45px;
  }

  .block {
    grid-column-gap: 7px;
    grid-row-gap: 7px;
  }

  .image-bg-services {
    background-image: linear-gradient(0deg, var(--heading), transparent 30%), url('../images/IMG_5352-scaled-B.jpg');
    background-position: 0 0, 50%;
    background-size: auto, cover;
    min-height: 200px;
  }

  .image-bg-services.hiring {
    background-position: 0 0, 50%;
    min-height: 300px;
  }

  .grid-3-columns-full {
    grid-template-columns: 1fr;
  }

  .image-gallery {
    height: 40vw;
  }

  .block-heading {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .block-heading-button {
    margin-left: 0;
  }

  .image-bg-testimonials {
    background-image: linear-gradient(to top, var(--heading), transparent 30%), url('../images/img_4.jpg');
    background-position: 0 0, 50%;
    background-size: auto, cover;
    min-height: 500px;
  }

  .collection-list-project {
    grid-template-columns: 1fr;
  }

  .link-image-project {
    margin-bottom: 20px;
  }

  .image-project {
    height: 450px;
  }

  .heading-project {
    max-width: none;
  }

  .text-project-type {
    margin-bottom: 6px;
  }

  .collection-list-blog {
    grid-template-columns: 1fr;
  }

  .text-blog-date {
    margin-bottom: 6px;
  }

  .heading-blog, .paragraph-summary {
    max-width: none;
  }

  .grid-2-columns-full {
    grid-template-columns: 1fr;
  }

  .image-bg-banner {
    height: 300px;
  }

  .block-banner {
    padding-top: 50px;
    padding-bottom: 50px;
  }

  .heading-banner {
    letter-spacing: 0;
  }

  .section-footer {
    padding: 20px 3% 0;
  }

  .grid-footer {
    grid-row-gap: 50px;
    grid-template-columns: 1fr;
  }

  .footer-down-block {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: 15px;
    padding-top: 8px;
  }

  .footer-down {
    padding-top: 8px;
    padding-bottom: 8px;
  }

  .heading-footer {
    margin-bottom: 16px;
  }

  .grid-hero-b {
    grid-template-columns: 1fr 1fr;
  }

  .extra {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .block-accent {
    padding-top: 80px;
    padding-bottom: 40px;
  }

  .image-bg-accent {
    min-height: 300px;
  }

  .image-services {
    height: 230px;
  }

  .block-hero-c {
    padding-top: 41px;
    padding-bottom: 51px;
  }

  .section-top {
    padding-top: 150px;
    padding-bottom: 29px;
  }

  .grid-services {
    grid-row-gap: 30px;
    grid-template-columns: 1fr;
  }

  .services-page {
    min-height: 550px;
  }

  .collection-list-blog-page {
    grid-row-gap: 30px;
    grid-template-columns: 1fr;
  }

  .image-blog {
    height: 300px;
  }

  .collection-list-project-page {
    grid-row-gap: 55px;
    grid-template-columns: 1fr;
  }

  .text-field {
    font-size: 14px;
  }

  .form {
    grid-template-columns: 1fr;
  }

  .textarea {
    font-size: 14px;
  }

  .submit-button {
    padding: 12px;
  }

  .image-bg-map {
    min-height: auto;
  }

  .grid-contacts {
    grid-row-gap: 30px;
  }

  .section-top-img {
    height: auto;
    min-height: auto;
    padding-top: 105px;
    padding-bottom: 0;
  }

  .block-top-img {
    padding-top: 0;
  }

  .image-bg-about {
    min-height: 400px;
  }

  .grid-image-about {
    height: 700px;
  }

  .project-content {
    padding-top: 70px;
    padding-bottom: 40px;
  }

  .utility-page-wrap {
    padding-top: 170px;
    padding-bottom: 70px;
  }

  .grid-colors {
    grid-template-columns: 1fr 1fr;
  }

  .grid-button {
    grid-auto-flow: row;
  }

  .grid-licensing {
    grid-column-gap: 8px;
    grid-row-gap: 8px;
    grid-template-columns: 1fr 1fr;
  }

  .bold-text-5 {
    color: var(--white);
  }

  .form-contact {
    display: none;
  }

  .wrap-form {
    flex-direction: column;
    justify-content: center;
    height: 100%;
    padding-left: 40px;
    padding-right: 40px;
    display: flex;
  }

  .load-bunner {
    display: block;
  }

  .button-2.accent {
    padding: 14px;
  }

  .paragraph-40 {
    margin-top: 0;
    margin-bottom: 0;
  }

  .italic-text-11 {
    font-size: 12px;
    line-height: 12px;
  }

  .link-23 {
    margin-bottom: 1px;
    margin-left: 0;
  }

  .italic-text-12 {
    font-size: 18px;
  }

  .bold-text-61 {
    font-size: 16px;
  }

  .modal-wrapper-2 {
    height: 100%;
    padding: 43px 52px;
    display: block;
  }

  .modal-wrapper-2.modal-2 {
    min-height: auto;
    padding-top: 4px;
    padding-bottom: 0;
    display: none;
  }

  .button-wrapper.product {
    margin-top: 0;
  }

  .image-27 {
    width: 80%;
    margin-top: 5px;
    margin-bottom: 0;
  }

  .error-message-color {
    padding-top: 4px;
    padding-bottom: 4px;
  }

  .text-field-contact {
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 20px;
  }

  .form-block-5 {
    padding-left: 2px;
    padding-right: 2px;
  }

  .success-message-color {
    padding-top: 8px;
    padding-bottom: 8px;
  }

  .paragraph-29 {
    padding-top: 0;
    font-size: 11px;
    line-height: 18px;
  }

  .pop-up-wrapper-2 {
    background-image: linear-gradient(#0000, #0000);
    justify-content: center;
    align-items: center;
    width: auto;
    margin-top: 0;
    padding: 15px 9px 0 8px;
  }

  .bold-text-60 {
    color: #252a2e;
    letter-spacing: 0;
    margin-bottom: 11px;
    font-size: 14px;
    line-height: 16px;
  }

  .paragraph-32 {
    line-height: 16px;
  }

  .text-area {
    min-height: 70px;
    font-size: 14px;
    line-height: 20px;
  }

  .heading-3 {
    font-size: 24px;
    line-height: 30px;
  }

  .submit-card {
    width: 100%;
    padding: 20px 0 25px;
  }

  .container-wrapper {
    padding-left: 0;
    padding-right: 0;
  }

  .image-left-contact {
    width: 100%;
    height: 300px;
    margin-top: 0;
  }

  .top-header {
    padding-left: 50px;
    padding-right: 50px;
    line-height: 18px;
  }

  .div-content.tittle-in-div {
    padding-left: 20px;
  }

  .div-content.tittle-in-div.center {
    margin-bottom: 31px;
    padding-left: 0;
    padding-right: 0;
  }

  .section-2.no-padding-top {
    padding-bottom: 0;
  }

  .contact-row {
    padding: 37px 50px;
  }

  .image-28 {
    width: auto;
  }

  .image-28.solr-panel-cleaning, .image-28.pressure-washing, .image-28.gutter-eavsthrough {
    width: 100%;
  }

  .image-28.commercial-cleaning {
    width: 100%;
    top: -133%;
  }

  .heading-4 {
    letter-spacing: 0;
    font-size: 28px;
  }

  .project-content {
    padding-top: 54px;
  }

  .block-banner-2 {
    padding: 50px 8%;
  }

  .text-button-3 {
    font-size: 12px;
  }

  .block-2 {
    width: 100%;
    max-width: none;
  }

  .mini-question {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .mini-faq-card {
    padding-left: 24px;
    padding-right: 24px;
  }

  .mini-question-text {
    font-size: 15px;
    line-height: 20px;
  }

  .gallery-2 {
    padding: 40px 56px;
  }

  .centered-container {
    margin-top: 8px;
  }

  .heading-47 {
    font-size: 24px;
  }

  .gallery-grid-container {
    grid-template-rows: 503px auto auto auto auto auto auto auto auto auto auto;
    grid-template-columns: 1fr 1fr 1fr;
    max-width: none;
  }

  .block-quote {
    margin-left: 0;
  }

  .text-block-2 {
    font-size: 14px;
  }

  .list-item {
    padding-top: 0;
    padding-bottom: 0;
  }

  .body-5 {
    padding-top: 145px;
  }

  .paragraph-47 {
    font-size: 16px;
    line-height: 140%;
  }

  .body-6 {
    padding-top: 180px;
  }

  .body-7 {
    padding-top: 327px;
  }

  .paragraph-50 {
    font-size: 16px;
    line-height: 140%;
  }

  .body-8 {
    padding-top: 121px;
  }

  .text-block-4 {
    font-size: 14px;
    line-height: 150%;
  }

  .text-block-5 {
    font-size: 14px;
    line-height: 16px;
  }

  .div-block-9 {
    padding-left: 28px;
    padding-right: 28px;
  }

  .div-block-111 {
    width: 80%;
  }

  .section-3 {
    padding-top: 42px;
    padding-bottom: 60px;
  }

  .base-container {
    max-width: 100%;
  }

  .free-trial-title {
    margin-bottom: 20px;
    font-size: 26px;
  }

  .service-details-content-wrapper {
    width: 100%;
    margin-right: 0;
  }

  .service-details-content {
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
  }

  .left-alignment.smaller-text {
    font-size: 32px;
  }

  .accordion-list-content {
    font-size: 14px;
  }

  .accordion-title {
    font-size: 16px;
  }

  .section-4 {
    padding-top: 42px;
    padding-bottom: 60px;
  }

  .service-details-sidebar-wrapper {
    width: 100%;
    margin-top: 40px;
    position: static;
  }

  .div-block-62 {
    width: 100%;
    margin-top: 17px;
  }

  .heading-8 {
    letter-spacing: 0;
    font-size: 22px;
  }

  .accordion-wrapper {
    flex-wrap: wrap;
  }

  .features-card, .features-card.center {
    max-width: none;
  }

  .footer-brand-wrapper-2 {
    flex-wrap: wrap;
    margin-bottom: 0;
  }

  .paragraph-4 {
    line-height: 140%;
  }
}

@media screen and (max-width: 479px) {
  body {
    padding: 6px;
  }

  h1 {
    font-size: 42px;
  }

  h2 {
    font-size: 34px;
  }

  h3 {
    font-size: 28px;
  }

  h4 {
    font-size: 23px;
  }

  h5 {
    font-size: 20px;
  }

  h6 {
    font-size: 17px;
  }

  .section-hero-a {
    margin-bottom: 6px;
  }

  .navbar {
    align-items: stretch;
    margin-left: 0;
    margin-right: 0;
    padding-top: 45px;
    padding-bottom: 45px;
    top: 13px;
    left: 0;
    right: 0;
  }

  .nav-block {
    justify-content: space-between;
    padding-left: 5px;
  }

  .nav {
    justify-content: flex-end;
    width: 20%;
  }

  .logo {
    width: 90%;
  }

  .brand {
    width: 100%;
    height: auto;
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .brand.w--current {
    width: 100%;
    height: auto;
    margin-left: 0;
    padding-left: 0;
  }

  .nav-link {
    padding-top: 14px;
    padding-bottom: 14px;
    font-size: 12px;
  }

  .menu-button {
    padding: 1px;
  }

  .icon-menu {
    font-size: 30px;
  }

  .heading-hero {
    font-size: 22px;
    line-height: 120%;
  }

  .heading-hero.size-vw {
    margin-bottom: 0;
  }

  .heading-hero.dark {
    margin-bottom: 0;
    font-size: 28px;
  }

  .section {
    margin-bottom: 6px;
    padding: 55px 0 0;
  }

  .section.padding {
    padding-top: 25px;
    padding-bottom: 25px;
  }

  .section.background-colour {
    margin-bottom: 15px;
    padding: 33px 15px;
  }

  .grid-stats {
    grid-column-gap: 6px;
    grid-row-gap: 6px;
  }

  .button.dark.red-button {
    background-position: 87%;
    padding: 0 26px 0 17px;
    font-size: 12px;
  }

  .paragraph {
    font-size: 14px;
    line-height: 140%;
  }

  .text-subtitle {
    font-size: 11px;
  }

  .heading {
    letter-spacing: 0;
    font-size: 28px;
  }

  .heading.white {
    font-size: 24px;
  }

  .stats.full {
    padding-top: 12px;
    padding-bottom: 12px;
  }

  .heading-stats {
    letter-spacing: 0;
    font-size: 16px;
  }

  .numbers-stats {
    font-size: 40px;
  }

  .numbers-stats.full {
    font-size: 36px;
  }

  .section-full {
    margin-bottom: 6px;
    padding-left: 0;
    padding-right: 0;
  }

  .grid-full {
    display: block;
  }

  .block-full {
    width: auto;
    padding: 42px 6%;
    display: block;
  }

  .block {
    grid-column-gap: 12px;
    grid-row-gap: 12px;
  }

  .image-bg-services {
    min-height: 200px;
  }

  .image-bg-services.hiring {
    background-position: 0 0, 50%;
    min-height: 200px;
  }

  .grid-3-columns-full {
    grid-column-gap: 6px;
    grid-row-gap: 16px;
    margin-bottom: 9px;
  }

  .grid-4-columns {
    grid-row-gap: 50px;
    grid-template-columns: 1fr;
  }

  .block-heading.top {
    margin-bottom: 20px;
  }

  .expertise.full {
    padding-left: 10%;
    padding-right: 10%;
  }

  .heading-expertise, .paragraph-expertise {
    max-width: none;
  }

  .paragraph-testimonials {
    width: 100%;
    max-width: none;
    display: block;
  }

  .info-testimonials {
    width: 100%;
  }

  .image-project, .image-project.large {
    height: 350px;
  }

  .paragraph-summary {
    line-height: 130%;
  }

  .grid-2-columns-full {
    grid-column-gap: 6px;
    grid-row-gap: 6px;
  }

  .image-bg-banner {
    height: 200px;
    min-height: 200px;
  }

  .block-banner {
    padding: 22px 7%;
  }

  .section-footer {
    padding: 26px 12px 0;
  }

  .footer-down-block {
    margin-top: 50px;
  }

  .paragraph-footer {
    margin-bottom: 10px;
  }

  .section-hero-b {
    margin-bottom: 6px;
  }

  .grid-hero-b {
    grid-column-gap: 6px;
    grid-row-gap: 6px;
  }

  .extra {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .block-accent {
    padding: 30px 0;
  }

  .image-bg-accent {
    min-height: 200px;
  }

  .image-services {
    height: 200px;
  }

  .section-hero-c {
    flex-flow: column;
    justify-content: flex-start;
    align-items: stretch;
    height: auto;
    margin-top: 0;
    margin-bottom: 6px;
  }

  .grid-hero-c {
    grid-column-gap: 6px;
    grid-row-gap: 6px;
  }

  .block-hero-c {
    padding: 30px 4% 55px;
  }

  .grid-image-hero-c {
    grid-column-gap: 6px;
    grid-row-gap: 6px;
    min-height: 250px;
  }

  .section-top {
    margin-bottom: 6px;
    padding: 132px 8px 55px;
  }

  .section-top.vertical {
    padding-top: 131px;
  }

  .grid-services, .collection-list-blog-page {
    grid-row-gap: 16px;
  }

  .image-blog {
    height: 250px;
  }

  .error-message {
    padding-top: 12px;
    padding-bottom: 12px;
  }

  .image-bg-map {
    min-height: auto;
  }

  .link-contact {
    text-align: center;
    flex-direction: column;
    justify-content: center;
    display: flex;
  }

  .contact {
    text-align: center;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
    display: flex;
  }

  .text-contact {
    text-align: center;
    justify-content: flex-start;
    align-items: center;
    margin-top: 7px;
    margin-bottom: 7px;
    font-size: 14px;
    display: flex;
  }

  .grid-contacts {
    display: block;
  }

  .section-top-img {
    margin-bottom: 20px;
    padding-top: 83px;
  }

  .block-top-img {
    padding-bottom: 6px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .grid-stats-full {
    grid-column-gap: 6px;
    grid-row-gap: 6px;
    grid-template-columns: 1fr;
  }

  .image-bg-about {
    min-height: 200px;
  }

  .grid-4-columns-full {
    grid-column-gap: 6px;
    grid-row-gap: 6px;
    grid-template-columns: 1fr;
  }

  .grid-image-about {
    grid-column-gap: 6px;
    grid-row-gap: 6px;
  }

  .grid-project-page {
    grid-column-gap: 6px;
    grid-row-gap: 6px;
    margin-bottom: 6px;
  }

  .project-content {
    padding: 55px 8% 20px;
  }

  .image-project-page {
    height: 70vh;
  }

  .utility-page-wrap {
    margin-bottom: 6px;
    padding: 150px 16px 55px;
  }

  .grid-colors, .grid-licensing {
    grid-template-columns: 1fr;
  }

  .text-button-2 {
    font-size: 12px;
  }

  .form-contact {
    display: none;
    overflow: hidden;
  }

  .close-button-pop-up {
    z-index: 7;
    right: 14px;
  }

  .wrap-form {
    padding-left: 20px;
    padding-right: 20px;
    overflow: auto;
  }

  .load-bunner {
    display: block;
  }

  .button-2.accent {
    padding: 9px;
  }

  .close-line {
    background-color: #fff;
  }

  .paragraph-40 {
    margin-bottom: 7px;
    font-size: 14px;
    line-height: 22px;
  }

  .close-link-2 {
    margin-bottom: 85px;
  }

  .italic-text-11 {
    display: none;
  }

  .link-23 {
    margin-bottom: 0;
    margin-left: -1px;
  }

  .italic-text-12 {
    display: block;
  }

  .flex-form {
    flex-direction: column;
  }

  .bold-text-61 {
    font-size: 16px;
    font-weight: 500;
    line-height: 22px;
  }

  .modal-wrapper-2 {
    flex-direction: column;
    padding: 20px 16px 18px;
    display: block;
  }

  .modal-wrapper-2.modal-2 {
    background-color: #171d29fa;
    height: 100vh;
    min-height: auto;
    padding-top: 6px;
    padding-left: 21px;
    padding-right: 21px;
    display: none;
    position: fixed;
  }

  .button-wrapper {
    width: auto;
  }

  .image-27 {
    width: 80%;
    margin-top: 5px;
    margin-bottom: 6px;
    margin-left: 0;
  }

  .error-message-color {
    margin-top: 6px;
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 12px;
    line-height: 14px;
  }

  .text-field-contact {
    width: 100%;
    margin-bottom: 6px;
    font-size: 12px;
    line-height: 18px;
  }

  .form-block-5, .success-message-color {
    padding-left: 0;
    padding-right: 0;
  }

  .paragraph-29 {
    text-align: center;
  }

  .italic-text-25 {
    font-size: 14px;
  }

  .pop-up-wrapper-2 {
    text-align: center;
    background-image: linear-gradient(#0000, #0000);
    flex-direction: column;
    height: auto;
    margin-top: 6px;
    padding: 14px 11px 0;
    display: flex;
    position: static;
  }

  .bold-text-60 {
    margin-bottom: 18px;
    font-size: 13px;
    line-height: 14px;
  }

  .paragraph-32 {
    line-height: 14px;
  }

  .text-area {
    min-height: 60px;
    font-size: 12px;
    line-height: 120%;
  }

  .slider, .mask {
    width: 100%;
  }

  .grid {
    display: block;
  }

  .map-2 {
    height: 200px;
  }

  .heading-3 {
    text-align: center;
    letter-spacing: 0;
    font-size: 18px;
    line-height: 24px;
  }

  .submit-card {
    width: 100%;
    max-width: none;
    margin-top: 0;
    padding-left: 20px;
    padding-right: 20px;
  }

  .container-wrapper {
    justify-content: space-between;
  }

  .submit-wrapper {
    width: 100%;
  }

  .contact-image-div {
    padding-top: 40px;
    padding-left: 0;
    padding-right: 0;
  }

  .image-left-contact {
    width: 100%;
    height: 200px;
    margin-top: 0;
  }

  .follow-text {
    font-size: 14px;
  }

  .top-header {
    padding-left: 0;
    padding-right: 0;
    font-size: 10px;
    font-weight: 600;
  }

  .div-content {
    margin-bottom: 20px;
    padding-right: 0;
  }

  .div-content.tittle-in-div.center {
    text-align: center;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding-left: 0;
    padding-right: 0;
    display: flex;
  }

  .section-2 {
    padding: 70px 25px;
    display: flex;
  }

  .social-wrapper.in-form {
    width: 100%;
  }

  .contact-row {
    padding: 0 20px 30px;
  }

  .image-28.solr-panel-cleaning {
    top: 7%;
  }

  .image-28.gutter-eavsthrough {
    top: 13%;
  }

  .image-28.commercial-cleaning {
    top: -64%;
  }

  .heading-4 {
    letter-spacing: 0;
    font-size: 22px;
  }

  .image-29 {
    margin-bottom: 17px;
  }

  .image-30 {
    height: auto;
  }

  .project-content {
    padding-top: 41px;
    padding-left: 5%;
  }

  .heading-banner-2.white-text {
    max-width: none;
    font-size: 22px;
  }

  .block-banner-2 {
    padding-left: 7%;
    padding-right: 7%;
  }

  .text-button-3 {
    font-size: 12px;
  }

  .block-2 {
    width: auto;
  }

  .text-grey {
    font-size: 13px;
    line-height: 18px;
  }

  .mini-answer {
    padding-left: 0;
  }

  .mini-faq-card {
    padding-left: 15px;
    padding-right: 15px;
  }

  .mini-question-text {
    margin-right: 0;
    font-size: 13px;
    line-height: 16px;
  }

  .mini-question-icon {
    margin-right: 7px;
  }

  .centered-container {
    text-align: left;
    margin-top: 24px;
  }

  .heading-47 {
    font-size: 20px;
  }

  .gallery-grid-container {
    grid-template-rows: 497px auto auto auto auto;
    grid-template-columns: 1fr;
    margin-left: 0;
    margin-right: 0;
  }

  .grid-4 {
    grid-template-columns: 1fr 1fr;
  }

  .block-quote {
    margin-left: 1px;
    font-size: 16px;
    line-height: 140%;
  }

  .slide {
    width: auto;
  }

  .body-3 {
    padding: 20px;
  }

  .paragraph-43, .paragraph-44 {
    font-size: 16px;
    line-height: 140%;
  }

  .div-block-58 {
    width: 80%;
  }

  .paragraph-45 {
    font-size: 14px;
    line-height: 140%;
  }

  .list-item {
    font-size: 14px;
    line-height: 130%;
  }

  .paragraph-46 {
    font-size: 16px;
    line-height: 140%;
  }

  .body-5 {
    padding-top: 108px;
  }

  .paragraph-47 {
    font-size: 12px;
  }

  .list {
    padding-left: 18px;
  }

  .paragraph-48 {
    font-size: 14px;
  }

  .body-6 {
    padding-top: 167px;
  }

  .paragraph-49 {
    font-size: 14px;
  }

  .body-7 {
    padding-top: 188px;
  }

  .paragraph-50 {
    font-size: 14px;
  }

  .body-8 {
    padding-top: 75px;
  }

  .bold-text-66 {
    font-size: 24px;
  }

  .div-block-60 {
    margin-top: 11px;
  }

  .text-block-3 {
    font-size: 14px;
    line-height: 130%;
  }

  .text-block-4 {
    font-size: 12px;
    line-height: 16px;
  }

  .text-block-5 {
    font-size: 12px;
    line-height: 14px;
  }

  .slider-2 {
    width: 100%;
  }

  .heading-48 {
    text-align: center;
    font-size: 26px;
  }

  .div-block-111 {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    width: 90%;
  }

  .logo-2 {
    justify-content: center;
    align-self: center;
    align-items: center;
    margin-top: 0;
    display: flex;
  }

  .image-85 {
    max-width: 80%;
  }

  .free-trial-title {
    font-size: 20px;
  }

  .primary-button {
    padding: 12px 24px;
    font-size: 16px;
  }

  .footer-link.right-text {
    line-height: 120%;
  }

  .left-alignment {
    line-height: .9em;
  }

  .left-alignment.smaller-text {
    margin-bottom: 18px;
    font-size: 24px;
    line-height: 1.1em;
  }

  .accordion-list-content {
    line-height: 20px;
  }

  .form-4 {
    align-items: center;
    padding-left: 8px;
    padding-right: 8px;
  }

  .text-area-2 {
    color: #000;
    font-size: 14px;
  }

  .accordion-title {
    font-size: 20px;
  }

  .section-4.overflow {
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
  }

  .flex-form-2 {
    flex-direction: column;
    width: 94%;
  }

  .text-field-contact-2 {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    font-size: 14px;
  }

  .service-details-sidebar-wrapper {
    margin-bottom: 21px;
    padding: 13px;
  }

  .div-block-62 {
    padding-bottom: 0;
  }

  .contacts-detail {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .div-block-146 {
    width: auto;
    padding-top: 0;
  }

  .div-block-147 {
    width: auto;
    display: none;
  }

  .div-block-148 {
    flex-flow: column;
  }

  .image-89 {
    width: 80%;
  }

  .image-90, .figure {
    width: 100%;
  }

  .bold-text-72 {
    line-height: 100%;
  }

  .div-block-70 {
    padding: 10px;
  }

  .footer-brand-wrapper-2 {
    flex-direction: column;
    width: 100%;
  }

  .heading-52 {
    font-size: 16px;
  }

  .paragraph-4 {
    line-height: 160%;
  }
}

#w-node-_92daac10-d697-f02f-50e7-54861f110c5a-381b186f {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-bba9568a-c71a-0ac7-7285-fc64cb24462a-ef5eb7ca {
  justify-self: center;
}

#w-node-_6261e204-dc61-14a2-2e30-0b381d68c857-ef5eb7ca {
  grid-area: span 1 / span 5 / span 1 / span 5;
}

#w-node-_67c450ae-c8de-dc4e-a82a-a1ea63a2c12c-ef5eb7ca {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_53255d6a-bdd3-0d0b-71f4-fcc53478e345-381b1873 {
  grid-area: span 2 / span 2 / span 2 / span 2;
}

#w-node-_3bbdd4ff-270b-cef1-f67e-5479f9c783cb-381b1873 {
  grid-area: span 2 / span 1 / span 2 / span 1;
}

#Message.w-node-_8b8621dc-09df-292f-d2ba-e39b8e47637e-381b1875, #w-node-b4141052-95f1-638b-739d-5973369eda70-381b1875 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-c52b22d0-0a06-d9b3-3991-505f1097dda3-381b1875 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-a66e075f-5175-4ba9-f506-506bcb9243c7-381b1879, #w-node-e9a41bc9-5ee4-078f-7eed-cb2cc4cae657-381b1879, #w-node-_2ed369c5-43e9-c8e2-3c0c-3e86982c734a-381b1879, #w-node-ee85db6c-5273-dc4c-0ff0-26d50d3f3c3b-381b1879, #w-node-_5493c1e4-7692-de25-4924-ebd21ecee1fa-381b1879, #w-node-_518754c1-ccb1-2e87-2889-0b35db028751-381b1879, #w-node-_87a3baa8-9af8-42a4-8d60-c2baee06a49e-381b1879, #w-node-f0f8840b-7fd9-029d-bc60-20c0be90bfdf-381b1879, #w-node-c3926d2a-dff6-bf1c-5246-c0d83ebd3f26-381b1879, #w-node-d01c3336-4f7c-9b80-acbb-554bd08ef6ff-381b1879, #w-node-_7c6de3c5-9453-171a-d101-d650a6f21c43-381b1879, #w-node-_713b7e4d-075e-b2cd-bc19-a8123dac2d44-381b1879, #w-node-_2ddf432e-d911-cc52-69ab-a39a6240a1e4-381b1879, #w-node-_85387449-a96e-e03c-5a3c-82c6c6d86f42-381b1879, #w-node-_38817e50-da60-451d-6f85-e3a9a32185bd-381b1879, #w-node-_8903ff9e-0a30-9db4-6363-471d7d1192f3-381b1879, #w-node-f9c34d74-1dbe-e033-a562-3b976ed2281a-381b1879, #w-node-e0cdab44-ded0-8206-a01f-78f71dfa0614-381b1879, #w-node-_7ed9306b-d110-2dc2-a99c-862eb106737f-381b1879, #w-node-f1be9f2f-7c53-b682-7648-97dc1b87a695-381b1879, #w-node-_27dae01c-36ba-41e2-607d-ad7902e0e251-381b1879, #w-node-da8c0df0-e414-11ae-e887-617267bf7925-381b1879, #w-node-fb4b9a85-8231-1615-6e82-84f676d9ea9b-381b1879, #w-node-a4ceadfd-bd99-af4d-f27f-d6128f960ac7-381b1879, #w-node-_3b581a15-8d99-06dc-5f9b-ce653355fb1a-381b1879, #w-node-_63743709-7314-e443-0975-266a024e334c-381b1879, #w-node-_0bcf3cd4-68bb-6720-3b1e-53c0a1f6bedc-381b1879, #w-node-fc1e7e94-7d14-8b9c-5f21-26ebaeee92de-381b1879, #w-node-a4db94f0-5f82-31be-f2d9-496e4d39a348-381b1879, #w-node-_22cfbc81-1dcf-0ae7-39a4-7c4eba16d031-381b1879, #w-node-_693f0b5a-df94-e7a6-6d37-c9ba95464d10-381b1879, #w-node-f7de4349-a8e2-f0a0-1b07-53a6e12ec0d2-381b1879, #w-node-_9ae0c2f8-0513-84ba-1981-7eb8d28a39ea-381b1879, #w-node-bbfcf6df-91c0-434a-3869-5e12cf7862a2-381b1879, #w-node-_17986a0a-aa2f-05f0-2198-9e346a3517b1-381b1879, #w-node-_0260e104-63e3-920d-5010-1700d90a4724-381b1879, #w-node-_06cc3cdd-6ffd-4291-aa74-d94bdb34a2cc-381b1879, #w-node-_39bdda45-7c10-72c0-0d22-1b5530a60bc4-381b1879, #w-node-_563c5522-eb39-c074-111b-04464a29c3c3-381b1879, #w-node-aae8f529-dfad-beeb-1ee1-12f3b1c7a99c-381b1879, #w-node-_9830faf1-9bba-16f2-0a08-3852377e2b7c-381b1879, #w-node-_2be86ac1-b854-6f24-d4f6-da94a4ceb242-381b1879, #w-node-abac8c8f-0f25-acec-7ce9-40d831462336-381b1879, #w-node-_4b5ccd6c-8e52-1bb3-eedf-de9d2ec3d68d-381b1879, #w-node-_546a7537-799c-bd05-9590-c319981730ae-381b1879, #w-node-_12b08636-b1b2-710b-d8ca-4ba27bce5d05-381b1879, #w-node-f6e70e39-b305-230c-a041-2d5fe022fb90-381b1879, #w-node-_053651a8-44a6-02d9-b468-557dd6d1cbd9-381b1879, #w-node-b5ebd2aa-c851-90e9-406f-50ae65590799-381b1879, #w-node-c1bc211c-1dce-52e5-b842-74e538a9584a-381b1879, #w-node-_8290bd9f-edea-4486-703d-5385145a0e09-381b1879, #w-node-d4c08e61-5c78-8768-92ab-1d00a3b2b495-381b1879, #w-node-_76a33bf9-986d-bd63-43df-c4ed66db41ef-381b1879, #w-node-_5e551927-1888-4ccd-d737-0c1e5ca7cf2b-381b1879, #w-node-d44dc88a-bab8-5363-1653-63d9c8b2b2b8-381b1879, #w-node-_01469472-d0c3-f622-1b8f-8c3ea428d208-381b1879, #w-node-_19a9bf29-f86b-dfe9-473e-de939f4d7b5a-381b1879, #w-node-_8b8966d7-7263-78f2-cd21-e4790300edfb-381b1879, #w-node-_5b380ff7-9726-642d-115e-52efdc681843-381b1879, #w-node-f9e7542d-e815-7018-368f-94ceb1b883b9-381b1879, #w-node-_9a70009e-b9af-9270-7073-d99fb2ac511c-381b1879, #w-node-_3a760e4b-e502-466b-c2af-72ef1738286d-381b1879, #w-node-_99e39677-3562-e99c-ca8f-cc0ff16f1ae8-381b1879 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

@media screen and (max-width: 767px) {
  #w-node-d4fba32c-31ea-808b-ce12-f4eff2c9e79a-381b186f {
    order: -9999;
  }

  #Message.w-node-_8b8621dc-09df-292f-d2ba-e39b8e47637e-381b1875, #w-node-b4141052-95f1-638b-739d-5973369eda70-381b1875 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }
}


@font-face {
  font-family: 'Fa V 4 Compatibility';
  src: url('../fonts/fa-v4compatibility.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Fa 400';
  src: url('../fonts/fa-regular-400.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Fa Solid 900';
  src: url('../fonts/fa-solid-900.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* Mobile polish overrides */
html {
  overflow-x: hidden;
}

body {
  width: 100%;
  overflow-x: hidden;
}

img, video, iframe {
  max-width: 100%;
}

@media screen and (max-width: 767px) {
  body,
  .body-2,
  .body-3,
  .body-4,
  .body-5,
  .body-6,
  .body-7,
  .body-8,
  .body-9 {
    padding: 0;
  }

  h1,
  .heading-hero {
    font-size: clamp(32px, 9vw, 46px);
    line-height: 1.04;
  }

  h2,
  .heading,
  .heading.white {
    font-size: clamp(26px, 7vw, 36px);
    line-height: 1.12;
  }

  h3,
  h4,
  h5 {
    line-height: 1.18;
  }

  p,
  li,
  .paragraph,
  .paragraph-summary,
  .paragraph-expertise,
  .rich-text-style {
    font-size: 16px;
    line-height: 1.55;
  }

  .navbar,
  .navbar-2 {
    z-index: 999;
    background-color: #fff;
    width: 100%;
    padding: 8px 12px;
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
    box-shadow: 0 8px 24px #101b2214;
  }

  .navbar-2 {
    position: sticky;
  }

  .nav-block {
    min-height: 58px;
    padding-left: 0;
  }

  .div-block-58 {
    width: calc(100% - 58px);
  }

  .brand,
  .brand.w--current {
    width: min(190px, 100%);
    height: auto;
    min-height: 52px;
    padding: 0;
  }

  .logo,
  .image-89 {
    position: static;
    width: min(170px, 100%);
    height: auto;
    opacity: 1 !important;
    display: block;
  }

  .logo.logo-white {
    display: none;
  }

  .nav {
    width: auto;
    flex: 0 0 auto;
  }

  .menu-button {
    border-radius: 6px;
    min-width: 44px;
    min-height: 44px;
    padding: 2px;
  }

  .icon-menu {
    font-size: 32px;
    line-height: 40px;
  }

  .nav-menu {
    width: 100%;
    max-height: calc(100dvh - 74px);
    padding: 8px 16px 18px;
    overflow-y: auto;
    box-shadow: 0 18px 28px #101b221f;
  }

  .nav-link,
  .dropdown-toggle {
    min-height: 44px;
    padding: 12px 8px;
  }

  .dropdown-list-block {
    padding-top: 4px;
    padding-bottom: 4px;
  }

  .dropdown-link {
    min-height: 42px;
    padding-top: 12px;
    padding-bottom: 12px;
  }

  .div-block-45 {
    width: 100%;
    grid-row-gap: 8px;
    margin-top: 8px;
  }

  .nav-button-2,
  .nav-button-2.black,
  .button,
  .button.dark.red-button,
  .submit-button,
  .primary-button {
    width: 100%;
    min-height: 46px;
    padding: 13px 18px;
  }

  .text-button-2,
  .text-button,
  .text-button.white,
  .text-button-3 {
    white-space: normal;
    line-height: 1.2;
  }

  .section,
  .section.padding,
  .section.background-colour,
  .section-2,
  .section-3,
  .section-4,
  .section-4.overflow {
    padding-left: 18px;
    padding-right: 18px;
  }

  .section-full,
  .section-full.inside,
  .section-full.inside._100vw,
  .section-2.no-padding-top {
    width: 100%;
  }

  .content,
  .base-container,
  .container,
  .container-wrapper {
    width: 100%;
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .section-hero-c {
    height: auto;
    min-height: auto;
    margin-top: 0;
  }

  .block-hero-c {
    padding: 34px 18px 42px;
  }

  .hero-c,
  .block-heading-text,
  .block {
    max-width: 100%;
  }

  .div-block-146,
  .div-block-147 {
    width: 100%;
  }

  .marquee-main-3,
  .marquee-main-3._2nd {
    width: 100%;
  }

  .image-88 {
    aspect-ratio: 4 / 3;
    object-fit: cover;
  }

  .grid,
  .grid-2-columns,
  .grid-2-columns-full,
  .grid-full,
  .grid-services,
  .grid-contacts,
  .service-details-content {
    grid-template-columns: 1fr;
    width: 100%;
  }

  .grid,
  .grid-full,
  .grid-2-columns-full {
    display: grid;
  }

  .block-full,
  .block-accent,
  .block-banner,
  .block-banner-2,
  .services-page,
  .project-content,
  .submit-card,
  .block-blog-page {
    padding-left: 18px;
    padding-right: 18px;
  }

  .services {
    width: 100%;
  }

  .link-block-services,
  .block-services {
    width: 100%;
  }

  .heading-services {
    padding-right: 10px;
  }

  .image-services,
  .image-blog,
  .image-project,
  .image-project.large,
  .image-left-contact {
    height: auto;
    min-height: 220px;
    aspect-ratio: 4 / 3;
    object-fit: cover;
  }

  .section-top-img {
    min-height: min(68vh, 560px);
    margin-top: 0;
    padding-top: 0;
  }

  .block-top-img {
    min-height: min(68vh, 560px);
    padding: 90px 18px 34px;
  }

  .image-28,
  .image-28.solr-panel-cleaning,
  .image-28.pressure-washing,
  .image-28.gutter-eavsthrough,
  .image-28.commercial-cleaning {
    width: 100%;
    height: 100%;
    max-height: none;
    position: absolute;
    inset: 0;
    object-fit: cover;
  }

  .service-details-content-wrapper,
  .service-details-sidebar-wrapper,
  .submit-wrapper,
  .contact-image-div,
  .social-wrapper.in-form {
    width: 100%;
    max-width: none;
  }

  .contact-row {
    padding: 24px 18px 34px;
  }

  .gallery-2 {
    padding-left: 18px;
    padding-right: 18px;
  }

  .modal-wrapper-2.modal-2 {
    width: 100%;
    height: 100dvh;
    padding: 10px 14px;
    overflow-y: auto;
  }

  .pop-up-wrapper-2 {
    width: 100%;
    max-width: 520px;
    margin-left: auto;
    margin-right: auto;
  }

  .flex-form {
    grid-row-gap: 8px;
  }
}

@media screen and (max-width: 479px) {
  .navbar,
  .navbar-2 {
    padding-left: 10px;
    padding-right: 10px;
  }

  .section,
  .section.padding,
  .section.background-colour,
  .section-2,
  .section-3,
  .section-4,
  .section-4.overflow {
    padding-left: 14px;
    padding-right: 14px;
  }

  .block-full,
  .block-accent,
  .block-banner,
  .block-banner-2,
  .services-page,
  .project-content,
  .submit-card,
  .block-blog-page,
  .block-hero-c {
    padding-left: 14px;
    padding-right: 14px;
  }

  .nav-menu {
    padding-left: 12px;
    padding-right: 12px;
  }

  .heading-banner,
  .heading-banner-2.white-text {
    margin-bottom: 20px;
  }

  .section-footer {
    padding-left: 14px;
    padding-right: 14px;
  }

  .grid-footer {
    grid-row-gap: 28px;
  }

  .footer-down-block {
    margin-top: 20px;
  }
}
@font-face {
  font-family: 'Fa Brands 400';
  src: url('../fonts/fa-brands-400.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:root {
  --motion-fast: 180ms;
  --motion-medium: 360ms;
  --motion-ease: cubic-bezier(.2, .8, .2, 1);
  --motion-pop: cubic-bezier(.17, .84, .44, 1);
}

html {
  scroll-behavior: smooth;
}

body {
  overflow-x: clip;
}

.motion-page-enter {
  animation: ishine-page-in 500ms var(--motion-pop) both;
}

.motion-page-exit {
  animation: ishine-page-out 260ms cubic-bezier(.55, .06, .68, .19) both;
}

.motion-ready .motion-reveal {
  opacity: 0;
  transform: translate3d(0, 28px, 0) scale(.965);
  transition: opacity var(--motion-medium) var(--motion-ease), transform var(--motion-medium) var(--motion-pop);
  transition-delay: var(--motion-delay, 0ms);
  will-change: opacity, transform;
}

.motion-ready .motion-slide-left {
  transform: translate3d(-34px, 16px, 0) scale(.985);
}

.motion-ready .motion-slide-right {
  transform: translate3d(34px, 16px, 0) scale(.985);
}

.motion-ready .motion-zoom {
  transform: translate3d(0, 0, 0) scale(.9);
}

.motion-ready .section-footer .motion-reveal.motion-footer-up {
  opacity: 1;
  transform: translate3d(0, 76px, 0) scale(.88);
  transform-origin: 50% 100%;
  transition-property: transform;
  transition-duration: 520ms !important;
  transition-timing-function: cubic-bezier(.17, .84, .44, 1) !important;
}

.motion-ready .motion-reveal.is-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
}

.button,
.button-2,
.nav-button-2,
.primary-button,
.main-button,
.link-social,
.dropdown-link,
.nav-link,
.link-footer,
.area-link,
.features-card,
.mini-faq-card,
.submit-card,
.image-gallery,
.image-88,
.logo,
.logo-footer {
  transition-duration: var(--motion-fast) !important;
  transition-timing-function: var(--motion-ease) !important;
}

.motion-interactive {
  transform: translateZ(0);
  transition: transform var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease), opacity var(--motion-fast) var(--motion-ease), filter var(--motion-fast) var(--motion-ease) !important;
  will-change: transform;
}

.motion-interactive:hover {
  transform: translate3d(0, -3px, 0) scale(1.025);
}

.image-gallery.motion-interactive:hover,
.image-88:hover {
  filter: saturate(1.08) contrast(1.04);
}

.features-card:hover,
.mini-faq-card:hover,
.submit-card:hover {
  transform: translate3d(0, -6px, 0) scale(1.015);
  box-shadow: 0 18px 42px #00000024;
}

.nav-link:hover,
.dropdown-link:hover,
.link-footer:hover,
.area-link:hover {
  opacity: 1;
  transform: translate3d(0, -1px, 0);
}

.w-dropdown-list,
.w-nav-overlay,
.pop-up-form {
  transition-duration: var(--motion-fast) !important;
  transition-timing-function: var(--motion-ease) !important;
}

@keyframes ishine-page-in {
  from {
    opacity: 0;
    transform: translate3d(0, 18px, 0) scale(.985);
    filter: blur(6px);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    filter: blur(0);
  }
}

/* About page refresh */
.body-3 .section-top-img {
  min-height: clamp(500px, 62vh, 700px);
  background: linear-gradient(135deg, #082f5f 0%, #0b4f9f 48%, #102236 100%);
}

.body-3 .section-top-img .about-hero-marquee {
  opacity: .52;
}

.body-3 .section-top-img .about-hero-marquee::after {
  background:
    linear-gradient(90deg, rgba(4, 27, 51, .82), rgba(8, 47, 95, .38) 54%, rgba(16, 34, 54, .66)),
    linear-gradient(180deg, rgba(8, 47, 95, .2), rgba(5, 20, 32, .58));
}

.body-3 .section-top-img .block-top-img {
  min-height: inherit;
}

@media (max-width: 767px) {
  .body-3 .section-top-img {
    min-height: 560px;
  }

  .body-3 .section-top-img .about-hero-marquee {
    opacity: .46;
  }
}

.about-modern-intro,
.about-values-section,
.about-proof-section,
.about-gallery-section {
  width: 100%;
  padding: 90px 50px;
}

.about-modern-intro {
  background-color: #f4f8fb;
}

.about-values-section {
  background-color: #fff;
}

.about-proof-section {
  background-color: #101b22;
}

.about-gallery-section {
  padding-top: 14px;
  padding-bottom: 14px;
}

.about-modern-content {
  grid-column-gap: 64px;
  grid-row-gap: 44px;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
  align-items: center;
  width: 100%;
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
}

.about-modern-content.vertical {
  grid-template-columns: 1fr;
}

.about-modern-content.proof-layout {
  grid-template-columns: minmax(300px, .9fr) minmax(0, 1.1fr);
}

.about-modern-heading {
  color: var(--heading);
  letter-spacing: 0;
  max-width: 760px;
  margin-top: 0;
  margin-bottom: 22px;
  font-size: clamp(40px, 5vw, 72px);
  line-height: .98;
}

.about-modern-heading.compact {
  max-width: 820px;
  font-size: clamp(34px, 4vw, 54px);
  line-height: 1.02;
}

.about-proof-section .about-modern-heading,
.about-proof-section .text-subtitle,
.about-proof-section .about-modern-text {
  color: #fff;
}

.about-proof-section .line-subtitle {
  background-color: #fff;
}

.about-modern-lead,
.about-modern-text {
  color: #33424d;
  max-width: 680px;
  font-size: 19px;
  line-height: 1.62;
}

.about-modern-text {
  font-size: 17px;
}

.about-proof-row {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-flow: wrap;
  margin-top: 28px;
  display: flex;
}

.about-proof-pill {
  border: 1px solid #cbdce8;
  border-radius: 999px;
  background-color: #fff;
  color: #15324a;
  padding: 10px 15px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
}

.about-image-stack {
  min-height: 560px;
  position: relative;
}

.about-stack-image {
  object-fit: cover;
  display: block;
  position: absolute;
  box-shadow: 0 24px 70px #101b2229;
}

.about-stack-image.primary {
  width: 78%;
  height: 78%;
  inset: 0 0 auto auto;
}

.about-stack-image.secondary {
  width: 54%;
  height: 46%;
  border: 10px solid #f4f8fb;
  inset: auto auto 0 0;
}

.about-section-heading {
  max-width: 860px;
}

.about-values-grid {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  display: grid;
}

.about-value-card {
  border: 1px solid #dfe9ef;
  background-color: #f8fbfd;
  min-height: 290px;
  padding: 30px;
}

.about-value-number {
  color: #c63f28;
  margin-bottom: 54px;
  font-size: 14px;
  font-weight: 800;
  line-height: 1;
}

.about-value-card h3 {
  color: var(--heading);
  letter-spacing: 0;
  margin-top: 0;
  margin-bottom: 14px;
  font-size: 28px;
  line-height: 1.08;
}

.about-value-card p {
  color: #43525c;
  margin-bottom: 0;
  font-size: 16px;
  line-height: 1.6;
}

.about-proof-panel {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  grid-template-columns: 1fr;
  display: grid;
}

.about-stat {
  background-color: #fff;
  padding: 28px;
}

.about-stat-number {
  color: var(--heading);
  letter-spacing: 0;
  margin-bottom: 8px;
  font-size: clamp(44px, 6vw, 78px);
  font-weight: 800;
  line-height: .9;
}

.about-stat-label {
  color: #43525c;
  text-transform: uppercase;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 1.2px;
}

.about-modern-button {
  width: auto;
  max-width: 280px;
  margin-top: 24px;
}

.about-gallery-grid {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  grid-template-columns: 1fr 1.25fr 1fr;
  width: 100%;
  display: grid;
}

.about-gallery-image {
  object-fit: cover;
  width: 100%;
  height: 460px;
  display: block;
}

/* Meet our team page */
.team-modern-intro {
  padding-top: 170px;
}

.team-page .navbar-2 {
  border-left: 0;
  border-right: 0;
  border-radius: 0 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  left: 0 !important;
  right: 0 !important;
}

.team-page .navbar-2 .nav-block {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}

.team-roster-grid {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  display: grid;
}

.team-member-card {
  border: 1px solid #dcebe8;
  border-radius: 10px;
  background-color: #fff;
  min-height: 620px;
  padding: 22px;
  display: block;
  overflow: hidden;
  box-shadow: 0 22px 60px rgba(16, 27, 34, .06);
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.team-member-card:hover,
.team-member-card:focus-within {
  border-color: #bddbd5;
  transform: translateY(-6px);
  box-shadow: 0 30px 76px rgba(16, 27, 34, .12);
}

.team-member-card:focus {
  outline: 3px solid rgba(21, 111, 189, .18);
  outline-offset: 3px;
}

.team-photo-placeholder {
  background:
    linear-gradient(135deg, rgba(21, 111, 189, .2), rgba(84, 185, 233, .1)),
    #eaf6f5;
  border-radius: 12px;
  color: #173f39;
  justify-content: center;
  align-items: center;
  width: 100%;
  aspect-ratio: 4 / 5;
  min-height: 0;
  margin-bottom: 28px;
  font-size: 18px;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
  display: flex;
  overflow: hidden;
  position: relative;
}

.team-photo-placeholder.has-photo {
  background: #e8eef2;
  padding: 0;
}

.team-photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 18%;
  display: block;
}

.team-photo-placeholder span {
  border: 1px solid rgba(23, 63, 57, .16);
  border-radius: 999px;
  background-color: rgba(255, 255, 255, .7);
  padding: 10px 18px;
}

.team-card-info {
  text-align: center;
}

.team-role-label {
  color: #65736f;
  text-transform: none;
  margin-bottom: 22px;
  font-size: 20px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0;
}

.team-member-card h3 {
  color: #173f39;
  letter-spacing: 0;
  margin-top: 0;
  margin-bottom: 12px;
  font-size: clamp(22px, 2vw, 28px);
  line-height: 1.1;
}

.team-card-meta {
  color: #526575;
  margin: 14px 0 0;
  font-size: 14px;
  line-height: 1.45;
}

.team-card-meta a {
  color: #0b4f9f;
  text-decoration: none;
  font-weight: 700;
}

.team-card-meta a:hover {
  text-decoration: underline;
}

.team-card-bio {
  color: #41524e;
  max-height: 0;
  max-width: 310px;
  margin: 0 auto;
  opacity: 0;
  overflow: hidden;
  font-size: 16px;
  line-height: 1.55;
  transform: translateY(10px);
  transition: max-height .28s ease, opacity .28s ease, margin-top .28s ease, transform .28s ease;
}

.team-member-card:hover .team-card-bio,
.team-member-card:focus-within .team-card-bio {
  max-height: 120px;
  margin-top: 18px;
  opacity: 1;
  transform: translateY(0);
}

@media screen and (max-width: 991px) {
  .team-roster-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Complete mobile header revamp */
@media screen and (max-width: 991px) {
  .navbar,
  .navbar-2 {
    box-sizing: border-box;
    z-index: 9999;
    background: #fffffffa !important;
    background-color: #fffffffa !important;
    border-bottom: 1px solid #e7eef3;
    width: 100%;
    margin: 0;
    padding: 10px 16px;
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
    transform: none !important;
    box-shadow: 0 12px 32px #101b2214;
    backdrop-filter: blur(16px);
  }

  .nav-block {
    box-sizing: border-box;
    width: 100%;
    min-height: 60px;
    padding: 0;
  }

  .div-block-58 {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
  }

  .brand,
  .brand.w--current {
    width: 190px;
    max-width: 190px;
    height: 58px;
    min-height: 0;
    padding: 0;
    overflow: hidden;
  }

  .brand img {
    max-width: 180px;
    max-height: 54px;
  }

  .brand img.logo-white,
  .brand img.logo-white + img.logo-white {
    display: none !important;
  }

  .brand img.logo,
  .brand img.image-89,
  .logo,
  .image-89 {
    width: 100%;
    height: 100%;
    max-width: 180px;
    max-height: 54px;
    opacity: 1 !important;
    object-fit: contain;
    position: static;
    display: block;
  }

  .brand img.image-89 + img,
  .brand img.logo:not(.logo-white) + img {
    display: none !important;
  }

  .nav {
    flex: 0 0 auto;
    width: auto;
  }

  .menu-button {
    flex: 0 0 48px;
    display: flex !important;
    justify-content: center;
    align-items: center;
    border: 1px solid #d8e5ec;
    border-radius: 12px;
    background-color: #fff;
    width: 48px;
    height: 48px;
    min-width: 48px;
    min-height: 48px;
    padding: 0;
    position: static;
    top: auto;
    right: auto;
    z-index: 1;
    box-shadow: none;
  }

  .menu-button:before,
  .menu-button:after,
  .menu-button .icon-menu:before {
    content: "";
    background-color: #101b22;
    border-radius: 999px;
    width: 20px;
    height: 2px;
    position: absolute;
    left: 13px;
    transition: transform .22s ease, top .22s ease, opacity .18s ease, background-color .22s ease;
  }

  .menu-button:before {
    top: 16px;
  }

  .menu-button .icon-menu:before {
    top: 23px;
  }

  .menu-button:after {
    top: 30px;
  }

  .menu-button .icon-menu {
    color: transparent;
    font-size: 0;
    line-height: 0;
  }

  .menu-button.w--open {
    background-color: #101b22;
    border-color: #101b22;
    color: #fff;
  }

  .menu-button.w--open:before,
  .menu-button.w--open:after,
  .menu-button.w--open .icon-menu:before {
    background-color: #fff;
  }

  .menu-button.w--open:before {
    top: 23px;
    transform: rotate(45deg);
  }

  .menu-button.w--open .icon-menu:before {
    opacity: 0;
  }

  .menu-button.w--open:after {
    top: 23px;
    transform: rotate(-45deg);
  }

  .w-nav-overlay {
    top: 80px !important;
    left: 10px;
    right: 10px;
    width: auto !important;
    border-radius: 0 0 14px 14px;
    overflow: hidden;
  }

  .nav-menu {
    border: 1px solid #e0e9ef;
    border-top: 0;
    background-color: #fff;
    width: 100%;
    max-height: calc(100dvh - 92px);
    padding: 10px;
    display: block;
    overflow-y: auto;
    box-shadow: 0 24px 50px #101b2226;
  }

  .w-nav-overlay .nav-menu,
  .nav-menu[data-nav-menu-open] {
    position: static !important;
    inset: auto !important;
    transform: none !important;
  }

  .nav-link,
  .dropdown-toggle {
    border-radius: 8px;
    color: #101b22;
    text-align: left;
    justify-content: center;
    align-items: flex-start;
    min-height: 48px;
    padding: 14px 14px;
    font-size: 14px;
    line-height: 1.15;
    display: flex;
  }

  .nav-link:hover,
  .nav-link.w--current,
  .dropdown-toggle:hover {
    background-color: #f1f6fa;
    color: #13569e;
  }

  .dropdown {
    width: 100%;
  }

  .dropdown-toggle {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }

  .dropdown-toggle .text-button {
    color: inherit;
    text-align: left;
  }

  .icon-dropdown {
    width: 10px;
    height: 6px;
    margin-left: auto;
  }

  .dropdown-list.w--open {
    background-color: #f5f9fc;
    border-radius: 10px;
    margin-top: 4px;
    padding: 6px;
    position: static;
    left: auto;
  }

  .dropdown-list-block {
    padding: 0;
  }

  .dropdown-link,
  .dropdown-link.w--current {
    border-radius: 7px;
    color: #263945;
    text-align: left;
    min-height: 42px;
    padding: 12px 14px;
    font-size: 13px;
    line-height: 1.2;
  }

  .dropdown-link:hover {
    background-color: #fff;
    color: #13569e;
  }

  .div-block-45 {
    grid-column-gap: 8px;
    grid-row-gap: 8px;
    flex-direction: column;
    width: 100%;
    margin-top: 10px;
    display: flex;
  }

  .div-block-45 .nav-button-2 {
    border-radius: 8px;
    width: 100%;
    min-height: 48px;
    padding: 14px 18px;
  }

  .div-block-45 .nav-button-2.black {
    background-color: #101b22;
  }

  .div-block-61 {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .about-modern-intro,
  .about-values-section,
  .about-proof-section {
    padding: 58px 18px;
  }

  .about-modern-content,
  .about-modern-content.proof-layout {
    grid-template-columns: 1fr;
  }

  .about-modern-heading,
  .about-modern-heading.compact {
    font-size: clamp(31px, 9vw, 42px);
    line-height: 1.04;
  }

  .about-modern-lead,
  .about-modern-text {
    font-size: 16px;
  }

  .about-image-stack {
    min-height: 390px;
  }

  .about-stack-image.primary {
    width: 86%;
    height: 72%;
  }

  .about-stack-image.secondary {
    width: 58%;
    height: 42%;
    border-width: 7px;
  }

  .about-values-grid,
  .about-gallery-grid,
  .team-roster-grid {
    grid-template-columns: 1fr;
  }

  .team-member-card,
  .team-member-featured {
    grid-column: auto;
    min-height: auto;
  }

  .team-photo-placeholder {
    min-height: 0;
    aspect-ratio: 4 / 5;
    margin-bottom: 16px;
  }

  .about-value-card {
    min-height: auto;
    padding: 24px;
  }

  .about-value-number {
    margin-bottom: 34px;
  }

  .about-gallery-section {
    padding: 10px;
  }

  .about-gallery-image {
    height: 290px;
  }
}

@media screen and (max-width: 479px) {
  .navbar,
  .navbar-2 {
    padding-left: 12px;
    padding-right: 12px;
  }

  .brand,
  .brand.w--current {
    width: 170px;
    max-width: 170px;
  }

  .brand img,
  .brand img.logo,
  .brand img.image-89,
  .logo,
  .image-89 {
    max-width: 162px;
  }

  .w-nav-overlay {
    top: 78px !important;
    left: 8px;
    right: 8px;
  }
}

@keyframes ishine-page-out {
  from {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    filter: blur(0);
  }

  to {
    opacity: 0;
    transform: translate3d(-34px, 0, 0) scale(1.025);
    filter: blur(8px);
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 1ms !important;
  }

  .motion-ready .motion-reveal {
    opacity: 1;
    transform: none;
  }

}

@media screen and (max-width: 991px) {
  .projects-gallery-section {
    padding-left: 24px;
    padding-right: 24px;
  }

  .projects-gallery-heading {
    font-size: 34px;
  }

  .projects-gallery-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .projects-gallery-grid .w-lightbox {
    min-height: 220px;
  }

  .projects-gallery-grid img {
    min-height: 220px;
  }
}

@media screen and (max-width: 767px) {
  .projects-gallery-section {
    margin-top: 32px;
    padding-left: 18px;
    padding-right: 18px;
    padding-bottom: 72px;
  }

  .projects-gallery-heading {
    font-size: 28px;
  }

  .projects-gallery-grid {
    grid-column-gap: 0;
    grid-row-gap: 0;
    grid-template-columns: none;
    column-gap: 14px;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    width: calc(100% + 36px);
    margin-left: -18px;
    padding-left: 18px;
    padding-right: 18px;
    padding-bottom: 18px;
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
  }

  .projects-gallery-grid::-webkit-scrollbar {
    display: none;
  }

  .projects-gallery-grid .w-lightbox:nth-child(n) {
    grid-column: span 1;
    grid-row: span 1;
  }

  .projects-gallery-grid .w-lightbox {
    flex: 0 0 min(78vw, 360px);
    scroll-snap-align: center;
    min-height: 360px;
  }

  .projects-gallery-grid img {
    min-height: 360px;
  }
}

@media screen and (max-width: 479px) {
  .projects-gallery-section {
    padding-left: 14px;
    padding-right: 14px;
  }

  .projects-gallery-heading {
    font-size: 24px;
  }

  .projects-gallery-grid {
    width: calc(100% + 28px);
    margin-left: -14px;
    padding-left: 14px;
    padding-right: 14px;
  }
}

/* Modern homepage */
.home-modern ~ .section-hero-c,
.home-modern ~ .section.background-colour,
.home-modern ~ .section-full,
.home-modern ~ .section.no-padding-left-right {
  display: none;
}

.home-modern {
  background-color: #f5f8fb;
  color: #101b22;
  width: 100%;
}

.home-hero {
  color: #fff;
  min-height: 92vh;
  margin-top: -126px;
  padding: 220px 50px 44px;
  position: relative;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
}

.home-hero-media,
.home-hero-overlay {
  position: absolute;
  inset: 0;
}

.home-hero-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.home-hero-overlay {
  background: linear-gradient(90deg, #071017e6 0%, #071017bd 42%, #07101742 100%), linear-gradient(0deg, #071017b8 0%, #07101700 45%);
}

.home-hero-content {
  z-index: 2;
  width: min(820px, 100%);
  position: relative;
}

.home-eyebrow {
  color: #d7ebff;
  text-transform: uppercase;
  letter-spacing: 1.6px;
  margin-bottom: 14px;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.2;
}

.home-eyebrow.dark {
  color: #c63f28;
}

.home-eyebrow.light {
  color: #aed6ff;
}

.home-hero-title {
  color: #fff;
  letter-spacing: 0;
  max-width: 820px;
  margin-top: 0;
  margin-bottom: 22px;
  font-size: clamp(58px, 8vw, 118px);
  line-height: .9;
}

.home-hero-text {
  color: #e8f4ff;
  max-width: 650px;
  margin-bottom: 0;
  font-size: 20px;
  line-height: 1.55;
}

.home-hero-actions {
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  flex-wrap: wrap;
  margin-top: 34px;
  display: flex;
}

.home-button {
  border-radius: 0;
  min-height: 54px;
  color: #fff;
  justify-content: center;
  align-items: center;
  padding: 17px 24px;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 1.3px;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none;
  display: inline-flex;
}

.home-button.primary {
  background-color: #c63f28;
}

.home-button.secondary {
  border: 1px solid #ffffff80;
  background-color: #ffffff12;
  backdrop-filter: blur(10px);
}

.home-hero-proof {
  z-index: 2;
  grid-column-gap: 1px;
  width: min(620px, calc(100% - 100px));
  background-color: #ffffff2e;
  margin-left: auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  position: absolute;
  right: 50px;
  bottom: 44px;
  backdrop-filter: blur(18px);
}

.home-hero-proof div {
  background-color: #07101780;
  padding: 22px;
}

.home-hero-proof strong {
  color: #fff;
  display: block;
  font-size: 34px;
  line-height: .95;
}

.home-hero-proof span {
  color: #dbeeff;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-top: 8px;
  font-size: 11px;
  font-weight: 800;
  display: block;
}

.home-services,
.home-process,
.home-work,
.home-reviews,
.home-founder,
.home-cta {
  width: 100%;
  padding: 100px 50px;
}

.home-section-heading {
  width: min(980px, 100%);
  margin-bottom: 44px;
}

.home-section-heading.split {
  width: 100%;
  max-width: 1280px;
  justify-content: space-between;
  align-items: flex-end;
  gap: 24px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.home-section-heading h2,
.home-process-copy h2,
.home-founder-copy h2,
.home-cta h2 {
  color: #101b22;
  letter-spacing: 0;
  max-width: 900px;
  margin-top: 0;
  margin-bottom: 0;
  font-size: clamp(38px, 5vw, 72px);
  line-height: .98;
}

.home-services-grid,
.home-work-grid,
.home-review-grid {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  width: 100%;
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
}

.home-services-grid {
  grid-template-columns: repeat(3, 1fr);
}

.home-service-card {
  background-color: #fff;
  color: #101b22;
  min-height: 520px;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.home-service-image {
  object-fit: cover;
  width: 100%;
  height: 280px;
  display: block;
}

.home-service-content {
  padding: 28px;
}

.home-service-content span,
.home-process-steps span {
  color: #c63f28;
  margin-bottom: 38px;
  font-size: 13px;
  font-weight: 900;
  display: block;
}

.home-service-content h3,
.home-process-steps h3 {
  color: #101b22;
  letter-spacing: 0;
  margin-top: 0;
  margin-bottom: 12px;
  font-size: 28px;
  line-height: 1.05;
}

.home-service-content p,
.home-process-copy p,
.home-process-steps p,
.home-founder-copy p {
  color: #43525c;
  margin-bottom: 0;
  font-size: 17px;
  line-height: 1.58;
}

.home-process {
  background-color: #fff;
  grid-column-gap: 64px;
  grid-row-gap: 40px;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  display: grid;
}

.home-process-copy {
  max-width: 560px;
}

.home-process-copy p {
  margin-top: 24px;
}

.home-process-steps {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.home-process-steps div {
  border: 1px solid #dfe8ef;
  background-color: #f8fbfd;
  min-height: 320px;
  padding: 28px;
}

.home-work {
  background-color: #eef5f9;
}

.home-text-link {
  color: #101b22;
  border-bottom: 1px solid #101b22;
  padding-bottom: 4px;
  font-weight: 800;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 1.2px;
  font-size: 13px;
}

.home-work-grid {
  grid-template-columns: 1.2fr .9fr .9fr;
  align-items: stretch;
}

.home-work-image {
  object-fit: cover;
  width: 100%;
  height: 390px;
  display: block;
}

.home-work-image.tall {
  height: 100%;
  min-height: 390px;
}

.home-reviews {
  background-color: #101b22;
  overflow: hidden;
}

.home-reviews .home-section-heading h2 {
  color: #fff;
}

.home-review-grid {
  grid-template-columns: none;
  display: block;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  position: relative;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

.home-review-grid::-webkit-scrollbar {
  display: none;
}

.home-review-track {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  width: max-content;
  display: flex;
}

.home-review-card {
  background-color: #fff;
  border-radius: 26px;
  flex: 0 0 405px;
  scroll-snap-align: start;
  min-height: 330px;
  padding: 30px;
  box-shadow: 0 18px 42px #0000002e;
}

.home-review-card p {
  color: #25323b;
  margin-top: 34px;
  margin-bottom: 28px;
  font-size: 19px;
  line-height: 1.52;
}

.home-review-card strong {
  color: #101b22;
}

.home-founder {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  background-color: #fff;
  display: grid;
}

.home-founder-image {
  background-image: url('../images/IMG_5644.png');
  background-position: 50%;
  background-size: cover;
  min-height: 560px;
}

.home-founder-copy {
  background-color: #f5f8fb;
  justify-content: center;
  padding: 70px;
  display: flex;
  flex-direction: column;
}

.home-founder-copy p {
  max-width: 650px;
  margin-top: 24px;
}

.home-cta {
  color: #fff;
  background-color: #101b22;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
  display: flex;
}

.home-cta h2 {
  color: #fff;
}

@media screen and (max-width: 991px) {
  .home-hero {
    min-height: 860px;
    margin-top: 0;
    padding: 130px 24px 24px;
    align-items: flex-end;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
  }

  .home-hero-title {
    font-size: clamp(44px, 12vw, 76px);
  }

  .home-hero-proof {
    width: calc(100% - 48px);
    margin-top: 34px;
    margin-left: 0;
    position: relative;
    right: auto;
    bottom: auto;
  }

  .home-services,
  .home-process,
  .home-work,
  .home-reviews,
  .home-founder,
  .home-cta {
    padding: 74px 24px;
  }

  .home-services-grid,
  .home-process,
  .home-process-steps,
  .home-work-grid,
  .home-review-grid,
  .home-founder {
    grid-template-columns: 1fr;
  }

  .home-section-heading.split,
  .home-cta {
    align-items: flex-start;
    flex-direction: column;
  }

  .home-service-card,
  .home-review-card {
    min-height: auto;
  }

  .home-review-card {
    flex-basis: min(82vw, 380px);
  }

  .home-work-image,
  .home-work-image.tall,
  .home-founder-image {
    height: 360px;
    min-height: 360px;
  }

  .home-founder-copy {
    padding: 42px 24px;
  }
}

@media screen and (max-width: 479px) {
  .home-hero {
    min-height: 780px;
    padding: 110px 14px 14px;
  }

  .home-hero-text {
    font-size: 17px;
  }

  .home-button {
    width: 100%;
  }

  .home-hero-proof {
    width: 100%;
    grid-template-columns: 1fr;
  }

  .home-services,
  .home-process,
  .home-work,
  .home-reviews,
  .home-founder,
  .home-cta {
    padding: 58px 14px;
  }

  .home-section-heading h2,
  .home-process-copy h2,
  .home-founder-copy h2,
  .home-cta h2 {
    font-size: clamp(31px, 9vw, 42px);
  }

  .home-service-image,
  .home-work-image,
  .home-work-image.tall,
  .home-founder-image {
    height: 290px;
    min-height: 290px;
  }

  .home-service-content,
  .home-process-steps div,
  .home-review-card {
    padding: 24px;
  }

  .home-review-card {
    border-radius: 22px;
    flex-basis: 86vw;
  }
}

/* Header nav casing */
.navbar .nav-link,
.navbar-2 .nav-link,
.navbar .dropdown-toggle,
.navbar-2 .dropdown-toggle,
.navbar .text-button,
.navbar-2 .text-button,
.navbar .link-27,
.navbar-2 .link-27,
.navbar .nav-button-2,
.navbar-2 .nav-button-2,
.navbar .text-button-2,
.navbar-2 .text-button-2,
.navbar .nav-link-2,
.navbar-2 .nav-link-2 {
  text-transform: uppercase;
}

/* Global image radius */
img,
.background-image,
.image-bg,
.image-bg-a,
.image-bg-b,
.image-bg-accent,
.image-bg-about,
.image-bg-about-a1,
.image-bg-about-a2,
.image-bg-about-a3,
.image-bg-about-a4,
.image-bg-testimonials,
.image-left-contact,
.home-founder-image {
  border-radius: 20px;
}

/* Branded utility and sitemap pages */
.utility-page-wrap {
  background-color: var(--background);
  background-image: linear-gradient(145deg, #f0f6f8 0%, #ffffff 48%, #dcebf7 100%);
  width: 100%;
  min-height: 70vh;
  margin-bottom: 14px;
  padding: 150px 24px 90px;
}

.utility-page-content {
  background-color: #fff;
  border: 1px solid #dbe7ef;
  border-radius: 12px;
  width: min(720px, 100%);
  max-width: 720px;
  padding: 48px;
  box-shadow: 0 24px 70px #101b2214;
}

.utility-kicker {
  color: var(--red-2);
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 14px;
  font-family: Montserrat, sans-serif;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
}

.utility-page-content h1,
.utility-page-content h2 {
  color: var(--heading);
  letter-spacing: 0;
  margin-bottom: 18px;
  font-size: clamp(36px, 8vw, 64px);
  line-height: 1;
}

.utility-page-content p {
  color: var(--paragraphs);
  max-width: 560px;
  margin-bottom: 28px;
  font-size: 18px;
  line-height: 1.6;
}

.utility-actions {
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  flex-wrap: wrap;
  display: flex;
}

.utility-actions .button {
  min-width: 180px;
}

.utility-link {
  border: 1px solid #c7d7e4;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  min-height: 48px;
  padding: 12px 20px;
  color: var(--heading);
  font-weight: 700;
  text-decoration: none;
  display: flex;
}

.utility-link:hover {
  background-color: #eef6fb;
}

.sitemap-page {
  background-color: var(--background);
  width: 100%;
  padding: 150px 24px 90px;
}

.sitemap-shell {
  width: min(1120px, 100%);
  margin-left: auto;
  margin-right: auto;
}

.sitemap-header {
  max-width: 760px;
  margin-bottom: 42px;
}

.sitemap-header h1 {
  letter-spacing: 0;
  margin-bottom: 18px;
  font-size: clamp(42px, 8vw, 70px);
}

.sitemap-header p {
  max-width: 680px;
  font-size: 18px;
  line-height: 1.6;
}

.sitemap-grid {
  grid-column-gap: 18px;
  grid-row-gap: 18px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  display: grid;
}

.sitemap-card {
  background-color: #fff;
  border: 1px solid #dbe7ef;
  border-radius: 10px;
  padding: 26px;
  box-shadow: 0 18px 48px #101b220f;
}

.sitemap-card h2 {
  letter-spacing: 0;
  margin-bottom: 16px;
  font-size: 24px;
}

.sitemap-card a {
  color: var(--heading);
  border-bottom: 1px solid #dbe7ef;
  padding: 9px 0;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.35;
  text-decoration: none;
  display: block;
}

.sitemap-card a:hover {
  color: var(--red-2);
}

.section-footer {
  background-color: transparent;
  background-image: none;
  border-top: 1px solid #ffffff1f;
  border-radius: 0;
  grid-row-gap: 56px;
  position: relative;
  z-index: 0;
  width: 100% !important;
  max-width: none;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: 76px 56px 28px;
}

.section-footer::before {
  content: "";
  z-index: -1;
  background-image: linear-gradient(145deg, #12395a 0%, #0d283f 48%, #071924 100%);
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(50% - 50vw);
  right: calc(50% - 50vw);
}

.section-footer > * {
  position: relative;
  z-index: 1;
}

.section-footer > .content,
.section-footer > .div-block-70 {
  width: 100%;
  max-width: 1680px;
  align-self: stretch;
  margin-left: auto;
  margin-right: auto;
}

.section-footer > .div-block-70 {
  background-color: #ffffff0d;
  border: 1px solid #ffffff1a;
  border-radius: 18px;
  padding: 34px 44px;
}

.heading-52 {
  letter-spacing: 2.6px;
  text-transform: uppercase;
  margin-bottom: 24px;
  font-family: Montserrat, sans-serif;
  font-size: 18px;
  font-weight: 700;
}

.paragraph-4 {
  color: transparent;
  letter-spacing: 0;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
  font-size: 0;
  line-height: 1;
  display: flex;
}

.area-link,
.area-link.white-text {
  color: #e8f4ff;
  background-color: #ffffff12;
  border: 1px solid #ffffff1f;
  border-radius: 999px;
  padding: 12px 20px;
  font-size: 18px;
  font-weight: 600;
  line-height: 1;
}

.grid-footer {
  grid-column-gap: 72px;
  grid-row-gap: 46px;
  grid-template-columns: minmax(0, 1.45fr) minmax(0, .65fr) minmax(0, 1fr) minmax(0, .6fr) minmax(0, .8fr);
  align-items: start;
}

.logo-footer {
  width: 320px;
  margin-bottom: 34px;
}

.paragraph-footer {
  max-width: 520px;
  color: #d8e8f5;
  letter-spacing: 0;
  font-size: 20px;
  line-height: 1.62;
}

.heading-footer {
  letter-spacing: 2.4px;
  margin-bottom: 28px;
  font-family: Montserrat, sans-serif;
  font-size: 18px;
  font-weight: 700;
}

.link-footer {
  color: #d8e8f5;
  letter-spacing: 0;
  border-radius: 6px;
  width: 100%;
  padding: 9px 0;
  font-size: 20px;
  line-height: 1.35;
}

.link-footer.w--current,
.link-footer:hover,
.area-link:hover {
  color: #fff;
}

.grid-footer > .div-block-57,
.grid-footer > .div-block-150 {
  background-color: #ffffff0d;
  border: 1px solid #ffffff1a;
  border-radius: 18px;
  padding: 26px;
}

.grid-footer > .div-block-150 {
  grid-column: 1 / -1;
  align-items: center;
  gap: 32px;
}

.grid-footer > .div-block-150 .div-block-151 {
  flex: 0 0 auto;
  width: auto;
}

.grid-footer > .div-block-150 .div-block-151 img {
  width: 96px;
  height: 96px;
  object-fit: contain;
}

.paragraph-42,
.bold-text-64 {
  color: #d8e8f5;
  text-align: left;
  font-size: 18px;
  line-height: 1.5;
}

.footer-down-block {
  border-top-color: #ffffff24;
  align-items: center;
  width: 100%;
  margin-top: 22px;
  padding-top: 24px;
}

.text-footer-down {
  color: #bad0df;
  letter-spacing: 0;
  font-size: 16px;
}

.footer-down .link-social {
  background-color: #ffffff14;
  border: 1px solid #ffffff1f;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  display: flex;
}

.footer-down .icon-social {
  width: 21px;
  height: 21px;
  display: block;
  object-fit: contain;
  opacity: 1;
  filter: none;
}

@media screen and (max-width: 991px) {
  .sitemap-grid,
  .grid-footer {
    grid-template-columns: 1fr 1fr;
  }

  .grid-footer > * {
    grid-column: auto !important;
    grid-row: auto !important;
  }

  .section-footer {
    padding: 44px 24px 18px;
  }
}

@media screen and (max-width: 767px) {
  .utility-page-wrap,
  .sitemap-page {
    padding: 112px 18px 64px;
  }

  .utility-page-content {
    padding: 34px 24px;
  }

  .sitemap-grid,
  .grid-footer {
    grid-template-columns: 1fr;
  }

  .section-footer {
    padding: 34px 18px 16px;
  }

  .paragraph-4 {
    justify-content: flex-start;
  }

  .footer-down-block {
    align-items: flex-start;
    gap: 16px;
  }
}

/* Header readability polish */
@media screen and (min-width: 992px) {
  .navbar,
  .navbar-2 {
    z-index: 9999;
    background: #fffffff7 !important;
    background-color: #fffffff7 !important;
    border-bottom: 1px solid #e7edf2;
    width: 100%;
    margin: 0;
    padding: 10px 24px;
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
    transform: none !important;
    box-shadow: 0 12px 30px #101b2212;
    backdrop-filter: blur(14px);
  }

  .nav-block {
    width: 100%;
    max-width: 1240px;
    min-height: 76px;
    margin-left: auto;
    margin-right: auto;
    gap: 22px;
  }

  .brand {
    flex: 0 0 230px;
    width: 230px;
    height: 72px;
    padding: 0;
    overflow: hidden;
  }

  .brand img,
  .logo,
  .image-89 {
    width: 100%;
    max-width: 220px;
    height: 100%;
    max-height: 66px;
    object-fit: contain;
    opacity: 1 !important;
    position: static;
    display: block;
  }

  .logo.logo-white {
    display: none;
  }

  .nav {
    flex: 1 1 auto;
    justify-content: flex-end;
    min-width: 0;
  }

  .nav-menu {
    grid-column-gap: 4px;
    align-items: center;
    display: flex;
  }

  .nav-link,
  .dropdown-toggle {
    border-radius: 6px;
    color: #101b22;
    min-height: 42px;
    padding: 13px 10px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: .06em;
    text-transform: uppercase;
  }

  .nav-link:hover,
  .nav-link.w--current,
  .dropdown-toggle:hover {
    opacity: 1;
    color: #13569e !important;
    background-color: #edf5fb;
  }

  .nav-link.w--current {
    box-shadow: inset 0 -2px 0 #d01f1f;
  }

  .dropdown-toggle {
    gap: 6px;
  }

  .dropdown-toggle .text-button,
  .dropdown-toggle .link-27 {
    color: inherit !important;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    text-decoration: none;
  }

  .icon-dropdown {
    opacity: .75;
    margin-left: 0;
  }

  .dropdown-list.w--open {
    background-color: #101b22 !important;
    border: 1px solid #273845;
    border-radius: 8px;
    min-width: 250px;
    margin-top: 8px;
    left: -28px;
    box-shadow: 0 20px 38px #101b2233;
  }

  .dropdown-list-block {
    padding: 8px;
  }

  .dropdown-link {
    border-radius: 5px;
    padding: 12px 14px;
    color: #f7fbff;
    font-size: 13px;
    line-height: 1.15;
    letter-spacing: .04em;
  }

  .dropdown-link:hover,
  .dropdown-link.w--current {
    opacity: 1;
    color: #fff;
    background-color: #1e3d55;
  }

  .div-block-45 {
    flex: 0 0 auto;
    width: 190px;
    gap: 8px;
    margin-left: 8px;
  }

  .div-block-45 .nav-button-2,
  .div-block-45 .nav-button-2.black {
    border-radius: 6px;
    min-height: 38px;
    padding: 10px 14px;
    box-shadow: 0 8px 20px #101b2214;
  }

  .div-block-45 .nav-button-2:hover {
    background-color: #b91616;
    transform: translate3d(0, -1px, 0);
  }

  .div-block-45 .nav-button-2.black:hover {
    background-color: #21323d;
  }

  .div-block-45 .text-button-2 {
    font-size: 11px;
    line-height: 1.15;
    letter-spacing: .05em;
    white-space: normal;
  }

  .div-block-45 .text-button-2.bigger-font {
    font-size: 15px;
    letter-spacing: .02em;
  }

  .div-block-45 .icon-button {
    width: 14px;
    height: 14px;
    margin-left: 6px;
    top: 0;
  }
}

@media screen and (min-width: 992px) and (max-width: 1120px) {
  .navbar,
  .navbar-2 {
    padding-left: 16px;
    padding-right: 16px;
  }

  .nav-block {
    gap: 12px;
  }

  .brand {
    flex-basis: 190px;
    width: 190px;
  }

  .brand img,
  .logo,
  .image-89 {
    max-width: 184px;
  }

  .nav-link,
  .dropdown-toggle {
    padding-left: 8px;
    padding-right: 8px;
    font-size: 12px;
  }

  .div-block-45 {
    width: 170px;
    margin-left: 4px;
  }
}

/* Modern gradient header shared across Webflow pages */
.navbar,
.navbar-2 {
  background: linear-gradient(135deg, #ffffff 0%, #eef8ff 42%, #d8ecff 100%) !important;
  border: 1px solid #ffffffb3;
  border-radius: 24px;
  box-shadow: 0 18px 48px #1234501f;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.navbar:before,
.navbar-2:before {
  content: "Registered, Insured & Bonded | $5M Liability";
  color: #102236;
  letter-spacing: .02em;
  text-transform: uppercase;
  justify-content: center;
  align-items: center;
  margin-bottom: 8px;
  padding-bottom: 8px;
  font-family: Montserrat, sans-serif;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
  display: flex;
  border-bottom: 1px solid #b9d7ec;
}

.navbar {
  width: calc(100% - 28px);
}

.navbar-2 {
  width: calc(100% - 28px);
  margin: 14px;
  padding: 10px 15px;
  left: 0;
  right: 0;
}

.navbar .nav-link,
.navbar-2 .nav-link,
.navbar .dropdown-toggle,
.navbar-2 .dropdown-toggle,
.navbar .text-button,
.navbar-2 .text-button,
.navbar .link-27,
.navbar-2 .link-27 {
  color: #102236 !important;
}

.navbar .nav-link:hover,
.navbar-2 .nav-link:hover,
.navbar .nav-link.w--current,
.navbar-2 .nav-link.w--current,
.navbar .dropdown-toggle:hover .text-button,
.navbar-2 .dropdown-toggle:hover .text-button {
  color: #0a76c8 !important;
  opacity: 1;
}

.navbar .nav-button-2,
.navbar-2 .nav-button-2 {
  background: linear-gradient(135deg, #1aa8ff 0%, #0d66c2 100%);
  border-radius: 999px;
  box-shadow: 0 12px 28px #0b78d333;
}

.navbar .nav-button-2.black,
.navbar-2 .nav-button-2.black {
  background: linear-gradient(135deg, #102236 0%, #07151f 100%);
}

.navbar .text-button-2,
.navbar-2 .text-button-2,
.navbar .text-button-2 strong,
.navbar-2 .text-button-2 strong {
  color: #fff !important;
}

.navbar .dropdown-list,
.navbar-2 .dropdown-list,
.navbar .dropdown-list-block,
.navbar-2 .dropdown-list-block {
  border-radius: 18px;
  background: linear-gradient(145deg, #0e2b45 0%, #061722 100%);
  overflow: hidden;
  box-shadow: 0 20px 44px #07152138;
}

.navbar .dropdown-link,
.navbar-2 .dropdown-link {
  color: #f7fbff;
}

@media screen and (max-width: 991px) {
  .navbar,
  .navbar-2 {
    width: calc(100% - 20px);
    margin: 10px;
    border-radius: 20px;
  }

  .navbar-2 {
    padding: 8px 12px;
  }

  .navbar:before,
  .navbar-2:before {
    font-size: 10px;
    line-height: 1.35;
    text-align: center;
  }

  .nav-menu {
    background: linear-gradient(145deg, #ffffff 0%, #eaf6ff 100%);
    border-radius: 18px;
    margin-top: 10px;
  }
}

/* Keep horizontal bleed clipped without turning the body into a nested scroll area. */
html {
  overflow-x: hidden;
  overflow-y: auto;
}

body {
  overflow: visible !important;
}

/* Site-wide: headers scroll with the page instead of sticking. */
.navbar,
.navbar-2 {
  position: relative !important;
  top: auto !important;
}

@media screen and (max-width: 991px) {
  .menu-button {
    position: absolute !important;
    top: 0 !important;
    right: 16px !important;
    transform: translateY(-50%) !important;
  }
}

.site-floating-actions {
  pointer-events: none;
  position: fixed;
  z-index: 10020;
  inset: auto 0 calc(16px + env(safe-area-inset-bottom)) 0;
}

.site-floating-button {
  pointer-events: auto;
  position: fixed;
  bottom: calc(16px + env(safe-area-inset-bottom));
  width: 48px;
  height: 48px;
  border: 0;
  border-radius: 999px;
  display: grid;
  place-items: center;
  box-shadow: 0 12px 28px #10223633;
  transition: transform 180ms ease, box-shadow 180ms ease, opacity 180ms ease;
}

.site-floating-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 34px #1022363d;
}

.site-floating-button svg {
  width: 25px;
  height: 25px;
  fill: currentColor;
}

.site-floating-whatsapp {
  left: 16px;
  color: #fff;
  background: #20b858;
}

.site-floating-top {
  right: 16px;
  color: #102236;
  background: #fff;
  border: 1px solid #dbe8f0;
  cursor: pointer;
}

@media screen and (max-width: 479px) {
  .site-floating-button {
    width: 44px;
    height: 44px;
  }

  .site-floating-button svg {
    width: 23px;
    height: 23px;
  }
}

/* Unified iShine blue header and mobile navigation */
:root {
  --ishine-blue-900: #082f5f;
  --ishine-blue-800: #0b4f9f;
  --ishine-blue-700: #0d66c2;
  --ishine-blue-600: #147fd1;
  --ishine-blue-500: #1aa8ff;
  --ishine-blue-100: #eaf6ff;
  --ishine-blue-050: #f6fbff;
  --ishine-ink: #102236;
  --ishine-border: #cce5f7;
  --ishine-shadow: 0 18px 46px #0b4f9f21;
}

.navbar,
.navbar-2 {
  z-index: 9999 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 8px 24px !important;
  position: sticky !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ishine-border) !important;
  border-radius: 0 !important;
  background: linear-gradient(135deg, #ffffff 0%, var(--ishine-blue-050) 54%, #ddefff 100%) !important;
  box-shadow: 0 10px 34px #0b4f9f17 !important;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.navbar::before,
.navbar-2::before {
  content: "Registered, Insured & Bonded | $5M Liability";
  color: var(--ishine-blue-800);
  letter-spacing: .08em;
  text-transform: uppercase;
  border-bottom: 1px solid #d7ecfb;
  justify-content: center;
  align-items: center;
  margin: 0 0 8px;
  padding: 0 0 7px;
  font-family: Montserrat, sans-serif;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.25;
  display: flex;
}

.nav-block {
  width: min(1320px, 100%) !important;
  min-height: 68px;
  margin-left: auto;
  margin-right: auto;
}

.brand,
.brand.w--current {
  width: 218px;
  max-width: 218px;
  height: 68px;
  min-height: 0;
  padding: 0;
}

.brand img,
.brand img.image-89,
.logo,
.image-89 {
  width: 100%;
  max-width: 210px;
  height: 100%;
  max-height: 62px;
  object-fit: contain;
  opacity: 1 !important;
  position: static;
  display: block;
}

.nav {
  flex: 1 1 auto;
  justify-content: flex-end;
  min-width: 0;
}

.nav-menu {
  align-items: center;
}

.navbar .nav-link,
.navbar-2 .nav-link,
.navbar .dropdown-toggle,
.navbar-2 .dropdown-toggle {
  color: var(--ishine-ink) !important;
  letter-spacing: .06em;
  text-transform: uppercase;
  border-radius: 999px;
  min-height: 42px;
  padding: 12px 11px;
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  transition: color 180ms ease, background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.navbar .text-button,
.navbar-2 .text-button,
.navbar .link-27,
.navbar-2 .link-27 {
  color: inherit !important;
  letter-spacing: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

.navbar .nav-link:hover,
.navbar-2 .nav-link:hover,
.navbar .nav-link.w--current,
.navbar-2 .nav-link.w--current,
.navbar .dropdown-toggle:hover,
.navbar-2 .dropdown-toggle:hover,
.navbar .dropdown.w--open .dropdown-toggle,
.navbar-2 .dropdown.w--open .dropdown-toggle {
  opacity: 1;
  color: var(--ishine-blue-800) !important;
  background-color: #e5f4ff;
  box-shadow: inset 0 0 0 1px #bfdef4;
}

.navbar .nav-link.w--current,
.navbar-2 .nav-link.w--current {
  box-shadow: inset 0 0 0 1px #aed8f4, 0 8px 20px #0b70c91c;
}

.icon-dropdown {
  filter: saturate(1.25);
  opacity: .8;
  width: 9px;
  height: 5px;
  margin-left: 7px;
}

.dropdown-list.w--open {
  min-width: 276px;
  margin-top: 12px;
  left: -34px;
}

.navbar .dropdown-list,
.navbar-2 .dropdown-list,
.navbar .dropdown-list-block,
.navbar-2 .dropdown-list-block {
  border-radius: 14px;
  background: linear-gradient(145deg, var(--ishine-blue-900) 0%, var(--ishine-blue-800) 100%) !important;
  overflow: hidden;
  box-shadow: 0 22px 44px #082f5f38;
}

.dropdown-list-block {
  padding: 8px;
}

.navbar .dropdown-link,
.navbar-2 .dropdown-link {
  color: #f7fbff !important;
  letter-spacing: .045em;
  border-radius: 9px;
  padding: 13px 14px;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.15;
  transition: background-color 180ms ease, color 180ms ease, transform 180ms ease;
}

.navbar .dropdown-link:hover,
.navbar-2 .dropdown-link:hover,
.navbar .dropdown-link.w--current,
.navbar-2 .dropdown-link.w--current {
  opacity: 1;
  color: #fff !important;
  background-color: #1aa8ff33;
  transform: translateX(2px);
}

.div-block-45 {
  flex: 0 0 auto;
  width: auto;
  min-width: 188px;
  margin-left: 10px;
  gap: 8px;
}

.navbar .nav-button-2,
.navbar-2 .nav-button-2,
.navbar .nav-button,
.navbar-2 .nav-button {
  background: linear-gradient(135deg, var(--ishine-blue-500) 0%, var(--ishine-blue-700) 100%) !important;
  border: 1px solid #ffffff66;
  border-radius: 999px;
  box-shadow: 0 12px 26px #0b70c92e;
}

.navbar .nav-button-2.black,
.navbar-2 .nav-button-2.black {
  background: linear-gradient(135deg, var(--ishine-blue-900) 0%, var(--ishine-blue-800) 100%) !important;
}

.navbar .nav-button-2:hover,
.navbar-2 .nav-button-2:hover,
.navbar .nav-button:hover,
.navbar-2 .nav-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 16px 30px #0b70c93b;
}

.navbar .text-button-2,
.navbar-2 .text-button-2,
.navbar .text-button-2 strong,
.navbar-2 .text-button-2 strong {
  color: #fff !important;
}

@media screen and (min-width: 992px) and (max-width: 1180px) {
  .nav-block {
    gap: 10px;
  }

  .brand,
  .brand.w--current {
    width: 180px;
    max-width: 180px;
  }

  .brand img,
  .brand img.image-89,
  .logo,
  .image-89 {
    max-width: 174px;
  }

  .navbar .nav-link,
  .navbar-2 .nav-link,
  .navbar .dropdown-toggle,
  .navbar-2 .dropdown-toggle {
    padding-left: 8px;
    padding-right: 8px;
    font-size: 12px;
  }

  .div-block-45 {
    min-width: 168px;
    margin-left: 4px;
  }
}

@media screen and (max-width: 991px) {
  .navbar,
  .navbar-2 {
    width: 100% !important;
    padding: 8px 14px !important;
    background: linear-gradient(135deg, #ffffff 0%, var(--ishine-blue-050) 100%) !important;
  }

  .navbar::before,
  .navbar-2::before {
    margin-bottom: 6px;
    padding-bottom: 6px;
    text-align: center;
    font-size: 10px;
    line-height: 1.35;
  }

  .nav-block {
    min-height: 58px;
    padding: 0 !important;
  }

  .div-block-58 {
    flex: 1 1 auto;
    min-width: 0;
  }

  .brand,
  .brand.w--current {
    width: 172px;
    max-width: 172px;
    height: 56px;
  }

  .brand img,
  .brand img.image-89,
  .logo,
  .image-89 {
    max-width: 168px;
    max-height: 52px;
  }

  .menu-button {
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    min-width: 46px;
    min-height: 46px;
    padding: 0;
    position: static !important;
    transform: none !important;
    border: 1px solid #b9ddf4;
    border-radius: 999px;
    background: linear-gradient(135deg, #ffffff 0%, #e9f6ff 100%);
    box-shadow: 0 10px 24px #0b4f9f21;
    display: flex !important;
    justify-content: center;
    align-items: center;
  }

  .menu-button::before,
  .menu-button::after,
  .menu-button .icon-menu::before {
    content: "";
    width: 20px;
    height: 2px;
    background-color: var(--ishine-blue-800);
    border-radius: 999px;
    position: absolute;
    left: 12px;
    transition: transform 180ms ease, top 180ms ease, opacity 160ms ease, background-color 180ms ease;
  }

  .menu-button::before {
    top: 14px;
  }

  .menu-button .icon-menu::before {
    top: 21px;
  }

  .menu-button::after {
    top: 28px;
  }

  .menu-button .icon-menu {
    color: transparent;
    font-size: 0;
    line-height: 0;
  }

  .menu-button.w--open {
    background: linear-gradient(135deg, var(--ishine-blue-800), var(--ishine-blue-600));
    border-color: var(--ishine-blue-600);
  }

  .menu-button.w--open::before,
  .menu-button.w--open::after,
  .menu-button.w--open .icon-menu::before {
    background-color: #fff;
  }

  .menu-button.w--open::before {
    top: 21px;
    transform: rotate(45deg);
  }

  .menu-button.w--open .icon-menu::before {
    opacity: 0;
  }

  .menu-button.w--open::after {
    top: 21px;
    transform: rotate(-45deg);
  }

  .w-nav-overlay {
    width: auto !important;
    top: 86px !important;
    left: 12px !important;
    right: 12px !important;
    overflow: visible;
  }

  .w-nav-overlay .nav-menu,
  .nav-menu[data-nav-menu-open] {
    position: static !important;
    inset: auto !important;
    transform: none !important;
  }

  .nav-menu {
    width: 100%;
    max-height: calc(100dvh - 106px);
    border: 1px solid #cbe4f6;
    border-radius: 18px;
    background: linear-gradient(145deg, #ffffff 0%, #eef8ff 100%) !important;
    padding: 10px;
    overflow-y: auto;
    box-shadow: var(--ishine-shadow);
  }

  .navbar .nav-link,
  .navbar-2 .nav-link,
  .navbar .dropdown-toggle,
  .navbar-2 .dropdown-toggle {
    width: 100%;
    min-height: 50px;
    border-radius: 12px;
    justify-content: flex-start;
    align-items: center;
    padding: 15px 14px;
    color: var(--ishine-ink) !important;
    text-align: left;
    font-size: 14px;
    display: flex;
  }

  .navbar .nav-link:hover,
  .navbar-2 .nav-link:hover,
  .navbar .nav-link.w--current,
  .navbar-2 .nav-link.w--current,
  .navbar .dropdown-toggle:hover,
  .navbar-2 .dropdown-toggle:hover {
    background-color: #dff1ff;
    color: var(--ishine-blue-800) !important;
    box-shadow: inset 0 0 0 1px #b9ddf4;
  }

  .dropdown {
    width: 100%;
  }

  .dropdown-toggle {
    justify-content: space-between !important;
  }

  .dropdown-list.w--open {
    min-width: 0;
    width: 100%;
    margin-top: 4px;
    position: static;
    left: auto;
  }

  .navbar .dropdown-list,
  .navbar-2 .dropdown-list,
  .navbar .dropdown-list-block,
  .navbar-2 .dropdown-list-block {
    border-radius: 14px;
    background: #e5f4ff !important;
    box-shadow: none;
  }

  .dropdown-list-block {
    padding: 7px;
  }

  .navbar .dropdown-link,
  .navbar-2 .dropdown-link,
  .navbar .dropdown-link.w--current,
  .navbar-2 .dropdown-link.w--current {
    min-height: 44px;
    color: var(--ishine-blue-900) !important;
    background-color: transparent;
    border-radius: 10px;
    padding: 12px 14px;
    font-size: 13px;
  }

  .navbar .dropdown-link:hover,
  .navbar-2 .dropdown-link:hover {
    background-color: #fff;
    color: var(--ishine-blue-700) !important;
    transform: none;
  }

  .div-block-45 {
    width: 100%;
    min-width: 0;
    margin-top: 10px;
    margin-left: 0;
    gap: 8px;
    flex-direction: column;
    display: flex;
  }

  .div-block-45 .nav-button-2,
  .div-block-45 .nav-button-2.black {
    width: 100%;
    min-height: 48px;
    border-radius: 12px;
    justify-content: center;
    padding: 14px 18px;
  }
}

@media screen and (max-width: 479px) {
  .navbar,
  .navbar-2 {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .brand,
  .brand.w--current {
    width: 150px;
    max-width: 150px;
  }

  .brand img,
  .brand img.image-89,
  .logo,
  .image-89 {
    max-width: 146px;
  }
}

/* Top trust marquee with insurance and safety credentials */
.site-trust-marquee {
  position: relative;
  z-index: 10000;
  background: linear-gradient(135deg, #082f5f 0%, #0b4f9f 46%, #147fd1 100%);
  color: #fff;
  width: 100vw;
  margin-top: -14px;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  overflow: hidden;
  border-bottom: 1px solid rgba(255, 255, 255, .2);
  box-shadow: 0 12px 32px rgba(8, 47, 95, .2);
}

.site-trust-marquee-shell {
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  width: min(1420px, 100%);
  min-height: 58px;
  margin: 0 auto;
  padding: 9px 24px;
  display: grid;
}

.site-trust-intro {
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
  color: #eaf6ff;
  font-family: Montserrat, sans-serif;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
}

.site-trust-slider {
  min-width: 0;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
}

.site-trust-track {
  width: max-content;
  display: flex;
  align-items: center;
  gap: 12px;
  animation: siteTrustSlide 34s linear infinite;
}

.site-trust-marquee:hover .site-trust-track {
  animation-play-state: paused;
}

.site-trust-card {
  flex: 0 0 auto;
  min-height: 40px;
  padding: 8px 16px;
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 999px;
  background: rgba(255, 255, 255, .12);
  display: inline-flex;
  align-items: center;
  gap: 9px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .14);
}

.site-trust-card strong,
.site-trust-card span {
  color: #fff;
  letter-spacing: .02em;
  white-space: nowrap;
  font-family: Montserrat, sans-serif;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
}

.site-trust-card span {
  color: #e9f7ff;
  font-weight: 700;
}

.site-trust-card-logo {
  background: #fff;
  border-color: rgba(255, 255, 255, .68);
  padding-left: 13px;
}

.site-trust-card-logo img {
  border-radius: 0;
  width: auto;
  height: 24px;
  max-width: 122px;
  object-fit: contain;
  display: block;
}

.site-trust-card-logo span {
  color: #082f5f;
}

.site-trust-note {
  color: #d9efff;
  max-width: 260px;
  margin: 0;
  font-size: 9px;
  font-weight: 600;
  line-height: 1.25;
}

.navbar::before,
.navbar-2::before {
  display: none !important;
}

@keyframes siteTrustSlide {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(-50%, 0, 0);
  }
}

@media screen and (max-width: 991px) {
  .site-trust-marquee {
    margin-top: 0;
  }

  .site-trust-marquee-shell {
    grid-template-columns: 1fr;
    gap: 4px;
    min-height: 0;
    padding: 6px 10px 8px;
  }

  .site-trust-intro {
    display: block;
    text-align: center;
    white-space: normal;
    font-size: 10px;
    letter-spacing: .06em;
    line-height: 1.3;
  }

  .site-trust-note {
    display: none;
  }

  .site-trust-track {
    animation-duration: 28s;
    gap: 8px;
  }
}

@media screen and (max-width: 479px) {
  .site-trust-marquee-shell {
    padding: 5px 8px;
  }

  .site-trust-card {
    min-height: 34px;
    padding: 6px 11px;
  }

  .site-trust-card-logo img {
    height: 20px;
    max-width: 96px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-trust-track {
    animation: none;
    transform: none;
  }
}
