.elementor-1774 .elementor-element.elementor-element-46ed020{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1774 .elementor-element.elementor-element-42d2715{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:15px;--padding-bottom:15px;--padding-left:15px;--padding-right:15px;}.elementor-1774 .elementor-element.elementor-element-42d2715:not(.elementor-motion-effects-element-type-background), .elementor-1774 .elementor-element.elementor-element-42d2715 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-2d4709d );}.elementor-1774 .elementor-element.elementor-element-6634b01{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--padding-top:2px;--padding-bottom:2px;--padding-left:2px;--padding-right:2px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );color:var( --e-global-color-primary );}.elementor-1774 .elementor-element.elementor-element-b634fa2{text-align:left;}.elementor-1774 .elementor-element.elementor-element-b634fa2 .elementor-heading-title{font-family:"Source Sans Pro", Sans-serif;font-size:13px;font-weight:500;line-height:1.3em;letter-spacing:-0.2px;color:var( --e-global-color-572fd8a );}.elementor-1774 .elementor-element.elementor-element-cd1b3a8{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:4px 4px;--row-gap:4px;--column-gap:4px;--padding-top:2px;--padding-bottom:2px;--padding-left:2px;--padding-right:2px;}.elementor-1774 .elementor-element.elementor-element-fd425bf{text-align:center;}.elementor-1774 .elementor-element.elementor-element-fd425bf .elementor-heading-title{font-family:"Source Sans Pro", Sans-serif;font-size:13px;font-weight:500;line-height:1.3em;letter-spacing:-0.2px;color:var( --e-global-color-62cb1a3 );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1240px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}}@media(max-width:767px){.elementor-1774 .elementor-element.elementor-element-42d2715{--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-1774 .elementor-element.elementor-element-6634b01{--justify-content:flex-start;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-1774 .elementor-element.elementor-element-b634fa2 .elementor-heading-title{font-size:12px;}.elementor-1774 .elementor-element.elementor-element-cd1b3a8{--justify-content:flex-start;}.elementor-1774 .elementor-element.elementor-element-fd425bf{width:var( --container-widget-width, 90% );max-width:90%;--container-widget-width:90%;--container-widget-flex-grow:0;text-align:left;}.elementor-1774 .elementor-element.elementor-element-fd425bf .elementor-heading-title{font-size:12px;}}/* Start custom CSS */:root{
  --brand: #44351f;
  --brand-ink: #9c774d;
  --card-bg: transparent;
  --container-max: 1240px;

  --badge: 112px;
  --ring: 4px;
  --head-gap: 35px;

  --dash-len: 200px;
  --dash-thickness: 2px;
  --dot: 14px;
  
  --font-brand: "Inter", sans-serif;
}
::selection {
  background: #9c774d;
  color: #fff;
}
::-moz-selection {
  background: #9c774d;
  color: #fff;
}
@media screen and (max-width:768px){
    .nobreak{display:none !important}
}
@media screen and (min-width:769px){
    .nobreakDesk{display:none !important}
}

/* seta tratamentos */
.arrow{
  --shaft-thickness: 2px;
  --shaft-length: 120px;
  --head-size: 13px;
  --arrow-color: #fff;
  position:absolute;;
  right: 30px;
  top:10px;
  width: calc(var(--shaft-length) + var(--head-size));
  height: var(--shaft-thickness);
  background: var(--arrow-color);
  color: var(--arrow-color);
  border-radius: calc(var(--shaft-thickness) / 2);
}
.arrow::after{
  content: "";
  position: absolute;
  right: -2px;
  top: 50%;
  transform: translateY(-50%);
  width: 0; height: 0;
  border-top: calc(var(--head-size) / 2) solid transparent;
  border-bottom: calc(var(--head-size) / 2) solid transparent;
  border-left: var(--head-size) solid currentColor;
}
.passos{
    font-family: var(--font-brand);
    font-size: 16px;
    font-weight: 600;
    display: block;
    margin: 0 auto 20px;
    width: 85%;
}
.degrade-passos {
  position: relative;
  overflow: hidden;
  cursor: pointer;
}
.degrade-passos::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  background: linear-gradient(to top,
    rgba(68,53,31,.98) 3%,
    rgba(68,53,31,0.65) 35%,
    rgba(68,53,31,0.0) 50%
  );
}
/* garante que conteúdo fique acima do degradê */
.degrade-passos > * {
  position: relative;
  z-index: 2;
}
.infoBox{
    cursor: pointer !important
}
.txtNormal{color: #88827A;}
.txtDestaque{color: #9c774d;}
.txtLight{font-weight:500;}
.listQ{color: #EEEBE4;font-weight:600}
.txtLine {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 6px;
}
.speech-bubble{
  display: inline-block;
  position: relative;

  background: #ece5da;
  padding: 12px 22px;
  border-radius: 999px;
  margin-left: 12px;

  font-size: 15px;
  line-height: 1.2;
}
/* “Rabinho” do balão */
.speech-bubble::before{
  content: "";
  position: absolute;

  left: -10px;
  top: 50%;
  transform: translateY(-50%) rotate(15deg);

  width: 0;
  height: 0;

  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  border-right: 20px solid #ece5da;
}
/* Responsivo (opcional) */
@media (max-width: 680px){
  .speech-bubble{
    font-size: 16px;
    padding: 12px 18px;
    max-width: 92vw;
    margin-top: 10px;
  }
}

.icon_bg .elementor-icon::before{
    content: "";
    position: absolute;
    width: 70%;
    height: 55%;
    background: rgba(186, 147, 99, .15);
}
.icon_bg.--left .elementor-icon::before{
    left: 50%;
    transform: translateX(-50%);
    border-radius: 30% 50%;
}
.icon_bg.--right .elementor-icon::before{
    right: 40%;
    transform: translateX(50%);
    border-radius: 50% 30%;    
}

.btn_cta .elementor-button{
    animation: 3.4s cubic-bezier(0.2, 0.5, 0.9, 0.6) 2s infinite normal none running textura;
    background-image: linear-gradient(45deg, #9c774d, #ba9363, #9c774d, #ba9363);
    background-size: 400% 200%;
}
.btn_cta2 .elementor-button{
    background-image: linear-gradient(45deg, #44351f, #41321c, #594526, #44351f) !important;
}

@keyframes textura{
    0% {
    background-position: 0 0;
    }
    
    100% {
        background-position: 100% 0;
    }
}
#google-review .ti-widget .ti-review-item>.ti-inner {
    border-radius: 15px !important;
    background: #eeebe4 !important;
    color: #88827a !important;
    border: 0 none !important;
    backdrop-filter: blur(12px) saturate(140%);
    -webkit-backdrop-filter: blur(12px) saturate(140%);
}
#google-review .ti-review-content{
    font-family: "Inter", sans-serif !important;
    font-size: 1em
}
#google-review .ti-header-write-btn{
    background: #eeebe4;
    color: #88827a !important;
    border: 0 none;
    transition: all ease 200ms;
}
#google-review .ti-header-write-btn:hover{
    background: #ba9363!important;
    color: #F8F6F0 !important;
}
#google-review .ti-read-more-active{
    color: #88827a99 !important;
}
#google-review .ti-read-more-active:hover{
    color: #88827aBB !important;
}
.timeline{
  counter-reset: step;
  width: min(var(--container-max), 100%);
  margin: 0 auto;
}
.title-steps:before{
    transform: translateX(7.5%);
    content: "";
    width: 87%;
    height: 87%;
    background: #125f67;
    top: 40px !important;
    position: absolute;
    inset: 0;
}
.t-item{
  counter-increment: step;
  position: relative;
  width: 50%;
  padding-top: calc(var(--badge) + var(--head-gap));
  color: var(--ink-2);
  background: var(--card-bg);
}
.t-item p:last-of-type{
    margin-bottom: 0 !important
}
.t-item.--left{
  margin-right: 0%;
  text-align: right
  ;
  padding-right: 80px;
  padding-left: 20px;
}
.t-item.--right{
  margin-left: 50%;
  text-align: left;
  padding-right: 20px;
  padding-left: 80px;
}
.t-item::before{
  content: counter(step);
  position: absolute;
  top:0;
  left: 50%;
  transform: translateX(-50%);
  width: 100px;
  height: 100px;
  font: 800 55px/1 "Source Sans Pro", Sans-serif;
  color: #2d9aa1;
  background: #d5e3e4;
  display: flex;
  align-items: center;
  justify-content: center;
  border: solid 4px #2d9aa1;
  box-shadow: inset 0 12px 0 #E6EAEB;
  border-radius: 50%;
  /*z-index: 2;*/

}
/* DASHLINE + DOT */
.t-item::after{
  content: "";
  position: absolute;
  width: var(--dash-len);
  height: var(--dash-thickness);
  top: calc(0px + 50px - var(--dash-thickness)/2);
  background:
    radial-gradient(circle at 100% 50%, var(--brand-ink) var(--dot), transparent calc(var(--dot) + 1px)),
    repeating-linear-gradient(to right, var(--brand-ink) 0 10px, transparent 10px 20px);
  background-repeat: no-repeat;
  background-size: var(--dot) var(--dot), auto 100%;
  background-position: right center, left center;

}
.t-item.--left::after{
  left: calc(50% + 50px);
}
.t-item.--right::after{
  right: calc(50% + 50px);
  transform: scaleX(-1);
}

