/* 
Theme Name: CONPIX Starter Template
Theme URI: https://conpix.com.au
Description:This is a child theme, created by CONPIX team
Author: CONPIX Team
Author URI: https://conpix.com.au/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

.word-wrap{
	    white-space: pre;
}

.years-graphic{
	position: absolute;
    right: 10px;
    top: -35px;
}

.no-padding p{
	padding:0;
	margin:0;
}
.custom-padding{
	padding-top:60px;
	padding-bottom:60px;
}


.custom-accordion .e-n-accordion-item-title {
	padding-top:20px !important;
	padding-bottom:20px !important;
	padding-right:20px !important;
}

.custom-accordion .e-n-accordion-item-title:hover{
	background:#EDF2FF !important;
}



.txt-slider .elementor-testimonial {
    display: flex;
}
.marquee-wrap {
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
  position: relative;
	    font-family: "Manrope", Sans-serif;
	color:#fff;
	font-size:22px;
	text-transform:uppercase;
}

.marquee-track {
  display: inline-flex;
  align-items: center;
  gap: 34px;
  min-width: max-content;
  animation: slowMarquee 35s linear infinite;
}

.marquee-wrap:hover .marquee-track {
  animation-play-state: paused;
}

.marquee-track span {
  display: inline-block;
  line-height: 1;
}

.marquee-track .dot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  font-size: 1.6em;
  vertical-align: middle;
  position: relative;
  top: -0.30em; /* adjust slightly if needed */
}

@keyframes slowMarquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

.icon-box-hover:hover p
 {
    color: #fff !important;
}

.services-card:hover h6, 
.services-card:hover p {
    color: #fff !important;
}

.services-card .elementor-icon-box-description:hover{
	color: #fff !important;
}

.services-card:hover p.elementor-icon-box-description{
	color: #ffffff !important;
}

/* Process Steps */
.steps-wrap {
	    font-family: 'Manrope';
      max-width: 1200px;
      margin: 0 auto;
    }

    .steps-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(280px, 1fr));
      gap: 22px 34px;
      grid-auto-rows: 1fr;
      align-items: stretch;
    }

    .step-item {
      position: relative;
      height: 100%;
    }

    .step-number {
      position: absolute;
      top: 0;
      left: 0;
      width: 42px;
      height: 42px;
      background: #0047c7;
      color: #fff;
      border-radius: 6px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 15px;
      font-weight: 500;
      line-height: 1;
      z-index: 3;
    }

    .step-box {
      position: relative;
      background: #fff;
      border: 1px solid #d7d7d7;
      border-radius: 5px;
      min-height: 92px;
      height: 100%;
      padding: 16px 18px 16px 68px;
    }

    .step-box::before {
      content: "";
      position: absolute;
      top: -1px;
      left: -1px;
      width: 50px;
      height: 50px;
      background: #fff;
      border-right: 1px solid #d7d7d7;
      border-bottom: 1px solid #d7d7d7;
      border-top-left-radius: 5px;
      border-bottom-right-radius: 5px;
      z-index: 1;
    }

    .step-title {
      font-size: 18px;
      font-weight: 500;
      line-height: 1.35;
      margin-bottom: 6px;
      color: #021C50;
    }

    .step-text {
      font-size: 15px;
      line-height: 1.6;
    }
@media (max-width: 400px) {
.header-logo-image,
	.header-logo-image img{
	max-width:200px !important;
}
}

@media (max-width: 360px) {
.header-logo-image,
	.header-logo-image img{
	max-width:180px !important;
}
}

    @media (max-width: 768px) {
      .steps-grid {
        grid-template-columns: 1fr;
        grid-auto-rows: auto;
      }
		#kitchen-renovations,
		#decks{
			padding-top:25px;
		}
		#laundry-renovations{
			margin-top:-15px;
		}
		
		.elementor-element-ff92fc2 h3{
			margin-bottom:-25px;
		}
    }

.dream-home-txt {
    border-right: 1px solid #3159B5;
    padding-right: 35px;
}

