/*!
* Theme Name: astra-child
* Text Domain: astra
* Template: astra
* Version: 3.4.1
* Tested up to: 6.1.1
* Requires at least: 5.6
* Requires PHP: 7.2
* Author: Code Calibre Team
* Author URI: https://codecalibre.com/
* Theme URI: https://codecalibre.com/
* Description: astra-child is the perfect theme for your project. There is any issue or new funtionality, visit:
https://codecalibre.com/
*/
/* -------------Global CSS---------------------- */
*{
	padding:0;
	margin:0;
	box-sizing:border-box;
}
ul{
	margin:0 10px;
}
body{
	background: #FAF2E7!important;
}
html, body{
	width:100%!important;
overflow-x:hidden!important;
}
  /* --------------------------------------------- */
/* -----------Header CSS Stars Here------------- */
[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, .ast-menu-toggle:focus{
    border: none!important;
    outline: none!important;
}
.ast-custom-button,  .form-submit, .cv-read-more a{
    position: relative!important;
    overflow: hidden;
    width: max-content!important;
    padding: 10px 40px 10px 20px!important;
    z-index: 1;
    transition: background 0.3s ease;
    font-size: 18px!important;
    border-radius: 60px!important;
    line-height: 1em!important;
    font-weight: 400!important;
    transition-duration: 1s;
	background: #f88125 !important;
    border: 2px solid #F88125!important;
}
input#submit {
    font-size: 18px!important;
    font-weight: 400;
    background: transparent!important;
    box-shadow: none!important;
    border-radius: 0!important;
}
ul.sub-menu {
    background: #1a3b70!Important;
	padding: 10px;
}
ul.sub-menu li a {
    padding: 5px!Important;
}
.blog-category-filters {
    margin-bottom: 30px;
}
.ast-custom-button:before, .form-submit:before, .cv-read-more a:before{
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'%3E%3Ccircle cx='16' cy='16' r='16' fill='%231A3B70'/%3E%3Cpath d='M8 14.92V16.92H20L14.5 22.42L15.92 23.84L23.84 15.92L15.92 8L14.5 9.42L20 14.92H8Z' fill='white'/%3E%3C/svg%3E");    
	position: absolute;
    right: 2%;
    bottom: 1%;
}
.elementor-button:hover circle{
    fill: #f88125!important;
}
.cv-read-more {
    width: max-content;
    line-height: 0;
}
.cv-read-more a{
 margin-top: 0!important;
}
.cv-post-content {
    margin-bottom: 20px;
}
.ast-custom-button:hover::before, .cv-read-more a:hover::before{
content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Ccircle cx='16' cy='16' r='16' fill='%23f88125'/%3E%3Cpath d='M8 14.92V16.92H20L14.5 22.42L15.92 23.84L23.84 15.92L15.92 8L14.5 9.42L20 14.92H8Z' fill='white'/%3E%3C/svg%3E");   
}
.ast-single-post-featured-section {
    position: relative;
}

.ast-single-post-featured-section::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.45); /* overlay color */
    z-index: 2;
}

.ast-single-post-featured-section img {
    position: relative;
    z-index: 1;
}
.cv-block-grid--layout-two .cv-post-cat a, .cv-post.cv-icon .cv-post-thumb::after {
    background: #f88125!important;

}
p.form-submit {
    padding: 6px 40px 6px 20px!important;
}
.ast-custom-button:hover, .form-submit:hover, .cv-read-more:hover a{
    background: transparent!important;
	box-shadow:none!important;
}
.form-submit:hover input#submit{
	color: #1a3b70!important;
}
.ast-builder-menu-mobile .main-navigation .main-header-menu, .ast-builder-menu-mobile .main-navigation .main-header-menu .menu-link, .ast-builder-menu-mobile .main-navigation .main-header-menu .sub-menu {
    background-color: var(--ast-global-color-0);
    background-image: none;
}
  ul#ast-hf-mobile-menu .current-menu-item{
    color: var(--ast-global-color-4);
    background: #f88125;
}
.ast-builder-menu-mobile .main-navigation .main-header-menu .menu-item > .menu-link {
    color: var(--ast-global-color-4);
    }
