:root {
  --paragraph-color: #7e7e7e;
  --secondary-color: #1c2752;
  --primary-color: #ffb342;
  --primary-blue: #1686d6;
  --black: black;
  --dark-slate-blue: #284e8c;
  --dark-red: #a6151f;
  --white: white;
  --white-background-color: #f4f4f4;
}

.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;
}

body {
  color: var(--paragraph-color);
  letter-spacing: .02em;
  font-family: Inter, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
}

h1 {
  color: var(--secondary-color);
  letter-spacing: .02em;
  margin-top: 10px;
  margin-bottom: 10px;
  font-family: Mulish, sans-serif;
  font-size: 45px;
  font-weight: 800;
  line-height: 1.3;
}

h2 {
  color: var(--secondary-color);
  margin-top: 15px;
  margin-bottom: 10px;
  font-family: Mulish, sans-serif;
  font-size: 38px;
  font-weight: 800;
  line-height: 1.3;
}

h3 {
  color: var(--secondary-color);
  margin-top: 20px;
  margin-bottom: 10px;
  font-family: Mulish, sans-serif;
  font-size: 32px;
  font-weight: 800;
  line-height: 1.4;
}

h4 {
  color: var(--secondary-color);
  margin-top: 15px;
  margin-bottom: 10px;
  font-family: Mulish, sans-serif;
  font-size: 28px;
  font-weight: 800;
  line-height: 1.4;
}

h5 {
  color: var(--secondary-color);
  margin-top: 20px;
  margin-bottom: 10px;
  font-family: Mulish, sans-serif;
  font-size: 26px;
  font-weight: 800;
  line-height: 1.5;
}

h6 {
  color: var(--secondary-color);
  margin-top: 20px;
  margin-bottom: 10px;
  font-family: Mulish, sans-serif;
  font-size: 22px;
  font-weight: 800;
  line-height: 1.5;
}

p {
  color: var(--paragraph-color);
  letter-spacing: .02em;
  margin-bottom: 10px;
  font-family: Inter, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
}

a {
  color: var(--secondary-color);
  font-weight: 500;
  text-decoration: none;
  transition: color .2s;
}

a:hover {
  color: var(--primary-color);
}

ul, ol {
  margin-top: 10px;
  margin-bottom: 25px;
  padding-left: 40px;
}

li {
  color: var(--paragraph-color);
  padding-top: 10px;
  padding-bottom: 10px;
  font-family: Inter, sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.5;
}

blockquote {
  border-left: 50px solid var(--secondary-color);
  background-color: var(--primary-color);
  color: var(--secondary-color);
  letter-spacing: .02em;
  margin-top: 30px;
  margin-bottom: 35px;
  padding: 60px 100px 60px 60px;
  font-family: Inter, sans-serif;
  font-size: 22px;
  font-style: italic;
  font-weight: 500;
  line-height: 1.5;
}

.top-bar-section {
  background-color: var(--primary-blue);
}

.container {
  color: var(--black);
  background-color: rgba(0, 0, 0, 0);
  border-top: 0 #000;
  border-bottom: 0 #000;
  max-width: none;
  padding-left: 0;
  padding-right: 0;
  line-height: 18px;
  display: none;
}

.top-bar-wrap {
  padding-top: 20px;
  padding-bottom: 20px;
}

.top-bar-grid {
  grid-column-gap: 30px;
  grid-row-gap: 0px;
  color: var(--black);
  grid-template-rows: auto;
  align-items: center;
  line-height: 18px;
}

.top-bar-social-link {
  margin-right: 30px;
  padding-bottom: 2px;
  padding-left: 10px;
  padding-right: 10px;
}

.header-section {
  text-align: center;
  position: relative;
}

.header-wrap {
  color: var(--black);
  text-align: center;
  background-color: rgba(0, 0, 0, 0);
  display: block;
}

.logo-wrap {
  float: none;
  justify-content: center;
  align-items: center;
  padding-top: 20px;
  padding-bottom: 10px;
  padding-left: 60px;
  display: block;
  position: relative;
}

.header-link-wrap {
  justify-content: space-between;
  align-items: center;
  padding-right: 60px;
  display: flex;
}

.header-link-item {
  align-items: center;
  margin-left: 45px;
  display: flex;
}

.header-link-icon-wrap {
  background-color: var(--dark-slate-blue);
  border-radius: 100px;
  justify-content: center;
  align-items: center;
  width: 68px;
  height: 68px;
  margin-left: 90px;
  display: block;
}

.header-link-content {
  width: auto;
  padding-left: 0;
}

.header-contact-title {
  color: var(--black);
  margin-top: 0;
  margin-bottom: 0;
  font-size: 20px;
  font-weight: 500;
  line-height: 24px;
}

.header-contact-title.add-pad {
  padding-left: 15px;
}

.header-link {
  color: var(--black);
  font-weight: 400;
}

.header-link:hover {
  color: var(--dark-red);
}

.button {
  border: 2px solid var(--white);
  background-color: var(--primary-color);
  color: var(--black);
  margin-top: 10px;
  margin-bottom: 10px;
  margin-right: 10px;
  padding: 17px 40px;
  font-family: PT Serif, serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 20px;
  transition: background-color .2s, border-color .2s, color .2s;
}

.button:hover {
  color: var(--secondary-color);
  background-color: #fff;
}

.button.full-width-button {
  text-align: center;
  width: 100%;
}