@media (max-width: 1024px){
    .t-item.--left{
      padding-right: 40px;
      padding-left: 10px;
    }
    .t-item.--right{
      padding-right: 10px;
      padding-left: 40px;
    }
    
    .t-item::after{
      width: 115px;
    }
}

@media (max-width: 767px){
    .title-steps:before{
        transform: translateX(2.7%);
        content: "";
        width: 95%;
        height: 95%;
        background: #125f67;
        top: 40px !important;
        position: absolute;
        inset: 0;
    }
    .title-steps::after{display:none;}
    
    .t-item.step1,
    .t-item.step2,
    .t-item.step3,
    .t-item.step4,
    .t-item.step5,
    .t-item.step6{
        margin-top:0 !important;
        margin-bottom:40px !important;
    }
    .t-item{
      width: 100%;
      padding-top:35%;
      text-align: left !important;
    }
    .t-item.--left, .t-item.--right{
      margin: 0;
      padding-right:0;
      padding-left:0;
    }
    .t-item::before{
        left:14%;
        width:80px;
        height:80px;;
        font-size:40px;
    }
    .t-item::after{
        left:30% !important;
        top: calc(0px + 40px - var(--dash-thickness)/2);
    }
    .t-item.--left::after{
      left: calc(50% 0px);
    }
    .t-item.--right::after{
      right: calc(50% + 50px);
      transform: scaleX(-1);
    }
}
@media (min-width: 680px) and (max-width:768px){
    .t-item.step1{
        margin-top:0 !important;
    }
    .t-item.step2{
        margin-top:-40%!important;
    }
    .t-item.step3{
        margin-top:-5% !important;
    }
    .t-item.step4{
        margin-top:-46% !important;
    }
    .t-item.step5{
        margin-top:-51% !important;
    }
    .t-item.step6{
        margin-top: -45% !important;
    }
    .t-item{
      padding-top:15%;
    }
    .t-item::after{
        width: 32%;
        top: calc(40px - var(--dash-thickness)/2);
    }
    .t-item::before{
        width:80px;
        height:80px;;
        font-size:40px;
    }
}