#astra-footer-menu li {
  display: inline-flex;
  align-items: center;
}

#astra-footer-menu li:not(:last-child) > a::after {
  content: "|";
  display: inline-block;
  margin: 0 0 0 10px;
  line-height: 1;
  position: relative;
  top: 0;
}

img.blog-banner-img {
    max-height: 450px;
    object-fit: cover;
}
footer a, footer p, footer a:hover, footer h4{
    color: #fff;
    font-family: 'Roboto';
}
.contact-section p{
	margin-bottom:0!important;
}
.contact-section {
    display: flex;
    gap: 40px;
    width: 100%;
	margin-top:40px;
    align-items: center;
    justify-content: center;
}
.contact-item {
    display: flex;
    gap: 10px;
    align-items: center;
	text-align: left;
}
.contact-item i {
    color: #fff;
}
.ast-builder-menu-mobile .main-navigation .menu-item.menu-item-has-children > .ast-menu-toggle {
    right: 0!important;
	filter: invert(1);
}
/* -----------Header CSS end Here------------- */


.elementor-button-icon svg {
    height: 32px!important;
    width: 32px!important;
}
.swiper-slide {
    margin-bottom: 13px;
}
.swiper-pagination {
    text-align: left!important;
}
img.swiper-slide-image {
    width: 100%;
}
path.inner-circle {
    transform-origin: center;
    animation: spin 6s linear infinite;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.card-services {
    position: relative;
    overflow: hidden;
    border-radius: 20px;
}
.card-services:hover .elementor-icon-box-wrapper, .bano-card:hover .elementor-icon-box-wrapper, .bano-card:hover span.txt-color{
	filter:invert(1);
}
.card-services::before {
    content: ''!important;
    position: absolute!important;
    left: 0!important;
    right: 0;
    bottom: 0;
    height: 0!Important;
    background: linear-gradient(148.02deg, #12234E 1.29%, #2C599D 101.78%);
    border-radius: 999px 999px 0 0;
    transition: all 0.6s ease-in-out!important;
    z-index: 0;
}
/* Hover effect */
.card-services:hover::before {
    height: 100%!important;
	border-radius: 20px;
}

/* Card content above overlay */
.card-services .elementor-icon-box-wrapper {
    position: relative;
    z-index: 1;
    transition: color 0.7s ease;
}

/* Optional: text & icon color change on hover */
.card-services:hover h3,
.card-services:hover p,
.card-services:hover svg {
    color: #fff;
    fill: #fff;
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 40px, 0);
            transform: translate3d(0, 40px, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 40px, 0);
            transform: translate3d(0, 40px, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
          animation-name: fadeInUp;
}
.bano-card {
    position: relative;
    overflow: hidden;
    border-radius: 20px;
}

/* TOP-RIGHT overlay */
.bano-card::before,
.bano-card::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(148.02deg, #12234E 1.29%, #2C599D 101.78%);
    transform: scale(0);
    transition: transform 0.45s ease;
    z-index: 0;
    border-radius: 20px;
}

/* start points */
.bano-card::before {
    transform-origin: top right;
}

.bano-card::after {
    transform-origin: bottom left;
}

/* Hover → both expand */
.bano-card:hover::before,
.bano-card:hover::after {
    transform: scale(1);
}

/* Content stays above */
.bano-card .elementor-icon-box-wrapper {
    position: relative;
    z-index: 2;
}

/* Text / icon color */
.bano-card:hover h3,
.bano-card:hover p,
.bano-card:hover svg {
    color: #fff;
    fill: #fff;
}


span.elementor-button-content-wrapper {
    align-items: center;
}
span.txt-color {
    color: #F88125;
	font-weight:700;
}
.twentytwenty-handle {
    background: white;
}
.twentytwenty-left-arrow {
    border-right: 8px solid #000000!important;
}
.twentytwenty-right-arrow {
    border-left: 8px solid #000000!important;
}
.elementor-widget-n-tabs .e-n-tab-title .e-n-tab-icon svg {
    width: unset!important;
}
span.e-n-tab-title-text {
    display: none!important;
}
button.e-n-tab-title {
    opacity: 50%;
}
button.e-n-tab-title[aria-selected="true"] {
    opacity: 100%;
}
.ti-profile-details>div {
    width: max-content!Important;
}
.ti-widget.ti-wp-testimonial-1 .ti-controls-line .dot {
       background: #F88125!important;
}
.ti-widget.ti-wp-testimonial-1 .ti-controls-line {
      background: rgb(248 129 37 / 50%)!important;
}
.ti-widget.ti-wp-testimonial-1 .ti-review-header {
    flex-direction: row!important;
    justify-content: center!important;
    gap: 5px;
    margin-bottom: -60px;
    flex-wrap: nowrap!important;
}
.ti-widget.ti-wp-testimonial-1 .ti-review-header .ti-profile-details {
    width: max-content!important;
    flex: unset!important;
}
.ti-widget.ti-wp-testimonial-1 .ti-review-header .ti-profile-img:not(.x) {
    transform: scale(0.5);
    transform-origin: top center;
    margin: 50px 0 0px 0 !important;
    transition: transform 0.3s ease;
}
/* Hide existing icon content */
.ti-next,
.ti-prev {
    font-size: 0;
}
.ti-widget.ti-wp-testimonial-1 .ti-controls:not(.x){
	top:100%!important;
	}
.ti-next::before, .ti-prev::before{
	display:none!important;
}
/* NEXT text */
.ti-next::after {
    content: "Próxima"!important;
   }
.ti-next::after, .ti-prev::after {
    font-size: 18px;
    font-family: 'Inter';
    font-weight: 400;
    cursor: pointer;
    top: 0!important;
    padding: 8px;
    transform: unset!important;
    background: #F88125!important;
    color: white;
    width: max-content!important;
    height: auto!important;
}
.ti-widget.ti-wp-testimonial-1 .ti-controls .ti-next:hover, .ti-widget.ti-wp-testimonial-1 .ti-controls .ti-prev:hover {
    transform: scale(1)!important;
}
.ti-widget.ti-wp-testimonial-1 .ti-controls .ti-prev {
    left: 35%!important;
}
.ti-widget.ti-wp-testimonial-1 .ti-controls .ti-next {
    right: 35%!important;
}
/* PREV text */
.ti-prev::after {
    content: "Anterior"!important;
}
.ti-review-text-container.ti-review-content {
    font-size: 18px!important;
    font-weight: 400;
    line-height: 1.7em!Important;
    font-family: 'Roboto'!important;
}
.ti-widget.ti-wp-testimonial-1 .ti-widget-container .ti-date:not(.date-testi) {
    color: #9A9191!important;
    font-family: 'Roboto'!important;
    opacity: 1!important;
    font-size: 16px !important;
}
.ti-name {
    font-size: 18px!important;
    font-weight: 700!important;
    font-family: 'Roboto'!important;
}
.ti-reviews-container-wrapper {
    padding: 0!important;
}
.ti-inner {
    padding-top: 0!Important;
}
.fiv-inner {
    width: 1380px;
}
a.fg-thumb {
    width: 100%;
    max-height: 530px;
}
.fg-caption-inner {
    flex-direction: row!important;
    align-items: center;
}
.fg-caption-title {
    font-size: 30px!Important;
    font-weight: 700!important;
    font-family: 'Roboto';
}
.fg-caption-desc {
    font-size: 18px!Important;
    font-weight: 400!important;
    font-family: 'Roboto';
    color: #fff!important;
    text-align: right;
}
.foogallery.fg-image-viewer.fg-light.fg-shadow-outline .fiv-inner {
    box-shadow: none!important;
}
label.fiv-count, .fiv-ctrls .fiv-prev:before, .fiv-ctrls .fiv-next:before {
    display: none!important;
}
input#submit {
    padding: 5px 0!important;
}
.fiv-ctrls {
    position: absolute;
    top: -70px;
    right: 0;
    display: flex!important;
    gap: 20px;
    background: transparent!important;
}
.fiv-ctrls>div {
    background: #F88125!important;
    padding: 8px 3px;
    box-shadow: none!important;
}
/* hide original text */
.fiv-prev span,
.fiv-next span {
    font-size: 0;
}

/* add new text */
.fiv-prev span::before {
    content: "Anterior";
    font-size: 18px;
    color: white;
    font-family: 'Inter';
    line-height: 23.4px;
}

.fiv-next span::before {
       content: "Próxima";
    font-size: 18px;
    color: white;
    font-family: 'Inter';
    line-height: 23.4px;
}
.fg-image-viewer .fiv-inner .fiv-ctrls .fiv-next span, .fg-image-viewer .fiv-inner .fiv-ctrls .fiv-prev span {
    transform: unset!important;
    line-height: 0;
}
.fg-image-viewer .fiv-inner .fiv-ctrls .fiv-next:hover span, .fg-image-viewer .fiv-inner .fiv-ctrls .fiv-prev:hover span {
    transform: unset!important;
}
.fiv-inner-container, .fiv-ctrls{
    border: 0!important;
}
figcaption.fg-caption {
    position: static!important;
    background: #F88125!Important;
    padding: 35px 30px!important;
}
.ast-single-post-featured-section img:first-child{
    display: none !important;
}
aside#block-22 h2.vp-portfolio__item-meta-title {
    font-size: 12px!important;
}
aside#block-22 a.vp-portfolio__item-meta {
    padding: 10px!important;
}
[data-vp-layout=slider] .vp-portfolio__items-arrow {
    background-color: #132550!important;
    color: #ffffff!important;
 }
