.elementor-157 .elementor-element.elementor-element-03bdff8{--display:flex;--min-height:90vh;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--overlay-opacity:0.1;--padding-top:100px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-157 .elementor-element.elementor-element-03bdff8::before, .elementor-157 .elementor-element.elementor-element-03bdff8 > .elementor-background-video-container::before, .elementor-157 .elementor-element.elementor-element-03bdff8 > .e-con-inner > .elementor-background-video-container::before, .elementor-157 .elementor-element.elementor-element-03bdff8 > .elementor-background-slideshow::before, .elementor-157 .elementor-element.elementor-element-03bdff8 > .e-con-inner > .elementor-background-slideshow::before, .elementor-157 .elementor-element.elementor-element-03bdff8 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#DBAC98;--background-overlay:'';}.elementor-157 .elementor-element.elementor-element-03bdff8:not(.elementor-motion-effects-element-type-background), .elementor-157 .elementor-element.elementor-element-03bdff8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background:url("https://metapsicologica.pt/wp-content/uploads/2026/04/anexo2.webp") 50% 50%;background-size:cover;}.elementor-157 .elementor-element.elementor-element-03bdff8 > .elementor-shape-bottom .elementor-shape-fill, .elementor-157 .elementor-element.elementor-element-03bdff8 > .e-con-inner > .elementor-shape-bottom .elementor-shape-fill{fill:#D1A08C;}.elementor-157 .elementor-element.elementor-element-03bdff8 > .elementor-shape-bottom svg, .elementor-157 .elementor-element.elementor-element-03bdff8 > .e-con-inner > .elementor-shape-bottom svg{width:calc(200% + 1.3px);height:66px;}.elementor-157 .elementor-element.elementor-element-03bdff8.e-con{--align-self:center;}.elementor-157 .elementor-element.elementor-element-fd5b739{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-157 .elementor-element.elementor-element-fd5b739 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:50px;font-weight:600;color:#FFFFFF;}.elementor-157 .elementor-element.elementor-element-e35f4c7{width:var( --container-widget-width, 105.009% );max-width:105.009%;--container-widget-width:105.009%;--container-widget-flex-grow:0;text-align:center;font-family:"Questrial", Sans-serif;font-size:22px;font-weight:500;line-height:29px;color:#FFFFFF;}.elementor-157 .elementor-element.elementor-element-e35f4c7.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-157 .elementor-element.elementor-element-9abcdd9 .elementor-button{background-color:#FFFFFF;font-size:20px;fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-radius:20px 20px 20px 20px;}.elementor-157 .elementor-element.elementor-element-5e4b087{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-157 .elementor-element.elementor-element-5e4b087:not(.elementor-motion-effects-element-type-background), .elementor-157 .elementor-element.elementor-element-5e4b087 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#D1A08C;}.elementor-157 .elementor-element.elementor-element-5e4b087.e-con{--align-self:center;}.elementor-157 .elementor-element.elementor-element-8a3871e{--display:flex;}.elementor-157 .elementor-element.elementor-element-8bead6e .elementor-repeater-item-b9dfbbe .swiper-slide-bg{background-color:var( --e-global-color-text );background-image:url(https://metapsicologica.pt/wp-content/uploads/2026/05/sobre_slide-scaled.jpg);background-size:cover;}.elementor-157 .elementor-element.elementor-element-8bead6e .elementor-repeater-item-3ceb92e .swiper-slide-bg{background-color:var( --e-global-color-text );background-image:url(https://metapsicologica.pt/wp-content/uploads/2026/05/sobre_slide1-scaled.jpg);background-size:cover;}.elementor-157 .elementor-element.elementor-element-8bead6e .elementor-repeater-item-510bb6c .swiper-slide-bg{background-color:var( --e-global-color-text );background-image:url(https://metapsicologica.pt/wp-content/uploads/2026/05/MOOV8634-scaled.jpg);background-size:cover;}.elementor-157 .elementor-element.elementor-element-8bead6e .elementor-repeater-item-ee6ef39 .swiper-slide-bg{background-color:var( --e-global-color-text );background-image:url(https://metapsicologica.pt/wp-content/uploads/2026/05/sobre_slide3-Editar-scaled.jpg);background-size:cover;}.elementor-157 .elementor-element.elementor-element-8bead6e .swiper-slide{transition-duration:calc(1800ms*1.2);height:400px;}.elementor-157 .elementor-element.elementor-element-8bead6e{border-radius:30px 30px 30px 30px;}.elementor-157 .elementor-element.elementor-element-8bead6e .swiper-slide-contents{max-width:60%;}.elementor-157 .elementor-element.elementor-element-8bead6e .swiper-slide-inner{text-align:center;}.elementor-157 .elementor-element.elementor-element-037376d{--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;}.elementor-157 .elementor-element.elementor-element-7e49997{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-157 .elementor-element.elementor-element-7e49997 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:50px;font-weight:600;color:#FFFFFF;}.elementor-157 .elementor-element.elementor-element-8ae55fe{width:var( --container-widget-width, 105.009% );max-width:105.009%;--container-widget-width:105.009%;--container-widget-flex-grow:0;text-align:justify;font-family:"Questrial", Sans-serif;font-size:22px;font-weight:500;line-height:29px;color:#FFFFFF;}.elementor-157 .elementor-element.elementor-element-8ae55fe.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-157 .elementor-element.elementor-element-c05bfc8{--display:flex;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:100px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-157 .elementor-element.elementor-element-c05bfc8:not(.elementor-motion-effects-element-type-background), .elementor-157 .elementor-element.elementor-element-c05bfc8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8EFEB;}.elementor-157 .elementor-element.elementor-element-c05bfc8 > .elementor-shape-top .elementor-shape-fill, .elementor-157 .elementor-element.elementor-element-c05bfc8 > .e-con-inner > .elementor-shape-top .elementor-shape-fill{fill:#D1A08C;}.elementor-157 .elementor-element.elementor-element-c05bfc8 > .elementor-shape-top svg, .elementor-157 .elementor-element.elementor-element-c05bfc8 > .e-con-inner > .elementor-shape-top svg{width:calc(100% + 1.3px);height:59px;transform:translateX(-50%) rotateY(180deg);}.elementor-157 .elementor-element.elementor-element-5fe775a{text-align:center;}.elementor-157 .elementor-element.elementor-element-5fe775a .elementor-heading-title{font-family:"Cormorant Garamond", Sans-serif;font-weight:600;color:#5B4A42;}.elementor-157 .elementor-element.elementor-element-552ae59{text-align:center;font-family:"Inter", Sans-serif;font-size:17px;font-weight:400;color:#7A675F;}.elementor-157 .elementor-element.elementor-element-1c6ee85{--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;}.elementor-157 .elementor-element.elementor-element-2cf99ba{--display:flex;}.elementor-157 .elementor-element.elementor-element-2aff043 .elementor-icon-box-wrapper{gap:15px;}.elementor-157 .elementor-element.elementor-element-f6817cd{--display:flex;}.elementor-157 .elementor-element.elementor-element-63f2333 .elementor-icon-box-wrapper{gap:15px;}.elementor-157 .elementor-element.elementor-element-ba0c0c5{--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;}.elementor-157 .elementor-element.elementor-element-399ce73{--display:flex;}.elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-icon-box-wrapper{gap:15px;}.elementor-157 .elementor-element.elementor-element-c61b900{--display:flex;}.elementor-157 .elementor-element.elementor-element-5e5948e .elementor-icon-box-wrapper{gap:15px;}.elementor-157 .elementor-element.elementor-element-fad3518{--display:flex;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:100px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-157 .elementor-element.elementor-element-fad3518:not(.elementor-motion-effects-element-type-background), .elementor-157 .elementor-element.elementor-element-fad3518 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#D1A08C;}.elementor-157 .elementor-element.elementor-element-fad3518 > .elementor-shape-top .elementor-shape-fill, .elementor-157 .elementor-element.elementor-element-fad3518 > .e-con-inner > .elementor-shape-top .elementor-shape-fill{fill:#F8EFEB;}.elementor-157 .elementor-element.elementor-element-fad3518 > .elementor-shape-top svg, .elementor-157 .elementor-element.elementor-element-fad3518 > .e-con-inner > .elementor-shape-top svg{width:calc(128% + 1.3px);height:66px;transform:translateX(-50%) rotateY(180deg);}.elementor-157 .elementor-element.elementor-element-fad3518 > .elementor-shape-bottom .elementor-shape-fill, .elementor-157 .elementor-element.elementor-element-fad3518 > .e-con-inner > .elementor-shape-bottom .elementor-shape-fill{fill:#D1A08C;}.elementor-157 .elementor-element.elementor-element-fad3518 > .elementor-shape-bottom svg, .elementor-157 .elementor-element.elementor-element-fad3518 > .e-con-inner > .elementor-shape-bottom svg{width:calc(151% + 1.3px);height:65px;}.elementor-157 .elementor-element.elementor-element-6a8d033 .elementor-heading-title{font-family:"Inter", Sans-serif;}.elementor-157 .elementor-element.elementor-element-49270f5{text-align:center;}.elementor-157 .elementor-element.elementor-element-49270f5 .elementor-heading-title{font-family:"Cormorant Garamond", Sans-serif;font-weight:600;color:#F9F9F9;}.elementor-157 .elementor-element.elementor-element-3230e52{text-align:center;font-family:"Inter", Sans-serif;font-size:17px;font-weight:400;color:#FFFFFF;}.elementor-157 .elementor-element.elementor-element-84ed000{--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;}.elementor-157 .elementor-element.elementor-element-20b5125{--display:flex;}.elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon-box-wrapper{gap:15px;}.elementor-157 .elementor-element.elementor-element-3be28e0{--display:flex;}.elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon-box-wrapper{gap:15px;}.elementor-157 .elementor-element.elementor-element-ec4b7c2{--display:flex;}.elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon-box-wrapper{gap:15px;}.elementor-157 .elementor-element.elementor-element-dccde19{--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;}.elementor-157 .elementor-element.elementor-element-3053ad3{--display:flex;}.elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon-box-wrapper{gap:15px;}.elementor-157 .elementor-element.elementor-element-342719a{--display:flex;}.elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon-box-wrapper{gap:15px;}.elementor-157 .elementor-element.elementor-element-0dd9616{--display:flex;}.elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon-box-wrapper{gap:15px;}.elementor-157 .elementor-element.elementor-element-26e72ee{--display:flex;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:100px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-157 .elementor-element.elementor-element-26e72ee:not(.elementor-motion-effects-element-type-background), .elementor-157 .elementor-element.elementor-element-26e72ee > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8EFEB;}.elementor-157 .elementor-element.elementor-element-26e72ee > .elementor-shape-top .elementor-shape-fill, .elementor-157 .elementor-element.elementor-element-26e72ee > .e-con-inner > .elementor-shape-top .elementor-shape-fill{fill:#D1A08C;}.elementor-157 .elementor-element.elementor-element-26e72ee > .elementor-shape-top svg, .elementor-157 .elementor-element.elementor-element-26e72ee > .e-con-inner > .elementor-shape-top svg{width:calc(100% + 1.3px);height:59px;transform:translateX(-50%) rotateY(180deg);}.elementor-157 .elementor-element.elementor-element-06c9b61 .elementor-heading-title{font-size:19px;}.elementor-157 .elementor-element.elementor-element-166bee6{text-align:center;}.elementor-157 .elementor-element.elementor-element-166bee6 .elementor-heading-title{font-family:"Cormorant Garamond", Sans-serif;font-weight:600;color:#5B4A42;}.elementor-157 .elementor-element.elementor-element-66534c9{text-align:center;font-family:"Inter", Sans-serif;font-size:17px;font-weight:400;color:#7A675F;}.elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item:hover .elementor-gallery-item__overlay, .elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item:focus .elementor-gallery-item__overlay{background-color:rgba(0,0,0,0.5);}.elementor-157 .elementor-element.elementor-element-61647a1{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--image-transition-duration:800ms;--overlay-transition-duration:800ms;--content-text-align:center;--content-padding:20px;--content-transition-duration:800ms;--content-transition-delay:800ms;}.elementor-157 .elementor-element.elementor-element-3f0b3ed{--display:flex;--min-height:80vh;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--overlay-opacity:0.4;}.elementor-157 .elementor-element.elementor-element-3f0b3ed:not(.elementor-motion-effects-element-type-background), .elementor-157 .elementor-element.elementor-element-3f0b3ed > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8EFEB;background-image:url("https://metapsicologica.pt/wp-content/uploads/2026/05/sobre_footer-scaled.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-157 .elementor-element.elementor-element-3f0b3ed::before, .elementor-157 .elementor-element.elementor-element-3f0b3ed > .elementor-background-video-container::before, .elementor-157 .elementor-element.elementor-element-3f0b3ed > .e-con-inner > .elementor-background-video-container::before, .elementor-157 .elementor-element.elementor-element-3f0b3ed > .elementor-background-slideshow::before, .elementor-157 .elementor-element.elementor-element-3f0b3ed > .e-con-inner > .elementor-background-slideshow::before, .elementor-157 .elementor-element.elementor-element-3f0b3ed > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#EED2C6;--background-overlay:'';}.elementor-157 .elementor-element.elementor-element-3f0b3ed > .elementor-shape-top .elementor-shape-fill, .elementor-157 .elementor-element.elementor-element-3f0b3ed > .e-con-inner > .elementor-shape-top .elementor-shape-fill{fill:#F8EFEB;}.elementor-157 .elementor-element.elementor-element-3f0b3ed > .elementor-shape-top svg, .elementor-157 .elementor-element.elementor-element-3f0b3ed > .e-con-inner > .elementor-shape-top svg{width:calc(154% + 1.3px);height:60px;}.elementor-157 .elementor-element.elementor-element-3f0b3ed > .elementor-shape-bottom .elementor-shape-fill, .elementor-157 .elementor-element.elementor-element-3f0b3ed > .e-con-inner > .elementor-shape-bottom .elementor-shape-fill{fill:#EFE1D6;}.elementor-157 .elementor-element.elementor-element-3f0b3ed > .elementor-shape-bottom svg, .elementor-157 .elementor-element.elementor-element-3f0b3ed > .e-con-inner > .elementor-shape-bottom svg{width:calc(135% + 1.3px);height:65px;}.elementor-157 .elementor-element.elementor-element-3f0b3ed.e-con{--align-self:center;}.elementor-157 .elementor-element.elementor-element-f977391{text-align:center;}.elementor-157 .elementor-element.elementor-element-f977391 .elementor-heading-title{font-family:"Cormorant Garamond", Sans-serif;font-weight:600;color:#5B4A42;}.elementor-157 .elementor-element.elementor-element-1b52aa7{text-align:center;}.elementor-157 .elementor-element.elementor-element-1b52aa7 .elementor-heading-title{font-family:"Cormorant Garamond", Sans-serif;font-weight:600;color:#5B4A42;}.elementor-157 .elementor-element.elementor-element-e92feed{margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:3px 0px 0px 0px;}.elementor-157 .elementor-element.elementor-element-e92feed .elementor-button-content-wrapper{flex-direction:row;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-157 .elementor-element.elementor-element-8a3871e{--width:66%;}.elementor-157 .elementor-element.elementor-element-037376d{--width:60%;}}@media(max-width:1024px){.elementor-157 .elementor-element.elementor-element-fd5b739{text-align:center;}.elementor-157 .elementor-element.elementor-element-7e49997{text-align:center;}}@media(max-width:767px){.elementor-157 .elementor-element.elementor-element-e35f4c7{text-align:center;}.elementor-157 .elementor-element.elementor-element-8bead6e .swiper-slide{height:265px;}.elementor-157 .elementor-element.elementor-element-8ae55fe{text-align:center;}.elementor-157 .elementor-element.elementor-element-f977391 .elementor-heading-title{font-size:30px;}.elementor-157 .elementor-element.elementor-element-1b52aa7 .elementor-heading-title{font-size:30px;}}/* Start custom CSS for heading, class: .elementor-element-fd5b739 */.elementor-157 .elementor-element.elementor-element-fd5b739 {
    width: fit-content;
    max-width: min(92vw, 760px);
    margin: 0 auto 18px;
    padding: 16px 34px;

    position: relative;
    overflow: hidden;
    border-radius: 999px;

    background:
        linear-gradient(135deg, rgba(255,255,255,0.24), rgba(255,255,255,0.08)),
        rgba(91, 74, 66, 0.22);

    border: 1px solid rgba(255,255,255,0.34);

    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);

    box-shadow:
        0 20px 55px rgba(44,34,31,0.24),
        inset 0 1px 0 rgba(255,255,255,0.34),
        inset 0 -1px 0 rgba(255,255,255,0.08);
}

