/*
Theme Name: Code Calibre Child
Theme URI: https://codecalibre.com/
Description: Code Calibre Child Theme for Astra.
Author: Code Calibre
Author URI: https://codecalibre.com/
Template: astra
Version: 1.0.0
Text Domain: code-calibre-child
*/

/* Add your custom CSS below this line */
*{
	margin:0;
	padding:0;
	box-sizing:border-box;
}
html, body{
	max-width:100%!important;
	overflow-x:hidden!important;
}
p{
	margin-bottom:0!important;
}
/* ---------header footer css start----------- */

.top-left a, .top-right a {
    display: flex;
    align-items: center;
    gap: 10px;
}
[data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-minimal:focus, a:focus,
.ast-mobile-popup-drawer.active .menu-toggle-close:focus, .ast-header-search .ast-search-menu-icon.ast-dropdown-active
.search-field:focus {
border: none!important;
outline: none!important;
}
.ast-mobile-popup-header {
    position: absolute;
    right: 0;
}
.ast-primary-header-bar {
	background: transparent!important;
}
.ast-above-header-bar {
    align-content: center;
}

header .ast-main-header-wrap{
	position: sticky !important;
}
body.home .ast-main-header-wrap{
  position: fixed !important;
    top: 50px;
    left: 0;
    width: 100%;
    z-index: 9999;
    background: transparent;
}
tr.box {
    background: #2bbccf3b;
}
 

.site-primary-footer-wrap .site-primary-footer-inner-wrap {
    display: flex;
    flex-direction: column;
      gap: 28px;
}
.custom-404-image {
    width: 100%;
background: radial-gradient(50% 50% at 50% 50%, #FFFFFF 0%, #D4FAFF 100%);
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.custom-404-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.ti-date , span.ti-stars {
    display: none!important;
}
.elementor-element-c3d31b1  .ti-widget.ti-wp-testimonial-1 .ti-review-header .ti-profile-img {
    margin-bottom: 30px!important;
}
.elementor-element-c3d31b1 .ti-inner {
    display: flex!important;
    flex-direction: column;
    gap: 30px;
}
ul#ast-hf-menu-1 .sub-menu a.menu-link {
    line-height: 100%!important;
}


.ti-review-text-container.ti-review-content {
    max-width: 660px;
    font-family: 'Sora'!important;
    margin: 0 auto;
}
.ti-name {
    font-family: 'Sora'!important;
}
.top-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
}
.site-primary-footer-wrap {
    position: relative;
}
.footer-bg-txt {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(180deg, #FFFFFF 42.33%, rgba(255, 255, 255, 0) 84%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
 font-size: clamp(50px, 12vw, 195px);
	font-weight: 700;
    text-transform: uppercase;
    white-space: nowrap;
    opacity: 7%;
    z-index: 0;
    line-height: 100%;
}
/* ------------container css start---------------------------- */

.contact-sec{
	background-position: 0% 90%!important;}

body.home .ast-main-header-wrap.scrolled {
    top: 0;
    background: rgba(255, 255, 255, 0.75);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
.about-hover {
    overflow: hidden!important;
}
.about-hover img{
    border-radius: 10px!important;
	
}
.elementor-element-2d1c934 img {
    width: 100%;
}
.elementor-element-2d1c934 .elementor-widget-image {
    width: 100%;
    overflow: hidden;
}
.services-sec .elementor-widget-button {
    margin-top: auto;
}
.slides-ship {
    animation: shipMove 8s linear infinite alternate;
    overflow: hidden;
}
.elementor-element-0e7dac8 .elementor-widget-image {
    overflow: hidden;
    border-radius: 20px;
}
button.forminator-button.forminator-button-submit {
    background: linear-gradient(270deg, #004759 0%, #2BBCCF 100%)!important;
    border-radius: 70px!important;
    box-shadow: none!important;
    padding: 13.5px 25px!important;
    width: max-content!important;
}
form#forminator-module-431 div#email-1 {
    width: 400px!important;
    padding: 0;
}
.site-footer-primary-section-3, .site-footer-primary-section-4{
	z-index:1;
}
.e-con-boxed {
    padding: 0 20px!important;
}
form#forminator-module-431 {
    display: flex!important;
    justify-content: flex-end;
    align-items: center;
    gap: 30px;
}
form#forminator-module-431 button.forminator-button.forminator-button-submit {
    border: 1px solid #FFFFFF;
    margin-bottom: 0;
    background: transparent!important;
}

button.forminator-button.forminator-button-submit:hover, form#forminator-module-431 button.forminator-button.forminator-button-submit:hover {
	background: linear-gradient(-270deg, #004759 0%, #2BBCCF 100%)!important;}

.elementor-element-62a5454,
.elementor-element-62a5454 .elementor-widget-container{
    height:100%;
}

form#forminator-module-431 div#email-1 input {
    padding: 0;
    background-image: url("/wp-content/uploads/2026/07/Vector.svg");
    background-repeat: no-repeat;
    background-position: 92% 50%;
    background-size: 7%;
}
/* Image */
.elementor-element-62a5454 img{
    height:100%!important;
}
.import-boxes{
    display: inline-block;
    transform-origin: center center;
    animation: horizontalSwing 5s ease-in-out infinite;
    will-change: transform;
}

@keyframes horizontalSwing{
    0%{
        transform: rotate(-4deg);
    }
    50%{
        transform: rotate(4deg);
    }
    100%{
        transform: rotate(-4deg);
    }
}
.box1{
    opacity: 0;
    transform: translateY(40px);
    animation: fadeUp .8s ease forwards;
    animation-delay: 0s;
}

.arrow1 svg, .arrow2 svg{
	    max-height: 200px!important;
	
}
.arrow1{
    opacity: 0;
    transform: scale(.5);
    animation: fadeScale .5s ease forwards;
    animation-delay: .8s;
}

.box2{
    opacity: 0;
    transform: translateY(40px);
    animation: fadeUp .8s ease forwards;
    animation-delay: 1.3s;
}

.arrow2{
    opacity: 0;
    transform: scale(.5);
    animation: fadeScale .5s ease forwards;
    animation-delay: 2.1s;
}

.box3{
    opacity: 0;
    transform: translateY(40px);
    animation: fadeUp .8s ease forwards;
    animation-delay: 2.6s;
}
form#forminator-module-431>div {
    margin: 0;
}
.e-grid h3 {
    margin-bottom: 0!important;
}