.image-marquee {
    overflow: hidden;
    width: 100%;
}
.ast-single-post-featured-section.post-thumb.ast-article-image-container--wide img {
    max-height: 700px;
}
.image-marquee-track {
    display: flex;
    gap: 20px;
    margin-bottom: 50px;
    width: max-content;
    animation: marquee 30s linear infinite;
}

.image-marquee-track img {
    max-height: 220px;
    flex-shrink: 0;
}

.single-portfolio div#comments {
    width: 50%;
}
.single-portfolio .ast-single-post-featured-section.post-thumb img {
    aspect-ratio: 3/1;
}
h1.tamano5.color-1-headings-dark {
    margin-top: 15px;
}

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

.single-portfolio article {
    overflow: hidden;
}



/* ---------form styling start------------------- */
div#radio-1 .forminator-field {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px 35px;
}
div#radio-1 .forminator-field label {
    margin: 10px 0!important;
}
span.forminator-radio-bullet {
    border-radius: 0!important;
}
.single-post div#primary, .single-post div#secondary {
    margin-top: 150px!important;
}
.single-post header#masthead {
    background: #1a3b70;
}
.single-post .ast-custom-button:hover {
    color: white!important;
}
.single-post .ast-custom-button:hover {
    color: #1a3b70;
}
textarea#comment {
    max-height: 120px;
}
textarea#comment, .ast-comment-formwrap.ast-row input {
    background: #FAF2E7;
    box-shadow: none;
}
fieldset.comment-form-comment, .ast-row.comment-textarea{
    margin-bottom: 10px!Important;
}
.blog-category-filters a.filter-btn {
    background-color: #132550;
    color: var(--ast-global-color-4);
    border-radius: 60px;
    padding: 0.4em 0.7em;
    margin-right: 5px;
    font-size: 16px;
    font-weight: 400;
    border: 2px solid #132550;
    transition: all 0.3s ease;
}