@media (min-width: 996px){
    .t-item.step1{
        margin-top:0 !important;
    }
    .t-item.step2{
        margin-top:-30%!important;
    }
    .t-item.step3{
        margin-top:-3% !important;
    }
    .t-item.step4{
        margin-top:-30% !important;
    }
    .t-item.step5{
        margin-top:-31% !important;
    }
    .t-item.step6{
        margin-top: -25% !important;
    }
    .t-item::after{
        width: 35%;
    }
}
@media (min-width: 1120px){
    .t-item.step1{
        margin-top:0 !important;
    }
    .t-item.step2{
        margin-top:-20%!important;
    }
    .t-item.step3{
        margin-top:-2% !important;
    }
    .t-item.step4{
        margin-top:-21% !important;
    }
    .t-item.step5{
        margin-top:-21% !important;
    }
    .t-item.step6{
        margin-top: -18% !important;
    }
    .t-item::after{
        width: 38%;
    }
}

@media (min-width: 1440px){
  :root{
    --badge: 100px;
    --dash-len: 230px;
    --head-gap: 35px;
  }
}

/* seta na base */
.title-steps::after{
  content: "";
  position: absolute;
  left: 50%;
  bottom: -30px;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 25px solid transparent;
  border-right: 25px solid transparent;
  border-top: 40px solid #125F67;
}
.quote-box-2lines::before{
    content: ' “ ';
    position: absolute;
    font: 95px "Times New Roman";
    font-weight: 800;
    color: #9C774D55;
    width: 50px;
    height: 50px;
    top: 0;
    left: 0;
    transform: translate(-80%,-40%);
}
.quote-box-3lines::before{
    content: ' “ ';
    position: absolute;
    font: 90px "Times New Roman";
    font-weight: 800;
    color: #9C774D55;
    width: 50px;
    height: 50px;
    top: 0;
    left: 0;
    transform: translate(-65%,-5%);
}
@media screen and (max-width: 680px) {
    .quote-box-2lines::before{
        font-size: 95px;
        transform: translate(-70%,-50%);
    }
    .quote-box-3lines::before{
        font-size: 95px;
        transform: translate(-70%,-5%);
    }
}
/* ============ Base (mobile-first) ============ */
.photo-hero {
  position: relative;
  overflow: visible;
}

