.bg_opacity::after {
  background: #2b3b4d !important;
  opacity: 0.5;
}

.flexcol_hero_content{    
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1em;
}
.title_white{text-align: center;max-width: 666px;}

.title_white span {
  background: none !important;
  font-style: normal;
  font-weight: 900;
  font-size: 37px;
  line-height: 56px;
  text-align: center;
  color: #ffffff !important;
  display: inline-block;
}
.text_hero_white {

  padding: 5px 10px;
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 600;
  font-size: 24px;
  line-height: 56px;
  /* identical to box height, or 233% */
  text-align: center;
  color: #ffffff;
  display: inline-block;
}
/*buttons*/
.ctc_no_margin{
    margin-top:0 !important;
}
.ctc_free_est {
    background: linear-gradient(180deg, #FC7452 0%, #E86545 100%);

  background-size: cover;
  max-width: 355px;
  min-width: 270px;
  height: 60px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: 800;
  font-size: 24px;
  color: #f5f8fa;
 padding: 18px 25px 18px 25px;
  position: relative;
  z-index: 99;
  border: 1px solid #fc7452;
  border-radius: 15px;
}
.ctc_free_est:hover{
	cursor:pointer;
	background: linear-gradient(180deg, #E86545 0%, #FC7452 100%);
    box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.25);
}
.ctc_call_us {
  margin-left: 31px;
  width: 270px;
  height: 60px;
  z-index: 99;
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #ffffff;
  -webkit-transition: all ease-in-out 0.25s;
  transition: all ease-in-out 0.25s;
  font-style: normal;
  font-weight: 800;
  font-size: 24px;
  line-height: 0px;
  /* identical to box height, or 0% */

  color: #ffffff;

  border: 2px solid #ffffff;
  border-radius: 15px;
}
.ctc_call_us .action__title {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 0px;
    /* identical to box height, or 0% */
    color: #FFFFFF;
}
.ctc_call_us .action__link {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 800;
    font-size: 24px;
    line-height: 0px;
    /* identical to box height, or 0% */
    
    
    color: #FFFFFF;
}
.ctc_call_us:hover  , 
.ctc_call_us:hover .action__title {
 color: #ffffff;
}


/* .ctc_call_us:hover .action_link_phone{
    color: #FC7452;
} */
@media only screen and (max-width:550px){
  .title_white span{
    font-size: 32px;
line-height: 46px;
  }
  .text_hero_white{
    font-weight: 600;
font-size: 22px;
line-height: 56px;
padding: 0;
  }
  .ctc_no_margin{
    width: 320px;
    align-items: center;
    justify-content: center;
    display: flex;
    flex-direction: column;
    gap: 1em;
  }
  .ctc_call_us{
    margin-left:0;
  }
}


/*new layout css*/
* {
   /* outline: 0.5px solid red;*/
}
.flexible_container {
      max-width: 1110px;
	  margin: 2.5rem auto;
}
@media (min-width: 1200px)
.flexible_container {
    max-width: 1140px;
}
@media (min-width: 1640px){
.flexible_container {
 	max-width: 1290px;;

}
		
}
.flx_row {
  display: flex;
  flex-direction: row;
}
.flx_col {
  display: flex;
  flex-direction: column;
}
.acenter {
  align-items: center;
}

.mont_400,
.mont_400 p{
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 400;
  word-break: break-word;
}
.mont_600_title {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 600;
  font-size: 18px;
  line-height: 22px;
  /* identical to box height */
  text-transform: uppercase;
  color: #425b76;
}
.mont_700_title {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 700;
  color: #304358;
}
.subtext{
margin: 0.8em 1.5em;	
}
/*hero*/
.ahero_bg {
  background: #2b3b4d70;
  background-blend-mode: overlay;
}
.hero_white_title_center {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 900;
  font-size: 37px;
  line-height: 56px;
  text-align: center;
  color: #ffffff;
  max-width: 769px;
  display: block;
  margin: 0 auto;
}
.hero_white_sub_title_center {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 600;
  font-size: 18px;
  line-height: 27px;
  text-align: center;
  color: #ffffff;
  max-width: 691px;
  display: block;
  margin: 0 auto;
}
#ahero_callus{
    margin-left: 0px;
    margin-right: 31px;
    background: linear-gradient(180deg, #FC7452 0%, #E86545 100%);
    background-size: cover;
    border: 1px solid #fc7452;
}
#ahero_callus :hover{
  color: #ffffff;	
}
#ahero_callus .div:hover{
	  color: #ffffff;
}
#ahero_estiamte{
    border: 2px solid #ffffff;
    background: transparent;
    background-size: cover;  
}
/*awards*/
.award_section {
  background: linear-gradient(180deg, #ffffff 0%, #f3faff 100%);
  opacity: 0.92;
}
.award_title {
  font-size: 24px;
  line-height: 29px;
  margin-bottom: 30px;
}

.award_desc p{
font-size: 15px;
line-height: 23px;	
	margin-bottom:1em;
	color: #425B76;
}
.award_left {
  flex: 1.5;
  max-width: 717px;
}
.award_right {
  max-width: 580px;
  flex: 1;

  position: relative;
  margin-left: 100px;
}
.award_img_wrapper {
  max-height: inherit;
  position: absolute;
  left: 0px;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: -1;
}
.award_img {
  height: 100%;
  right: 0;
  position: absolute;
  padding-left: 75px;
    object-fit: cover;
    width: 100%;	
}
.award_logos {
  width: 120px;
  z-index: 2;
 justify-content:space-between;
	height:100%;
}
.award_logos img:nth-child(2) {
  padding:5px
}
.award_logo_img {
  max-width: 190px;
  /* max-width: 175px; */
  /* mix-blend-mode: multiply; */
  max-height: 99px;
  object-fit: contain;
	box-shadow: 2px 4px 5px rgba(0, 0, 0, 0.3);
	background: #FFFFFF;
	
}
.row_of_logos {
  justify-content: space-around;
  align-items: center;
  background: #FFFFFF;
border-radius: 20px 20px 0px 0px;
margin-top:1.5rem;
}
/*services*/
.services_wrapper {
justify-content: center;
    flex-wrap: wrap;
    gap: 1.2rem;
}
.services_head {
  max-width: 997px;
  display: block;
  margin: 0 auto;
}
.services_head h2 {
  max-width: 820px;
  display: block;
  margin: 0 auto;
}
.services_title {
  font-size: 36px;
  line-height: 45px;
  /* or 125% */

  text-align: center;
}
.service_a_wrapper {
  justify-content: space-between;
  max-width: 32%;
  min-width: 320px;
  margin-bottom: 2rem;
  color: inherit;
}
.services_read_more{
   display: none !important; 
   position:absolute;
   right:0;
   top:0;
   background: linear-gradient(180deg, #FC7452 0%, #E86545 100%);
   padding: 12px 20px;
   color: #f5f8fa;
}
.services_read_more_mob{
	//display:none;
}
.service_a_wrapper:hover .services_read_more{
  display:block
}
.services_read_more:hover{color: #304358;}
.service_img_wrapper {
  height: 221px;
  position: relative;
  background-repeat: no-repeat;
  background-size: cover;
}

.service_img {
  height: 99999px;
  object-fit: contain;
  max-height: 100%;
  max-width: 100%;
  display: block;
  margin: auto auto;
}
.service_content {
    margin: -3rem auto 0rem;
    z-index: 2;
 
    max-width: 92%;
    height: 280px;
  background: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 15px;
  padding: 1rem 1.5rem;
  gap: 0.6em;
}
.service_icon_title {
  align-items: center;
}
.service_icon_wrapper{
  height: 70px;	
	aspect-ratio: 1/1;
border-radius: 50%;
background: #f3faff;
	display: flex;
    justify-content: center;
    align-items: center;
}
.service_icon {
  /aspect-ratio: 1/1;
  padding: 5px;
 
}
.service_title{
font-family: 'Montserrat';
font-style: normal;
font-weight: 700;
font-size: 16px;
line-height: 20px;
margin-left:16px;
color: #3E4F60;	
}
.service_sub_text{
	height: 130px;
font-size: 14px;
line-height: 21px;
/* or 150% */
color: #3E4F60;	
overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;	
	  text-overflow: ellipsis;
}
/*with form*/
.title-divider-two-lines{
    border-bottom: 3px solid #FC7452;
    margin: 10px 0 15px 0;
    width: 101px;
}
.with_form_section {
  /* background: linear-gradient(180deg, #FFFFFF 0%, #F3FAFF 100%);*/
  opacity: 0.92;
  position: relative;
  /* background-image: url('https://directwaterproofing.ca/wp-content/uploads/2023/04/bg_with_form.png'); */
  background-image: url("https://directwaterproofing.ca/wp-content/uploads/2023/04/bg_with_form.png"),
    linear-gradient(180deg, #ffffff 0%, #ffffffeb 50%, #f3faff 100%);
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: cover;
  background-blend-mode: overlay;
  /*background-image: linear-gradient(to bottom, rgba(0,0,0,0.7) 0%,rgba(0,0,0,0.7) 100%), url('https://directwaterproofing.ca/wp-content/uploads/2023/04/bg_with_form.png');*/
  /*background: url('https://directwaterproofing.ca/wp-content/uploads/2023/04/bg_with_form.png') left bottom no-repeat, url('https://directwaterproofing.ca/wp-content/uploads/2023/04/direct_vector.png') right bottom no-repeat,linear-gradient(180deg, #FFFFFF 0%, #F3FAFF 100%); */
}

.direct_bg {
  width: 100%;
  left: 0;
  right: 0;
  position: absolute;
  bottom: 0;
}
.direct_bg_img {
  width: 80%;
  object-fit: contain;
  /* z-index: 1; */
  /* opacity: 0.5; */
  display: block;
  margin: 0 auto;
  /* opacity: 0.5; */
}

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

.with_form_content {
  z-index: 5;
  position: relative;
}
.mont_400 p .size-full {
  margin-top: 1rem;
}
.with_form_single_content {
  padding: 1rem 2rem 1rem 0;
}
.with_form_single_title{
	    margin: 1em 0;
}
.with_form_single_title span{
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 700;
  font-size: 24px;
  line-height: 29px;
  /* identical to box height */
  text-transform: uppercase;
  margin-bottom: 0;
  color: #425b76;
}
.with_form_left {
  flex: 2;
}
.with_form_right {
  flex: 1;
}

.with_form_form {
  position: sticky;
  top: 100px;
  max-width: 100%;
  margin: 0 auto;
  background: #f5f8fa;
  border: 5px solid rgba(66, 91, 118, 0.1);
  border-radius: 15px;
  padding: 2rem;
  z-index: 99;
}
.section_form_sticky{
    padding-right: 0;   
}
.or_call_us{
    display: block;
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 18px;
    width: 100%;
    text-align: center;
    color: #3E4F60;
    margin: 11px auto;
}
.sticky_call_on_form  {
    /* identical to box height, or 100% */
    color: #425B76;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #425B76;
    border-radius: 15px;
    padding: 16px 20px;
}
.sticky_call_on_form .fa-phone{
margin-right:11px;
font-size: 14px;
font-style: normal;
font-weight: 800;
font-size: 18px;
line-height: 18px;
/* identical to box height, or 100% */
color: #425B76;
}
.sticky_call_on_form  span{
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 800;
    font-size: 18px;
    line-height: 18px;
    /* identical to box height, or 100% */
    color: #425B76;

 
}
/*why chose*/
.why_title {
  font-size: 36px;
  line-height: 45px;
  text-align: center;
}
.single_reason_wrapper{
  width:25%;  
  display:flex;
}
.single_reason {width: 276px;
}
.single_reason_icon {
	margin-right:11px;
	height: 40px;
	float: left
}
.reason_title_text {
    width:100%;
    margin-bottom:11px;
}
.reason_title_text span {
	display: block;
	font-weight: 600;
	font-size: 16px;
	line-height: 20px;
	text-transform: uppercase;
	color: #304358;
	width: 100%;
}
.reason_span {
	font-size: 15px;
	line-height: 23px;
	color: #304358;
}
.t_body {flex-wrap:wrap;
}


/* why choose list */
.why-choose-us-grid {
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: 1.5em;
	color: #304358;
	line-height: 23px;
	padding-top: .5em
}
.why-choose-us-card-wrapper {
	display: grid;
	grid-template-columns: 1fr 11fr;
	gap: .5em;
	align-items: center;
}
.why-choose-us-card-icon img {
	height: 80px;
	width: 80px
}
.why-choose-us-card-text-wrapper {
	background-color: #F6F7F8;
	border-radius: 15px;
	padding: 1em;
}
.why-choose-us-card-text-wrapper .why-choose-us-card-text {font-size: 15px}

/* collapse */

.collapse {
  border-collapse: collapse;
  display: inline-table !important;
}

table {
  display: inline-table;
  margin: 1em;
  border: 1px solid #e0e0e0;
}

table th,
table td {
  padding: 1em 0.5em;
  border: 1px solid #e0e0e0;
}

.services_read_more_mob {
	display:inline-block;
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 400;
	font-size: 14px;
	line-height: 20px;
	//align-self: flex-end;
	color: #007bff
}
.services_read_more_mob:hover {color: #0056b3;}



/*mobile css*/

@media screen and (max-width: 600px) {
  /*hero*/
	#ahero_callus {
		margin-right: 0;
	}
  /*awards*/
	.award_wrapper{
		flex-direction:column;
		    margin: 1rem;
	}
	.award_left {
    margin-bottom: 3em;
}
	.award_right{
	    margin-left: 0;min-height: 300px;
	
	}
	.award_img {
    padding-left: 0;
}
	.award_logos{
	    width: 100%;
		flex-direction: row;
		    margin-top: -3em;
    justify-content: space-between;
	}
	.row_of_logos{
		flex-direction: row;
		margin: 0 auto;
		padding: 0 1em;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-around;
		max-width: 90%;
	}
  /*services*/
.services_wrapper {
    justify-content: center;

}
.service_a_wrapper {max-width: 100%;}	
	
	.service_content{
		width: 90%;
    height: auto;
	}
	.services_read_more_mob{
		display:inline-block;
		font-family: 'Montserrat';
		font-style: normal;
		font-weight: 600;
		font-size: 16px;
		line-height: 20px;
		//align-self: flex-end;
		//color: #3E4F60;
	}
  /*with form*/
	.section_form_sticky{
		padding :1em;
	}
	.with_form_wrapper{
		flex-direction:column;
	}
	.with_form_single_content {
    padding: 0;
}
  /*why chose*/
	.single_reason_wrapper{
		width:100%;
		display: block
	}
	table.collapse{
		margin: 0 -1px
	}
	/* why choose list*/
	.why-choose-us-card-wrapper {
		grid-template-columns: 1fr;
		gap: 0;
		text-align: center;
		padding: 0 1em
	}
	.why-choose-us-card-icon {
		margin-bottom: -3em;
		z-index: 1;
	}
	.why-choose-us-card-text-wrapper {padding-top: 3em}
}