.elementor-157 .elementor-element.elementor-element-fd5b739::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;

    background:
        radial-gradient(circle at 20% 10%, rgba(255,255,255,0.42), transparent 38%),
        linear-gradient(120deg, transparent 0%, rgba(255,255,255,0.20) 48%, transparent 70%);

    opacity: 0.75;
    pointer-events: none;
}

.elementor-157 .elementor-element.elementor-element-fd5b739 .elementor-heading-title {
    position: relative;
    z-index: 2;

    color: #ffffff !important;
    font-weight: 800;
    letter-spacing: -0.045em;
    line-height: 1.05;

    text-shadow:
        0 3px 0 rgba(90,74,66,0.16),
        0 12px 30px rgba(44,34,31,0.42),
        0 0 34px rgba(255,255,255,0.22);
}

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-fd5b739 {
        padding: 13px 24px;
        margin-bottom: 14px;
    }

    .elementor-157 .elementor-element.elementor-element-fd5b739 .elementor-heading-title {
        font-size: 34px !important;
    }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-e35f4c7 */.elementor-157 .elementor-element.elementor-element-e35f4c7 {
    width: fit-content;
    max-width: min(92vw, 980px);
    margin: 0 auto 24px;
    padding: 13px 28px;

    position: relative;
    overflow: hidden;
    border-radius: 999px;

    background:
        linear-gradient(135deg, rgba(255,255,255,0.22), rgba(255,255,255,0.07)),
        rgba(91, 74, 66, 0.18);

    border: 1px solid rgba(255,255,255,0.30);

    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);

    box-shadow:
        0 16px 42px rgba(44,34,31,0.20),
        inset 0 1px 0 rgba(255,255,255,0.32);
}

.elementor-157 .elementor-element.elementor-element-e35f4c7::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;

    background:
        radial-gradient(circle at 12% 20%, rgba(255,255,255,0.36), transparent 42%),
        linear-gradient(120deg, transparent, rgba(255,255,255,0.13), transparent);

    opacity: 0.65;
    pointer-events: none;
}

.elementor-157 .elementor-element.elementor-element-e35f4c7 .elementor-widget-container {
    position: relative;
    z-index: 2;
}

.elementor-157 .elementor-element.elementor-element-e35f4c7 p,
.elementor-157 .elementor-element.elementor-element-e35f4c7 span {
    color: #ffffff !important;
    font-size: clamp(16px, 1.45vw, 21px);
    line-height: 1.45;
    font-weight: 400;
    margin: 0;

    text-shadow:
        0 2px 14px rgba(44,34,31,0.48),
        0 0 20px rgba(255,255,255,0.16);
}

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-e35f4c7 {
        width: auto;
        padding: 12px 18px;
        border-radius: 22px;
        margin-bottom: 20px;
    }

    .elementor-157 .elementor-element.elementor-element-e35f4c7 p,
    .elementor-157 .elementor-element.elementor-element-e35f4c7 span {
        font-size: 15.5px;
        line-height: 1.55;
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9abcdd9 */.elementor-157 .elementor-element.elementor-element-9abcdd9 {
    width: fit-content;
    margin: 0 auto;
    position: relative;
}

.elementor-157 .elementor-element.elementor-element-9abcdd9 .elementor-button {
    position: relative;
    overflow: hidden;

    padding: 13px 32px !important;
    border-radius: 999px !important;

    background:
        linear-gradient(135deg, rgba(255,255,255,0.92), rgba(243,227,217,0.78)) !important;

    border: 1px solid rgba(255,255,255,0.72) !important;

    color: #C47F65 !important;
    font-weight: 500 !important;
    letter-spacing: -0.025em;

    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);

    box-shadow:
        0 18px 42px rgba(44,34,31,0.20),
        0 0 0 1px rgba(255,255,255,0.18),
        inset 0 1px 0 rgba(255,255,255,0.9),
        inset 0 -1px 0 rgba(196,127,101,0.10);

    transition:
        transform 0.32s ease,
        box-shadow 0.32s ease,
        background 0.32s ease,
        color 0.32s ease;
}

.elementor-157 .elementor-element.elementor-element-9abcdd9 .elementor-button::before {
    content: "";
    position: absolute;
    inset: 0;

    background: linear-gradient(
        120deg,
        transparent 0%,
        rgba(255,255,255,0.75) 45%,
        transparent 70%
    );

    transform: translateX(-130%);
    transition: transform 0.75s ease;
    pointer-events: none;
}

.elementor-157 .elementor-element.elementor-element-9abcdd9 .elementor-button::after {
    content: "";
    position: absolute;
    inset: 3px;
    border-radius: inherit;

    border: 1px solid rgba(209,160,140,0.20);
    pointer-events: none;
}

.elementor-157 .elementor-element.elementor-element-9abcdd9 .elementor-button-text {
    position: relative;
    z-index: 2;
}

.elementor-157 .elementor-element.elementor-element-9abcdd9 .elementor-button:hover {
    transform: translateY(-4px) scale(1.025);

    background:
        linear-gradient(135deg, #ffffff, #F3E3D9) !important;

    color: #5B4A42 !important;

    box-shadow:
        0 24px 56px rgba(44,34,31,0.28),
        0 0 34px rgba(209,160,140,0.28),
        inset 0 1px 0 rgba(255,255,255,1);
}

.elementor-157 .elementor-element.elementor-element-9abcdd9 .elementor-button:hover::before {
    transform: translateX(130%);
}

.elementor-157 .elementor-element.elementor-element-9abcdd9 .elementor-button:active {
    transform: translateY(-1px) scale(1);
}

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-9abcdd9 .elementor-button {
        padding: 12px 24px !important;
    }
}/* End custom CSS */
/* Start custom CSS for slides, class: .elementor-element-8bead6e */.elementor-157 .elementor-element.elementor-element-8bead6e {
    position: relative;
    padding: 30px;
    overflow: visible;
    z-index: 2;
}