.blog-category-filters a.filter-btn.active {
    background-color: transparent !important;
    color: #132550 !important;
}
.wp-block-latest-posts__post-title {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.4;
    max-height: calc(1.4em * 3);
}
section.ast-archive-description {
    display: none;
}
/* ----------------media querie start-------------- */
/* ========== SMALL DESKTOP (up to 1365px) ========== */
@media (max-width: 1365px) {
  .elementor-element-d050513.e-con > .e-con-inner {
    gap: 20px !important;
  }

  a.menu-link {
    padding: 0 13px !important;
  }
}
/* ========== MOBILE & TABLET (up to 1279px) ========== */
@media (max-width: 1440px) {
.ast-blog-layout-4-grid .ast-article-post {
    width: 48%!important;
    padding: 0 10px!important;
}
.blog-category-filters {
    margin-bottom: 30px;
}
}
@media (max-width: 1279px) {
  #ast-desktop-header {
    display: none !important;
  }
.current_page_item button.ast-menu-toggle {
    filter: unset!important;
}
  #ast-mobile-header {
    display: block !important;
  }
	.contact-section {
gap: 15px;
}
	ul.sub-menu {
    padding: 0;
}
ul.wp-block-latest-posts__list.wp-block-latest-posts.has-background.has-white-background-color {
    font-size: 14px!Important;
    padding-bottom: 30px!important;
}
	.contact-item {
   	max-width: 385px;
}

}
@media (max-width: 921px) {

	.single-post div#secondary {
    margin-top: 60px!important;
}}
@media (max-width: 767px) {
.fg-caption-title {
    font-size: 20px!Important;
}
	
.single-post .ast-single-post-featured-section.post-thumb img, .single-portfolio .ast-single-post-featured-section.post-thumb img {
    aspect-ratio: 1/1!important;
}
	.vp-portfolio__items-style-emerge.vp-portfolio__items-show-caption-hover .vp-portfolio__item .vp-portfolio__item-caption, .vp-portfolio__items-style-emerge.vp-portfolio__items-show-caption-hover .vp-portfolio__item .vp-portfolio__item-meta>*{
    --vp-items-style-emerge--caption-skew__clip-left: var(--vp-items-style-emerge--caption-skew-hover__clip-left);
    --vp-items-style-emerge--caption-skew__clip-right: var(--vp-items-style-emerge--caption-skew-hover__clip-right);
		opacity:1!important;
    transform: translateY(0);
}
	.single-post div#primary{
    margin-top: 140px!important;
}

	.fg-caption-desc {
    font-size: 16px!Important;
}
	figcaption.fg-caption {
    padding: 20px 10px!important;
}
	.contact-section {
    flex-direction: column;
    align-items: flex-start;
}
	h1.entry-title {
    font-size: 22px!important;
}
	ul#astra-footer-menu {
    display: flex!important;
}
	#astra-footer-menu .menu-item > a {
    font-size: 16px!important;
}
	a.menu-link {
    padding: 0 5px !important;
}
}
@media (max-width: 550px) {
		.ast-blog-layout-4-grid .ast-article-post {
    width: 100%!important;
	}
.gallery-slider{
	width:100%!important;
}}
/* ========== DESKTOP (1280px and above) ========== */
@media (min-width: 1280px) {
  .home-para h1 {
    font-size: 156px !important;
  }

  #ast-desktop-header {
    display: block !important;
  }

  #ast-mobile-header {
    display: none !important;
  }
.site-primary-footer-wrap[data-section="section-primary-footer-builder"] {
    padding: 65px 0 !important;
}
}

/* ========== LARGE DESKTOP (1500px and above) ========== */
@media (min-width: 1500px) {
  .txt-transform h2 {
    font-size: 55px !important;
  }
	.txt-transform-box{
		padding:60px 20px 85px 150px!important;
	}
	.los-icon .txt-transform-box {
    font-size: 18px!important;
}
	.los-icon span.elementor-icon {
    font-size: 60px!Important;
}
	.last-sec{
		margin-top:-510px!important;
	}
	.los-div{
		width:45%!important;
	}
	.los-sec-div{
		padding:20px!important;
	}
	.los-head h2{
		font-size:60px!important;
	}

}
@media (min-width: 1605px) {
	ul.wp-block-latest-posts__list.wp-block-latest-posts.has-background.has-white-background-color {
    padding-bottom: 40px!important;
}
}