.banner-title-area-section {
  background-image: url('../images/other-header.jpg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  top: auto;
}

.banner-title-wrap {
  text-align: center;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 120px;
  padding-bottom: 100px;
  position: relative;
}

.banner-overlay {
  background-color: rgba(28, 39, 82, .82);
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.subscribe-section {
  background-color: var(--primary-color);
  padding-top: 90px;
  padding-bottom: 90px;
}

.subscribe-form-flex {
  flex-direction: row;
  flex: 1;
  justify-content: center;
  align-items: flex-end;
  width: 100%;
  display: flex;
}

.subscribe-form-input-wrapper {
  text-align: left;
  width: 100%;
}

.subscribe-form-input {
  border-style: solid none solid solid;
  border-width: 2px;
  border-color: var(--white);
  color: var(--secondary-color);
  background-color: rgba(0, 0, 0, 0);
  height: 68px;
  margin-bottom: 0;
  padding-left: 20px;
  font-size: 17px;
  font-weight: 400;
}

.subscribe-form-input::placeholder {
  color: var(--secondary-color);
  font-size: 17px;
  font-weight: 400;
}

.subscribe-grid {
  grid-column-gap: 60px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  align-items: center;
}

.subscribe-content {
  color: var(--secondary-color);
  margin-bottom: 0;
}

.subscribe-title {
  margin-top: 0;
  margin-bottom: 10px;
}

.subscribe-highlight-text {
  font-weight: 600;
}

.submit-button {
  border: 2px solid var(--white);
  background-color: var(--white);
  color: var(--secondary-color);
  padding: 17px 40px;
  font-size: 20px;
  font-weight: 600;
  transition: color .2s, border-color .2s, background-color .2s;
}

.submit-button:hover {
  border-color: var(--secondary-color);
  background-color: var(--secondary-color);
  color: var(--white);
}

.footer-section {
  background-color: var(--black);
  width: auto;
  margin-left: 0;
  margin-right: 0;
  padding-top: 20px;
  padding-bottom: 20px;
}

.footer-link-item {
  float: none;
  justify-content: flex-end;
  align-items: center;
  width: 80%;
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
  display: block;
}

.footer-link-item.add-top {
  width: auto;
  margin-top: 30px;
  margin-right: 0;
}

.footer-link-item.add-top-40 {
  margin-top: 30px;
  margin-left: 0;
  margin-right: 0;
}

.footer-link-item.add-btm {
  width: 80%;
  margin-bottom: 25px;
}

.footer-link-item.adding-top {
  width: 80%;
  margin-top: 30px;
}

.footer-contact-title {
  color: var(--black);
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 0;
  font-family: Tahoma, Verdana, Segoe, sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 24px;
}

.footer-contact-title.add-top {
  margin-top: 10px;
}

.footer-contact-title.add-top.white {
  font-size: 22px;
  line-height: 26px;
}

.footer-contact-title.white {
  color: var(--white);
  font-family: Georgia, Times, Times New Roman, serif;
  font-size: 22px;
  line-height: 26px;
  text-decoration: underline;
}

.footer-contact-link {
  color: var(--black);
  font-weight: 400;
  line-height: 22px;
}

.footer-contact-link.white {
  color: var(--white);
  padding-top: 3px;
  font-family: PT Serif, serif;
  display: block;
}

.footer-info-address {
  color: var(--white);
  margin-top: 10px;
  font-family: PT Serif, serif;
  line-height: 22px;
}

.footer-widget {
  text-align: center;
  padding-left: 60px;
}

.footer-widget-content {
  color: var(--white);
  text-align: center;
  padding-top: 5px;
  font-family: PT Serif, serif;
  line-height: 22px;
}

.footer-widget-content.center {
  text-align: center;
  margin-top: 5px;
  font-family: PT Serif, serif;
  line-height: 22px;
}

.footer-social-wrap {
  justify-content: center;
  align-items: center;
  margin-top: 10px;
  display: flex;
}

.footer-social-link {
  background-color: rgba(0, 0, 0, 0);
  border-radius: 100px;
  justify-content: center;
  align-items: center;
  width: auto;
  height: auto;
  margin-bottom: 10px;
  margin-right: 15px;
  transition: background-color .2s, color .2s;
  display: flex;
}

.footer-social-link:hover {
  color: rgba(0, 0, 0, 0);
  background-color: rgba(0, 0, 0, 0);
}

.copyright-wrap {
  text-align: center;
  margin-top: 30px;
  margin-bottom: 20px;
}

.copyright-text {
  color: var(--white);
  margin-top: 10px;
  font-family: PT Serif, serif;
  line-height: 22px;
}

.copyright-link {
  color: var(--white);
  text-decoration: underline;
}

.copyright-link:hover {
  color: var(--dark-red);
}

.hero-section {
  border-top: 0 rgba(0, 0, 0, 0);
  border-bottom: 2px solid var(--primary-color);
  background-color: rgba(0, 0, 0, 0);
  margin-top: 0;
  padding-top: 60px;
  padding-bottom: 25px;
}

.hero-section.chg-pic {
  background-image: url('../images/Main-Header.jpg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.hero-wrap {
  margin-top: 0;
  padding-top: 0;
  padding-bottom: 0;
}

.hero-content-wrap {
  width: 75%;
  margin-top: 0;
}

.hero-subtitle-wrap {
  align-items: flex-start;
  display: flex;
}

.hero-subtitle {
  color: var(--white);
  text-transform: capitalize;
  align-self: center;
  margin-bottom: 0;
  padding-left: 10px;
  font-family: Georgia, Times, Times New Roman, serif;
  font-weight: 700;
  line-height: 18px;
}

.hero-subtitle-area {
  color: var(--white);
  background-color: rgba(0, 0, 0, .4);
  padding: 10px 20px;
  display: inline-block;
}

.hero-title {
  color: var(--white);
  text-transform: capitalize;
  background-color: rgba(0, 0, 0, .4);
  margin-top: 0;
  margin-bottom: 10px;
  padding-left: 20px;
  font-family: Georgia, Times, Times New Roman, serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 60px;
}

.hero-button-wrap {
  padding-bottom: 20px;
  padding-left: 25px;
}

.section-title-wrap {
  text-align: center;
  margin-bottom: 20px;
}

.section-title-wrap.title-left-align {
  text-align: left;
  width: 94%;
  margin-left: auto;
  margin-right: auto;
}

.section-title {
  z-index: 1;
  background-color: var(--white);
  color: var(--black);
  margin-top: 0;
  font-family: Georgia, Times, Times New Roman, serif;
  font-size: 36px;
  font-weight: 400;
  line-height: 40px;
  position: relative;
}

.section-title-content {
  z-index: 1;
  background-color: var(--white);
  color: var(--black);
  margin-bottom: 0;
  padding-bottom: 20px;
  font-family: PT Serif, serif;
  line-height: 22px;
  position: relative;
}

.section-title-content.content-secondary-color {
  color: var(--black);
  font-family: PT Serif, serif;
  line-height: 22px;
  position: static;
}

.home-experience-area {
  float: none;
  text-align: center;
  background-color: rgba(0, 0, 0, 0);
  border: 2px solid #000;
  width: 65%;
  margin-left: auto;
  margin-right: auto;
  padding: 0;
  position: relative;
}

.home-experience-lists {
  width: auto;
  margin-top: 35px;
  position: relative;
}

.service-tab-content-area {
  background-color: var(--white);
  border: 2px solid #000;
  justify-content: center;
  align-items: center;
  margin: 40px 25px 20px;
  padding: 10px 40px;
  display: flex;
  box-shadow: -1px 6px 18px rgba(0, 0, 0, .09);
}

.service-tab-contents {
  width: 60%;
  padding-right: 60px;
}

.service-tabs-image {
  width: 40%;
}

.service-wrap {
  padding-top: 100px;
  display: none;
}

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

.service-item {
  background-color: rgba(0, 0, 0, 0);
  background-image: url('../images/concrete-pipe.png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 50px 35px;
}

.service-item.piping {
  background-image: url('../images/concrete-pipe.png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border: 2px solid #000;
}

.service-item.culverts {
  background-image: url('../images/box-culvert.jpg');
  background-size: cover;
  border: 2px solid #000;
}

.service-item.head-wall {
  background-image: url('../images/head-wall.png');
  border: 2px solid #000;
}

.service-item.manholes {
  background-image: url('../images/sanitary-manhole.jpg');
  border: 2px solid #000;
}

.service-item.vaults {
  background-image: url('../images/concrete-vault.jpg');
  border: 2px solid #000;
}

.service-item.bumper-rail {
  background-image: url('../images/rail-bumper.png');
  background-size: contain;
  border: 2px solid #000;
}

.service-title {
  border-top: 2px solid var(--primary-color);
  border-right: 2px solid var(--primary-color);
  border-left: 2px solid var(--primary-color);
  color: var(--primary-color);
  text-transform: capitalize;
  background-color: rgba(0, 0, 0, .5);
  padding-top: 5px;
  padding-bottom: 10px;
  font-family: Georgia, Times, Times New Roman, serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 30px;
  display: block;
}

.service-title:hover {
  color: var(--white);
}

.service-content {
  border-right: 2px solid var(--primary-color);
  border-bottom: 2px solid var(--primary-color);
  border-left: 2px solid var(--primary-color);
  color: var(--primary-color);
  background-color: rgba(0, 0, 0, .5);
  margin-bottom: 25px;
  padding-bottom: 5px;
  font-family: PT Serif, serif;
  line-height: 22px;
}

.input-field {
  color: var(--paragraph-color);
  height: 65px;
  margin-top: 20px;
  margin-bottom: 25px;
  padding-left: 20px;
  font-family: Inter, sans-serif;
  font-size: 18px;
  font-weight: 400;
}

.input-field::placeholder {
  color: var(--paragraph-color);
  font-family: Inter, sans-serif;
  font-size: 18px;
  font-weight: 400;
}

.about-point-list-item {
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 20px;
  padding-right: 40px;
  display: flex;
}

.about-point-list-item.about-half-width-item {
  width: 50%;
}

.license-content-wrap {
  padding-top: 90px;
  padding-bottom: 80px;
}

.error-page-wrap {
  padding-top: 100px;
  padding-bottom: 100px;
}

.error-page-content-wrap {
  text-align: center;
}

.error-title {
  margin-bottom: 30px;
  font-size: 400px;
  line-height: .8;
}

.error-page-title {
  color: var(--primary-color);
  margin-bottom: 20px;
  font-size: 60px;
}

.error-button-wrap {
  margin-top: 25px;
}

.password-section {
  background-image: linear-gradient(to bottom, var(--white), var(--white-background-color) 68%);
  text-align: center;
  padding-top: 130px;
  padding-bottom: 90px;
}

.password-form-area {
  background-color: var(--white);
  border: 1px solid #ddd;
  width: 720px;
  margin-left: auto;
  margin-right: auto;
  padding: 90px 60px 80px;
}

.password-icon-wrap {
  background-color: rgba(255, 179, 66, .3);
  border-radius: 100px;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  width: 110px;
  height: 110px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.password-page-title {
  margin-top: 25px;
  font-size: 45px;
}

.password-content {
  padding-bottom: 10px;
  font-weight: 400;
}

.blog-item {
  margin-bottom: 60px;
}

.blog-readmore-link {
  justify-content: flex-start;
  align-items: center;
  margin-top: 20px;
  display: flex;
}

.project-item {
  background-color: var(--white);
  text-align: center;
  border: 1px solid #d2d2d2;
  margin-bottom: 40px;
  padding: 20px 20px 15px;
  transition: box-shadow .2s;
}

.project-item:hover {
  box-shadow: 6px 6px 10px rgba(0, 0, 0, .16);
}

.team-item {
  border: 1px solid #d2d2d2;
  margin-bottom: 20px;
  padding: 20px;
}

.success-message {
  background-color: var(--primary-color);
  color: var(--secondary-color);
  text-align: center;
}

.success-message.subscribe-success-message {
  background-color: var(--white);
}

.error-message {
  color: var(--secondary-color);
  text-align: center;
  width: 100%;
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto;
  padding: 20px;
}

.error-message.password-error-message {
  width: 50%;
}

.brand {
  align-self: center;
}

.body {
  color: rgba(0, 0, 0, 0);
}

.paragraph {
  color: var(--black);
  margin-bottom: 40px;
  font-family: PT Serif, serif;
  font-size: 18px;
  line-height: 22px;
}

.paragraph._20-btm-margin {
  margin-bottom: 20px;
}

.list-paragraph {
  color: var(--black);
  font-family: PT Serif, serif;
  font-size: 18px;
  line-height: 22px;
}

.top-bar-opening-hour-2 {
  color: #fff;
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 40px;
}

.main-content {
  background-color: var(--white);
  text-align: center;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 0;
  padding-bottom: 0;
  position: relative;
}

.footer-div {
  width: 98%;
  margin-left: auto;
  margin-right: auto;
}

.footer-div.add-top {
  margin-top: 30px;
}

.footer-info {
  width: auto;
  margin-left: 0;
  margin-right: 0;
  padding-left: 100px;
}

.footer-heading-top {
  color: var(--white);
  text-align: center;
  margin-top: 0;
  margin-bottom: 0;
  font-family: Georgia, Times, Times New Roman, serif;
  font-size: 28px;
  font-weight: 700;
  line-height: 32px;
  text-decoration: underline;
}

.footer-heading {
  color: var(--white);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 700;
}

.footer-heading.center {
  color: var(--white);
  text-align: center;
  margin-top: 20px;
  font-family: Georgia, Times, Times New Roman, serif;
  font-size: 28px;
  line-height: 32px;
  text-decoration: underline;
}

.page-header {
  color: var(--black);
  text-align: center;
  margin-top: 40px;
  font-family: Georgia, Times, Times New Roman, serif;
  font-size: 40px;
  font-weight: 400;
  line-height: 44px;
}

.social-media-images {
  text-align: center;
}

.heading-2 {
  color: var(--black);
  text-align: left;
  margin-top: 0;
  font-family: Tahoma, Verdana, Segoe, sans-serif;
  font-weight: 400;
  line-height: 32px;
}

.heading-2.center, .heading-2.add-top {
  text-align: center;
}

.paragraph-right {
  color: var(--black);
  text-align: center;
  line-height: 22px;
}

.column {
  padding-right: 10px;
}

.column-2 {
  padding-left: 10px;
}

.sub-item {
  justify-content: flex-start;
  align-items: center;
  margin-top: 0;
  padding-left: 0;
  display: flex;
}

.sub-item.add-top {
  margin-top: 20px;
}

.sub-item.add-top-17 {
  margin-top: 25px;
}

.contact-info {
  display: none;
}

.sub-item-wrap {
  background-color: var(--primary-blue);
  border-radius: 100px;
  flex: 0 auto;
  justify-content: center;
  align-items: center;
  width: 70px;
  height: 66px;
  display: flex;
}

.sub-item-wrap.chg-top {
  margin-top: -120px;
}

.sub-item-wrap.chg-top.mod {
  margin-top: -170px;
}

.sub-item-wrap.mod {
  width: 68px;
}

.sub-item-content {
  padding-left: 15px;
}

.social-content-title {
  color: var(--black);
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
  font-family: Tahoma, Verdana, Segoe, sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 24px;
}

.social-content-title.add-tops {
  margin-top: 0;
}

.social-content-link {
  color: var(--black);
  margin-top: 5px;
  font-weight: 600;
  line-height: 22px;
}

.social-content-link.add-topper {
  margin-top: 20px;
}

.contact-form {
  margin-top: 0;
}

.google-map {
  text-align: center;
  margin-top: 40px;
  padding-right: 40px;
}

.contact-con {
  width: 94%;
  margin: 40px auto 30px;
  padding-bottom: 0;
  display: none;
}

.div-block-5 {
  background-color: var(--black);
  padding-top: 5px;
  padding-bottom: 5px;
}

.banner-head {
  color: var(--white);
  margin-top: 0;
  font-family: Tahoma, Verdana, Segoe, sans-serif;
  font-weight: 700;
  line-height: 55px;
}

.tab-div {
  background-color: rgba(0, 0, 0, 0);
  width: auto;
  margin: 40px 0 0;
  padding-bottom: 0;
  display: none;
}

.piping-div {
  background-color: rgba(0, 0, 0, 0);
  width: 96%;
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 0;
  display: block;
}

.reducing-div {
  width: 94%;
  margin-left: auto;
  margin-right: auto;
}

.section-head {
  text-align: center;
  padding-top: 40px;
  position: relative;
}

.piping-kinds {
  text-align: center;
  padding-top: 40px;
}

.div-block-6 {
  text-align: center;
}

.button-2 {
  border: 2px solid var(--white);
  background-color: var(--primary-color);
  color: var(--black);
  border-radius: 20px;
  font-family: PT Serif, serif;
  font-weight: 700;
  line-height: 22px;
}

.button-2:hover {
  border-color: var(--primary-color);
  background-color: var(--white);
  color: var(--black);
}

.div-block-7 {
  border-top: 0px none var(--black);
  text-align: center;
  margin-top: 0;
  padding-top: 20px;
  padding-bottom: 0;
}

.image-2 {
  border-top: 2px solid #000;
}

.page-content {
  width: 94%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 0;
  padding-bottom: 40px;
}

.page-content.add-top-40 {
  padding-top: 40px;
}

.tabs-menu-div {
  justify-content: center;
  align-items: center;
  display: flex;
}

.tab-image {
  float: none;
}

.tab-link-tab-1 {
  background-color: var(--primary-color);
  color: var(--black);
  border: 2px solid #000;
  margin-bottom: 5px;
  margin-left: 15px;
  margin-right: 15px;
  padding-top: 15px;
  padding-bottom: 15px;
}

.tab-link-tab-1:hover {
  background-color: var(--white);
  color: var(--black);
  border: 2px solid #000;
}

.tab-link-tab-1.w--current {
  background-color: var(--primary-color);
  color: var(--black);
  margin-left: 15px;
  margin-right: 15px;
  padding-top: 15px;
  padding-bottom: 15px;
}

.tab-link-tab-1.w--current:hover {
  background-color: var(--white);
  border: 2px solid #000;
}

.tab-link-tab-2 {
  background-color: var(--primary-color);
  color: var(--black);
  border: 2px solid #000;
  margin-bottom: 5px;
  margin-left: 15px;
  margin-right: 15px;
  padding-top: 15px;
  padding-bottom: 15px;
}

.tab-link-tab-2:hover {
  background-color: var(--white);
  color: var(--black);
  border: 2px solid #000;
}

.tab-link-tab-2.w--current {
  background-color: var(--primary-color);
}

.tab-link-tab-2.w--current:hover {
  background-color: var(--white);
}

.tab-link-tab-3 {
  background-color: var(--primary-color);
  border: 2px solid #000;
  margin-bottom: 5px;
  margin-left: 15px;
  margin-right: 15px;
  padding-top: 15px;
  padding-bottom: 15px;
}

.tab-link-tab-3:hover {
  background-color: var(--white);
  color: var(--black);
  border: 2px solid #000;
}

.tab-link-tab-3.w--current {
  background-color: var(--primary-color);
  color: var(--black);
  border: 2px solid #000;
  margin-bottom: 5px;
}

.tab-link-tab-3.w--current:hover {
  background-color: var(--white);
}

.tab-link {
  float: right;
  color: var(--black);
  padding-top: 10px;
  padding-left: 10px;
  font-family: Georgia, Times, Times New Roman, serif;
  font-weight: 700;
  line-height: 22px;
}

.tab-link:hover {
  color: var(--dark-red);
}

.service-tabs-content {
  background-color: var(--primary-color);
  border: 2px solid #000;
  width: 96%;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 15px;
}

.section-101 {
  background-color: var(--white);
  text-align: center;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

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

.navv-link:hover {
  color: var(--primary-color);
}

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

.navv-link.w--current:hover {
  color: var(--primary-color);
}

.dropdown-list-2 {
  background-color: var(--dark-red);
}

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

.dropdown-link:hover {
  color: var(--primary-color);
}

.nav-menu-2 {
  float: none;
  display: none;
}

.header-menu-system {
  background-color: rgba(0, 0, 0, 0);
}

.menu-contained {
  background-color: var(--dark-red);
}

.header-top {
  display: block;
}

.top-head-section {
  padding-top: 10px;
  padding-bottom: 10px;
}

.navigation {
  background-color: rgba(0, 0, 0, 0);
}

.nav-menu-3 {
  float: none;
  text-align: center;
}

.navbar-2 {
  background-color: var(--dark-red);
  border-top: 2px solid #000;
  border-bottom: 2px solid #000;
}

.link-nav {
  color: var(--white);
  line-height: 22px;
}

.link-nav:hover {
  background-color: var(--black);
  color: var(--primary-color);
}

.link-nav.w--current {
  color: var(--primary-color);
  line-height: 22px;
}

.dropdown-list-3 {
  background-color: var(--dark-red);
}

.link-dropdown {
  color: var(--white);
  line-height: 22px;
}

.link-dropdown:hover {
  background-color: var(--black);
  color: var(--primary-color);
}

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

.logos-div {
  text-align: center;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 0;
}

.div-block-12 {
  color: rgba(0, 0, 0, 0);
  background-color: #284e8c;
  border: 1px solid #000;
  border-radius: 100px;
  width: 50px;
  height: 50px;
  margin-top: 0;
}

.div-block-12.add-margin {
  background-color: var(--dark-slate-blue);
  border: 1px solid #000;
}

.image-5 {
  padding-top: 14px;
  padding-left: 11px;
}

.content.add-padding {
  padding-top: 25px;
  padding-left: 40px;
}

.content.add-top {
  padding-top: 25px;
}

.content.add-top.add-pad {
  padding-left: 20px;
}

.phone-div {
  padding-left: 5px;
}

.link {
  color: var(--black);
}

.link:hover {
  color: var(--primary-blue);
}

.link-2 {
  color: var(--black);
}

.link-2:hover {
  color: var(--primary-blue);
}

.page-paragraph {
  color: var(--black);
  margin-bottom: 20px;
  font-family: PT Serif, serif;
  line-height: 22px;
}

.page-paragraph.add-btm {
  margin-bottom: 15px;
}

.page-paragraph.add-top {
  margin-top: 10px;
}

.image-6 {
  float: none;
  margin-top: 23px;
  margin-left: 20px;
}

.image-7 {
  margin-top: 20px;
  margin-left: 20px;
}

.image-8 {
  width: 45%;
  max-width: none;
  margin-top: 10px;
  margin-left: 19px;
}

.column-4 {
  position: relative;
}

.info-right {
  margin-top: 5px;
  margin-left: -5px;
}

.info-right.less-top {
  margin-top: -12px;
}

.info-right.add-btm {
  margin-bottom: 0;
  padding-bottom: 0;
}

.image-9 {
  padding-top: 12px;
  padding-left: 12px;
}

.text-block {
  font-weight: 500;
}

.italic-text, .bold-text {
  text-decoration: underline;
}

.heading-3 {
  color: var(--black);
  text-align: left;
  margin-top: 0;
  margin-bottom: 5px;
  padding-left: 0;
  font-family: Georgia, Times, Times New Roman, serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 24px;
  text-decoration: underline;
}

.heading-3.add-left {
  padding-left: 100px;
}

.heading-3.more-left {
  padding-left: 0;
}

.div-block-13 {
  margin-top: 40px;
  display: none;
}

.link-3, .link-4, .link-5, .link-6, .link-7, .link-8, .link-9, .link-10 {
  color: var(--black);
  text-decoration: underline;
}

.link-11 {
  color: var(--white);
  text-decoration: underline;
}

.link-12, .link-13, .link-14, .link-15 {
  color: var(--black);
  text-decoration: underline;
}

.div-block-14 {
  display: none;
}

.div-block-15 {
  margin-top: 40px;
  display: none;
}

.contact-content {
  width: 94%;
  margin: 40px auto 30px;
  padding-bottom: 0;
}

.social-media-images-2 {
  text-align: left;
  padding-left: 50px;
}

.image-16 {
  padding-top: 19px;
  padding-left: 23px;
}

.heading-4 {
  color: #000;
  text-align: left;
  margin-top: 0;
  margin-bottom: 0;
  font-family: Georgia, Times, Times New Roman, serif;
  font-weight: 400;
  line-height: 32px;
  text-decoration: underline;
}

.heading-4.center {
  text-align: left;
  font-family: Georgia, Times, Times New Roman, serif;
}

.inform-div {
  padding-left: 0;
  padding-right: 0;
}

.social-content-title-2 {
  color: #000;
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 5px;
  padding-bottom: 0;
  padding-left: 0;
  font-family: Georgia, Times, Times New Roman, serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 28px;
  text-decoration: underline;
}

.social-content-title-2.reduce-top {
  padding-top: 0;
}

.social-content-title-2.btm-pad {
  padding-bottom: 5px;
}

.details-div {
  padding-bottom: 20px;
}

.image-15 {
  padding-top: 20px;
  padding-left: 20px;
}

.contact-form-2 {
  text-align: center;
  margin-top: 0;
}

.div-block-16 {
  text-align: left;
  margin-top: 40px;
}

.image-14 {
  text-align: left;
  width: auto;
  height: auto;
  margin-right: 0;
  padding-top: 22px;
  padding-left: 20px;
}

.paragraph-right-2 {
  color: #000;
  font-family: PT Serif, serif;
  line-height: 22px;
}

.google-map-2 {
  text-align: left;
  margin-top: 20px;
  padding-right: 0;
}

.google-map-2.add-top {
  margin-top: 40px;
}

.social-content-link-2 {
  color: #000;
  padding-left: 0;
  font-family: PT Serif, serif;
  font-weight: 400;
  line-height: 22px;
}

.social-content-link-2.less-left, .social-content-link-2.no-left {
  padding-left: 0;
}

.image-div {
  float: left;
  background-color: #1686d6;
  border-radius: 100px;
  width: 68px;
  height: 68px;
  margin-top: 0;
  margin-right: 10px;
  padding-right: 0;
}

.social-content-title-3 {
  color: #000;
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 5px;
  padding-left: 0;
  font-family: Georgia, Times, Times New Roman, serif;
  font-size: 28px;
  font-weight: 400;
  line-height: 32px;
  text-decoration: underline;
}

.social-content-title-3.reduce-top {
  margin-top: 20px;
  padding-top: 0;
}

.div-block-17 {
  margin-top: 40px;
}

.list-item {
  color: var(--black);
  font-family: PT Serif, serif;
  font-weight: 400;
  line-height: 22px;
}

.bold-text-2, .bold-text-3 {
  color: var(--dark-red);
}

.link-16 {
  text-decoration: underline;
}

.div-head {
  color: var(--black);
  text-align: center;
  font-family: Georgia, Times, Times New Roman, serif;
  font-weight: 400;
  line-height: 32px;
}

.link-17 {
  text-decoration: underline;
}

.reg-concrete-div, .arched-concrete-div {
  text-align: center;
  padding-top: 10px;
  padding-bottom: 10px;
}

.image-17, .image-18 {
  border: 1px solid #000;
}

.picture-div {
  text-align: center;
  padding-top: 10px;
  padding-bottom: 10px;
}

.image-19, .image-20 {
  border: 1px solid #000;
}

.link-18 {
  text-decoration: underline;
}

.bold-text-4 {
  color: var(--dark-red);
}

.image-21, .image-22, .image-23, .image-24 {
  border: 1px solid #000;
}

.link-19, .link-20, .link-21 {
  text-decoration: underline;
}

.image-25 {
  border: 1px solid #000;
}

._404-div {
  text-align: center;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}

._404-image {
  text-align: center;
}

._404-heading {
  color: var(--black);
  text-align: center;
  margin-bottom: 60px;
  font-size: 70px;
  line-height: 74px;
}

._404-paragraph {
  color: var(--black);
  text-align: center;
  line-height: 22px;
}

@media screen and (min-width: 1280px) {
  .container {
    max-width: 100%;
    padding-left: 30px;
    padding-right: 30px;
  }

  .top-bar-grid {
    grid-template-columns: 1fr 1fr;
  }

  .logo-wrap {
    flex-direction: row;
    justify-content: space-between;
    padding-top: 30px;
    padding-bottom: 30px;
    display: flex;
  }

  .header-link-icon-wrap {
    margin-left: 125px;
  }

  .header-contact-title, .header-contact-title.add-pad {
    font-size: 24px;
    line-height: 28px;
  }

  .button {
    font-size: 24px;
    line-height: 24px;
  }

  .banner-title-wrap {
    width: 980px;
    padding-top: 160px;
    padding-bottom: 110px;
  }

  .subscribe-section {
    padding-top: 100px;
    padding-bottom: 100px;
  }

  .footer-link-item.adding-top {
    margin-top: 40px;
  }

  .footer-contact-title.add-top.white, .footer-contact-title.white {
    font-size: 28px;
    line-height: 32px;
  }

  .footer-contact-link.white, .footer-info-address, .footer-widget-content, .footer-widget-content.center, .copyright-text {
    font-size: 22px;
    line-height: 26px;
  }

  .hero-section {
    background-image: url('../images/hero-banner-image.jpg');
  }

  .hero-wrap {
    padding-top: 240px;
    padding-bottom: 200px;
  }

  .hero-content-wrap {
    width: 60%;
  }

  .hero-subtitle {
    font-size: 22px;
    line-height: 22px;
  }

  .hero-subtitle-area {
    padding: 10px 40px 10px 20px;
  }

  .hero-title {
    font-size: 44px;
    line-height: 64px;
  }

  .section-title {
    font-size: 40px;
    line-height: 44px;
  }

  .section-title-content {
    font-size: 22px;
    line-height: 26px;
  }

  .service-tab-content-area {
    margin: 40px 20px 20px;
    padding: 60px;
  }

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

  .service-title {
    font-size: 30px;
    line-height: 34px;
  }

  .service-content {
    font-size: 22px;
    line-height: 26px;
  }

  .license-content-wrap {
    padding-top: 100px;
    padding-bottom: 110px;
  }

  .error-page-wrap {
    padding-top: 140px;
    padding-bottom: 140px;
  }

  .error-title {
    font-size: 450px;
  }

  .error-page-title {
    font-size: 60px;
  }

  .password-section {
    padding-top: 150px;
    padding-bottom: 110px;
  }

  .paragraph, .list-paragraph {
    font-size: 22px;
    line-height: 26px;
  }

  .footer-heading-top, .footer-heading.center {
    font-size: 32px;
    line-height: 36px;
  }

  .page-header {
    font-size: 44px;
    line-height: 48px;
  }

  .sub-item {
    padding-left: 100px;
  }

  .sub-item-wrap {
    width: 68px;
  }

  .banner-head {
    font-size: 49px;
    line-height: 59px;
  }

  .button-2 {
    font-size: 22px;
    line-height: 26px;
  }

  .tab-link {
    padding-top: 5px;
    font-size: 22px;
    line-height: 26px;
  }

  .link-nav, .link-nav.w--current {
    font-size: 22px;
    line-height: 26px;
  }

  .link-dropdown {
    padding-top: 12px;
    padding-bottom: 12px;
    font-size: 22px;
    line-height: 26px;
  }

  .div-block-12 {
    width: 60px;
    height: 60px;
  }

  .image-5 {
    padding-top: 18px;
    padding-left: 15px;
  }

  .page-paragraph {
    font-size: 22px;
    line-height: 26px;
  }

  .image-9 {
    padding-top: 16px;
    padding-left: 16px;
  }

  .text-block {
    padding-right: 5px;
  }

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

  .social-media-images-2 {
    padding-left: 55px;
  }

  .image-16 {
    padding-top: 23px;
    padding-left: 25px;
  }

  .heading-4, .heading-4.center {
    font-size: 32px;
    line-height: 36px;
  }

  .social-content-title-2 {
    font-size: 28px;
    line-height: 32px;
  }

  .image-15, .image-14 {
    padding-top: 23px;
    padding-left: 23px;
  }

  .paragraph-right-2, .social-content-link-2, .social-content-link-2.no-left {
    font-size: 22px;
    line-height: 26px;
  }

  .image-div {
    width: 72px;
    height: 72px;
  }

  .social-content-title-3 {
    font-size: 32px;
    line-height: 36px;
  }

  .list-item {
    font-size: 22px;
    line-height: 26px;
  }

  .div-head {
    font-size: 32px;
    line-height: 36px;
  }

  ._404-heading {
    font-size: 74px;
    line-height: 78px;
  }

  ._404-paragraph {
    font-size: 22px;
    line-height: 26px;
  }
}

@media screen and (min-width: 1440px) {
  .container {
    max-width: 1200px;
    padding-left: 0;
    padding-right: 0;
  }

  .top-bar-wrap {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .logo-wrap {
    padding-top: 30px;
    padding-bottom: 30px;
  }

  .header-link-icon-wrap {
    margin-left: 155px;
  }

  .header-contact-title, .header-contact-title.add-pad {
    font-size: 26px;
    line-height: 30px;
  }

  .button {
    font-size: 28px;
    line-height: 28px;
  }

  .banner-title-wrap {
    width: 980px;
    padding-top: 200px;
    padding-bottom: 140px;
  }

  .subscribe-section {
    padding-top: 110px;
    padding-bottom: 110px;
  }

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

  .footer-link-item.adding-top {
    margin-top: 50px;
  }

  .footer-contact-title.add-top.white, .footer-contact-title.white {
    font-size: 32px;
    line-height: 36px;
  }

  .footer-contact-link.white, .footer-info-address, .footer-widget-content, .footer-widget-content.center {
    font-size: 26px;
    line-height: 30px;
  }

  .copyright-text {
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 26px;
    line-height: 30px;
  }

  .hero-section {
    margin-top: 30px;
  }

  .hero-wrap {
    padding-top: 260px;
    padding-bottom: 220px;
  }

  .hero-subtitle {
    font-size: 26px;
    line-height: 26px;
  }

  .hero-title {
    font-size: 48px;
    line-height: 68px;
  }

  .section-title {
    font-size: 44px;
    line-height: 48px;
  }

  .section-title-content {
    font-size: 26px;
    line-height: 30px;
  }

  .service-tab-content-area {
    flex-direction: row;
    justify-content: space-between;
    margin: 40px 20px 20px;
    padding: 60px;
    display: flex;
  }

  .service-item {
    padding: 50px 35px;
  }

  .service-title {
    padding-top: 20px;
    padding-bottom: 13px;
    font-size: 34px;
    line-height: 38px;
  }

  .service-content {
    margin-bottom: 25px;
    font-size: 26px;
    line-height: 30px;
  }

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

  .password-form-area {
    width: 720px;
  }

  .team-item {
    margin-bottom: 20px;
    padding: 20px;
  }

  .paragraph {
    font-family: PT Serif, serif;
    font-size: 26px;
    font-weight: 400;
    line-height: 30px;
  }

  .list-paragraph {
    font-size: 26px;
    line-height: 30px;
  }

  .footer-heading-top, .footer-heading.center {
    font-size: 36px;
    line-height: 40px;
  }

  .page-header {
    font-size: 48px;
    line-height: 52px;
  }

  .sub-item {
    padding-left: 120px;
  }

  .banner-head {
    font-size: 54px;
    line-height: 64px;
  }

  .button-2, .tab-link, .link-nav, .link-nav.w--current, .link-dropdown {
    font-size: 26px;
    line-height: 30px;
  }

  .div-block-12 {
    width: 65px;
    height: 65px;
  }

  .image-5 {
    padding-top: 20px;
    padding-left: 17px;
  }

  .email-div {
    margin-left: -5px;
  }

  .page-paragraph {
    font-size: 26px;
    font-weight: 400;
    line-height: 30px;
  }

  .image-9 {
    padding-top: 18px;
    padding-left: 18px;
  }

  .text-block {
    padding-right: 8px;
  }

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

  .social-media-images-2 {
    padding-left: 65px;
  }

  .image-16 {
    padding-left: 27px;
  }

  .heading-4, .heading-4.center {
    font-size: 36px;
    line-height: 40px;
  }

  .social-content-title-2 {
    font-size: 32px;
    line-height: 36px;
  }

  .image-15 {
    padding-top: 24px;
    padding-left: 25px;
  }

  .image-14 {
    padding-top: 25px;
    padding-left: 24px;
  }

  .paragraph-right-2, .social-content-link-2, .social-content-link-2.no-left {
    font-size: 26px;
    line-height: 30px;
  }

  .image-div {
    width: 76px;
    height: 76px;
  }

  .social-content-title-3 {
    font-size: 36px;
    line-height: 40px;
  }

  .list-item {
    font-size: 26px;
    line-height: 30px;
  }

  .div-head {
    font-size: 36px;
    line-height: 40px;
  }

  ._404-heading {
    font-size: 78px;
    line-height: 82px;
  }

  ._404-paragraph {
    font-size: 26px;
    line-height: 30px;
  }
}

@media screen and (min-width: 1920px) {
  .header-link-icon-wrap {
    text-align: left;
    width: 72px;
    height: 72px;
    margin-left: 240px;
  }

  .header-contact-title {
    font-size: 32px;
    line-height: 36px;
  }

  .header-contact-title.add-pad {
    padding-left: 0;
    font-size: 32px;
    line-height: 36px;
  }

  .button {
    font-size: 32px;
    line-height: 32px;
  }

  .footer-link-item {
    text-align: left;
    width: 80%;
  }

  .footer-contact-title.add-top.white, .footer-contact-title.white {
    font-size: 36px;
    line-height: 40px;
  }

  .footer-contact-link.white, .footer-info-address, .footer-widget-content, .footer-widget-content.center, .copyright-text {
    font-size: 30px;
    line-height: 34px;
  }

  .hero-subtitle {
    font-size: 30px;
    line-height: 30px;
  }

  .hero-title {
    font-size: 52px;
    line-height: 72px;
  }

  .section-title {
    font-size: 48px;
    line-height: 52px;
  }

  .section-title-content {
    font-size: 30px;
    line-height: 34px;
  }

  .home-experience-area {
    width: 64%;
  }

  .home-experience-lists {
    margin-top: 100px;
  }

  .service-title {
    font-size: 38px;
    line-height: 42px;
  }

  .service-content, .paragraph, .list-paragraph {
    font-size: 30px;
    line-height: 34px;
  }

  .footer-heading-top, .footer-heading.center {
    font-size: 40px;
    line-height: 44px;
  }

  .page-header {
    font-size: 52px;
    line-height: 56px;
  }

  .sub-item {
    padding-left: 140px;
  }

  .banner-head {
    font-size: 58px;
    line-height: 68px;
  }

  .piping-kinds {
    padding-top: 40px;
  }

  .button-2, .tab-link {
    font-size: 30px;
    line-height: 34px;
  }

  .section-101 {
    margin-top: 0;
    padding-top: 40px;
  }

  .link-nav, .link-nav.w--current {
    font-size: 30px;
    line-height: 34px;
  }

  .link-dropdown {
    padding-top: 15px;
    padding-bottom: 15px;
    font-size: 30px;
    line-height: 34px;
  }

  .div-block-12 {
    width: 70px;
    height: 70px;
  }

  .image-5 {
    padding-top: 23px;
    padding-left: 20px;
  }

  .content.add-top.add-pad {
    padding-left: 0;
  }

  .email-div {
    margin-left: -25px;
  }

  .page-paragraph {
    font-size: 30px;
    line-height: 34px;
  }

  .image-6 {
    margin-top: 25px;
    margin-left: 22px;
  }

  .image-7 {
    margin-top: 22px;
    margin-left: 22px;
  }

  .image-8 {
    margin-top: 11px;
    margin-left: 20px;
  }

  .image-9 {
    padding-top: 21px;
    padding-left: 21px;
  }

  .text-block {
    padding-right: 10px;
  }

  .heading-3 {
    font-size: 32px;
    line-height: 36px;
  }

  .social-media-images-2 {
    padding-left: 75px;
  }

  .heading-4, .heading-4.center {
    font-size: 40px;
    line-height: 44px;
  }

  .social-content-title-2 {
    font-size: 36px;
    line-height: 40px;
  }

  .image-14 {
    padding-top: 26px;
    padding-left: 25px;
  }

  .paragraph-right-2, .social-content-link-2, .social-content-link-2.no-left {
    font-size: 30px;
    line-height: 34px;
  }

  .image-div {
    width: 80px;
    height: 80px;
  }

  .social-content-title-3 {
    font-size: 40px;
    line-height: 44px;
  }

  .list-item {
    font-size: 30px;
    line-height: 34px;
  }

  .div-head {
    font-size: 40px;
    line-height: 44px;
  }

  ._404-heading {
    margin-bottom: 60px;
    font-size: 82px;
    line-height: 86px;
  }

  ._404-paragraph {
    color: var(--black);
    text-align: center;
    font-size: 30px;
    line-height: 34px;
  }
}

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

  h2 {
    font-size: 36px;
  }

  h3 {
    font-size: 30px;
  }

  h4 {
    font-size: 26px;
  }

  h5 {
    font-size: 24px;
  }

  h6 {
    font-size: 20px;
  }

  .container {
    padding-left: 20px;
    padding-right: 30px;
  }

  .top-bar-grid {
    justify-items: stretch;
  }

  .top-opening-wrap {
    margin-right: -80px;
  }

  .logo-wrap {
    padding-left: 20px;
  }

  .header-link-item {
    text-align: center;
    flex: 0 auto;
    align-self: center;
    align-items: center;
    width: auto;
    margin-left: 0;
    margin-right: 0;
    display: block;
  }

  .header-link-item.add-margin-left {
    margin-left: 40px;
  }

  .header-link-icon-wrap {
    text-align: center;
    margin-top: 0;
    margin-left: 60px;
    margin-right: auto;
    padding-left: 0;
    display: block;
  }

  .header-link-content {
    margin-top: 8px;
    margin-left: -20px;
    padding-left: 0;
  }

  .header-link-content.less-top {
    margin-top: -8px;
  }

  .header-contact-title {
    margin-top: 12px;
    font-size: 17px;
  }

  .header-link {
    font-size: 15px;
  }

  .button {
    margin-right: 0;
    padding: 10px 20px;
    font-size: 18px;
    line-height: 18px;
  }

  .banner-title-area-section {
    top: 0;
  }

  .banner-title-wrap {
    padding-top: 90px;
    padding-left: 20px;
    padding-right: 20px;
  }

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

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

  .subscribe-form-wrap {
    margin-top: 10px;
  }

  .footer-link-item {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding-right: 40px;
  }

  .footer-link-item.add-top {
    margin-right: 40px;
  }

  .footer-link-item.add-top-40 {
    margin-right: 95px;
  }

  .footer-link-item.add-btm {
    width: 100%;
  }

  .footer-link-item.adding-top {
    width: 100%;
    margin-top: 26px;
  }

  .footer-contact-link.white, .footer-info-address {
    font-size: 16px;
    line-height: 20px;
  }

  .footer-widget {
    padding-left: 40px;
  }

  .footer-widget-content, .footer-widget-content.center, .copyright-text {
    font-size: 16px;
    line-height: 20px;
  }

  .hero-section {
    background-position: 50%;
    background-attachment: scroll;
    width: auto;
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
    padding-top: 0;
    padding-bottom: 0;
  }

  .hero-wrap {
    padding-top: 0;
    padding-bottom: 0;
  }

  .hero-content-wrap {
    text-align: center;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }

  .hero-subtitle-wrap {
    text-align: left;
    justify-content: center;
    align-items: center;
  }

  .hero-subtitle {
    font-size: 16px;
    line-height: 16px;
  }

  .hero-subtitle-area {
    text-align: center;
    padding-left: 0;
    padding-right: 0;
  }

  .hero-title {
    padding-left: 0;
    font-size: 36px;
    line-height: 56px;
  }

  .hero-button-wrap {
    text-align: center;
    padding-bottom: 0;
    padding-left: 0;
  }

  .section-title {
    text-align: center;
    margin-top: 10px;
    margin-bottom: 0;
    padding-bottom: 0;
    font-size: 32px;
    line-height: 36px;
  }

  .section-title-content {
    text-align: center;
    font-size: 16px;
    line-height: 20px;
  }

  .home-experience-area {
    width: 80%;
    margin-top: 5px;
    margin-left: 20px;
    padding-top: 0;
  }

  .home-experience-lists {
    margin-top: 0;
  }

  .service-tab-content-area {
    flex-direction: column;
    align-items: stretch;
  }

  .service-tab-contents {
    text-align: center;
    width: 100%;
    padding-right: 0;
  }

  .service-tabs-image {
    text-align: center;
    width: 100%;
    margin-top: 40px;
    padding-bottom: 20px;
  }

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

  .service-item {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .service-title {
    font-size: 22px;
    line-height: 26px;
  }

  .service-content {
    font-size: 16px;
    line-height: 20px;
  }

  .license-content-wrap {
    padding-top: 70px;
    padding-bottom: 70px;
  }

  .error-page-wrap {
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .error-title {
    font-size: 300px;
  }

  .error-page-title {
    font-size: 40px;
  }

  .error-button-wrap {
    margin-bottom: 0;
  }

  .password-section {
    padding-top: 100px;
  }

  .password-form-area {
    width: 100%;
    padding: 60px 40px;
  }

  .project-item {
    padding-top: 10px;
    padding-left: 10px;
    padding-right: 10px;
  }

  .paragraph, .list-paragraph {
    font-size: 16px;
    line-height: 20px;
  }

  .footer-heading-top, .footer-heading.center {
    font-size: 26px;
    line-height: 30px;
  }

  .page-header {
    font-size: 36px;
    line-height: 40px;
  }

  .social-media-images {
    text-align: left;
    padding-left: 40px;
  }

  .heading-2.center {
    text-align: left;
  }

  .paragraph-right {
    font-size: 16px;
    line-height: 20px;
  }

  .sub-item {
    padding-left: 0;
  }

  .contact-info {
    margin-left: 10px;
    padding-left: 0;
  }

  .sub-item-wrap {
    width: 74px;
    height: 66px;
  }

  .sub-item-wrap.chg-top.mod {
    margin-top: -150px;
  }

  .social-content-link {
    font-size: 16px;
    line-height: 20px;
  }

  .banner-head {
    line-height: 50px;
  }

  .tab-div, .reducing-div {
    margin-top: 0;
  }

  .piping-kinds {
    padding-top: 30px;
  }

  .button-2 {
    font-size: 16px;
    line-height: 20px;
  }

  .service-tabs-div {
    width: 98%;
    margin-left: auto;
    margin-right: auto;
  }

  .tab-link-tab-1, .tab-link-tab-2.w--current, .tab-link-tab-3 {
    padding: 10px 20px;
  }

  .tab-link {
    font-size: 16px;
    line-height: 20px;
  }

  .section-101 {
    width: 96%;
  }

  .hero-content {
    width: auto;
    margin-left: 0;
    margin-right: 0;
  }

  .nav-menu-2 {
    background-color: rgba(0, 0, 0, 0);
    display: none;
  }

  .header-menu-system, .menu-contained {
    background-color: rgba(0, 0, 0, 0);
  }

  .nav-menu-3 {
    background-color: var(--dark-red);
    width: auto;
    margin-left: 0;
    margin-right: 0;
  }

  .menu-button-2 {
    float: none;
    border: 2px solid var(--white);
    background-color: var(--black);
    text-align: center;
    width: 9.6%;
    margin-left: auto;
    margin-right: auto;
  }

  .menu-button-2.w--open {
    background-color: var(--black);
  }

  .icon-2 {
    border: 2px solid var(--white);
    color: var(--white);
  }

  .navbar-2 {
    padding-top: 5px;
    padding-bottom: 5px;
  }

  .link-nav {
    display: inline-block;
  }

  .link-nav:hover, .dropdown-list-3 {
    background-color: var(--dark-red);
  }

  .dropdown-list-3.w--open {
    margin-right: 0;
  }

  .link-dropdown {
    text-align: left;
    width: auto;
    margin-left: 0;
    margin-right: 0;
  }

  .logos-div {
    padding: 10px;
  }

  .div-block-12 {
    text-align: center;
    background-color: #284e8c;
    border-radius: 100px;
    width: 50px;
    height: 50px;
    margin-top: 10px;
    margin-left: 0;
    padding-top: 10px;
    padding-left: 0;
  }

  .div-block-12.add-margin {
    margin-left: 10px;
  }

  .image-5 {
    text-align: left;
    width: 60%;
    margin-left: 0;
    margin-right: 0;
    padding-top: 0;
    padding-left: 0;
  }

  .content.add-padding, .content.add-top {
    padding-top: 20px;
  }

  .email-div {
    margin-right: 0;
    padding-left: 15px;
    padding-right: 0;
  }

  .phone-div {
    padding-left: 30px;
  }

  .column-3 {
    padding-left: 0;
  }

  .image-6 {
    margin-top: 23px;
    margin-left: 0;
  }

  .image-7 {
    margin-top: 20px;
    margin-left: 0;
  }

  .image-8 {
    margin-top: 11px;
    margin-left: 0;
  }

  .info-right {
    margin-left: -15px;
  }

  .image-9 {
    padding-top: 0;
    padding-left: 0;
  }

  .social-content-title-3 {
    font-size: 26px;
    line-height: 30px;
  }

  ._404-div {
    margin-bottom: 0;
    padding-bottom: 60px;
  }

  ._404-heading {
    font-size: 60px;
    line-height: 64px;
  }
}

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

  h2 {
    font-size: 32px;
  }

  p {
    font-size: 17px;
  }

  li {
    padding-top: 6px;
    padding-bottom: 6px;
    font-size: 17px;
  }

  blockquote {
    padding: 40px 40px 40px 20px;
    font-size: 18px;
  }

  .container {
    padding-left: 20px;
    padding-right: 20px;
  }

  .top-bar-grid {
    grid-template-columns: 1fr;
  }

  .top-opening-wrap {
    margin-right: 0;
  }

  .top-social-wrap {
    display: none;
  }

  .top-bar-social-link {
    float: right;
    margin-top: -20px;
    margin-bottom: 0;
    margin-right: 0;
    padding-top: 0;
    padding-bottom: 0;
    display: inline-block;
    position: relative;
  }

  .logo-wrap {
    flex-direction: column;
    padding-left: 0;
  }

  .header-link-wrap {
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding-right: 0;
    display: flex;
  }

  .header-link-item {
    margin-top: 20px;
    margin-left: 0;
  }

  .header-link-item.add-margin-left {
    text-align: center;
    flex: none;
    margin-top: 20px;
    margin-left: -40px;
    margin-right: 0;
    padding-right: 60px;
  }

  .header-link-icon-wrap {
    display: none;
  }

  .header-contact-title {
    color: var(--black);
    font-size: 16px;
    line-height: 16px;
  }

  .header-contact-title.add-pad {
    padding-left: 0;
  }

  .header-link {
    font-size: 17px;
  }

  .button {
    font-size: 16px;
    line-height: 16px;
  }

  .banner-title-wrap {
    padding-top: 70px;
    padding-bottom: 70px;
  }

  .footer-section {
    text-align: center;
  }

  .footer-link-item {
    justify-content: center;
    width: 60%;
    margin-left: auto;
    margin-right: auto;
    padding-right: 0;
  }

  .footer-link-item.add-top {
    width: 55%;
    margin-right: auto;
  }

  .footer-link-item.add-top-40 {
    text-align: center;
    width: 45%;
    margin-left: auto;
    margin-right: auto;
    padding-right: 0;
  }

  .footer-info-address.add-topping {
    margin-top: 20px;
  }

  .footer-widget {
    padding-left: 0;
  }

  .footer-social-link {
    align-self: center;
    width: 45px;
    height: 45px;
    margin-right: 0;
  }

  .hero-wrap {
    padding-top: 20px;
    padding-bottom: 10px;
  }

  .hero-subtitle {
    font-size: 16px;
  }

  .hero-subtitle-area {
    padding-right: 20px;
  }

  .hero-title {
    font-size: 32px;
    line-height: 52px;
  }

  .section-title {
    text-align: center;
    font-size: 28px;
    line-height: 32px;
  }

  .section-title-content {
    text-align: center;
  }

  .home-experience-area {
    width: 100%;
    margin-bottom: 20px;
    margin-left: auto;
    margin-right: auto;
  }

  .home-experience-lists {
    width: 100%;
  }

  .service-tab-content-area {
    margin-left: 10px;
    margin-right: 10px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .service-tab-contents {
    text-align: center;
    align-self: center;
    margin-left: auto;
    margin-right: auto;
  }

  .service-tabs-image {
    text-align: center;
  }

  .about-point-list-item.about-half-width-item {
    padding-right: 0;
  }

  .license-content-wrap, .error-page-wrap {
    padding-top: 60px;
    padding-bottom: 60px;
  }

  .error-title {
    font-size: 150px;
  }

  .error-page-title {
    font-size: 29px;
  }

  .password-page-title {
    font-size: 40px;
  }

  .password-content {
    font-size: 17px;
  }

  .brand {
    margin-bottom: 10px;
  }

  .brand.w--current {
    float: none;
    width: auto;
    margin-left: 0;
    margin-right: 0;
  }

  .top-bar-opening-hour-2 {
    float: left;
    margin-left: 0;
  }

  .footer-div.add-top {
    text-align: center;
  }

  .footer-info {
    margin-top: 30px;
  }

  .page-header {
    font-size: 32px;
    line-height: 36px;
  }

  .social-media-images {
    text-align: center;
    padding-left: 0;
  }

  .heading-2, .heading-2.center {
    text-align: center;
  }

  .heading-2.add-top {
    margin-top: 20px;
  }

  .sub-item {
    text-align: left;
    justify-content: center;
  }

  .contact-info {
    text-align: left;
  }

  .sub-item-wrap {
    display: none;
  }

  .sub-item-content, .social-content-title {
    text-align: center;
  }

  .google-map {
    padding-right: 0;
  }

  .banner-head {
    line-height: 46px;
  }

  .piping-kinds {
    padding-top: 20px;
  }

  .div-block-11 {
    text-align: center;
  }

  .tabs-menu-div {
    flex-direction: column;
  }

  .service-tabs-content {
    width: 98%;
  }

  .nav-menu-3 {
    text-align: center;
    width: 30%;
    margin-left: auto;
    margin-right: auto;
    position: absolute;
  }

  .menu-button-2 {
    width: 12.5%;
  }

  .dropdown-list-3.w--open {
    z-index: 1;
    text-align: center;
    margin-top: 0;
    margin-left: -65px;
    padding-left: 0;
  }

  .link-dropdown, .logos-div {
    text-align: center;
  }

  .div-block-12 {
    float: none;
    display: none;
  }

  .div-block-12.add-margin {
    margin-left: 0;
    display: none;
  }

  .image-5 {
    float: none;
  }

  .content.add-padding {
    padding-top: 0;
    padding-left: 0;
  }

  .content.add-top {
    padding-top: 0;
  }

  .content.add-top.add-pad {
    padding-left: 0;
  }

  .email-div {
    text-align: center;
    padding-left: 0;
  }

  .head-contact {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }

  .phone-div {
    text-align: center;
    padding-left: 0;
  }

  .info-right {
    margin-left: 0;
  }

  .container-2 {
    padding-left: 10px;
  }

  .heading-3 {
    text-align: center;
    padding-left: 0;
  }

  .div-block-13 {
    text-align: center;
  }

  .social-media-images-2 {
    text-align: center;
    padding-left: 0;
  }

  .heading-4, .heading-4.center, .inform-div {
    text-align: center;
  }

  .social-content-title-2 {
    text-align: center;
    text-decoration: underline;
  }

  .contact-form-2 {
    margin-top: 40px;
  }

  .div-block-16 {
    text-align: center;
  }

  .google-map-2 {
    text-align: center;
    margin-top: 20px;
  }

  .image-div {
    display: none;
  }

  .social-content-title-3 {
    text-align: center;
    text-decoration: underline;
  }

  .div-block-17 {
    text-align: center;
  }

  .list {
    padding-left: 30px;
  }
}

@media screen and (max-width: 479px) {
  blockquote {
    border-left-width: 25px;
  }

  .container {
    padding-left: 10px;
    padding-right: 10px;
  }

  .top-bar-wrap {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .top-bar-grid {
    justify-items: center;
  }

  .top-opening-wrap {
    text-align: center;
    margin-bottom: 5px;
  }

  .top-bar-social-link {
    float: none;
    text-align: center;
    width: 17%;
    margin-top: 8px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 10px;
  }

  .header-link-wrap {
    flex-direction: column;
    align-items: center;
  }

  .header-link-item {
    margin-bottom: 10px;
  }

  .header-link-item.add-margin-left {
    margin-left: 0;
    padding-right: 0;
  }

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

  .banner-title-wrap {
    padding: 60px 20px;
  }

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

  .subscribe-form-input-wrapper {
    flex: 1;
    align-self: stretch;
  }

  .subscribe-form-input {
    width: 100%;
  }

  .footer-link-item.add-top {
    width: 70%;
  }

  .footer-contact-title.add-top.white, .footer-contact-title.white {
    font-size: 22px;
    line-height: 26px;
  }

  .footer-social-link {
    width: 50px;
    height: 50px;
  }

  .copyright-text {
    font-size: 16px;
  }

  .hero-wrap {
    padding-top: 0;
    padding-bottom: 0;
  }

  .hero-content-wrap {
    width: 96%;
    margin-top: 0;
    padding-top: 20px;
    padding-bottom: 10px;
  }

  .hero-subtitle-wrap {
    text-align: center;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  .hero-subtitle {
    padding-top: 0;
    padding-left: 0;
    font-size: 15px;
  }

  .hero-subtitle-area {
    padding-top: 0;
    padding-left: 10px;
    padding-right: 10px;
  }

  .hero-title {
    text-align: center;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    font-size: 28px;
    line-height: 48px;
  }

  .hero-button-wrap {
    text-align: center;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }

  .section-title {
    font-size: 24px;
    line-height: 28px;
  }

  .home-experience-area {
    float: none;
    margin-left: 0;
    margin-right: 0;
  }

  .service-tab-content-area {
    margin-left: 5px;
    margin-right: 5px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .service-tab-contents {
    text-align: center;
    align-self: center;
  }

  .service-item {
    padding: 30px 20px;
  }

  .service-title {
    font-size: 20px;
    line-height: 24px;
  }

  .input-field {
    margin-bottom: 20px;
    font-size: 16px;
  }

  .input-field::placeholder {
    font-size: 16px;
  }

  .about-point-list-item {
    padding-right: 10px;
  }

  .about-point-list-item.about-half-width-item {
    width: 100%;
  }

  .error-title {
    font-size: 100px;
  }

  .error-page-title {
    font-size: 22px;
  }

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

  .password-form-area {
    padding-left: 20px;
    padding-right: 20px;
  }

  .password-page-title {
    font-size: 31px;
  }

  .blog-readmore-link {
    margin-top: 15px;
  }

  .project-item {
    padding-left: 15px;
    padding-right: 15px;
  }

  .team-item {
    padding: 10px;
  }

  .paragraph {
    text-align: center;
  }

  .top-bar-opening-hour-2 {
    float: none;
    font-size: 16px;
  }

  .footer-heading-top, .footer-heading.center {
    font-size: 24px;
    line-height: 28px;
  }

  .page-header {
    margin-top: 10px;
    font-size: 28px;
    line-height: 32px;
  }

  .sub-item-content {
    text-align: center;
    padding-left: 0;
  }

  .social-content-link {
    text-align: center;
  }

  .banner-head {
    font-size: 32px;
    line-height: 42px;
  }

  .piping-kinds {
    padding-top: 10px;
  }

  .image-4 {
    align-self: center;
    width: 20%;
    margin-left: 0;
    margin-right: 0;
    position: static;
  }

  .nav-menu-3 {
    width: 50%;
    margin-left: auto;
    margin-right: auto;
  }

  .menu-button-2, .menu-button-2.w--open {
    width: 22%;
  }

  .dropdown-list-3.w--open {
    text-align: center;
    margin-top: 0;
    margin-left: -65px;
    margin-right: 0;
    padding-right: 0;
    left: auto;
    right: auto;
  }

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

  .content.add-top.add-pad {
    padding-left: 0;
  }

  .page-paragraph, .page-paragraph.add-top {
    text-align: center;
  }
}

#w-node-e8b259a9-c6d4-f9a3-0bf6-9fabe7b4570a-643af20e, #w-node-_100f5f24-5c4e-a15f-bfea-a4a56966cd54-643af20e, #w-node-ab25e3d9-8227-11ab-ce1a-aeecff9fbdbf-643af20e, #w-node-_0025f84a-b5ad-838a-8518-4b6fa316d85d-643af20e, #w-node-_472518a2-5528-a8dc-978c-ffacfb080fd9-643af20e, #w-node-d3a3cc01-1d11-05b6-2295-568cb4ea982c-643af20e {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-c3475e62-81d7-7444-0ab5-4643c51ea194-c51ea18d {
  grid-area: span 1 / span 1 / span 1 / span 1;
  justify-self: end;
}

#w-node-ab0753dd-b6ea-42d4-4f32-80380e2f28d6-0e2f28d2, #w-node-ab0753dd-b6ea-42d4-4f32-80380e2f28de-0e2f28d2 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

@media screen and (max-width: 767px) {
  #w-node-_31da3ad1-4e90-aa7b-071c-1cb429803be0-c51ea18d {
    align-self: start;
    justify-self: start;
  }

  #w-node-c3475e62-81d7-7444-0ab5-4643c51ea194-c51ea18d {
    align-self: end;
    justify-self: end;
  }
}

@media screen and (max-width: 479px) {
  #w-node-_31da3ad1-4e90-aa7b-071c-1cb429803be0-c51ea18d {
    align-self: center;
    justify-self: center;
  }
}