/* círculos */
.elementor-157 .elementor-element.elementor-element-8bead6e::before {
    content: "";
    position: absolute;

    width: 860px;
    height: 520px;

    top: 50%;
    left: 50%;

    transform: translate(-50%, -50%);
    border-radius: 50%;

    z-index: 0;
    opacity: 0.62;
    pointer-events: none;

    background: repeating-radial-gradient(
        circle,
        rgba(140, 100, 85, 0.55) 0px,
        rgba(140, 100, 85, 0.55) 4px,
        transparent 4px,
        transparent 26px
    );

    mask-image: radial-gradient(circle, #000 42%, transparent 82%);
    -webkit-mask-image: radial-gradient(circle, #000 42%, transparent 82%);

    filter: contrast(1.2) saturate(1.1);

    animation: metaRotate 24s linear infinite;

    transition:
        width 1.2s cubic-bezier(0.22, 1, 0.36, 1),
        height 1.2s cubic-bezier(0.22, 1, 0.36, 1),
        opacity 0.6s ease,
        filter 0.6s ease;
}

/* hover círculos */
.elementor-157 .elementor-element.elementor-element-8bead6e:hover::before {
    width: 1060px;
    height: 700px;
    opacity: 0.78;
    filter: contrast(1.35) saturate(1.2);
}

/* wrapper do widget de slides */
.elementor-157 .elementor-element.elementor-element-8bead6e .elementor-widget-container {
    position: relative;
    z-index: 2;
}

.elementor-157 .elementor-element.elementor-element-8bead6e .elementor-swiper,
.elementor-157 .elementor-element.elementor-element-8bead6e .swiper {
    overflow: hidden;
    border-radius: 38px;

    box-shadow:
        0 28px 70px rgba(91, 74, 66, 0.24),
        0 12px 28px rgba(44, 34, 31, 0.14);
}

/* slides */
.elementor-157 .elementor-element.elementor-element-8bead6e .swiper-slide {
    overflow: hidden;
    border-radius: 38px;
}

/* fundo/imagem do slide */
.elementor-157 .elementor-element.elementor-element-8bead6e .swiper-slide-bg {
    border-radius: 38px;

    transform: scale(1);
    filter: brightness(1.01) contrast(1.02);

    transition:
        transform 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        filter 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

/* hover imagem */
.elementor-157 .elementor-element.elementor-element-8bead6e:hover .swiper-slide-bg {
    transform: scale(1.04);
    filter: brightness(1.06) contrast(1.05);
}

/* conteúdo do slide acima da imagem */
.elementor-157 .elementor-element.elementor-element-8bead6e .swiper-slide-contents,
.elementor-157 .elementor-element.elementor-element-8bead6e .elementor-slide-content,
.elementor-157 .elementor-element.elementor-element-8bead6e .elementor-slide-heading,
.elementor-157 .elementor-element.elementor-element-8bead6e .elementor-slide-description,
.elementor-157 .elementor-element.elementor-element-8bead6e .elementor-slide-button {
    position: relative;
    z-index: 3;
}

/* setas e paginação */
.elementor-157 .elementor-element.elementor-element-8bead6e .elementor-swiper-button,
.elementor-157 .elementor-element.elementor-element-8bead6e .swiper-button-prev,
.elementor-157 .elementor-element.elementor-element-8bead6e .swiper-button-next,
.elementor-157 .elementor-element.elementor-element-8bead6e .swiper-pagination {
    z-index: 50 !important;
}

/* animação */
@keyframes metaRotate {
    0% {
        transform: translate(-50%, -50%) rotate(0deg) scale(1);
    }

    50% {
        transform: translate(-50%, -50%) rotate(180deg) scale(1.02);
    }

    100% {
        transform: translate(-50%, -50%) rotate(360deg) scale(1);
    }
}

/* tablet */
@media (max-width: 1024px) {
    .elementor-157 .elementor-element.elementor-element-8bead6e {
        padding: 22px;
    }

    .elementor-157 .elementor-element.elementor-element-8bead6e::before {
        width: 700px;
        height: 620px;
        opacity: 0.52;
    }

    .elementor-157 .elementor-element.elementor-element-8bead6e .elementor-swiper,
    .elementor-157 .elementor-element.elementor-element-8bead6e .swiper,
    .elementor-157 .elementor-element.elementor-element-8bead6e .swiper-slide,
    .elementor-157 .elementor-element.elementor-element-8bead6e .swiper-slide-bg {
        border-radius: 30px;
    }
}

/* mobile */
@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-8bead6e {
        position: relative;
        padding: 14px;
        overflow: hidden;
        isolation: isolate;
    }

    /* glow / fundo decorativo */
    .elementor-157 .elementor-element.elementor-element-8bead6e::before {
        content: "";
        position: absolute;
        inset: 4px;
        z-index: 0;
        pointer-events: none;

        border-radius: 34px 42px 36px 40px / 38px 32px 44px 36px;

        background:
            radial-gradient(circle at 18% 18%, rgba(196, 143, 123, 0.32), transparent 28%),
            radial-gradient(circle at 82% 80%, rgba(209, 160, 140, 0.26), transparent 32%),
            linear-gradient(135deg, rgba(255,255,255,0.45), rgba(243,227,217,0.28));

        filter: blur(1px);
        opacity: 0.95;

        animation: metaBubbleSoft 4.2s ease-in-out infinite;
    }

    /* mini detalhes à volta */
    .elementor-157 .elementor-element.elementor-element-8bead6e::after {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 1;
        pointer-events: none;

        background:
            radial-gradient(circle, rgba(196,143,123,0.42) 0 4px, transparent 5px) 14% 18% / 100% 100% no-repeat,
            radial-gradient(circle, rgba(255,255,255,0.72) 0 3px, transparent 4px) 84% 22% / 100% 100% no-repeat,
            radial-gradient(circle, rgba(209,160,140,0.34) 0 5px, transparent 6px) 88% 78% / 100% 100% no-repeat,
            radial-gradient(circle, rgba(255,255,255,0.62) 0 3px, transparent 4px) 12% 82% / 100% 100% no-repeat;

        opacity: 0.82;
        animation: metaBubbleDots 4.4s ease-in-out infinite;
    }

    /* conteúdo acima do fundo */
    .elementor-157 .elementor-element.elementor-element-8bead6e .elementor-widget-container,
    .elementor-157 .elementor-element.elementor-element-8bead6e .elementor-swiper,
    .elementor-157 .elementor-element.elementor-element-8bead6e .swiper {
        position: relative;
        z-index: 2;
    }

    /* bolha principal do slider */
    .elementor-157 .elementor-element.elementor-element-8bead6e .elementor-swiper,
    .elementor-157 .elementor-element.elementor-element-8bead6e .swiper,
    .elementor-157 .elementor-element.elementor-element-8bead6e .elementor-slides-wrapper {
        overflow: hidden !important;

        /* menos agressivo para não cortar tanto a imagem */
        border-radius: 26px 34px 28px 32px / 30px 26px 36px 30px;

        box-shadow:
            0 18px 42px rgba(91, 74, 66, 0.18),
            0 8px 18px rgba(44, 34, 31, 0.10),
            inset 0 0 0 1px rgba(255,255,255,0.35);

        animation: metaImageBubble 4.6s ease-in-out infinite;
    }

    .elementor-157 .elementor-element.elementor-element-8bead6e .swiper-slide {
        overflow: hidden;
        border-radius: inherit;
    }

    .elementor-157 .elementor-element.elementor-element-8bead6e .swiper-slide-bg {
        border-radius: inherit;

        background-position: center center !important;
        background-size: cover !important;

        /* mais clean no estado normal */
        transform: scale(1.01);
        filter: brightness(1.03) contrast(1.03) saturate(1.04);

        transition:
            transform 0.45s ease,
            filter 0.45s ease;
    }

    /* hover / toque — mantido */
    .elementor-157 .elementor-element.elementor-element-8bead6e:hover .swiper-slide-bg,
    .elementor-157 .elementor-element.elementor-element-8bead6e:active .swiper-slide-bg {
        transform: scale(1.06);
        filter: brightness(1.07) contrast(1.04) saturate(1.08);
    }

    .elementor-157 .elementor-element.elementor-element-8bead6e:hover .elementor-swiper,
    .elementor-157 .elementor-element.elementor-element-8bead6e:hover .swiper,
    .elementor-157 .elementor-element.elementor-element-8bead6e:hover .elementor-slides-wrapper,
    .elementor-157 .elementor-element.elementor-element-8bead6e:active .elementor-swiper,
    .elementor-157 .elementor-element.elementor-element-8bead6e:active .swiper,
    .elementor-157 .elementor-element.elementor-element-8bead6e:active .elementor-slides-wrapper {
        box-shadow:
            0 22px 52px rgba(91, 74, 66, 0.22),
            0 10px 22px rgba(44, 34, 31, 0.12),
            inset 0 0 0 1px rgba(255,255,255,0.48);
    }

    .elementor-157 .elementor-element.elementor-element-8bead6e .elementor-swiper-button,
    .elementor-157 .elementor-element.elementor-element-8bead6e .swiper-button-prev,
    .elementor-157 .elementor-element.elementor-element-8bead6e .swiper-button-next,
    .elementor-157 .elementor-element.elementor-element-8bead6e .swiper-pagination {
        z-index: 50 !important;
    }
}

/* animação do glow/fundo */
@keyframes metaBubbleSoft {
    0%, 100% {
        border-radius: 34px 42px 36px 40px / 38px 32px 44px 36px;
        transform: scale(1) translateY(0);
        opacity: 0.9;
    }

    50% {
        border-radius: 42px 34px 40px 32px / 30px 40px 34px 42px;
        transform: scale(1.02) translateY(-3px);
        opacity: 1;
    }
}

/* animação principal da bolha */
@keyframes metaImageBubble {
    0%, 100% {
        border-radius: 26px 34px 28px 32px / 30px 26px 36px 30px;
        transform: translateY(0);
    }

    25% {
        border-radius: 32px 28px 34px 26px / 28px 34px 30px 36px;
        transform: translateY(-2px);
    }

    50% {
        border-radius: 34px 30px 26px 36px / 34px 28px 38px 30px;
        transform: translateY(-4px);
    }

    75% {
        border-radius: 28px 36px 30px 34px / 30px 36px 28px 34px;
        transform: translateY(-2px);
    }
}

/* bolhinhas/detalhes */
@keyframes metaBubbleDots {
    0%, 100% {
        transform: translateY(0);
        opacity: 0.68;
    }

    50% {
        transform: translateY(-6px);
        opacity: 1;
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5fe775a */.elementor-157 .elementor-element.elementor-element-5fe775a .elementor-heading-title {
    font-size: clamp(42px, 5vw, 62px);
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-2aff043 */.elementor-157 .elementor-element.elementor-element-2aff043 {
    background: #FFFFFF;
    border: 1px solid rgba(196, 143, 123, 0.14);
    border-radius: 26px;
    padding: 34px 30px;
    box-shadow: 0 10px 30px rgba(91, 74, 66, 0.06);
    transition: all 0.35s ease;
    width: 100%;
    height: 100%;
    min-height: 320px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.elementor-157 .elementor-element.elementor-element-2aff043:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(91, 74, 66, 0.10);
    border-color: rgba(196, 143, 123, 0.28);
}

.elementor-157 .elementor-element.elementor-element-2aff043 .elementor-widget-container {
    width: 100%;
    height: 100%;
}

.elementor-157 .elementor-element.elementor-element-2aff043 .elementor-icon-box-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.elementor-157 .elementor-element.elementor-element-2aff043 .elementor-icon-box-icon {
    margin-bottom: 18px;
}

.elementor-157 .elementor-element.elementor-element-2aff043 .elementor-icon {
    background-color: #F6EAE4;
    color: #C48F7B;
    border-radius: 50%;
    width: 68px;
    height: 68px;
    min-width: 68px;
    min-height: 68px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.35s ease;
}

.elementor-157 .elementor-element.elementor-element-2aff043:hover .elementor-icon {
    background-color: #C48F7B;
    color: #ffffff;
    transform: scale(1.05);
}

.elementor-157 .elementor-element.elementor-element-2aff043 .elementor-icon i,
.elementor-157 .elementor-element.elementor-element-2aff043 .elementor-icon svg {
    font-size: 28px;
    width: 28px;
    height: 28px;
}

.elementor-157 .elementor-element.elementor-element-2aff043 .elementor-icon-box-content {
    width: 100%;
}

.elementor-157 .elementor-element.elementor-element-2aff043 .elementor-icon-box-title,
.elementor-157 .elementor-element.elementor-element-2aff043 .elementor-icon-box-title a {
    color: #5B4A42;
    font-family: "Cormorant Garamond", serif;
    font-size: 30px;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 12px;
}

.elementor-157 .elementor-element.elementor-element-2aff043 .elementor-icon-box-description {
    color: #7A675F;
    font-family: "Inter", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.7;
    max-width: 420px;
    margin: 0 auto;
}

@media (max-width: 1024px) {
    .elementor-157 .elementor-element.elementor-element-2aff043 {
        min-height: 300px;
        padding: 28px 24px;
    }

    .elementor-157 .elementor-element.elementor-element-2aff043 .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-2aff043 .elementor-icon-box-title a {
        font-size: 26px;
    }

    .elementor-157 .elementor-element.elementor-element-2aff043 .elementor-icon-box-description {
        font-size: 15px;
    }
}

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-2aff043 {
        min-height: 260px;
        padding: 24px 18px;
    }

    .elementor-157 .elementor-element.elementor-element-2aff043 .elementor-icon {
        width: 62px;
        height: 62px;
        min-width: 62px;
        min-height: 62px;
    }

    .elementor-157 .elementor-element.elementor-element-2aff043 .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-2aff043 .elementor-icon-box-title a {
        font-size: 24px;
    }

    .elementor-157 .elementor-element.elementor-element-2aff043 .elementor-icon-box-description {
        font-size: 15px;
        line-height: 1.65;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2cf99ba */.elementor-157 .elementor-element.elementor-element-2cf99ba {
    background: #FFFFFF;
    border: 1px solid rgba(196, 143, 123, 0.14);
    border-radius: 24px;
    padding: 30px 26px;
    box-shadow: 0 10px 30px rgba(91, 74, 66, 0.06);
    transition: all 0.35s ease;
    height: 100%;
}

/* hover do card */
.elementor-157 .elementor-element.elementor-element-2cf99ba:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(91, 74, 66, 0.10);
    border-color: rgba(196, 143, 123, 0.28);
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-63f2333 */.elementor-157 .elementor-element.elementor-element-63f2333 {
    background: #FFFFFF;
    border: 1px solid rgba(196, 143, 123, 0.14);
    border-radius: 26px;
    padding: 34px 30px;
    box-shadow: 0 10px 30px rgba(91, 74, 66, 0.06);
    transition: all 0.35s ease;
    width: 100%;
    height: 100%;
    min-height: 320px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.elementor-157 .elementor-element.elementor-element-63f2333:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(91, 74, 66, 0.10);
    border-color: rgba(196, 143, 123, 0.28);
}

.elementor-157 .elementor-element.elementor-element-63f2333 .elementor-widget-container {
    width: 100%;
    height: 100%;
}

.elementor-157 .elementor-element.elementor-element-63f2333 .elementor-icon-box-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.elementor-157 .elementor-element.elementor-element-63f2333 .elementor-icon-box-icon {
    margin-bottom: 18px;
}

.elementor-157 .elementor-element.elementor-element-63f2333 .elementor-icon {
    background-color: #F6EAE4;
    color: #C48F7B;
    border-radius: 50%;
    width: 68px;
    height: 68px;
    min-width: 68px;
    min-height: 68px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.35s ease;
}

.elementor-157 .elementor-element.elementor-element-63f2333:hover .elementor-icon {
    background-color: #C48F7B;
    color: #ffffff;
    transform: scale(1.05);
}

.elementor-157 .elementor-element.elementor-element-63f2333 .elementor-icon i,
.elementor-157 .elementor-element.elementor-element-63f2333 .elementor-icon svg {
    font-size: 28px;
    width: 28px;
    height: 28px;
}

.elementor-157 .elementor-element.elementor-element-63f2333 .elementor-icon-box-content {
    width: 100%;
}

.elementor-157 .elementor-element.elementor-element-63f2333 .elementor-icon-box-title,
.elementor-157 .elementor-element.elementor-element-63f2333 .elementor-icon-box-title a {
    color: #5B4A42;
    font-family: "Cormorant Garamond", serif;
    font-size: 30px;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 12px;
}

.elementor-157 .elementor-element.elementor-element-63f2333 .elementor-icon-box-description {
    color: #7A675F;
    font-family: "Inter", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.7;
    max-width: 420px;
    margin: 0 auto;
}

@media (max-width: 1024px) {
    .elementor-157 .elementor-element.elementor-element-63f2333 {
        min-height: 300px;
        padding: 28px 24px;
    }

    .elementor-157 .elementor-element.elementor-element-63f2333 .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-63f2333 .elementor-icon-box-title a {
        font-size: 26px;
    }

    .elementor-157 .elementor-element.elementor-element-63f2333 .elementor-icon-box-description {
        font-size: 15px;
    }
}

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-63f2333 {
        min-height: 260px;
        padding: 24px 18px;
    }

    .elementor-157 .elementor-element.elementor-element-63f2333 .elementor-icon {
        width: 62px;
        height: 62px;
        min-width: 62px;
        min-height: 62px;
    }

    .elementor-157 .elementor-element.elementor-element-63f2333 .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-63f2333 .elementor-icon-box-title a {
        font-size: 24px;
    }

    .elementor-157 .elementor-element.elementor-element-63f2333 .elementor-icon-box-description {
        font-size: 15px;
        line-height: 1.65;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f6817cd */.elementor-157 .elementor-element.elementor-element-f6817cd {
    background: #FFFFFF;
    border: 1px solid rgba(196, 143, 123, 0.14);
    border-radius: 24px;
    padding: 30px 26px;
    box-shadow: 0 10px 30px rgba(91, 74, 66, 0.06);
    transition: all 0.35s ease;
    height: 100%;
}

/* hover do card */
.elementor-157 .elementor-element.elementor-element-f6817cd:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(91, 74, 66, 0.10);
    border-color: rgba(196, 143, 123, 0.28);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1c6ee85 */.elementor-157 .elementor-element.elementor-element-1c6ee85 {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    gap: 28px;
    width: 100%;
    max-width: 1120px;
    margin: 0 auto 28px auto;
}

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-1c6ee85 {
        flex-direction: column;
        gap: 20px;
        margin-bottom: 20px;
    }
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-fd29e8e */.elementor-157 .elementor-element.elementor-element-fd29e8e {
    background: #FFFFFF;
    border: 1px solid rgba(196, 143, 123, 0.14);
    border-radius: 26px;
    padding: 34px 30px;
    box-shadow: 0 10px 30px rgba(91, 74, 66, 0.06);
    transition: all 0.35s ease;
    width: 100%;
    height: 100%;
    min-height: 320px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.elementor-157 .elementor-element.elementor-element-fd29e8e:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(91, 74, 66, 0.10);
    border-color: rgba(196, 143, 123, 0.28);
}

.elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-widget-container {
    width: 100%;
    height: 100%;
}

.elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-icon-box-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-icon-box-icon {
    margin-bottom: 18px;
}

.elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-icon {
    background-color: #F6EAE4;
    color: #C48F7B;
    border-radius: 50%;
    width: 68px;
    height: 68px;
    min-width: 68px;
    min-height: 68px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.35s ease;
}

.elementor-157 .elementor-element.elementor-element-fd29e8e:hover .elementor-icon {
    background-color: #C48F7B;
    color: #ffffff;
    transform: scale(1.05);
}

.elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-icon i,
.elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-icon svg {
    font-size: 28px;
    width: 28px;
    height: 28px;
}

.elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-icon-box-content {
    width: 100%;
}

.elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-icon-box-title,
.elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-icon-box-title a {
    color: #5B4A42;
    font-family: "Cormorant Garamond", serif;
    font-size: 30px;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 12px;
}

.elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-icon-box-description {
    color: #7A675F;
    font-family: "Inter", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.7;
    max-width: 420px;
    margin: 0 auto;
}

@media (max-width: 1024px) {
    .elementor-157 .elementor-element.elementor-element-fd29e8e {
        min-height: 300px;
        padding: 28px 24px;
    }

    .elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-icon-box-title a {
        font-size: 26px;
    }

    .elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-icon-box-description {
        font-size: 15px;
    }
}

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-fd29e8e {
        min-height: 260px;
        padding: 24px 18px;
    }

    .elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-icon {
        width: 62px;
        height: 62px;
        min-width: 62px;
        min-height: 62px;
    }

    .elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-icon-box-title a {
        font-size: 24px;
    }

    .elementor-157 .elementor-element.elementor-element-fd29e8e .elementor-icon-box-description {
        font-size: 15px;
        line-height: 1.65;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-399ce73 */.elementor-157 .elementor-element.elementor-element-399ce73 {
    background: #FFFFFF;
    border: 1px solid rgba(196, 143, 123, 0.14);
    border-radius: 24px;
    padding: 30px 26px;
    box-shadow: 0 10px 30px rgba(91, 74, 66, 0.06);
    transition: all 0.35s ease;
    height: 100%;
}

/* hover do card */
.elementor-157 .elementor-element.elementor-element-399ce73:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(91, 74, 66, 0.10);
    border-color: rgba(196, 143, 123, 0.28);
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-5e5948e */.elementor-157 .elementor-element.elementor-element-5e5948e {
    background: #FFFFFF;
    border: 1px solid rgba(196, 143, 123, 0.14);
    border-radius: 26px;
    padding: 34px 30px;
    box-shadow: 0 10px 30px rgba(91, 74, 66, 0.06);
    transition: all 0.35s ease;
    width: 100%;
    height: 100%;
    min-height: 320px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.elementor-157 .elementor-element.elementor-element-5e5948e:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(91, 74, 66, 0.10);
    border-color: rgba(196, 143, 123, 0.28);
}

.elementor-157 .elementor-element.elementor-element-5e5948e .elementor-widget-container {
    width: 100%;
    height: 100%;
}

.elementor-157 .elementor-element.elementor-element-5e5948e .elementor-icon-box-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.elementor-157 .elementor-element.elementor-element-5e5948e .elementor-icon-box-icon {
    margin-bottom: 18px;
}

.elementor-157 .elementor-element.elementor-element-5e5948e .elementor-icon {
    background-color: #F6EAE4;
    color: #C48F7B;
    border-radius: 50%;
    width: 68px;
    height: 68px;
    min-width: 68px;
    min-height: 68px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.35s ease;
}

.elementor-157 .elementor-element.elementor-element-5e5948e:hover .elementor-icon {
    background-color: #C48F7B;
    color: #ffffff;
    transform: scale(1.05);
}

.elementor-157 .elementor-element.elementor-element-5e5948e .elementor-icon i,
.elementor-157 .elementor-element.elementor-element-5e5948e .elementor-icon svg {
    font-size: 28px;
    width: 28px;
    height: 28px;
}

.elementor-157 .elementor-element.elementor-element-5e5948e .elementor-icon-box-content {
    width: 100%;
}

.elementor-157 .elementor-element.elementor-element-5e5948e .elementor-icon-box-title,
.elementor-157 .elementor-element.elementor-element-5e5948e .elementor-icon-box-title a {
    color: #5B4A42;
    font-family: "Cormorant Garamond", serif;
    font-size: 30px;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 12px;
}

.elementor-157 .elementor-element.elementor-element-5e5948e .elementor-icon-box-description {
    color: #7A675F;
    font-family: "Inter", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.7;
    max-width: 420px;
    margin: 0 auto;
}

@media (max-width: 1024px) {
    .elementor-157 .elementor-element.elementor-element-5e5948e {
        min-height: 300px;
        padding: 28px 24px;
    }

    .elementor-157 .elementor-element.elementor-element-5e5948e .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-5e5948e .elementor-icon-box-title a {
        font-size: 26px;
    }

    .elementor-157 .elementor-element.elementor-element-5e5948e .elementor-icon-box-description {
        font-size: 15px;
    }
}

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-5e5948e {
        min-height: 260px;
        padding: 24px 18px;
    }

    .elementor-157 .elementor-element.elementor-element-5e5948e .elementor-icon {
        width: 62px;
        height: 62px;
        min-width: 62px;
        min-height: 62px;
    }

    .elementor-157 .elementor-element.elementor-element-5e5948e .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-5e5948e .elementor-icon-box-title a {
        font-size: 24px;
    }

    .elementor-157 .elementor-element.elementor-element-5e5948e .elementor-icon-box-description {
        font-size: 15px;
        line-height: 1.65;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c61b900 */.elementor-157 .elementor-element.elementor-element-c61b900 {
    background: #FFFFFF;
    border: 1px solid rgba(196, 143, 123, 0.14);
    border-radius: 24px;
    padding: 30px 26px;
    box-shadow: 0 10px 30px rgba(91, 74, 66, 0.06);
    transition: all 0.35s ease;
    height: 100%;
}

/* hover do card */
.elementor-157 .elementor-element.elementor-element-c61b900:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(91, 74, 66, 0.10);
    border-color: rgba(196, 143, 123, 0.28);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ba0c0c5 */.elementor-157 .elementor-element.elementor-element-ba0c0c5 {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    gap: 28px;
    width: 100%;
    max-width: 1120px;
    margin: 0 auto 28px auto;
}

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-ba0c0c5 {
        flex-direction: column;
        gap: 20px;
        margin-bottom: 20px;
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-6a8d033 */.elementor-157 .elementor-element.elementor-element-6a8d033 .elementor-heading-title {
    font-size: clamp(10px, 5vw, 20px);
}


.elementor-157 .elementor-element.elementor-element-6a8d033{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 18px;
    padding: 8px 16px;
    border: 1px solid rgba(255, 255, 255, 0.34);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.72);
    color: #B07B68;
    font-family: "Inter", sans-serif;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.02;
    letter-spacing: -0.02em;
    text-transform: uppercase;
    width: fit-content;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-49270f5 */.elementor-157 .elementor-element.elementor-element-49270f5 .elementor-heading-title {
    font-size: clamp(42px, 5vw, 62px);
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-040f5fe */.elementor-157 .elementor-element.elementor-element-040f5fe {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    width: 100%;
    height: 390px;
    min-height: 390px;
    padding: 46px 40px;
    box-sizing: border-box;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    text-align: left;
    overflow: visible;
}

.elementor-157 .elementor-element.elementor-element-040f5fe:hover {
    transform: none !important;
    box-shadow: none !important;
}

.elementor-157 .elementor-element.elementor-element-040f5fe .elementor-widget-container {
    width: 100%;
    height: 100%;
}

.elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon-box-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
}

.elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon-box-icon {
    margin: 0 0 34px 0;
    flex-shrink: 0;
}

.elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon {
    position: relative;
    background: rgba(176, 123, 104, 0.10);
    color: #B07B68 !important;
    fill: #B07B68 !important;
    border: 1px solid rgba(176, 123, 104, 0.18);
    border-radius: 18px;
    width: 58px;
    height: 58px;
    min-width: 58px;
    min-height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.45),
        0 12px 30px rgba(176,123,104,0.12);
    transition:
        transform 0.45s cubic-bezier(.2,.8,.2,1),
        background 0.35s ease,
        color 0.35s ease,
        border-color 0.35s ease;
}

/* força ícones font */
.elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon i {
    color: #B07B68 !important;
}

/* força ícones svg */
.elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon svg,
.elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon svg * {
    fill: #B07B68 !important;
    color: #B07B68 !important;
}

.elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon i,
.elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon svg {
    font-size: 25px;
    width: 25px;
    height: 25px;
}

.elementor-157 .elementor-element.elementor-element-040f5fe:hover .elementor-icon {
    background: #B07B68;
    color: #FFF8F3 !important;
    fill: #FFF8F3 !important;
    border-color: rgba(176, 123, 104, 0.36);
    transform: translateY(-3px) scale(1.06);
}

.elementor-157 .elementor-element.elementor-element-040f5fe:hover .elementor-icon i {
    color: #FFF8F3 !important;
}

.elementor-157 .elementor-element.elementor-element-040f5fe:hover .elementor-icon svg,
.elementor-157 .elementor-element.elementor-element-040f5fe:hover .elementor-icon svg * {
    fill: #FFF8F3 !important;
    color: #FFF8F3 !important;
}

/* TEXTO */
.elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon-box-content {
    width: 100%;
}

.elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon-box-title,
.elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon-box-title a {
    color: #5B4A42;
    font-family: "Cormorant Garamond", serif;
    font-size: 36px;
    font-weight: 600;
    line-height: 1.05;
    margin: 0 0 16px;
}

.elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon-box-description {
    color: rgba(91, 74, 66, 0.76);
    font-family: "Inter", sans-serif;
    font-size: 16.2px;
    font-weight: 400;
    line-height: 1.75;
    max-width: 460px;
    margin: 0;
}

/* TABLET */
@media (max-width: 1024px) {
    .elementor-157 .elementor-element.elementor-element-040f5fe {
        height: auto;
        min-height: 360px;
        padding: 38px 32px;
        align-items: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon-box-wrapper {
        justify-content: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon-box-icon {
        margin-bottom: 30px;
    }

    .elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon {
        width: 56px;
        height: 56px;
        min-width: 56px;
        min-height: 56px;
        border-radius: 17px;
    }

    .elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon-box-title a {
        font-size: 32px;
        line-height: 1.08;
    }

    .elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon-box-description {
        font-size: 15.8px;
        line-height: 1.7;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-040f5fe {
        height: auto;
        min-height: 265px;
        padding: 28px 24px;
        align-items: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-040f5fe .elementor-widget-container {
        height: auto;
    }

    .elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon-box-wrapper {
        height: auto;
        justify-content: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon-box-icon {
        margin-bottom: 20px;
    }

    .elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon {
        width: 50px;
        height: 50px;
        min-width: 50px;
        min-height: 50px;
        border-radius: 15px;
    }

    .elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon i,
    .elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon svg {
        font-size: 22px;
        width: 22px;
        height: 22px;
    }

    .elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon-box-title a {
        font-size: 28px;
        line-height: 1.08;
        margin-bottom: 12px;
    }

    .elementor-157 .elementor-element.elementor-element-040f5fe .elementor-icon-box-description {
        font-size: 15px;
        line-height: 1.65;
        max-width: 100%;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-20b5125 */.elementor-157 .elementor-element.elementor-element-20b5125 {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    height: 100%;
    min-height: 310px;
    padding: 2px;
    border-radius: 34px;
    background:
        linear-gradient(135deg, rgba(255,248,243,0.72), rgba(255,248,243,0.18)),
        linear-gradient(145deg, rgba(255,248,243,0.36), rgba(91,74,66,0.10));
    box-shadow:
        0 26px 70px rgba(91, 74, 66, 0.18),
        inset 0 1px 0 rgba(255,255,255,0.45);
    transition:
        transform 0.45s cubic-bezier(.2,.8,.2,1),
        box-shadow 0.45s cubic-bezier(.2,.8,.2,1);
}

.elementor-157 .elementor-element.elementor-element-20b5125::before {
    content: "";
    position: absolute;
    inset: 1px;
    border-radius: 32px;
    background:
        radial-gradient(circle at 18% 18%, rgba(255,255,255,0.52), transparent 34%),
        radial-gradient(circle at 86% 78%, rgba(196,143,123,0.22), transparent 38%),
        linear-gradient(145deg, rgba(255,248,243,0.58), rgba(255,248,243,0.26));
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    z-index: -2;
}

.elementor-157 .elementor-element.elementor-element-20b5125::after {
    content: "";
    position: absolute;
    top: -90%;
    left: -45%;
    width: 42%;
    height: 280%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,0.42),
        transparent
    );
    transform: rotate(18deg) translateX(-130%);
    transition: transform 0.8s cubic-bezier(.2,.8,.2,1);
    z-index: -1;
    pointer-events: none;
}

.elementor-157 .elementor-element.elementor-element-20b5125:hover {
    transform: translateY(-8px);
    box-shadow:
        0 38px 95px rgba(91, 74, 66, 0.26),
        inset 0 1px 0 rgba(255,255,255,0.58);
}

.elementor-157 .elementor-element.elementor-element-20b5125:hover::after {
    transform: rotate(18deg) translateX(430%);
}

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-20b5125 {
        min-height: 270px;
        border-radius: 28px;
    }

    .elementor-157 .elementor-element.elementor-element-20b5125::before {
        border-radius: 26px;
    }
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-60ec4fa */.elementor-157 .elementor-element.elementor-element-60ec4fa {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    width: 100%;
    height: 390px;
    min-height: 390px;
    padding: 46px 40px;
    box-sizing: border-box;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    text-align: left;
    overflow: visible;
}

.elementor-157 .elementor-element.elementor-element-60ec4fa:hover {
    transform: none !important;
    box-shadow: none !important;
}

.elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-widget-container {
    width: 100%;
    height: 100%;
}

.elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon-box-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
}

.elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon-box-icon {
    margin: 0 0 34px 0;
    flex-shrink: 0;
}

.elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon {
    position: relative;
    background: rgba(176, 123, 104, 0.10);
    color: #B07B68 !important;
    fill: #B07B68 !important;
    border: 1px solid rgba(176, 123, 104, 0.18);
    border-radius: 18px;
    width: 58px;
    height: 58px;
    min-width: 58px;
    min-height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.45),
        0 12px 30px rgba(176,123,104,0.12);
    transition:
        transform 0.45s cubic-bezier(.2,.8,.2,1),
        background 0.35s ease,
        color 0.35s ease,
        border-color 0.35s ease;
}

/* força ícones font */
.elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon i {
    color: #B07B68 !important;
}

/* força ícones svg */
.elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon svg,
.elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon svg * {
    fill: #B07B68 !important;
    color: #B07B68 !important;
}

.elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon i,
.elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon svg {
    font-size: 25px;
    width: 25px;
    height: 25px;
}

.elementor-157 .elementor-element.elementor-element-60ec4fa:hover .elementor-icon {
    background: #B07B68;
    color: #FFF8F3 !important;
    fill: #FFF8F3 !important;
    border-color: rgba(176, 123, 104, 0.36);
    transform: translateY(-3px) scale(1.06);
}

.elementor-157 .elementor-element.elementor-element-60ec4fa:hover .elementor-icon i {
    color: #FFF8F3 !important;
}

.elementor-157 .elementor-element.elementor-element-60ec4fa:hover .elementor-icon svg,
.elementor-157 .elementor-element.elementor-element-60ec4fa:hover .elementor-icon svg * {
    fill: #FFF8F3 !important;
    color: #FFF8F3 !important;
}

/* TEXTO */
.elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon-box-content {
    width: 100%;
}

.elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon-box-title,
.elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon-box-title a {
    color: #5B4A42;
    font-family: "Cormorant Garamond", serif;
    font-size: 36px;
    font-weight: 600;
    line-height: 1.05;
    margin: 0 0 16px;
}

.elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon-box-description {
    color: rgba(91, 74, 66, 0.76);
    font-family: "Inter", sans-serif;
    font-size: 16.2px;
    font-weight: 400;
    line-height: 1.75;
    max-width: 460px;
    margin: 0;
}

/* TABLET */
@media (max-width: 1024px) {
    .elementor-157 .elementor-element.elementor-element-60ec4fa {
        height: auto;
        min-height: 360px;
        padding: 38px 32px;
        align-items: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon-box-wrapper {
        justify-content: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon-box-icon {
        margin-bottom: 30px;
    }

    .elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon {
        width: 56px;
        height: 56px;
        min-width: 56px;
        min-height: 56px;
        border-radius: 17px;
    }

    .elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon-box-title a {
        font-size: 32px;
        line-height: 1.08;
    }

    .elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon-box-description {
        font-size: 15.8px;
        line-height: 1.7;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-60ec4fa {
        height: auto;
        min-height: 265px;
        padding: 28px 24px;
        align-items: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-widget-container {
        height: auto;
    }

    .elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon-box-wrapper {
        height: auto;
        justify-content: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon-box-icon {
        margin-bottom: 20px;
    }

    .elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon {
        width: 50px;
        height: 50px;
        min-width: 50px;
        min-height: 50px;
        border-radius: 15px;
    }

    .elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon i,
    .elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon svg {
        font-size: 22px;
        width: 22px;
        height: 22px;
    }

    .elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon-box-title a {
        font-size: 28px;
        line-height: 1.08;
        margin-bottom: 12px;
    }

    .elementor-157 .elementor-element.elementor-element-60ec4fa .elementor-icon-box-description {
        font-size: 15px;
        line-height: 1.65;
        max-width: 100%;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3be28e0 */.elementor-157 .elementor-element.elementor-element-3be28e0 {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    height: 100%;
    min-height: 310px;
    padding: 2px;
    border-radius: 34px;
    background:
        linear-gradient(135deg, rgba(255,248,243,0.72), rgba(255,248,243,0.18)),
        linear-gradient(145deg, rgba(255,248,243,0.36), rgba(91,74,66,0.10));
    box-shadow:
        0 26px 70px rgba(91, 74, 66, 0.18),
        inset 0 1px 0 rgba(255,255,255,0.45);
    transition:
        transform 0.45s cubic-bezier(.2,.8,.2,1),
        box-shadow 0.45s cubic-bezier(.2,.8,.2,1);
}

.elementor-157 .elementor-element.elementor-element-3be28e0::before {
    content: "";
    position: absolute;
    inset: 1px;
    border-radius: 32px;
    background:
        radial-gradient(circle at 18% 18%, rgba(255,255,255,0.52), transparent 34%),
        radial-gradient(circle at 86% 78%, rgba(196,143,123,0.22), transparent 38%),
        linear-gradient(145deg, rgba(255,248,243,0.58), rgba(255,248,243,0.26));
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    z-index: -2;
}

.elementor-157 .elementor-element.elementor-element-3be28e0::after {
    content: "";
    position: absolute;
    top: -90%;
    left: -45%;
    width: 42%;
    height: 280%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,0.42),
        transparent
    );
    transform: rotate(18deg) translateX(-130%);
    transition: transform 0.8s cubic-bezier(.2,.8,.2,1);
    z-index: -1;
    pointer-events: none;
}

.elementor-157 .elementor-element.elementor-element-3be28e0:hover {
    transform: translateY(-8px);
    box-shadow:
        0 38px 95px rgba(91, 74, 66, 0.26),
        inset 0 1px 0 rgba(255,255,255,0.58);
}

.elementor-157 .elementor-element.elementor-element-3be28e0:hover::after {
    transform: rotate(18deg) translateX(430%);
}

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-3be28e0 {
        min-height: 270px;
        border-radius: 28px;
    }

    .elementor-157 .elementor-element.elementor-element-3be28e0::before {
        border-radius: 26px;
    }
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-29f53fb */.elementor-157 .elementor-element.elementor-element-29f53fb {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    width: 100%;
    height: 390px;
    min-height: 390px;
    padding: 46px 40px;
    box-sizing: border-box;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    text-align: left;
    overflow: visible;
}

.elementor-157 .elementor-element.elementor-element-29f53fb:hover {
    transform: none !important;
    box-shadow: none !important;
}

.elementor-157 .elementor-element.elementor-element-29f53fb .elementor-widget-container {
    width: 100%;
    height: 100%;
}

.elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon-box-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
}

.elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon-box-icon {
    margin: 0 0 34px 0;
    flex-shrink: 0;
}

.elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon {
    position: relative;
    background: rgba(176, 123, 104, 0.10);
    color: #B07B68 !important;
    fill: #B07B68 !important;
    border: 1px solid rgba(176, 123, 104, 0.18);
    border-radius: 18px;
    width: 58px;
    height: 58px;
    min-width: 58px;
    min-height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.45),
        0 12px 30px rgba(176,123,104,0.12);
    transition:
        transform 0.45s cubic-bezier(.2,.8,.2,1),
        background 0.35s ease,
        color 0.35s ease,
        border-color 0.35s ease;
}

/* força ícones font */
.elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon i {
    color: #B07B68 !important;
}

/* força ícones svg */
.elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon svg,
.elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon svg * {
    fill: #B07B68 !important;
    color: #B07B68 !important;
}

.elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon i,
.elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon svg {
    font-size: 25px;
    width: 25px;
    height: 25px;
}

.elementor-157 .elementor-element.elementor-element-29f53fb:hover .elementor-icon {
    background: #B07B68;
    color: #FFF8F3 !important;
    fill: #FFF8F3 !important;
    border-color: rgba(176, 123, 104, 0.36);
    transform: translateY(-3px) scale(1.06);
}

.elementor-157 .elementor-element.elementor-element-29f53fb:hover .elementor-icon i {
    color: #FFF8F3 !important;
}

.elementor-157 .elementor-element.elementor-element-29f53fb:hover .elementor-icon svg,
.elementor-157 .elementor-element.elementor-element-29f53fb:hover .elementor-icon svg * {
    fill: #FFF8F3 !important;
    color: #FFF8F3 !important;
}

/* TEXTO */
.elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon-box-content {
    width: 100%;
}

.elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon-box-title,
.elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon-box-title a {
    color: #5B4A42;
    font-family: "Cormorant Garamond", serif;
    font-size: 36px;
    font-weight: 600;
    line-height: 1.05;
    margin: 0 0 16px;
}

.elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon-box-description {
    color: rgba(91, 74, 66, 0.76);
    font-family: "Inter", sans-serif;
    font-size: 16.2px;
    font-weight: 400;
    line-height: 1.75;
    max-width: 460px;
    margin: 0;
}

/* TABLET */
@media (max-width: 1024px) {
    .elementor-157 .elementor-element.elementor-element-29f53fb {
        height: auto;
        min-height: 360px;
        padding: 38px 32px;
        align-items: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon-box-wrapper {
        justify-content: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon-box-icon {
        margin-bottom: 30px;
    }

    .elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon {
        width: 56px;
        height: 56px;
        min-width: 56px;
        min-height: 56px;
        border-radius: 17px;
    }

    .elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon-box-title a {
        font-size: 32px;
        line-height: 1.08;
    }

    .elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon-box-description {
        font-size: 15.8px;
        line-height: 1.7;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-29f53fb {
        height: auto;
        min-height: 265px;
        padding: 28px 24px;
        align-items: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-29f53fb .elementor-widget-container {
        height: auto;
    }

    .elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon-box-wrapper {
        height: auto;
        justify-content: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon-box-icon {
        margin-bottom: 20px;
    }

    .elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon {
        width: 50px;
        height: 50px;
        min-width: 50px;
        min-height: 50px;
        border-radius: 15px;
    }

    .elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon i,
    .elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon svg {
        font-size: 22px;
        width: 22px;
        height: 22px;
    }

    .elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon-box-title a {
        font-size: 28px;
        line-height: 1.08;
        margin-bottom: 12px;
    }

    .elementor-157 .elementor-element.elementor-element-29f53fb .elementor-icon-box-description {
        font-size: 15px;
        line-height: 1.65;
        max-width: 100%;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ec4b7c2 */.elementor-157 .elementor-element.elementor-element-ec4b7c2 {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    height: 100%;
    min-height: 310px;
    padding: 2px;
    border-radius: 34px;
    background:
        linear-gradient(135deg, rgba(255,248,243,0.72), rgba(255,248,243,0.18)),
        linear-gradient(145deg, rgba(255,248,243,0.36), rgba(91,74,66,0.10));
    box-shadow:
        0 26px 70px rgba(91, 74, 66, 0.18),
        inset 0 1px 0 rgba(255,255,255,0.45);
    transition:
        transform 0.45s cubic-bezier(.2,.8,.2,1),
        box-shadow 0.45s cubic-bezier(.2,.8,.2,1);
}

.elementor-157 .elementor-element.elementor-element-ec4b7c2::before {
    content: "";
    position: absolute;
    inset: 1px;
    border-radius: 32px;
    background:
        radial-gradient(circle at 18% 18%, rgba(255,255,255,0.52), transparent 34%),
        radial-gradient(circle at 86% 78%, rgba(196,143,123,0.22), transparent 38%),
        linear-gradient(145deg, rgba(255,248,243,0.58), rgba(255,248,243,0.26));
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    z-index: -2;
}

.elementor-157 .elementor-element.elementor-element-ec4b7c2::after {
    content: "";
    position: absolute;
    top: -90%;
    left: -45%;
    width: 42%;
    height: 280%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,0.42),
        transparent
    );
    transform: rotate(18deg) translateX(-130%);
    transition: transform 0.8s cubic-bezier(.2,.8,.2,1);
    z-index: -1;
    pointer-events: none;
}

.elementor-157 .elementor-element.elementor-element-ec4b7c2:hover {
    transform: translateY(-8px);
    box-shadow:
        0 38px 95px rgba(91, 74, 66, 0.26),
        inset 0 1px 0 rgba(255,255,255,0.58);
}

.elementor-157 .elementor-element.elementor-element-ec4b7c2:hover::after {
    transform: rotate(18deg) translateX(430%);
}

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-ec4b7c2 {
        min-height: 270px;
        border-radius: 28px;
    }

    .elementor-157 .elementor-element.elementor-element-ec4b7c2::before {
        border-radius: 26px;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-84ed000 */.elementor-157 .elementor-element.elementor-element-84ed000 {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    gap: 28px;
    width: 100%;
    max-width: 1120px;
    margin: 0 auto 28px auto;
}

.elementor-157 .elementor-element.elementor-element-84ed000 > .e-con,
.elementor-157 .elementor-element.elementor-element-84ed000 > .elementor-element {
    flex: 1;
}

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-84ed000 {
        flex-direction: column;
        gap: 20px;
        margin-bottom: 20px;
    }
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-8bfa8e0 */.elementor-157 .elementor-element.elementor-element-8bfa8e0 {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    width: 100%;
    height: 390px;
    min-height: 390px;
    padding: 46px 40px;
    box-sizing: border-box;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    text-align: left;
    overflow: visible;
}

.elementor-157 .elementor-element.elementor-element-8bfa8e0:hover {
    transform: none !important;
    box-shadow: none !important;
}

.elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-widget-container {
    width: 100%;
    height: 100%;
}

.elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon-box-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
}

.elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon-box-icon {
    margin: 0 0 34px 0;
    flex-shrink: 0;
}

.elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon {
    position: relative;
    background: rgba(176, 123, 104, 0.10);
    color: #B07B68 !important;
    fill: #B07B68 !important;
    border: 1px solid rgba(176, 123, 104, 0.18);
    border-radius: 18px;
    width: 58px;
    height: 58px;
    min-width: 58px;
    min-height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.45),
        0 12px 30px rgba(176,123,104,0.12);
    transition:
        transform 0.45s cubic-bezier(.2,.8,.2,1),
        background 0.35s ease,
        color 0.35s ease,
        border-color 0.35s ease;
}

/* força ícones font */
.elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon i {
    color: #B07B68 !important;
}

/* força ícones svg */
.elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon svg,
.elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon svg * {
    fill: #B07B68 !important;
    color: #B07B68 !important;
}

.elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon i,
.elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon svg {
    font-size: 25px;
    width: 25px;
    height: 25px;
}

.elementor-157 .elementor-element.elementor-element-8bfa8e0:hover .elementor-icon {
    background: #B07B68;
    color: #FFF8F3 !important;
    fill: #FFF8F3 !important;
    border-color: rgba(176, 123, 104, 0.36);
    transform: translateY(-3px) scale(1.06);
}

.elementor-157 .elementor-element.elementor-element-8bfa8e0:hover .elementor-icon i {
    color: #FFF8F3 !important;
}

.elementor-157 .elementor-element.elementor-element-8bfa8e0:hover .elementor-icon svg,
.elementor-157 .elementor-element.elementor-element-8bfa8e0:hover .elementor-icon svg * {
    fill: #FFF8F3 !important;
    color: #FFF8F3 !important;
}

/* TEXTO */
.elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon-box-content {
    width: 100%;
}

.elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon-box-title,
.elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon-box-title a {
    color: #5B4A42;
    font-family: "Cormorant Garamond", serif;
    font-size: 36px;
    font-weight: 600;
    line-height: 1.05;
    margin: 0 0 16px;
}

.elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon-box-description {
    color: rgba(91, 74, 66, 0.76);
    font-family: "Inter", sans-serif;
    font-size: 16.2px;
    font-weight: 400;
    line-height: 1.75;
    max-width: 460px;
    margin: 0;
}

/* TABLET */
@media (max-width: 1024px) {
    .elementor-157 .elementor-element.elementor-element-8bfa8e0 {
        height: auto;
        min-height: 360px;
        padding: 38px 32px;
        align-items: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon-box-wrapper {
        justify-content: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon-box-icon {
        margin-bottom: 30px;
    }

    .elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon {
        width: 56px;
        height: 56px;
        min-width: 56px;
        min-height: 56px;
        border-radius: 17px;
    }

    .elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon-box-title a {
        font-size: 32px;
        line-height: 1.08;
    }

    .elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon-box-description {
        font-size: 15.8px;
        line-height: 1.7;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-8bfa8e0 {
        height: auto;
        min-height: 265px;
        padding: 28px 24px;
        align-items: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-widget-container {
        height: auto;
    }

    .elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon-box-wrapper {
        height: auto;
        justify-content: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon-box-icon {
        margin-bottom: 20px;
    }

    .elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon {
        width: 50px;
        height: 50px;
        min-width: 50px;
        min-height: 50px;
        border-radius: 15px;
    }

    .elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon i,
    .elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon svg {
        font-size: 22px;
        width: 22px;
        height: 22px;
    }

    .elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon-box-title a {
        font-size: 28px;
        line-height: 1.08;
        margin-bottom: 12px;
    }

    .elementor-157 .elementor-element.elementor-element-8bfa8e0 .elementor-icon-box-description {
        font-size: 15px;
        line-height: 1.65;
        max-width: 100%;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3053ad3 */.elementor-157 .elementor-element.elementor-element-3053ad3 {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    height: 100%;
    min-height: 310px;
    padding: 2px;
    border-radius: 34px;
    background:
        linear-gradient(135deg, rgba(255,248,243,0.72), rgba(255,248,243,0.18)),
        linear-gradient(145deg, rgba(255,248,243,0.36), rgba(91,74,66,0.10));
    box-shadow:
        0 26px 70px rgba(91, 74, 66, 0.18),
        inset 0 1px 0 rgba(255,255,255,0.45);
    transition:
        transform 0.45s cubic-bezier(.2,.8,.2,1),
        box-shadow 0.45s cubic-bezier(.2,.8,.2,1);
}

.elementor-157 .elementor-element.elementor-element-3053ad3::before {
    content: "";
    position: absolute;
    inset: 1px;
    border-radius: 32px;
    background:
        radial-gradient(circle at 18% 18%, rgba(255,255,255,0.52), transparent 34%),
        radial-gradient(circle at 86% 78%, rgba(196,143,123,0.22), transparent 38%),
        linear-gradient(145deg, rgba(255,248,243,0.58), rgba(255,248,243,0.26));
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    z-index: -2;
}

.elementor-157 .elementor-element.elementor-element-3053ad3::after {
    content: "";
    position: absolute;
    top: -90%;
    left: -45%;
    width: 42%;
    height: 280%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,0.42),
        transparent
    );
    transform: rotate(18deg) translateX(-130%);
    transition: transform 0.8s cubic-bezier(.2,.8,.2,1);
    z-index: -1;
    pointer-events: none;
}

.elementor-157 .elementor-element.elementor-element-3053ad3:hover {
    transform: translateY(-8px);
    box-shadow:
        0 38px 95px rgba(91, 74, 66, 0.26),
        inset 0 1px 0 rgba(255,255,255,0.58);
}

.elementor-157 .elementor-element.elementor-element-3053ad3:hover::after {
    transform: rotate(18deg) translateX(430%);
}

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-3053ad3 {
        min-height: 270px;
        border-radius: 28px;
    }

    .elementor-157 .elementor-element.elementor-element-3053ad3::before {
        border-radius: 26px;
    }
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-0744015 */.elementor-157 .elementor-element.elementor-element-0744015 {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    width: 100%;
    height: 390px;
    min-height: 390px;
    padding: 46px 40px;
    box-sizing: border-box;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    text-align: left;
    overflow: visible;
}

.elementor-157 .elementor-element.elementor-element-0744015:hover {
    transform: none !important;
    box-shadow: none !important;
}

.elementor-157 .elementor-element.elementor-element-0744015 .elementor-widget-container {
    width: 100%;
    height: 100%;
}

.elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon-box-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
}

.elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon-box-icon {
    margin: 0 0 34px 0;
    flex-shrink: 0;
}

.elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon {
    position: relative;
    background: rgba(176, 123, 104, 0.10);
    color: #B07B68 !important;
    fill: #B07B68 !important;
    border: 1px solid rgba(176, 123, 104, 0.18);
    border-radius: 18px;
    width: 58px;
    height: 58px;
    min-width: 58px;
    min-height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.45),
        0 12px 30px rgba(176,123,104,0.12);
    transition:
        transform 0.45s cubic-bezier(.2,.8,.2,1),
        background 0.35s ease,
        color 0.35s ease,
        border-color 0.35s ease;
}

/* força ícones font */
.elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon i {
    color: #B07B68 !important;
}

/* força ícones svg */
.elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon svg,
.elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon svg * {
    fill: #B07B68 !important;
    color: #B07B68 !important;
}

.elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon i,
.elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon svg {
    font-size: 25px;
    width: 25px;
    height: 25px;
}

.elementor-157 .elementor-element.elementor-element-0744015:hover .elementor-icon {
    background: #B07B68;
    color: #FFF8F3 !important;
    fill: #FFF8F3 !important;
    border-color: rgba(176, 123, 104, 0.36);
    transform: translateY(-3px) scale(1.06);
}

.elementor-157 .elementor-element.elementor-element-0744015:hover .elementor-icon i {
    color: #FFF8F3 !important;
}

.elementor-157 .elementor-element.elementor-element-0744015:hover .elementor-icon svg,
.elementor-157 .elementor-element.elementor-element-0744015:hover .elementor-icon svg * {
    fill: #FFF8F3 !important;
    color: #FFF8F3 !important;
}

/* TEXTO */
.elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon-box-content {
    width: 100%;
}

.elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon-box-title,
.elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon-box-title a {
    color: #5B4A42;
    font-family: "Cormorant Garamond", serif;
    font-size: 36px;
    font-weight: 600;
    line-height: 1.05;
    margin: 0 0 16px;
}

.elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon-box-description {
    color: rgba(91, 74, 66, 0.76);
    font-family: "Inter", sans-serif;
    font-size: 16.2px;
    font-weight: 400;
    line-height: 1.75;
    max-width: 460px;
    margin: 0;
}

/* TABLET */
@media (max-width: 1024px) {
    .elementor-157 .elementor-element.elementor-element-0744015 {
        height: auto;
        min-height: 360px;
        padding: 38px 32px;
        align-items: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon-box-wrapper {
        justify-content: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon-box-icon {
        margin-bottom: 30px;
    }

    .elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon {
        width: 56px;
        height: 56px;
        min-width: 56px;
        min-height: 56px;
        border-radius: 17px;
    }

    .elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon-box-title a {
        font-size: 32px;
        line-height: 1.08;
    }

    .elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon-box-description {
        font-size: 15.8px;
        line-height: 1.7;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-0744015 {
        height: auto;
        min-height: 265px;
        padding: 28px 24px;
        align-items: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-0744015 .elementor-widget-container {
        height: auto;
    }

    .elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon-box-wrapper {
        height: auto;
        justify-content: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon-box-icon {
        margin-bottom: 20px;
    }

    .elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon {
        width: 50px;
        height: 50px;
        min-width: 50px;
        min-height: 50px;
        border-radius: 15px;
    }

    .elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon i,
    .elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon svg {
        font-size: 22px;
        width: 22px;
        height: 22px;
    }

    .elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon-box-title a {
        font-size: 28px;
        line-height: 1.08;
        margin-bottom: 12px;
    }

    .elementor-157 .elementor-element.elementor-element-0744015 .elementor-icon-box-description {
        font-size: 15px;
        line-height: 1.65;
        max-width: 100%;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-342719a */.elementor-157 .elementor-element.elementor-element-342719a {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    height: 100%;
    min-height: 310px;
    padding: 2px;
    border-radius: 34px;
    background:
        linear-gradient(135deg, rgba(255,248,243,0.72), rgba(255,248,243,0.18)),
        linear-gradient(145deg, rgba(255,248,243,0.36), rgba(91,74,66,0.10));
    box-shadow:
        0 26px 70px rgba(91, 74, 66, 0.18),
        inset 0 1px 0 rgba(255,255,255,0.45);
    transition:
        transform 0.45s cubic-bezier(.2,.8,.2,1),
        box-shadow 0.45s cubic-bezier(.2,.8,.2,1);
}

.elementor-157 .elementor-element.elementor-element-342719a::before {
    content: "";
    position: absolute;
    inset: 1px;
    border-radius: 32px;
    background:
        radial-gradient(circle at 18% 18%, rgba(255,255,255,0.52), transparent 34%),
        radial-gradient(circle at 86% 78%, rgba(196,143,123,0.22), transparent 38%),
        linear-gradient(145deg, rgba(255,248,243,0.58), rgba(255,248,243,0.26));
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    z-index: -2;
}

.elementor-157 .elementor-element.elementor-element-342719a::after {
    content: "";
    position: absolute;
    top: -90%;
    left: -45%;
    width: 42%;
    height: 280%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,0.42),
        transparent
    );
    transform: rotate(18deg) translateX(-130%);
    transition: transform 0.8s cubic-bezier(.2,.8,.2,1);
    z-index: -1;
    pointer-events: none;
}

.elementor-157 .elementor-element.elementor-element-342719a:hover {
    transform: translateY(-8px);
    box-shadow:
        0 38px 95px rgba(91, 74, 66, 0.26),
        inset 0 1px 0 rgba(255,255,255,0.58);
}

.elementor-157 .elementor-element.elementor-element-342719a:hover::after {
    transform: rotate(18deg) translateX(430%);
}

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-342719a {
        min-height: 270px;
        border-radius: 28px;
    }

    .elementor-157 .elementor-element.elementor-element-342719a::before {
        border-radius: 26px;
    }
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-9de431e */.elementor-157 .elementor-element.elementor-element-9de431e {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    width: 100%;
    height: 390px;
    min-height: 390px;
    padding: 46px 40px;
    box-sizing: border-box;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    text-align: left;
    overflow: visible;
}

.elementor-157 .elementor-element.elementor-element-9de431e:hover {
    transform: none !important;
    box-shadow: none !important;
}

.elementor-157 .elementor-element.elementor-element-9de431e .elementor-widget-container {
    width: 100%;
    height: 100%;
}

.elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon-box-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
}

.elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon-box-icon {
    margin: 0 0 34px 0;
    flex-shrink: 0;
}

.elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon {
    position: relative;
    background: rgba(176, 123, 104, 0.10);
    color: #B07B68 !important;
    fill: #B07B68 !important;
    border: 1px solid rgba(176, 123, 104, 0.18);
    border-radius: 18px;
    width: 58px;
    height: 58px;
    min-width: 58px;
    min-height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.45),
        0 12px 30px rgba(176,123,104,0.12);
    transition:
        transform 0.45s cubic-bezier(.2,.8,.2,1),
        background 0.35s ease,
        color 0.35s ease,
        border-color 0.35s ease;
}

/* força ícones font */
.elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon i {
    color: #B07B68 !important;
}

/* força ícones svg */
.elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon svg,
.elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon svg * {
    fill: #B07B68 !important;
    color: #B07B68 !important;
}

.elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon i,
.elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon svg {
    font-size: 25px;
    width: 25px;
    height: 25px;
}

.elementor-157 .elementor-element.elementor-element-9de431e:hover .elementor-icon {
    background: #B07B68;
    color: #FFF8F3 !important;
    fill: #FFF8F3 !important;
    border-color: rgba(176, 123, 104, 0.36);
    transform: translateY(-3px) scale(1.06);
}

.elementor-157 .elementor-element.elementor-element-9de431e:hover .elementor-icon i {
    color: #FFF8F3 !important;
}

.elementor-157 .elementor-element.elementor-element-9de431e:hover .elementor-icon svg,
.elementor-157 .elementor-element.elementor-element-9de431e:hover .elementor-icon svg * {
    fill: #FFF8F3 !important;
    color: #FFF8F3 !important;
}

/* TEXTO */
.elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon-box-content {
    width: 100%;
}

.elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon-box-title,
.elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon-box-title a {
    color: #5B4A42;
    font-family: "Cormorant Garamond", serif;
    font-size: 36px;
    font-weight: 600;
    line-height: 1.05;
    margin: 0 0 16px;
}

.elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon-box-description {
    color: rgba(91, 74, 66, 0.76);
    font-family: "Inter", sans-serif;
    font-size: 16.2px;
    font-weight: 400;
    line-height: 1.75;
    max-width: 460px;
    margin: 0;
}

/* TABLET */
@media (max-width: 1024px) {
    .elementor-157 .elementor-element.elementor-element-9de431e {
        height: auto;
        min-height: 360px;
        padding: 38px 32px;
        align-items: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon-box-wrapper {
        justify-content: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon-box-icon {
        margin-bottom: 30px;
    }

    .elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon {
        width: 56px;
        height: 56px;
        min-width: 56px;
        min-height: 56px;
        border-radius: 17px;
    }

    .elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon-box-title a {
        font-size: 32px;
        line-height: 1.08;
    }

    .elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon-box-description {
        font-size: 15.8px;
        line-height: 1.7;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-9de431e {
        height: auto;
        min-height: 265px;
        padding: 28px 24px;
        align-items: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-9de431e .elementor-widget-container {
        height: auto;
    }

    .elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon-box-wrapper {
        height: auto;
        justify-content: flex-start;
    }

    .elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon-box-icon {
        margin-bottom: 20px;
    }

    .elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon {
        width: 50px;
        height: 50px;
        min-width: 50px;
        min-height: 50px;
        border-radius: 15px;
    }

    .elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon i,
    .elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon svg {
        font-size: 22px;
        width: 22px;
        height: 22px;
    }

    .elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon-box-title,
    .elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon-box-title a {
        font-size: 28px;
        line-height: 1.08;
        margin-bottom: 12px;
    }

    .elementor-157 .elementor-element.elementor-element-9de431e .elementor-icon-box-description {
        font-size: 15px;
        line-height: 1.65;
        max-width: 100%;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0dd9616 */.elementor-157 .elementor-element.elementor-element-0dd9616 {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    height: 100%;
    min-height: 310px;
    padding: 2px;
    border-radius: 34px;
    background:
        linear-gradient(135deg, rgba(255,248,243,0.72), rgba(255,248,243,0.18)),
        linear-gradient(145deg, rgba(255,248,243,0.36), rgba(91,74,66,0.10));
    box-shadow:
        0 26px 70px rgba(91, 74, 66, 0.18),
        inset 0 1px 0 rgba(255,255,255,0.45);
    transition:
        transform 0.45s cubic-bezier(.2,.8,.2,1),
        box-shadow 0.45s cubic-bezier(.2,.8,.2,1);
}

.elementor-157 .elementor-element.elementor-element-0dd9616::before {
    content: "";
    position: absolute;
    inset: 1px;
    border-radius: 32px;
    background:
        radial-gradient(circle at 18% 18%, rgba(255,255,255,0.52), transparent 34%),
        radial-gradient(circle at 86% 78%, rgba(196,143,123,0.22), transparent 38%),
        linear-gradient(145deg, rgba(255,248,243,0.58), rgba(255,248,243,0.26));
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    z-index: -2;
}

.elementor-157 .elementor-element.elementor-element-0dd9616::after {
    content: "";
    position: absolute;
    top: -90%;
    left: -45%;
    width: 42%;
    height: 280%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,0.42),
        transparent
    );
    transform: rotate(18deg) translateX(-130%);
    transition: transform 0.8s cubic-bezier(.2,.8,.2,1);
    z-index: -1;
    pointer-events: none;
}

.elementor-157 .elementor-element.elementor-element-0dd9616:hover {
    transform: translateY(-8px);
    box-shadow:
        0 38px 95px rgba(91, 74, 66, 0.26),
        inset 0 1px 0 rgba(255,255,255,0.58);
}

.elementor-157 .elementor-element.elementor-element-0dd9616:hover::after {
    transform: rotate(18deg) translateX(430%);
}

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-0dd9616 {
        min-height: 270px;
        border-radius: 28px;
    }

    .elementor-157 .elementor-element.elementor-element-0dd9616::before {
        border-radius: 26px;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dccde19 */.elementor-157 .elementor-element.elementor-element-dccde19 {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    gap: 28px;
    width: 100%;
    max-width: 1120px;
    margin: 0 auto 28px auto;
}

.elementor-157 .elementor-element.elementor-element-dccde19 > .e-con,
.elementor-157 .elementor-element.elementor-element-dccde19 > .elementor-element {
    flex: 1;
}

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-dccde19 {
        flex-direction: column;
        gap: 20px;
        margin-bottom: 20px;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-fad3518 */.elementor-157 .elementor-element.elementor-element-fad3518 {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 12% 18%, rgba(255, 248, 243, 0.18), transparent 36%),
        radial-gradient(circle at 85% 75%, rgba(91, 74, 66, 0.12), transparent 38%),
        linear-gradient(145deg, #C6907A 0%, #B57E6A 55%, #A56E5C 100%);
}

.elementor-157 .elementor-element.elementor-element-fad3518::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(120deg, rgba(255,255,255,0.16), transparent 45%, rgba(255,255,255,0.08)),
        radial-gradient(circle at 50% 0%, rgba(255,248,243,0.22), transparent 50%);
    opacity: 0.85;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-166bee6 */.elementor-157 .elementor-element.elementor-element-166bee6 .elementor-heading-title {
    font-size: clamp(42px, 5vw, 62px);
}/* End custom CSS */
/* Start custom CSS for gallery, class: .elementor-element-61647a1 *//* ================================
   META — GALERIA PREMIUM 16 FOTOS/SLIDES
   Desktop: 4 + 4 + 4 + 4
   Tablet: 3 + 3 + 3 + 3 + 3 + 1 centrado
   Mobile: 2 colunas
   Corrigido: sem scroll horizontal
================================ */

.elementor-157 .elementor-element.elementor-element-61647a1 {
    position: relative;
    width: 100%;
    max-width: 1240px;
    margin: 72px auto 0;
    padding: 18px;
    overflow: visible;
    isolation: isolate;
    box-sizing: border-box;
}

.elementor-157 .elementor-element.elementor-element-61647a1,
.elementor-157 .elementor-element.elementor-element-61647a1 * {
    box-sizing: border-box;
}

/* aura suave atrás da galeria */
.elementor-157 .elementor-element.elementor-element-61647a1::before {
    content: "";
    position: absolute;
    inset: -70px -40px;
    z-index: -2;
    pointer-events: none;
    border-radius: 46px;

    background:
        radial-gradient(circle at 18% 12%, rgba(209,160,140,0.24), transparent 34%),
        radial-gradient(circle at 82% 22%, rgba(196,127,101,0.16), transparent 36%),
        radial-gradient(circle at 50% 100%, rgba(255,255,255,0.58), transparent 42%);
    filter: blur(2px);
    opacity: 0.9;
}

/* textura / círculos muito subtis */
.elementor-157 .elementor-element.elementor-element-61647a1::after {
    content: "";
    position: absolute;
    inset: -30px;
    z-index: -1;
    pointer-events: none;
    border-radius: 42px;
    opacity: 0.36;

    background: repeating-radial-gradient(
        circle,
        rgba(196, 127, 101, 0.18) 0px,
        rgba(196, 127, 101, 0.18) 2px,
        transparent 2px,
        transparent 24px
    );

    mask-image: radial-gradient(circle at center, #000 0%, transparent 72%);
    -webkit-mask-image: radial-gradient(circle at center, #000 0%, transparent 72%);
}

/* ================================
   GRID — ELEMENTOR GALLERY NOVO
================================ */

.elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery__container,
.elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-container {
    width: 100% !important;
    max-width: 100% !important;
    display: grid !important;

    /* 8 colunas técnicas = 4 imagens reais */
    grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
    gap: 22px !important;

    align-items: stretch !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}

/* cada foto ocupa 2 colunas técnicas */
.elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item,
.elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item {
    position: relative !important;
    grid-column: auto / span 2 !important;
    overflow: hidden !important;

    min-width: 0 !important;
    max-width: 100% !important;
    aspect-ratio: 1 / 1.06 !important;

    border-radius: 28px !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(255,255,255,0.65), transparent 42%),
        linear-gradient(180deg, rgba(255,255,255,0.72), rgba(243,227,217,0.74));

    border: 1px solid rgba(255,255,255,0.62) !important;

    box-shadow:
        0 22px 52px rgba(91,74,66,0.13),
        0 8px 18px rgba(196,127,101,0.08),
        inset 0 1px 0 rgba(255,255,255,0.72);

    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);

    transform: translateY(0);
    transition:
        transform 0.45s cubic-bezier(.2,.8,.2,1),
        box-shadow 0.45s cubic-bezier(.2,.8,.2,1),
        border-color 0.35s ease;
}

/* brilho por cima do card */
.elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item::before,
.elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 4;
    pointer-events: none;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,0.32),
            transparent 36%,
            rgba(255,255,255,0.08)
        );

    opacity: 0;
    transition: opacity 0.35s ease;
}

/* linha luminosa */
.elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item::after,
.elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item::after {
    content: "";
    position: absolute;
    top: -40%;
    left: -80%;
    z-index: 5;
    width: 42%;
    height: 180%;
    pointer-events: none;

    background: linear-gradient(
        100deg,
        rgba(255,255,255,0) 0%,
        rgba(255,255,255,0.14) 25%,
        rgba(255,255,255,0.55) 50%,
        rgba(255,255,255,0.14) 75%,
        rgba(255,255,255,0) 100%
    );

    transform: skewX(-18deg);
    opacity: 0;
    transition:
        left 0.9s cubic-bezier(.2,.8,.2,1),
        opacity 0.35s ease;
}

/* hover do card */
.elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item:hover,
.elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item:hover {
    transform: translateY(-8px) scale(1.012);
    border-color: rgba(255,255,255,0.86) !important;

    box-shadow:
        0 32px 78px rgba(91,74,66,0.20),
        0 14px 34px rgba(196,127,101,0.16),
        inset 0 1px 0 rgba(255,255,255,0.9);
}

.elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item:hover::before,
.elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item:hover::before {
    opacity: 1;
}

.elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item:hover::after,
.elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item:hover::after {
    left: 138%;
    opacity: 1;
}

/* imagens */
.elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-image,
.elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item__image,
.elementor-157 .elementor-element.elementor-element-61647a1 .gallery-icon img {
    width: 100% !important;
    height: 100% !important;

    object-fit: cover !important;
    object-position: center !important;

    border-radius: inherit !important;

    filter: saturate(0.96) contrast(1.02) brightness(1.01);
    transform: scale(1.001);

    transition:
        transform 0.65s cubic-bezier(.2,.8,.2,1),
        filter 0.55s ease !important;
}

.elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item:hover .e-gallery-image,
.elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item:hover .elementor-gallery-item__image,
.elementor-157 .elementor-element.elementor-element-61647a1 .gallery-item:hover .gallery-icon img {
    transform: scale(1.075);
    filter: saturate(1.05) contrast(1.04) brightness(1.05);
}

/* overlay escuro do Elementor, caso esteja ativo */
.elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item__overlay,
.elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item .elementor-gallery-item__overlay {
    border-radius: inherit !important;
    background:
        radial-gradient(circle at 50% 20%, rgba(255,248,243,0.18), transparent 42%),
        linear-gradient(180deg, transparent 20%, rgba(44,34,31,0.34) 100%) !important;
    opacity: 0 !important;
    transition: opacity 0.35s ease !important;
}

.elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item:hover .elementor-gallery-item__overlay,
.elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item:hover .elementor-gallery-item__overlay {
    opacity: 1 !important;
}

/* títulos/legendas caso algum dia ligues captions */
.elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item__title,
.elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item__description {
    color: #fff !important;
    font-family: "Inter", sans-serif !important;
    text-shadow: 0 8px 20px rgba(44,34,31,0.35);
}

/* ================================
   FALLBACK — BASIC GALLERY ANTIGA
================================ */

.elementor-157 .elementor-element.elementor-element-61647a1 .gallery {
    display: grid !important;
    grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
    gap: 22px !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.elementor-157 .elementor-element.elementor-element-61647a1 .gallery-item {
    grid-column: auto / span 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
}

.elementor-157 .elementor-element.elementor-element-61647a1 .gallery-icon {
    position: relative;
    overflow: hidden;
    aspect-ratio: 1 / 1.06;
    border-radius: 28px;

    background:
        radial-gradient(circle at 50% 0%, rgba(255,255,255,0.65), transparent 42%),
        linear-gradient(180deg, rgba(255,255,255,0.72), rgba(243,227,217,0.74));

    border: 1px solid rgba(255,255,255,0.62);

    box-shadow:
        0 22px 52px rgba(91,74,66,0.13),
        0 8px 18px rgba(196,127,101,0.08),
        inset 0 1px 0 rgba(255,255,255,0.72);

    transition:
        transform 0.45s cubic-bezier(.2,.8,.2,1),
        box-shadow 0.45s cubic-bezier(.2,.8,.2,1),
        border-color 0.35s ease;
}

.elementor-157 .elementor-element.elementor-element-61647a1 .gallery-item:hover .gallery-icon {
    transform: translateY(-8px) scale(1.012);
    border-color: rgba(255,255,255,0.86);

    box-shadow:
        0 32px 78px rgba(91,74,66,0.20),
        0 14px 34px rgba(196,127,101,0.16),
        inset 0 1px 0 rgba(255,255,255,0.9);
}

.elementor-157 .elementor-element.elementor-element-61647a1 .gallery-icon a {
    display: block;
    width: 100%;
    height: 100%;
}

/* ================================
   TABLET — 3 COLUNAS + ÚLTIMO CENTRADO
   16 fotos: 3 + 3 + 3 + 3 + 3 + 1
================================ */

@media (max-width: 1024px) and (min-width: 768px) {
    .elementor-157 .elementor-element.elementor-element-61647a1 {
        width: 100%;
        max-width: calc(100vw - 32px);
        margin: 44px auto 0;
        padding: 14px;
        overflow: hidden;
    }

    .elementor-157 .elementor-element.elementor-element-61647a1::before {
        inset: -46px 0;
        border-radius: 34px;
        filter: blur(1px);
    }

    .elementor-157 .elementor-element.elementor-element-61647a1::after {
        inset: -18px 0;
        border-radius: 32px;
    }

    .elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery__container,
    .elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-container,
    .elementor-157 .elementor-element.elementor-element-61647a1 .gallery {
        width: 100% !important;
        max-width: 100% !important;

        /* 6 colunas técnicas = 3 imagens reais */
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
        gap: 18px !important;

        overflow: visible !important;
        justify-content: center !important;
    }

    .elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item,
    .elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item,
    .elementor-157 .elementor-element.elementor-element-61647a1 .gallery-item {
        grid-column: auto / span 2 !important;
        max-width: 100% !important;
        aspect-ratio: 1 / 1.08 !important;
        border-radius: 24px !important;
    }

    /*
      Para 16 imagens em tablet:
      a última fica sozinha na linha final.
      Isto mete-a no centro.
    */
    .elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item:last-child:nth-child(3n + 1),
    .elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item:last-child:nth-child(3n + 1),
    .elementor-157 .elementor-element.elementor-element-61647a1 .gallery-item:last-child:nth-child(3n + 1) {
        grid-column: 3 / span 2 !important;
    }

    .elementor-157 .elementor-element.elementor-element-61647a1 .gallery-icon {
        border-radius: 24px;
    }
}

/* ================================
   MOBILE — 2 COLUNAS
   16 fotos: 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2
================================ */

@media (max-width: 767px) {
    .elementor-157 .elementor-element.elementor-element-61647a1 {
        width: 100%;
        max-width: calc(100vw - 24px);
        margin: 34px auto 0;
        padding: 8px;
        overflow: hidden;
    }

    .elementor-157 .elementor-element.elementor-element-61647a1::before {
        inset: -28px 0;
        border-radius: 28px;
        opacity: 0.72;
        filter: blur(1px);
    }

    .elementor-157 .elementor-element.elementor-element-61647a1::after {
        display: none;
    }

    /*
      4 colunas técnicas = 2 imagens reais.
      Cada imagem ocupa 2 colunas.
      Também deixa pronto caso algum dia fique uma última sozinha.
    */
    .elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery__container,
    .elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-container,
    .elementor-157 .elementor-element.elementor-element-61647a1 .gallery {
        width: 100% !important;
        max-width: 100% !important;

        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 13px !important;

        overflow: visible !important;
        justify-content: center !important;
    }

    .elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item,
    .elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item,
    .elementor-157 .elementor-element.elementor-element-61647a1 .gallery-item {
        grid-column: auto / span 2 !important;
        max-width: 100% !important;
        aspect-ratio: 1 / 1.12 !important;
        border-radius: 20px !important;
    }

    .elementor-157 .elementor-element.elementor-element-61647a1 .gallery-icon {
        aspect-ratio: 1 / 1.12;
        border-radius: 20px;
    }

    /*
      Se algum dia ficares com número ímpar no mobile,
      o último fica centrado.
      Com 16 não ativa, porque já fecha certinho em pares.
    */
    .elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item:last-child:nth-child(odd),
    .elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item:last-child:nth-child(odd),
    .elementor-157 .elementor-element.elementor-element-61647a1 .gallery-item:last-child:nth-child(odd) {
        grid-column: 2 / span 2 !important;
    }

    .elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item:hover,
    .elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item:hover,
    .elementor-157 .elementor-element.elementor-element-61647a1 .gallery-item:hover .gallery-icon {
        transform: none;
    }

    .elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item:hover .e-gallery-image,
    .elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item:hover .elementor-gallery-item__image,
    .elementor-157 .elementor-element.elementor-element-61647a1 .gallery-item:hover .gallery-icon img {
        transform: none;
        filter: saturate(0.96) contrast(1.02) brightness(1.01);
    }

    .elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item::after,
    .elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item::after {
        display: none;
    }
}

/* mobile pequeno */
@media (max-width: 430px) {
    .elementor-157 .elementor-element.elementor-element-61647a1 {
        max-width: calc(100vw - 20px);
    }

    .elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery__container,
    .elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-container,
    .elementor-157 .elementor-element.elementor-element-61647a1 .gallery {
        gap: 11px !important;
    }

    .elementor-157 .elementor-element.elementor-element-61647a1 .e-gallery-item,
    .elementor-157 .elementor-element.elementor-element-61647a1 .elementor-gallery-item,
    .elementor-157 .elementor-element.elementor-element-61647a1 .gallery-item,
    .elementor-157 .elementor-element.elementor-element-61647a1 .gallery-icon {
        border-radius: 18px !important;
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f977391 */.elementor-157 .elementor-element.elementor-element-f977391 .elementor-heading-title {
    font-size: clamp(36px, 4.4vw, 54px);
}

.elementor-157 .elementor-element.elementor-element-f977391 {
    display: inline-block;
    padding: 18px 28px;
    border-radius: 22px;

    background: rgba(255, 248, 243, 0.55);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);

    border: 1px solid rgba(255,255,255,0.35);

    box-shadow:
        0 18px 46px rgba(62,43,36,0.18),
        inset 0 1px 0 rgba(255,255,255,0.6);
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-1b52aa7 */.elementor-157 .elementor-element.elementor-element-1b52aa7 .elementor-heading-title {
    font-size: clamp(22px, 3vw, 34px);
}

.elementor-157 .elementor-element.elementor-element-1b52aa7 {
    display: inline-block;
    padding: 18px 28px;
    border-radius: 22px;

    background: rgba(255, 248, 243, 0.55);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);

    border: 1px solid rgba(255,255,255,0.35);

    box-shadow:
        0 18px 46px rgba(62,43,36,0.18),
        inset 0 1px 0 rgba(255,255,255,0.6);
}/* End custom CSS */