ul#menu-1-9716221 li:last-child
 {
    display: none;
}

@media (max-width: 767px) {
	.header{
		border-bottom: 1px solid #d7d7d7 !important;
	}
	
	.header .elementor-element.elementor-element-3fd8b65.e-con-full.e-flex.e-con.e-child{
		padding-top:10px !important;
		padding-bottom:10px !important;
	}
	ul#menu-1-9716221 li:last-child
 {
    display: block;
}
	
	.home-banner{
		min-height:370px !important;
	}
	
	.years-graphic{
	position: absolute;
    right: 10px;
    top: 15px;
}
	
	
	.custom-padding{
		padding-top:25px;
		padding-bottom:25px;
	}
	.item-with-border-bottom{
		border:0 !important;
	}
	.dream-home-txt {
    padding-top: 15px;
    margin-bottom: -25px;
		padding-right:0 !important;
		border:0 !important;
}
	
	
}

.icon-box a, .icon-box a:visited, .icon-box a[href^="tel:"]{
	color:#fff !important;
} 

/* Typography */

.highlight{
	background:#F7F9FF;
	padding:30px;
	border-left: 3px solid #0133A5;
}

.highlight.in-content{
	margin-top:15px;
	margin-bottom:18px;
}

.white-button a svg,
.white-button a svg path{
    fill: #0133A5;
}

.white-button a:hover svg,
.white-button a:hover svg path{
    fill: #ffffff;
}

#contact .elementor-field-type-checkbox{
	background:#F7F9FF;
	padding:30px;
	padding-bottom:20px;
	border-left: 3px solid #0133A5;
	margin-left: 10px;
    margin-right: 10px;
}

#contact .elementor-field-option{
	display:flex;
	margin-bottom: 15px;
	min-width: 250px;
}

#contact .elementor-field-option input{
	margin-right:10px;
}
#contact .elementor-field-type-html{
	color:#0133A5;
	font-size:18px;
}

.elementor-swiper-button-prev,
.elementor-swiper-button-next {
	display: none !important;
}

.elementor-element-5032c11{
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.elementor-element-5032c11 .swiper-pagination-bullet {
	    width: 15px;
    border-radius: 0;
    height: 2px;
}


/* Blogs */

.cta-block {
    background: #0133A5;
    border-radius: 12px;
    padding: 40px 36px;
    margin-top: 56px;
    text-align: center;
}


.cta-block .wp-block-heading {
    font-size: 22px;
    color: #fff;
    margin-top: 0;
    margin-bottom: 12px;
}

.cta-block p {
    color: rgba(255, 255, 255, 0.75);
    font-size: 15px;
    margin-bottom: 24px;
}


.wp-element-button {
    display: inline-block;
    background: #021C50;
    color: #fff !important;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    padding: 14px 32px;
    border-radius: 4px;
    text-decoration: none;
}

.cost-table {
    width: 100%;
    border-collapse: collapse;
}

.cost-table thead th {
    padding: 12px 16px;
    text-align: left;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}



.cost-table thead tr {
    background: #0133A5;;
    color: #fff;
}

.cost-table tbody tr:nth-child(even) {
    background: #e8edf7;
}

#blog-post blockquote{
	    background: #F7F9FF;
    padding: 30px;
    border-left: 3px solid #0133A5;
	margin:0;
	margin-bottom:35px;
}

#blog-post h2{
	font-size:20px;
}

#blog-post h2.blue{
	color:#0133A5;
}

#blog-post .highlighted{
	border: 1px solid #0133A5;
	border-radius:10px;
	background:#F7F9FF;
	padding:25px;
	margin-top:35px;
	margin-bottom:35px;
}
#blog-post .outline
{
	border-top:1px solid #e8edf7;
	border-bottom:1px solid #e8edf7;
	padding-top:35px;
	padding-bottom:35px;
	margin-top:35px;
	margin-bottom:35px;
}
#blog-post .highlighted ul li{
	padding-bottom:15px;
}

#blog-post h3{
	font-size:18px !important;
}