.photo-hero img {
  bottom: 0;
  height: auto;
}

/* ============ Mobile grande: até 680px ============ */
@media screen and (max-width: 680px) {
  .photo-hero img {
    position: unset;
    right: unset;
    bottom: 0;
    margin-bottom: -50%;
    width: 75vw !important;
    height: unset;
  }
}
/* ============ Tablet: 768px – 833px ============ */
@media screen and (min-width: 768px) and (max-width: 833px) {
  .photo-hero img {
    width: 50vw !important;
    right: calc(50% - 30vw);
    max-width: 900px;
  }
}
/* ============ Tablet grande: 834px – 994px ============ */
@media screen and (min-width: 834px) and (max-width: 994px) {
  .photo-hero img {
    width: 48vw !important;
    right: calc(50% - 28vw);
    bottom: -3vh;
  }
}
/* ============ Tablet grande: 995px – 1023px ============ */
@media screen and (min-width: 995px) and (max-width: 1023px) {
  .photo-hero img {
    width: 48vw !important;
    right: calc(50% - 25vw);
    bottom: -3vh;
  }
}

@media screen and (max-width:1200px){
    .photo-casal > img{
        max-width: 700px !important;
    }
}
@media screen and (min-width:1024px) and (max-width:1200px){
    .photo-casal{
        margin-left: -30%;
    }
    .photo-casal > img{
        width: 120% !important;
    }
}
@media screen and (min-width:997px) and (max-width:1024px){
    .photo-casal{
        margin-left: -33%%;
    }
    .photo-casal > img{
        width: 165% !important;
    }
}
@media screen and (min-width:901px) and (max-width:996px){
    .photo-casal{
        margin-left: -30%;
    }
}
@media screen and (min-width:821px) and (max-width:900px){
    .photo-casal{
        margin-left: -45%;
    }
}
@media screen and (max-width:820px){
    .photo-casal{
        margin-left: -90%;
    }
    .photo-casal::after {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(
        to left,
        #F8F6F0 0%,
        rgba(248, 246, 240, 0) 40%
      );
      right: -110%;
    }
    .photo-casal > img{
        width: 250% !important;
    }
}
@media screen and (max-width:768px){
    .photo-casal{
        margin-left: -45%;
    }
    .photo-casal > img{
        width: 210% !important;
        transform: scaleX(-1);
    }
}
@media screen and (max-width:680px){
    .photo-casal{
        margin-left: 0%;
    }
}

.btn-whatsapp {
  position: fixed;
  bottom: 25px;
  right: 25px;
  width: 50px;
  height: 50px;
  display: flex;
  flex-direction: column;
  align-items:center;
  justify-content:center;
  z-index: 667;
  transition: all 300ms ease-in-out;

}
@media screen and (max-width:680px){
	.btn-whatsapp {
        bottom: 15px;
        right: 15px;
	}
}
.contact_icon {
  background-color: var(--brand-ink);
  color: #FFF;
  width: 50px;
  height: 50px;
  font-size:25px;
  border-radius: 50px;
  text-align: center;
  box-shadow: 2px 2px 3px #999;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translatey(0px);
  box-shadow: 0 0 0 0 var(--brand-ink);
  -webkit-animation: pulsing 2s infinite cubic-bezier(0.66, 0, 0, 1);
  -moz-animation: pulsing 2s infinite cubic-bezier(0.66, 0, 0, 1);
  -ms-animation: pulsing 2s infinite cubic-bezier(0.66, 0, 0, 1);
  animation: pulsing 2s infinite cubic-bezier(0.66, 0, 0, 1);
  font-weight: normal;
  font-family: sans-serif;
  text-decoration: none !important;
  transition: all 300ms ease-in-out;
}
.contact_icon.on-light{
    background-color: var(--brand);
    box-shadow: 0 0 0 0 var(--brand);
}

.contact_icon:hover {
  background-color: var(--brand-ink);
  box-shadow: 0 0 0 0 var(--brand-ink);
}
.contact_icon svg{
    width:25px !important;
    fill: #fff !important;
}
@keyframes pulsing {
  to {
    box-shadow: 0 0 0 30px rgba(232, 76, 61, 0);
  }
}/* End custom CSS */