/* Animations */
	@keyframes shipMove{
    from{
        transform: translate(500px,-120px);
    }
    to{
        transform: translate(-400px,80px); 
    }
}
@keyframes fadeUp{
    from{
        opacity:0;
        transform:translateY(40px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@keyframes fadeScale{
    from{
        opacity:0;
        transform:scale(.5);
    }
    to{
        opacity:1;
        transform:scale(1);
    }
}
/* ----------media querie start--------------- */

@media (min-width: 1200px) {
  #ast-desktop-header {
    display: block !important;
  }
  #ast-mobile-header {
    display: none !important;
  }
a.menu-link {
    line-height: 40px!important;
}
	ul.sub-menu {
    width: max-content!important;
}
}
@media (max-width: 1399px) {

.ast-builder-menu-1 .menu-item > .menu-link {
    font-size: 16px!important;
}}
@media (max-width: 1199px) {
	  #ast-desktop-header {
    display: none !important;
  }
  #ast-mobile-header {
    display: block !important; 
	}
}
@media (max-width: 1024px) {

form#forminator-module-431 {
    gap: 20px;
}
	form#forminator-module-431 div#email-1 {
    width: max-content!important;
}
	form#forminator-module-431 button.forminator-button.forminator-button-submit, form#forminator-module-431 div#email-1 input{
	    font-size: 14px!important;
	font-weight: 400;}
button.forminator-button.forminator-button-submit {
    padding: 10px 20px!important;
    margin: 0;
}
	ul#astra-footer-menu {
    display: flex;
    gap: 0;
}
	ul#astra-footer-menu a.menu-link {
    padding: 2px 10px!important;
}
}
@media (max-width: 900px) {

.elementor-element.elementor-element-0d66bfa {
      background-image: linear-gradient(90deg, #FFFFFF 36%, #fff 35%)!important;
}}
@media (max-width: 600px) {
.top-left a, .top-right a {
    gap: 5px;
}
	.elementor-element-c3d31b1 .ti-inner {
    gap: 10px;
}
	.ti-review-text-container.ti-review-content {
		font-size:14px!important;
	}
	.site-primary-footer-wrap .site-primary-footer-inner-wrap {
      gap: 10px!important;
}
	form#forminator-module-431 button.forminator-button.forminator-button-submit {
    padding: 10px 5px!important;
}
	form#forminator-module-365 textarea, form#forminator-module-365 input {
    font-size: 14px!important;
}
	form#forminator-module-431 button.forminator-button.forminator-button-submit, form#forminator-module-431 div#email-1 input {
    font-size: 12px!important;
		padding: 8px 10px!important;
}
	.contact-sec{
	background-size: 80px auto!important;}
	
	form#forminator-module-431 {
		    gap: 5px;

}
	form#forminator-module-431 div#email-1 {
    width: 100%!important;
}
	.elementor-15 .elementor-element.elementor-element-2d1c934 {
    --e-con-grid-template-columns: repeat(1, 1fr)!important;
}
body.home .ast-main-header-wrap{
top: 90px;
}
	.works-history {
    flex-wrap: wrap!important;
}
.arrow1, .arrow2 {
    position: static!important;
}
	@keyframes shipMove{
    from{
        transform: translate(70px,-40px);
    }
    to{
        transform: translate(-70px,5px); 
    }
}
.ast-above-header-bar>div {
    display: flex;
    gap: 10px;
    flex-direction: column;
}
	.arrow1 svg, .arrow2 svg {
    display: none!important;
}
}