/*
Theme Name: Twenty Twenty-One Child
Template: twentytwentyone
Version: 1.0.2
*/
.fa-classic, .fa-regular, .fa-solid, .far, .fas {
    font-family: "Font Awesome 5 Free" !important;
}
*,body,h1,h2,h3,h4,h5,h6,p,span,a,li,input,textarea,button,div,select,label{font-family:'Montserrat',sans-serif;}
.max-w-container{max-width:1280px!important;}
html{scroll-behavior:smooth;overflow-x:hidden;}body{overflow-x:hidden;}
.lift-heavy{transition:transform 0.4s cubic-bezier(0.16,1,0.3,1),box-shadow 0.4s cubic-bezier(0.16,1,0.3,1),border-color 0.4s ease;border:1px solid transparent;}
.lift-heavy:hover{transform:translateY(-8px);box-shadow:0 25px 50px rgba(0,0,0,0.12);border-color:#0075c944;}
.image-zoom-wrapper { overflow: hidden; position: relative; }
.image-zoom-wrapper img { transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1); width: 100%; height: 100%; object-fit: cover; }
.image-zoom-wrapper:hover img { transform: scale(1.1); }
.btn-solid{transition:all 0.3s cubic-bezier(0.16,1,0.3,1);box-shadow:0 4px 14px #0075c933;}
.btn-solid:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0075c966;}
.btn-accent{transition:all 0.3s cubic-bezier(0.16,1,0.3,1);box-shadow:0 4px 14px #e3183733;}
.btn-accent:hover{transform:translateY(-2px);box-shadow:0 8px 25px #e3183766;}
.pill{display:inline-flex;align-items:center;padding:4px 14px;border-radius:9999px;font-size:0.75rem;font-weight:700;border:1px solid #0075c933;color:#0075c9;background:#f2f8fc;transition:all 0.3s ease;}
.pill:hover{background:#0075c9;color:white;}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,0.95);backdrop-filter:blur(8px);box-shadow:0 1px 15px rgba(0,0,0,0.05);}
.star-gold{color:#f5a623;filter:drop-shadow(0 1px 2px rgba(245,166,35,0.3));}
.floating-cta{position:fixed;bottom:20px;right:20px;z-index:99;transition:transform 0.3s ease;box-shadow:0 8px 25px #e3183766;background:#e31837;border:1px solid #e3183788;}
.floating-cta:hover{transform:scale(1.05);}
@media(min-width:768px){.floating-cta{display:none;}}
.faq-answer{max-height:0;overflow:hidden;transition:max-height 0.4s cubic-bezier(0.16,1,0.3,1),padding 0.4s ease;}
.faq-answer.open{max-height:500px;padding-bottom:1.5rem;}
.faq-chevron{transition:transform 0.4s cubic-bezier(0.16,1,0.3,1);}
.faq-chevron.rotate{transform:rotate(180deg);color:#0075c9;}
.timeline-line{position:absolute;top:40px;left:50%;width:3px;height:calc(100% - 40px);background:linear-gradient(to bottom,#0075c9 0%,#e6f2fa 100%);transform:translateX(-50%);border-radius:3px;}
@media(max-width:767px){.timeline-line{display:none;}}
.gradient-border{position:relative;background:#fff;border-radius:16px;box-shadow:0 20px 40px rgba(0,0,0,0.08);}
.gradient-border::before{content:'absolute';inset:-3px;border-radius:19px;background:linear-gradient(135deg,#0075c9,#e31837,#0b131c);z-index:-1;}
.reveal-up{opacity:0;transform:translateY(40px);transition:opacity 0.8s cubic-bezier(0.16,1,0.3,1),transform 0.8s cubic-bezier(0.16,1,0.3,1);}
.reveal-left{opacity:0;transform:translateX(-40px);transition:opacity 0.8s cubic-bezier(0.16,1,0.3,1),transform 0.8s cubic-bezier(0.16,1,0.3,1);}
.reveal-right{opacity:0;transform:translateX(40px);transition:opacity 0.8s cubic-bezier(0.16,1,0.3,1),transform 0.8s cubic-bezier(0.16,1,0.3,1);}
.reveal-up.active,.reveal-left.active,.reveal-right.active{opacity:1;transform:translate(0);}
.delay-100{transition-delay:100ms;}.delay-200{transition-delay:200ms;}.delay-300{transition-delay:300ms;}
.home-brand-logos a img {
    width: 75px;
}
@media (min-width:320px) and (max-width:567px) {
.elementor-widget .elementor-icon-list-items.elementor-inline-items {
    gap: 10px;
}
}


@media (min-width:320px) and (max-width:767px) {
	h1{
		font-size: 42px !important;
        line-height: 50px !important;
	}
	h2{
		font-size: 34px !important;
        line-height: 40px !important;
	}
.header-logo img{
    width: 165px !important;
}
}
@media (min-width:768px) and (max-width:992px) {
	h1{
		font-size: 48px !important;
        line-height: 55px !important;
	}
	h2{
		font-size: 36px !important;
        line-height: 44px !important;
	}
	.header-logo img{
    width: 165px !important;
}
}
body{
	margin:0;
	padding:0;
}
.services-card-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.service-card{
    background:#fff;
    padding:45px;
    border-radius:28px;
    transition:0.4s;
    box-shadow:0 10px 30px rgba(0,0,0,0.05);
}

.service-card:hover{
    transform:translateY(-10px);
}

.service-icon{
    width:70px;
    height:70px;
    border-radius:20px;
    background:#0075c9;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:30px;
    margin-bottom:25px;
}

.service-card h3 {
    font-size: 24px;
	line-height:30px;
	font-weight:600;
    margin-bottom: 20px;
}

.process-section{
    padding:100px 0;
}

.process-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
}

.process-card{
    background:#fff;
    border-radius:24px;
    padding:40px;
    text-align:center;
    box-shadow:0 10px 30px rgba(0,0,0,0.05);
}

.process-number{
    width:70px;
    height:70px;
    background:#0075c9;
    color:#fff;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:auto;
    margin-bottom:25px;
    font-size:26px;
    font-weight:700;
}

.process-card h3{
    margin-bottom:20px;
    font-size:24px;
}
.ckab-hero-text h1 span{
	color:#0075c9;
}
.authorised img{
	mix-blend-mode: luminosity;
	border-radius:10px;
}
.topbanner-secion h1 em{
	color:#0075c9;
}
.authorised-icon  .elementor-icon{
    width: 56px;
    height: 56px;
    border-radius: 14px;
    background:#ffe8ec;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    flex-shrink: 0;
}

.experticon{
    width: 80px !important;
    height: 80px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #ffe8ec, #fff) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
	border:2px solid #e6edf5 !important;
}

.installbox img{
	height:500px!important;
	object-fit:cover!important;
}
.listlayout-section li.elementor-icon-list-item.elementor-inline-item{
	 background: #fff !important;
    padding: 10px 18px !important;
    border-radius: 50px !important;
    margin: 5px !important;
}
#form_service-form input{
/* 	margin-bottom:15px; */
}
#form_service-form  .frm_button_submit {
    background: #0075c9;
    border-width: 1px;
    border-color: #0075c9;
    border-radius: 50px;
    padding: 18px 16px;
	    font-size: 16px;
    font-weight: 600 !important;

}
.greater-sydney p{
    margin: 0;
}
.timeline-section .twae-content {
	padding: 25px;
}
.timeline-section .twae-description p {
    line-height: 26px;
}
.blueticklistwrap h4.elementor-icon-box-title{
	margin-top:0;
	margin-bottom:5px;
	
}
.caldirectly h4.elementor-icon-box-title{
	margin-bottom:5px;
}

#form_main-form2  .frm_button_submit {
    background: #0075c9;
    border-width: 1px;
    border-color: #0075c9;
    border-radius: 50px;
    padding: 18px 16px;
    font-size: 16px;
    font-weight: 600 !important;
}
.serviceformicon h4.elementor-icon-box-title{
	margin-top:5px;
	margin-bottom:5px;
}

.frm_style_formidable-style.with_frm_style .frm_error_style {
    margin: 0;
    padding: 0;
    background: none !important;
    border: none;
}
.jobtext h4.elementor-icon-box-title{
	margin-top:5px;
	margin-bottom:5px;
}
#frm_form_5_container .frm_button_submit{
    background: #0075c9;
    border-width: 1px;
    border-color: #0075c9;
    border-radius: 50px;
    padding: 18px 16px;
    font-size: 16px;
    font-weight: 600 !important;
}
.footercolume{
word-break:break-all;
}
.with_frm_style select {
    height: 48px;
}

.header {
  background: #fff;
}
.sticky {
  position: fixed;
  top: 0;
  width: 100%;
}
.vertical_radio .frm_radio input[type="radio"] {
    position: static !important;
    opacity: 1 !important;
    pointer-events: none;
}
#frm_form_5_container input[type="radio"]:checked + label {
    color: #ff0000 !important;/* Red color */
    font-weight: bold !important;
}
