.elementor-1584 .elementor-element.elementor-element-a5c7a0e{--display:flex;--min-height:487px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-a015bdb{--display:flex;--min-height:650px;--justify-content:center;--overlay-opacity:0.5;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:150px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-a015bdb:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-a015bdb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://cipengenharia.com.br/wp-content/uploads/2025/02/bg.webp");background-size:cover;}.elementor-1584 .elementor-element.elementor-element-a015bdb::before, .elementor-1584 .elementor-element.elementor-element-a015bdb > .elementor-background-video-container::before, .elementor-1584 .elementor-element.elementor-element-a015bdb > .e-con-inner > .elementor-background-video-container::before, .elementor-1584 .elementor-element.elementor-element-a015bdb > .elementor-background-slideshow::before, .elementor-1584 .elementor-element.elementor-element-a015bdb > .e-con-inner > .elementor-background-slideshow::before, .elementor-1584 .elementor-element.elementor-element-a015bdb > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1584 .elementor-element.elementor-element-8f011a2{margin:250px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-1584 .elementor-element.elementor-element-8f011a2 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:47px;font-weight:600;color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-3500301{text-align:center;}.elementor-1584 .elementor-element.elementor-element-3500301 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-weight:400;color:var( --e-global-color-5ee8b4d );}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-1584 .elementor-element.elementor-element-94a31dc{padding:30px 0px 30px 0px;}.elementor-1584 .elementor-element.elementor-element-94a31dc img{filter:brightness( 100% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-1584 .elementor-element.elementor-element-466a32d .elementor-button{background-color:var( --e-global-color-05cb183 );border-radius:15px 15px 15px 15px;}.elementor-1584 .elementor-element.elementor-element-466a32d .elementor-button:hover, .elementor-1584 .elementor-element.elementor-element-466a32d .elementor-button:focus{background-color:var( --e-global-color-4597967 );color:var( --e-global-color-05cb183 );}.elementor-1584 .elementor-element.elementor-element-466a32d .elementor-button:hover svg, .elementor-1584 .elementor-element.elementor-element-466a32d .elementor-button:focus svg{fill:var( --e-global-color-05cb183 );}.elementor-1584 .elementor-element.elementor-element-96a3cec{--display:flex;--min-height:650px;--justify-content:center;--overlay-opacity:0.38;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:117px;--padding-bottom:150px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-96a3cec:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-96a3cec > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://cipengenharia.com.br/wp-content/uploads/2024/11/problema.jpg");background-position:center center;background-size:cover;}.elementor-1584 .elementor-element.elementor-element-96a3cec::before, .elementor-1584 .elementor-element.elementor-element-96a3cec > .elementor-background-video-container::before, .elementor-1584 .elementor-element.elementor-element-96a3cec > .e-con-inner > .elementor-background-video-container::before, .elementor-1584 .elementor-element.elementor-element-96a3cec > .elementor-background-slideshow::before, .elementor-1584 .elementor-element.elementor-element-96a3cec > .e-con-inner > .elementor-background-slideshow::before, .elementor-1584 .elementor-element.elementor-element-96a3cec > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-1584 .elementor-element.elementor-element-999b7f6{text-align:center;}.elementor-1584 .elementor-element.elementor-element-999b7f6 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:47px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-61fd692{text-align:center;}.elementor-1584 .elementor-element.elementor-element-61fd692 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:47px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-19a9136 .elementor-button{background-color:var( --e-global-color-05cb183 );font-family:"Poppins", Sans-serif;font-weight:500;text-transform:uppercase;border-radius:15px 15px 15px 15px;}.elementor-1584 .elementor-element.elementor-element-19a9136 .elementor-button:hover, .elementor-1584 .elementor-element.elementor-element-19a9136 .elementor-button:focus{background-color:var( --e-global-color-4597967 );color:var( --e-global-color-05cb183 );}.elementor-1584 .elementor-element.elementor-element-19a9136 .elementor-button:hover svg, .elementor-1584 .elementor-element.elementor-element-19a9136 .elementor-button:focus svg{fill:var( --e-global-color-05cb183 );}.elementor-1584 .elementor-element.elementor-element-0f2184b{--display:flex;--min-height:650px;--justify-content:center;--overlay-opacity:0.38;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:117px;--padding-bottom:150px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-0f2184b:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-0f2184b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://cipengenharia.com.br/wp-content/uploads/2024/11/projetos.jpg");background-position:center center;background-size:cover;}.elementor-1584 .elementor-element.elementor-element-0f2184b::before, .elementor-1584 .elementor-element.elementor-element-0f2184b > .elementor-background-video-container::before, .elementor-1584 .elementor-element.elementor-element-0f2184b > .e-con-inner > .elementor-background-video-container::before, .elementor-1584 .elementor-element.elementor-element-0f2184b > .elementor-background-slideshow::before, .elementor-1584 .elementor-element.elementor-element-0f2184b > .e-con-inner > .elementor-background-slideshow::before, .elementor-1584 .elementor-element.elementor-element-0f2184b > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-1584 .elementor-element.elementor-element-3e9c0a0{padding:0px 250px 0px 250px;text-align:center;}.elementor-1584 .elementor-element.elementor-element-3e9c0a0 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:47px;font-weight:600;text-transform:uppercase;line-height:59px;color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-d44a134 .elementor-button{background-color:var( --e-global-color-05cb183 );font-family:"Poppins", Sans-serif;font-weight:500;text-transform:uppercase;border-radius:15px 15px 15px 15px;}.elementor-1584 .elementor-element.elementor-element-d44a134 .elementor-button:hover, .elementor-1584 .elementor-element.elementor-element-d44a134 .elementor-button:focus{background-color:var( --e-global-color-4597967 );color:var( --e-global-color-05cb183 );}.elementor-1584 .elementor-element.elementor-element-d44a134 .elementor-button:hover svg, .elementor-1584 .elementor-element.elementor-element-d44a134 .elementor-button:focus svg{fill:var( --e-global-color-05cb183 );}.elementor-1584 .elementor-element.elementor-element-8f4eb12{--display:flex;--min-height:650px;--justify-content:center;--overlay-opacity:0.38;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:117px;--padding-bottom:150px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-8f4eb12:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-8f4eb12 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://cipengenharia.com.br/wp-content/uploads/2024/11/meio-ambiente.jpg");background-position:center center;background-size:cover;}.elementor-1584 .elementor-element.elementor-element-8f4eb12::before, .elementor-1584 .elementor-element.elementor-element-8f4eb12 > .elementor-background-video-container::before, .elementor-1584 .elementor-element.elementor-element-8f4eb12 > .e-con-inner > .elementor-background-video-container::before, .elementor-1584 .elementor-element.elementor-element-8f4eb12 > .elementor-background-slideshow::before, .elementor-1584 .elementor-element.elementor-element-8f4eb12 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1584 .elementor-element.elementor-element-8f4eb12 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-1584 .elementor-element.elementor-element-5ba0d7e{text-align:center;}.elementor-1584 .elementor-element.elementor-element-5ba0d7e .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:47px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-3dda4e8 .elementor-button{background-color:var( --e-global-color-05cb183 );font-family:"Poppins", Sans-serif;font-weight:500;text-transform:uppercase;border-radius:15px 15px 15px 15px;}.elementor-1584 .elementor-element.elementor-element-3dda4e8 .elementor-button:hover, .elementor-1584 .elementor-element.elementor-element-3dda4e8 .elementor-button:focus{background-color:var( --e-global-color-4597967 );color:var( --e-global-color-05cb183 );}.elementor-1584 .elementor-element.elementor-element-3dda4e8 .elementor-button:hover svg, .elementor-1584 .elementor-element.elementor-element-3dda4e8 .elementor-button:focus svg{fill:var( --e-global-color-05cb183 );}.elementor-1584 .elementor-element.elementor-element-b93228b{--e-n-carousel-swiper-slides-to-display:1;--e-n-carousel-swiper-slides-gap:0px;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--e-n-carousel-slide-height:auto;--e-n-carousel-slide-container-height:100%;--e-n-carousel-arrow-prev-left-align:0%;--e-n-carousel-arrow-prev-translate-x:0px;--e-n-carousel-arrow-prev-left-position:0px;--e-n-carousel-arrow-prev-top-align:50%;--e-n-carousel-arrow-prev-translate-y:-50%;--e-n-carousel-arrow-prev-top-position:0px;--e-n-carousel-arrow-next-right-align:0%;--e-n-carousel-arrow-next-translate-x:0%;--e-n-carousel-arrow-next-right-position:0px;--e-n-carousel-arrow-next-top-align:50%;--e-n-carousel-arrow-next-translate-y:-50%;--e-n-carousel-arrow-next-top-position:0px;--e-n-carousel-arrow-size:25px;--e-n-carousel-arrow-hover-color:var( --e-global-color-05cb183 );}:where( .elementor-1584 .elementor-element.elementor-element-b93228b .swiper-slide ) > .e-con{border-style:none;}.elementor-1584 .elementor-element.elementor-element-b93228b :is(.elementor-swiper-button-prev, .elementor-swiper-button-next) {border-style:solid;border-width:1px 1px 1px 1px;border-radius:50px 50px 50px 50px;padding:10px 10px 10px 10px;}.elementor-1584 .elementor-element.elementor-element-7a3847a{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:-115px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--z-index:1;}.elementor-1584 .elementor-element.elementor-element-7a3847a:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-7a3847a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#E5ECF000;}.elementor-1584 .elementor-element.elementor-element-034c742{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--border-radius:10px 10px 10px 10px;--margin-top:5px;--margin-bottom:5px;--margin-left:5px;--margin-right:5px;--padding-top:40px;--padding-bottom:40px;--padding-left:10px;--padding-right:10px;}.elementor-1584 .elementor-element.elementor-element-034c742:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-034c742 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-4597967 );}.elementor-1584 .elementor-element.elementor-element-bb8aee7{text-align:center;}.elementor-1584 .elementor-element.elementor-element-bb8aee7 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:17px;font-weight:300;color:var( --e-global-color-5ee8b4d );}.elementor-widget-counter .elementor-counter-number-wrapper{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-counter .elementor-counter-title{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-1584 .elementor-element.elementor-element-aa16d40.elementor-element{--align-self:stretch;}.elementor-1584 .elementor-element.elementor-element-aa16d40 .elementor-counter-number-wrapper{color:var( --e-global-color-5ee8b4d );font-family:"Poppins", Sans-serif;font-size:45px;font-weight:300;}.elementor-1584 .elementor-element.elementor-element-aa16d40 .elementor-counter-title{color:var( --e-global-color-5ee8b4d );font-family:"Poppins", Sans-serif;font-weight:400;}.elementor-1584 .elementor-element.elementor-element-2a2cc08{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#D3D1D1;--border-color:#D3D1D1;--border-radius:10px 10px 10px 10px;--margin-top:5px;--margin-bottom:5px;--margin-left:5px;--margin-right:5px;--padding-top:40px;--padding-bottom:40px;--padding-left:10px;--padding-right:10px;}.elementor-1584 .elementor-element.elementor-element-2a2cc08:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-2a2cc08 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-5ee8b4d );}.elementor-widget-icon-box.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon-box.elementor-view-framed .elementor-icon, .elementor-widget-icon-box.elementor-view-default .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-icon-box .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box:has(:hover) .elementor-icon-box-title,
					 .elementor-widget-icon-box:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-1584 .elementor-element.elementor-element-81ea4ec .elementor-icon-box-wrapper{gap:15px;}.elementor-1584 .elementor-element.elementor-element-81ea4ec .elementor-icon{font-size:35px;}.elementor-1584 .elementor-element.elementor-element-81ea4ec .elementor-icon-box-title, .elementor-1584 .elementor-element.elementor-element-81ea4ec .elementor-icon-box-title a{font-family:"Poppins", Sans-serif;font-size:22px;font-weight:600;}.elementor-1584 .elementor-element.elementor-element-1515ed9{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#D3D1D1;--border-color:#D3D1D1;--border-radius:10px 10px 10px 10px;--margin-top:5px;--margin-bottom:5px;--margin-left:5px;--margin-right:5px;--padding-top:40px;--padding-bottom:40px;--padding-left:10px;--padding-right:10px;}.elementor-1584 .elementor-element.elementor-element-1515ed9:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-1515ed9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-295b004 .elementor-icon-box-wrapper{gap:15px;}.elementor-1584 .elementor-element.elementor-element-295b004 .elementor-icon{font-size:35px;}.elementor-1584 .elementor-element.elementor-element-295b004 .elementor-icon-box-title, .elementor-1584 .elementor-element.elementor-element-295b004 .elementor-icon-box-title a{font-family:"Poppins", Sans-serif;font-size:22px;font-weight:600;}.elementor-1584 .elementor-element.elementor-element-e41b158{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#D3D1D1;--border-color:#D3D1D1;--border-radius:10px 10px 10px 10px;--margin-top:5px;--margin-bottom:5px;--margin-left:5px;--margin-right:5px;--padding-top:40px;--padding-bottom:40px;--padding-left:10px;--padding-right:10px;}.elementor-1584 .elementor-element.elementor-element-e41b158:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-e41b158 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-5fdf7a7 .elementor-icon-box-wrapper{gap:15px;}.elementor-1584 .elementor-element.elementor-element-5fdf7a7 .elementor-icon{font-size:35px;}.elementor-1584 .elementor-element.elementor-element-5fdf7a7 .elementor-icon-box-title, .elementor-1584 .elementor-element.elementor-element-5fdf7a7 .elementor-icon-box-title a{font-family:"Poppins", Sans-serif;font-size:22px;font-weight:600;}.elementor-1584 .elementor-element.elementor-element-4af979a{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-4af979a:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-4af979a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#E5ECF0;}.elementor-1584 .elementor-element.elementor-element-2de7d1c{--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;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-fc080dd{--display:flex;}.elementor-1584 .elementor-element.elementor-element-b5aa292 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:500;color:var( --e-global-color-secondary );}.elementor-1584 .elementor-element.elementor-element-5ca2ffc .elementor-heading-title{font-family:"Poppins", Sans-serif;font-weight:600;color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-1584 .elementor-element.elementor-element-b850270{margin:13px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-1584 .elementor-element.elementor-element-439bf55{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-f2d4603{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;text-align:end;}.elementor-1584 .elementor-element.elementor-element-f2d4603 img{width:93%;}.elementor-1584 .elementor-element.elementor-element-417f2cb{--display:flex;--border-radius:20px 20px 20px 20px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-1584 .elementor-element.elementor-element-417f2cb:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-417f2cb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-1584 .elementor-element.elementor-element-e8df5bd{--display:flex;}.elementor-1584 .elementor-element.elementor-element-b2f9fe1{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-20d365e{--display:flex;}.elementor-1584 .elementor-element.elementor-element-5c52c4a{--display:flex;--justify-content:center;}.elementor-1584 .elementor-element.elementor-element-a7dcfc3 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-weight:600;text-transform:uppercase;color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-1584 .elementor-element.elementor-element-a906461{margin:13px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1584 .elementor-element.elementor-element-a906461 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1584 .elementor-element.elementor-element-a906461 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1584 .elementor-element.elementor-element-a906461 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1584 .elementor-element.elementor-element-66dc299{--display:flex;}.elementor-1584 .elementor-element.elementor-element-6ea9bc3{text-align:start;}.elementor-1584 .elementor-element.elementor-element-6ea9bc3 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-weight:600;text-transform:uppercase;color:var( --e-global-color-primary );}.elementor-1584 .elementor-element.elementor-element-e1e3b7e{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-95c5eac{--display:flex;}.elementor-1584 .elementor-element.elementor-element-7492642{--display:flex;}.elementor-1584 .elementor-element.elementor-element-cbf3002{--display:flex;}.elementor-1584 .elementor-element.elementor-element-489018c{--display:flex;}.elementor-1584 .elementor-element.elementor-element-25ea759{--n-accordion-title-font-size:1rem;--n-accordion-item-title-space-between:0px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-title-hover-color:var( --e-global-color-05cb183 );--n-accordion-icon-size:15px;}:where( .elementor-1584 .elementor-element.elementor-element-25ea759 > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title > .e-n-accordion-item-title-header ) > .e-n-accordion-item-title-text{font-weight:500;}.elementor-1584 .elementor-element.elementor-element-c008445{--display:flex;}.elementor-1584 .elementor-element.elementor-element-db935d6{--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-1584 .elementor-element.elementor-element-78575d1{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:80px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-1584 .elementor-element.elementor-element-e9b8329{text-align:center;}.elementor-1584 .elementor-element.elementor-element-e9b8329 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-weight:600;text-transform:uppercase;color:var( --e-global-color-primary );}.elementor-1584 .elementor-element.elementor-element-01eb781{text-align:start;}.elementor-1584 .elementor-element.elementor-element-01eb781 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:23px;font-weight:300;line-height:27px;}.elementor-1584 .elementor-element.elementor-element-c7e7bc6{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-ad11394{--display:flex;--justify-content:center;--background-transition:0.3s;--border-radius:10px 10px 10px 10px;--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-1584 .elementor-element.elementor-element-ad11394:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-ad11394 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-4597967 );}.elementor-1584 .elementor-element.elementor-element-ad11394:hover{background-color:var( --e-global-color-24e09cc );}.elementor-1584 .elementor-element.elementor-element-2b7f5f5 .elementor-icon-box-wrapper{gap:8px;}.elementor-1584 .elementor-element.elementor-element-2b7f5f5 .elementor-icon-box-title, .elementor-1584 .elementor-element.elementor-element-2b7f5f5 .elementor-icon-box-title a{font-family:"Poppins", Sans-serif;font-size:18px;font-weight:200;text-transform:uppercase;}.elementor-1584 .elementor-element.elementor-element-2b7f5f5 .elementor-icon-box-title{color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-3186af8{--display:flex;--justify-content:center;--background-transition:0.3s;--border-radius:10px 10px 10px 10px;--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-1584 .elementor-element.elementor-element-3186af8:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-3186af8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-4597967 );}.elementor-1584 .elementor-element.elementor-element-3186af8:hover{background-color:var( --e-global-color-24e09cc );}.elementor-1584 .elementor-element.elementor-element-b72403e .elementor-icon-box-wrapper{gap:8px;}.elementor-1584 .elementor-element.elementor-element-b72403e .elementor-icon-box-title, .elementor-1584 .elementor-element.elementor-element-b72403e .elementor-icon-box-title a{font-family:"Poppins", Sans-serif;font-size:18px;font-weight:200;text-transform:uppercase;}.elementor-1584 .elementor-element.elementor-element-b72403e .elementor-icon-box-title{color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-4c3d680{--display:flex;--justify-content:center;--background-transition:0.3s;--border-radius:10px 10px 10px 10px;--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-1584 .elementor-element.elementor-element-4c3d680:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-4c3d680 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-4597967 );}.elementor-1584 .elementor-element.elementor-element-4c3d680:hover{background-color:var( --e-global-color-24e09cc );}.elementor-1584 .elementor-element.elementor-element-a3e06b9 .elementor-icon-box-wrapper{gap:8px;}.elementor-1584 .elementor-element.elementor-element-a3e06b9 .elementor-icon-box-title, .elementor-1584 .elementor-element.elementor-element-a3e06b9 .elementor-icon-box-title a{font-family:"Poppins", Sans-serif;font-size:18px;font-weight:200;text-transform:uppercase;}.elementor-1584 .elementor-element.elementor-element-a3e06b9 .elementor-icon-box-title{color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-5b2117d{--display:flex;--justify-content:center;--background-transition:0.3s;--border-radius:10px 10px 10px 10px;--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-1584 .elementor-element.elementor-element-5b2117d:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-5b2117d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-4597967 );}.elementor-1584 .elementor-element.elementor-element-5b2117d:hover{background-color:var( --e-global-color-24e09cc );}.elementor-1584 .elementor-element.elementor-element-822c2a1 .elementor-icon-box-wrapper{gap:8px;}.elementor-1584 .elementor-element.elementor-element-822c2a1 .elementor-icon-box-title, .elementor-1584 .elementor-element.elementor-element-822c2a1 .elementor-icon-box-title a{font-family:"Poppins", Sans-serif;font-size:18px;font-weight:200;text-transform:uppercase;}.elementor-1584 .elementor-element.elementor-element-822c2a1 .elementor-icon-box-title{color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-3428148{--display:flex;--overlay-opacity:0.03;--padding-top:0px;--padding-bottom:00px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-3428148:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-3428148 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-05cb183 );}.elementor-1584 .elementor-element.elementor-element-3428148::before, .elementor-1584 .elementor-element.elementor-element-3428148 > .elementor-background-video-container::before, .elementor-1584 .elementor-element.elementor-element-3428148 > .e-con-inner > .elementor-background-video-container::before, .elementor-1584 .elementor-element.elementor-element-3428148 > .elementor-background-slideshow::before, .elementor-1584 .elementor-element.elementor-element-3428148 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1584 .elementor-element.elementor-element-3428148 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://cipengenharia.com.br/wp-content/uploads/2024/03/dot-map.png");--background-overlay:'';background-position:center center;background-repeat:no-repeat;}.elementor-1584 .elementor-element.elementor-element-9fa4a66{text-align:center;}.elementor-1584 .elementor-element.elementor-element-9fa4a66 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-weight:600;text-transform:uppercase;color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-276f641{--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-1584 .elementor-element.elementor-element-37be06c{--display:flex;}.elementor-1584 .elementor-element.elementor-element-ea4d628{--display:flex;}.elementor-1584 .elementor-element.elementor-element-84d10bb{color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-1b6640c{--display:flex;--overlay-opacity:0.77;--padding-top:80px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-1584 .elementor-element.elementor-element-1b6640c:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-1b6640c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://cipengenharia.com.br/wp-content/uploads/2025/02/mundo.webp");background-position:top center;}.elementor-1584 .elementor-element.elementor-element-1b6640c::before, .elementor-1584 .elementor-element.elementor-element-1b6640c > .elementor-background-video-container::before, .elementor-1584 .elementor-element.elementor-element-1b6640c > .e-con-inner > .elementor-background-video-container::before, .elementor-1584 .elementor-element.elementor-element-1b6640c > .elementor-background-slideshow::before, .elementor-1584 .elementor-element.elementor-element-1b6640c > .e-con-inner > .elementor-background-slideshow::before, .elementor-1584 .elementor-element.elementor-element-1b6640c > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#262F1A;--background-overlay:'';}.elementor-1584 .elementor-element.elementor-element-cf6e9e1{text-align:center;}.elementor-1584 .elementor-element.elementor-element-cf6e9e1 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-weight:600;text-transform:uppercase;color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-7009f18{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-b6675ad{--display:flex;}.elementor-1584 .elementor-element.elementor-element-b6675ad.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1584 .elementor-element.elementor-element-7eade91{color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-75b2334{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-75b2334.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1584 .elementor-element.elementor-element-7560226.elementor-element{--align-self:flex-end;}.elementor-1584 .elementor-element.elementor-element-7560226{text-align:end;}.elementor-1584 .elementor-element.elementor-element-7560226 img{width:0%;}.elementor-1584 .elementor-element.elementor-element-075728f{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:080px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-1584 .elementor-element.elementor-element-075728f:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-075728f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F6F7F7;}.elementor-1584 .elementor-element.elementor-element-179c3d5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--margin-top:22px;--margin-bottom:20px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;--z-index:1;}.elementor-1584 .elementor-element.elementor-element-179c3d5:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-179c3d5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-4597967 );}.elementor-1584 .elementor-element.elementor-element-179c3d5.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1584 .elementor-element.elementor-element-96708c5 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-weight:600;line-height:37px;color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-2b811a1{color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-a42e0a5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-a42e0a5.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1584 .elementor-element.elementor-element-6b099be{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) -29px;}.elementor-1584 .elementor-element.elementor-element-6b099be img{width:100%;max-width:100%;height:100%;}.elementor-1584 .elementor-element.elementor-element-16fb44e{--display:flex;--padding-top:80px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-1584 .elementor-element.elementor-element-16fb44e:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-16fb44e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#2B3F49;}.elementor-1584 .elementor-element.elementor-element-e3a670a{text-align:center;}.elementor-1584 .elementor-element.elementor-element-e3a670a .elementor-heading-title{font-family:"Poppins", Sans-serif;font-weight:600;text-transform:uppercase;color:var( --e-global-color-5ee8b4d );}.elementor-1584 .elementor-element.elementor-element-5a9f9ed{color:var( --e-global-color-5ee8b4d );}.elementor-widget-gallery .elementor-gallery-item__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-gallery .elementor-gallery-item__description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-gallery{--galleries-title-color-normal:var( --e-global-color-primary );--galleries-title-color-hover:var( --e-global-color-secondary );--galleries-pointer-bg-color-hover:var( --e-global-color-accent );--gallery-title-color-active:var( --e-global-color-secondary );--galleries-pointer-bg-color-active:var( --e-global-color-accent );}.elementor-widget-gallery .elementor-gallery-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-1584 .elementor-element.elementor-element-86845c3 .e-gallery-item:hover .elementor-gallery-item__overlay, .elementor-1584 .elementor-element.elementor-element-86845c3 .e-gallery-item:focus .elementor-gallery-item__overlay{background-color:rgba(0,0,0,0.5);}.elementor-1584 .elementor-element.elementor-element-86845c3{--image-border-width:0px;--image-border-radius:8px;--image-transition-duration:800ms;--overlay-transition-duration:800ms;--content-text-align:center;--content-justify-content:center;--content-padding:16px;--content-transition-duration:800ms;--content-transition-delay:800ms;}.elementor-1584 .elementor-element.elementor-element-e25d7a0{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-2673a4b iframe{height:540px;}.elementor-1584 .elementor-element.elementor-element-6789020{--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;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:150px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-6789020:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-6789020 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-69c899d );}.elementor-1584 .elementor-element.elementor-element-36497b4{--display:flex;--padding-top:70px;--padding-bottom:0px;--padding-left:0px;--padding-right:30px;}.elementor-1584 .elementor-element.elementor-element-36497b4.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1584 .elementor-element.elementor-element-c077456 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:600;text-transform:uppercase;}.elementor-1584 .elementor-element.elementor-element-e73f6d0 .elementor-icon-box-wrapper{align-items:center;text-align:start;gap:15px;}.elementor-1584 .elementor-element.elementor-element-e73f6d0 .elementor-icon-box-title{margin-block-end:0px;color:var( --e-global-color-primary );}.elementor-1584 .elementor-element.elementor-element-e73f6d0.elementor-view-stacked .elementor-icon{background-color:#f7c51e;}.elementor-1584 .elementor-element.elementor-element-e73f6d0.elementor-view-framed .elementor-icon, .elementor-1584 .elementor-element.elementor-element-e73f6d0.elementor-view-default .elementor-icon{fill:#f7c51e;color:#f7c51e;border-color:#f7c51e;}.elementor-1584 .elementor-element.elementor-element-e73f6d0 .elementor-icon{font-size:30px;}.elementor-1584 .elementor-element.elementor-element-e73f6d0 .elementor-icon-box-title, .elementor-1584 .elementor-element.elementor-element-e73f6d0 .elementor-icon-box-title a{font-family:"Montserrat", Sans-serif;font-size:17px;line-height:1.5em;}.elementor-1584 .elementor-element.elementor-element-e73f6d0 .elementor-icon-box-description{font-family:"Montserrat", Sans-serif;font-size:17px;color:var( --e-global-color-a3edb11 );}.elementor-1584 .elementor-element.elementor-element-f0ef404 .elementor-icon-box-wrapper{align-items:center;text-align:start;gap:15px;}.elementor-1584 .elementor-element.elementor-element-f0ef404 .elementor-icon-box-title{margin-block-end:0px;color:var( --e-global-color-primary );}.elementor-1584 .elementor-element.elementor-element-f0ef404.elementor-view-stacked .elementor-icon{background-color:#f7c51e;}.elementor-1584 .elementor-element.elementor-element-f0ef404.elementor-view-framed .elementor-icon, .elementor-1584 .elementor-element.elementor-element-f0ef404.elementor-view-default .elementor-icon{fill:#f7c51e;color:#f7c51e;border-color:#f7c51e;}.elementor-1584 .elementor-element.elementor-element-f0ef404 .elementor-icon{font-size:30px;}.elementor-1584 .elementor-element.elementor-element-f0ef404 .elementor-icon-box-title, .elementor-1584 .elementor-element.elementor-element-f0ef404 .elementor-icon-box-title a{font-size:18px;line-height:1.5em;}.elementor-1584 .elementor-element.elementor-element-f0ef404 .elementor-icon-box-description{color:var( --e-global-color-text );}.elementor-1584 .elementor-element.elementor-element-bf6f90a .elementor-icon-box-wrapper{align-items:center;gap:15px;}.elementor-1584 .elementor-element.elementor-element-bf6f90a .elementor-icon-box-title{margin-block-end:0px;color:var( --e-global-color-primary );}.elementor-1584 .elementor-element.elementor-element-bf6f90a.elementor-view-stacked .elementor-icon{background-color:#f7c51e;}.elementor-1584 .elementor-element.elementor-element-bf6f90a.elementor-view-framed .elementor-icon, .elementor-1584 .elementor-element.elementor-element-bf6f90a.elementor-view-default .elementor-icon{fill:#f7c51e;color:#f7c51e;border-color:#f7c51e;}.elementor-1584 .elementor-element.elementor-element-bf6f90a .elementor-icon{font-size:30px;}.elementor-1584 .elementor-element.elementor-element-bf6f90a .elementor-icon-box-title, .elementor-1584 .elementor-element.elementor-element-bf6f90a .elementor-icon-box-title a{font-size:18px;line-height:1.5em;}.elementor-1584 .elementor-element.elementor-element-bf6f90a .elementor-icon-box-description{color:var( --e-global-color-text );}.elementor-1584 .elementor-element.elementor-element-7443ea1 .elementor-icon-box-wrapper{align-items:center;gap:15px;}.elementor-1584 .elementor-element.elementor-element-7443ea1 .elementor-icon-box-title{margin-block-end:0px;}.elementor-1584 .elementor-element.elementor-element-7443ea1.elementor-view-stacked .elementor-icon{background-color:#f7c51e;}.elementor-1584 .elementor-element.elementor-element-7443ea1.elementor-view-framed .elementor-icon, .elementor-1584 .elementor-element.elementor-element-7443ea1.elementor-view-default .elementor-icon{fill:#f7c51e;color:#f7c51e;border-color:#f7c51e;}.elementor-1584 .elementor-element.elementor-element-7443ea1 .elementor-icon{font-size:30px;}.elementor-1584 .elementor-element.elementor-element-7443ea1 .elementor-icon-box-title, .elementor-1584 .elementor-element.elementor-element-7443ea1 .elementor-icon-box-title a{font-size:18px;line-height:1.5em;}.elementor-1584 .elementor-element.elementor-element-84be742{--display:flex;--border-radius:10px 10px 10px 10px;box-shadow:2px 2px 22px -9px rgba(0,0,0,0.5);--margin-top:-100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:50px;--padding-left:30px;--padding-right:30px;}.elementor-1584 .elementor-element.elementor-element-84be742:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-84be742 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-1584 .elementor-element.elementor-element-84be742.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1584 .elementor-element.elementor-element-eec1bb6{text-align:center;}.elementor-1584 .elementor-element.elementor-element-eec1bb6 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:24px;font-weight:600;line-height:31px;color:var( --e-global-color-primary );}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-1584 .elementor-element.elementor-element-5449d17{padding:10px 0px 0px 0px;--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-labels-inline .elementor-field-group > label{padding-left:15px;}body:not(.rtl) .elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-labels-inline .elementor-field-group > label{padding-right:15px;}body .elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-labels-above .elementor-field-group > label{padding-bottom:15px;}.elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-field-group > label{font-family:"Lato", Sans-serif;}.elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-field-type-html{padding-bottom:0px;}.elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-button{font-family:"Poppins", Sans-serif;font-size:15px;font-weight:600;border-radius:10px 10px 10px 10px;}.elementor-1584 .elementor-element.elementor-element-5449d17 .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-4597967 );color:#ffffff;}.elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-button[type="submit"]{background-color:var( --e-global-color-4597967 );color:#ffffff;}.elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-1584 .elementor-element.elementor-element-5449d17 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-1584 .elementor-element.elementor-element-5449d17 .e-form__buttons__wrapper__button-next:hover{background-color:var( --e-global-color-05cb183 );color:var( --e-global-color-4597967 );}.elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-button[type="submit"]:hover{background-color:var( --e-global-color-05cb183 );color:var( --e-global-color-4597967 );}.elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-button[type="submit"]:hover svg *{fill:var( --e-global-color-4597967 );}.elementor-1584 .elementor-element.elementor-element-5449d17 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-message{font-size:16px;}.elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-message.elementor-message-success{color:#0D7925;}.elementor-1584 .elementor-element.elementor-element-5449d17 .elementor-message.elementor-message-danger{color:#E70F0F;}@media(min-width:768px){.elementor-1584 .elementor-element.elementor-element-034c742{--width:25%;}.elementor-1584 .elementor-element.elementor-element-2a2cc08{--width:25%;}.elementor-1584 .elementor-element.elementor-element-1515ed9{--width:25%;}.elementor-1584 .elementor-element.elementor-element-e41b158{--width:25%;}.elementor-1584 .elementor-element.elementor-element-417f2cb{--width:49%;}.elementor-1584 .elementor-element.elementor-element-20d365e{--width:57%;}.elementor-1584 .elementor-element.elementor-element-1b6640c{--content-width:100%;}.elementor-1584 .elementor-element.elementor-element-b6675ad{--width:51.84%;}.elementor-1584 .elementor-element.elementor-element-75b2334{--width:50%;}.elementor-1584 .elementor-element.elementor-element-179c3d5{--width:100%;}.elementor-1584 .elementor-element.elementor-element-a42e0a5{--width:50.994%;}.elementor-1584 .elementor-element.elementor-element-6789020{--content-width:100%;}.elementor-1584 .elementor-element.elementor-element-36497b4{--width:50%;}.elementor-1584 .elementor-element.elementor-element-84be742{--width:50%;}}@media(max-width:1024px) and (min-width:768px){.elementor-1584 .elementor-element.elementor-element-034c742{--width:46%;}.elementor-1584 .elementor-element.elementor-element-2a2cc08{--width:46%;}.elementor-1584 .elementor-element.elementor-element-1515ed9{--width:46%;}.elementor-1584 .elementor-element.elementor-element-e41b158{--width:46%;}.elementor-1584 .elementor-element.elementor-element-417f2cb{--width:57%;}.elementor-1584 .elementor-element.elementor-element-36497b4{--width:100%;}.elementor-1584 .elementor-element.elementor-element-84be742{--width:100%;}}@media(min-width:1367px){.elementor-1584 .elementor-element.elementor-element-3428148::before, .elementor-1584 .elementor-element.elementor-element-3428148 > .elementor-background-video-container::before, .elementor-1584 .elementor-element.elementor-element-3428148 > .e-con-inner > .elementor-background-video-container::before, .elementor-1584 .elementor-element.elementor-element-3428148 > .elementor-background-slideshow::before, .elementor-1584 .elementor-element.elementor-element-3428148 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1584 .elementor-element.elementor-element-3428148 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-attachment:scroll;}}@media(max-width:1366px){.elementor-1584 .elementor-element.elementor-element-a5c7a0e{--min-height:300px;}}@media(max-width:1024px){.elementor-1584 .elementor-element.elementor-element-b93228b{--e-n-carousel-swiper-slides-to-display:1;}.elementor-1584 .elementor-element.elementor-element-7a3847a{--justify-content:center;--gap:2px 4px;--row-gap:2px;--column-gap:4px;--flex-wrap:wrap;}.elementor-1584 .elementor-element.elementor-element-034c742{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:wrap;}.elementor-1584 .elementor-element.elementor-element-2de7d1c{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-1584 .elementor-element.elementor-element-f2d4603{text-align:center;}.elementor-1584 .elementor-element.elementor-element-276f641{--flex-wrap:wrap;}.elementor-1584 .elementor-element.elementor-element-1b6640c{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-end;--flex-wrap:wrap;}.elementor-1584 .elementor-element.elementor-element-b6675ad{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--flex-wrap:wrap;}.elementor-1584 .elementor-element.elementor-element-75b2334{--justify-content:center;}.elementor-1584 .elementor-element.elementor-element-6789020{--padding-top:50px;--padding-bottom:100px;--padding-left:30px;--padding-right:30px;}.elementor-1584 .elementor-element.elementor-element-36497b4{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-84be742{--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:50px;--padding-left:30px;--padding-right:30px;}}@media(max-width:767px){.elementor-1584 .elementor-element.elementor-element-a5c7a0e{--margin-top:-100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-1584 .elementor-element.elementor-element-a015bdb:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-a015bdb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://cipengenharia.com.br/wp-content/uploads/2025/02/proejeto-e-aprovacoes-mob.webp");background-position:top center;background-size:cover;}.elementor-1584 .elementor-element.elementor-element-8f011a2{margin:340px 00px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-1584 .elementor-element.elementor-element-8f011a2 .elementor-heading-title{font-size:27px;line-height:1.1em;}.elementor-1584 .elementor-element.elementor-element-3500301 .elementor-heading-title{font-size:15px;line-height:1.3em;}.elementor-1584 .elementor-element.elementor-element-94a31dc{margin:55px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-1584 .elementor-element.elementor-element-96a3cec:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-96a3cec > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://cipengenharia.com.br/wp-content/uploads/2025/02/problema-mob.webp");background-repeat:no-repeat;background-size:cover;}.elementor-1584 .elementor-element.elementor-element-999b7f6 .elementor-heading-title{font-size:25px;}.elementor-1584 .elementor-element.elementor-element-61fd692 .elementor-heading-title{font-size:25px;}.elementor-1584 .elementor-element.elementor-element-3e9c0a0{padding:0px 0px 0px 0px;}.elementor-1584 .elementor-element.elementor-element-3e9c0a0 .elementor-heading-title{font-size:25px;line-height:1.2em;}.elementor-1584 .elementor-element.elementor-element-8f4eb12:not(.elementor-motion-effects-element-type-background), .elementor-1584 .elementor-element.elementor-element-8f4eb12 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://cipengenharia.com.br/wp-content/uploads/2025/02/meio-ambiente-mob.webp");}.elementor-1584 .elementor-element.elementor-element-5ba0d7e .elementor-heading-title{font-size:25px;}.elementor-1584 .elementor-element.elementor-element-3dda4e8{padding:64px 0px 0px 0px;}.elementor-1584 .elementor-element.elementor-element-b93228b{--e-n-carousel-swiper-slides-to-display:1;padding:00px 00px 00px 00px;--e-n-carousel-arrow-size:7px;}:where( .elementor-1584 .elementor-element.elementor-element-b93228b .swiper-slide ) > .e-con{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;}:where( [data-core-v316-plus="true"] .elementor-element.elementor-widget-n-carousel .swiper-slide ) > .e-con{--padding-block-start:0px;--padding-inline-end:0px;--padding-block-end:0px;--padding-inline-start:0px;}.elementor-1584 .elementor-element.elementor-element-b93228b :is(.elementor-swiper-button-prev, .elementor-swiper-button-next) {border-radius:10px 10px 10px 10px;padding:5px 5px 5px 5px;}.elementor-1584 .elementor-element.elementor-element-5ca2ffc .elementor-heading-title{font-size:25px;}.elementor-1584 .elementor-element.elementor-element-5160cdd{padding:10px 10px 10px 10px;}.elementor-1584 .elementor-element.elementor-element-a7dcfc3{text-align:center;}.elementor-1584 .elementor-element.elementor-element-a7dcfc3 .elementor-heading-title{font-size:25px;}.elementor-1584 .elementor-element.elementor-element-6ea9bc3{padding:0px 10px 0px 10px;}.elementor-1584 .elementor-element.elementor-element-6ea9bc3 .elementor-heading-title{font-size:25px;}.elementor-1584 .elementor-element.elementor-element-596b626{padding:20px 20px 20px 20px;}.elementor-1584 .elementor-element.elementor-element-e9b8329{text-align:center;}.elementor-1584 .elementor-element.elementor-element-e9b8329 .elementor-heading-title{font-size:25px;}.elementor-1584 .elementor-element.elementor-element-01eb781 .elementor-heading-title{font-size:18px;}.elementor-1584 .elementor-element.elementor-element-9fa4a66 .elementor-heading-title{font-size:25px;}.elementor-1584 .elementor-element.elementor-element-cf6e9e1 .elementor-heading-title{font-size:25px;}.elementor-1584 .elementor-element.elementor-element-075728f{--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-1584 .elementor-element.elementor-element-179c3d5{--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-1584 .elementor-element.elementor-element-96708c5{text-align:center;}.elementor-1584 .elementor-element.elementor-element-96708c5 .elementor-heading-title{font-size:17px;line-height:1.5em;}.elementor-1584 .elementor-element.elementor-element-a42e0a5{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1584 .elementor-element.elementor-element-6b099be{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-1584 .elementor-element.elementor-element-e3a670a .elementor-heading-title{font-size:25px;}.elementor-1584 .elementor-element.elementor-element-6789020{--padding-top:50px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-1584 .elementor-element.elementor-element-c077456{text-align:center;}.elementor-1584 .elementor-element.elementor-element-c077456 .elementor-heading-title{font-size:25px;}.elementor-1584 .elementor-element.elementor-element-e73f6d0 .elementor-icon-box-wrapper{text-align:center;gap:0px;}.elementor-1584 .elementor-element.elementor-element-e73f6d0 .elementor-icon-box-title{margin-block-end:0px;}.elementor-1584 .elementor-element.elementor-element-f0ef404 .elementor-icon-box-wrapper{text-align:center;gap:0px;}.elementor-1584 .elementor-element.elementor-element-f0ef404 .elementor-icon-box-title{margin-block-end:0px;}.elementor-1584 .elementor-element.elementor-element-bf6f90a{padding:20px 0px 0px 0px;}.elementor-1584 .elementor-element.elementor-element-bf6f90a .elementor-icon-box-wrapper{text-align:center;gap:0px;}.elementor-1584 .elementor-element.elementor-element-7443ea1{padding:20px 0px 0px 0px;}.elementor-1584 .elementor-element.elementor-element-7443ea1 .elementor-icon-box-wrapper{text-align:center;gap:0px;}.elementor-1584 .elementor-element.elementor-element-84be742{--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-1584 .elementor-element.elementor-element-eec1bb6{text-align:center;}.elementor-1584 .elementor-element.elementor-element-eec1bb6 .elementor-heading-title{font-size:18px;line-height:30px;}}/* Start custom CSS for nested-carousel, class: .elementor-element-b93228b */.elementor-734 .elementor-element.elementor-element-6f9b392 :is(.elementor-swiper-button-prev, .elementor-swiper-button-next) {
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-radius: 50px 50px 50px 50px;
    padding: 10px 10px 10px 10px;
    margin-left: 20px;
}

.elementor-734 .elementor-element.elementor-element-6f9b392 :is(.elementor-swiper-button-prev, .elementor-swiper-button-next) {
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-radius: 50px 50px 50px 50px;
    padding: 10px 10px 10px 10px;
   margin-right: 20px;
   margin-top: 50px;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-034c742 */.elementor-1584 .elementor-element.elementor-element-034c742 {
    overflow: hidden;
    border: 1px solid rgba(18, 56, 74, 0.12);
    border-radius: 8px 8px 28px 8px;
    box-shadow:
        0 0 10px rgba(255, 255, 255, 0.9),
        20px 20px 40px rgba(21, 21, 21, 0.18);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.elementor-1584 .elementor-element.elementor-element-034c742:hover {
    transform: translateY(-5px);
    box-shadow:
        0 0 10px rgba(255, 255, 255, 0.9),
        20px 25px 45px rgba(21, 21, 21, 0.24);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2a2cc08 */.elementor-1584 .elementor-element.elementor-element-2a2cc08 {
    overflow: hidden;
    border: 1px solid rgba(18, 56, 74, 0.12);
    border-radius: 8px 8px 28px 8px;
    box-shadow:
        0 0 10px rgba(255, 255, 255, 0.9),
        20px 20px 40px rgba(21, 21, 21, 0.18);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.elementor-1584 .elementor-element.elementor-element-2a2cc08:hover {
    transform: translateY(-5px);
    box-shadow:
        0 0 10px rgba(255, 255, 255, 0.9),
        20px 25px 45px rgba(21, 21, 21, 0.24);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1515ed9 */.elementor-1584 .elementor-element.elementor-element-1515ed9 {
    overflow: hidden;
    border: 1px solid rgba(18, 56, 74, 0.12);
    border-radius: 8px 8px 28px 8px;
    box-shadow:
        0 0 10px rgba(255, 255, 255, 0.9),
        20px 20px 40px rgba(21, 21, 21, 0.18);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.elementor-1584 .elementor-element.elementor-element-1515ed9:hover {
    transform: translateY(-5px);
    box-shadow:
        0 0 10px rgba(255, 255, 255, 0.9),
        20px 25px 45px rgba(21, 21, 21, 0.24);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e41b158 */.elementor-1584 .elementor-element.elementor-element-e41b158 {
    overflow: hidden;
    border: 1px solid rgba(18, 56, 74, 0.12);
    border-radius: 8px 8px 28px 8px;
    box-shadow:
        0 0 10px rgba(255, 255, 255, 0.9),
        20px 20px 40px rgba(21, 21, 21, 0.18);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.elementor-1584 .elementor-element.elementor-element-e41b158:hover {
    transform: translateY(-5px);
    box-shadow:
        0 0 10px rgba(255, 255, 255, 0.9),
        20px 25px 45px rgba(21, 21, 21, 0.24);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4af979a *//* ==========================================================
   CIP ENGENHARIA — SEÇÃO QUEM SOMOS

   Classes necessárias no Elementor:
   Container dos 4 boxes: cip-boxes-contato
   Quem somos:            cip-quem-somos
   Inner quem somos:      cip-quem-grid
   Textos:                cip-quem-conteudo
   Imagem:                cip-quem-visual
   Box Flutuante:         cip-destaque-box
========================================================== */

/* Evita barra horizontal causada pelas sobreposições */
html,
body {
    overflow-x: clip;
}

/* ==========================================================
   BOXES SUPERIORES
========================================================== */

.cip-boxes-contato {
    position: relative;
    z-index: 10;
}

/* Garante que a sombra não seja cortada */
.cip-boxes-contato,
.cip-boxes-contato > .e-con-inner {
    overflow: visible !important;
}

/* ==========================================================
   CONTAINER PRINCIPAL — QUEM SOMOS
========================================================== */

.cip-quem-somos {
    --cip-azul: #12384a;
    --cip-azul-forte: #0d3042;
    --cip-dourado: #b88a50;
    --cip-texto: #65727a;
    --cip-fundo: #eaf2f6;
    --cip-branco: #ffffff;

    position: relative;
    z-index: 1;

    /*
     * O fundo sobe por trás dos quatro boxes.
     * O padding superior devolve espaço ao conteúdo.
     */
    margin: -197px 0 0 !important;
    padding: 329px 30px 125px !important;

    background: var(--cip-fundo);
    overflow: visible;
}

/* ==========================================================
   CONTAINER INTERNO
========================================================== */

.cip-quem-somos .cip-quem-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 0.94fr);
    gap: clamp(76px, 8vw, 120px);
    align-items: center;
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0;
    overflow: visible;
}

/* Remove larguras mínimas que podem estourar o grid */
.cip-quem-somos .cip-quem-conteudo,
.cip-quem-somos .cip-quem-visual {
    min-width: 0;
}

/* ==========================================================
   COLUNA DE TEXTOS
========================================================== */

.cip-quem-somos .cip-quem-conteudo {
    width: 100%;
    max-width: 620px;
    padding: 0;
}

/* Primeiro título: Quem somos */
.cip-quem-somos
.cip-quem-conteudo
> .elementor-element:first-child
.elementor-heading-title {
    margin: 0;
    color: var(--cip-azul);
    font-size: 15px;
    font-weight: 600;
    line-height: 1.3;
}

/* Título principal: CIP Engenharia */
.cip-quem-somos .cip-quem-conteudo h1,
.cip-quem-somos .cip-quem-conteudo h2,
.cip-quem-somos .cip-quem-conteudo h3 {
    margin: 8px 0 20px;
    color: var(--cip-azul);
    font-size: clamp(31px, 3vw, 43px);
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -0.035em;
}

/* Editor de texto */
.cip-quem-somos
.cip-quem-conteudo
.elementor-widget-text-editor {
    color: var(--cip-texto);
}

.cip-quem-somos
.cip-quem-conteudo
.elementor-widget-text-editor p {
    margin: 0 0 18px;
    color: inherit;
    font-size: 16px;
    line-height: 1.65;
}

/* Subtítulo inserido dentro do editor */
.cip-quem-somos
.cip-quem-conteudo
.elementor-widget-text-editor h3 {
    margin: 28px 0 14px;
    color: var(--cip-azul);
    font-size: 17px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0;
}

.cip-quem-somos
.cip-quem-conteudo
.elementor-widget-text-editor strong {
    color: var(--cip-azul);
    font-weight: 700;
}

/* Remove a margem do último parágrafo */
.cip-quem-somos
.cip-quem-conteudo
.elementor-widget-text-editor p:last-child {
    margin-bottom: 0;
}

/* ==========================================================
   COLUNA DA IMAGEM
========================================================== */

.cip-quem-somos .cip-quem-visual {
    position: relative;
    width: 100%;
    height: 550px;
    padding: 0;
    overflow: hidden;
    border-radius: 3px;
}

.cip-quem-somos
.cip-quem-visual
.elementor-widget-image,
.cip-quem-somos
.cip-quem-visual
.elementor-widget-container {
    width: 100%;
    height: 100%;
}

.cip-quem-somos .cip-quem-visual img {
    width: 100%;
    height: 100% !important;
    max-width: none;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.7s ease;
}

.cip-quem-somos .cip-quem-visual:hover img {
    transform: scale(1.025);
}

/* ==========================================================
   BOX DE TEXTO FLUTUANTE
========================================================== */

.cip-quem-somos .cip-destaque-box {
    position: absolute !important;
    z-index: 5;

    /*
     * Posiciona o box entre texto e imagem.
     * Não precisa configurar deslocamento manual no Elementor.
     */
    left: calc(50% - 10px);
    bottom: -62px;

    width: 258px;
    max-width: calc(100% - 40px);
    margin: 0 !important;
    padding: 27px 25px !important;

    background: rgba(255, 255, 255, 0.98);
    border: 1px solid rgba(18, 56, 74, 0.08);
    border-radius: 14px;
    box-shadow: 0 22px 55px rgba(18, 56, 74, 0.13);
}

/* Detalhe decorativo */
.cip-quem-somos .cip-destaque-box::before {
    content: "";
    position: absolute;
    top: 0;
    left: 25px;
    width: 42px;
    height: 3px;
    background: var(--cip-dourado);
}

.cip-quem-somos
.cip-destaque-box
.elementor-widget-text-editor,
.cip-quem-somos
.cip-destaque-box
.elementor-widget-container {
    margin: 0;
    padding: 0;
}

.cip-quem-somos .cip-destaque-box,
.cip-quem-somos .cip-destaque-box p {
    color: #5b686f;
    font-size: 16px;
    font-style: italic;
    font-weight: 400;
    line-height: 1.55;
}

.cip-quem-somos .cip-destaque-box p {
    margin: 0;
}

/* ==========================================================
   NOTEBOOKS E TELAS INTERMEDIÁRIAS
========================================================== */

@media (min-width: 1025px) and (max-width: 1366px) {
    .cip-quem-somos {
        padding-right: 40px !important;
        padding-left: 40px !important;
    }

    .cip-quem-somos .cip-quem-grid {
        max-width: 1160px;
        gap: 78px;
    }

    .cip-quem-somos .cip-quem-visual {
        height: 520px;
    }

    .cip-quem-somos .cip-destaque-box {
        left: calc(50% - 22px);
        width: 240px;
    }
}

/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 1024px) {
    .cip-quem-somos {
        margin-top: -150px !important;
        padding: 265px 28px 110px !important;
    }

    .cip-quem-somos .cip-quem-grid {
        grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr);
        gap: 52px;
    }

    .cip-quem-somos .cip-quem-visual {
        height: 500px;
    }

    .cip-quem-somos .cip-destaque-box {
        left: calc(50% - 28px);
        bottom: -55px;
        width: 230px;
        padding: 23px !important;
    }

    .cip-quem-somos .cip-destaque-box,
    .cip-quem-somos .cip-destaque-box p {
        font-size: 15px;
    }
}

/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 767px) {
    /*
     * Se os boxes superiores estiverem empilhados e não
     * sobrepostos ao hero, altere margin-top para 0 e
     * padding-top para 65px.
     */
    .cip-quem-somos {
        margin-top: -65px !important;
        padding: 125px 20px 70px !important;
        overflow: hidden;
    }

    .cip-quem-somos .cip-quem-grid {
        display: flex;
        flex-direction: column;
        gap: 32px;
    }

    .cip-quem-somos .cip-quem-conteudo {
        width: 100%;
        max-width: none;
    }

    .cip-quem-somos .cip-quem-conteudo h1,
    .cip-quem-somos .cip-quem-conteudo h2,
    .cip-quem-somos .cip-quem-conteudo h3 {
        font-size: clamp(30px, 9vw, 39px);
    }

    .cip-quem-somos
    .cip-quem-conteudo
    .elementor-widget-text-editor p {
        font-size: 15px;
        line-height: 1.65;
    }

    .cip-quem-somos
    .cip-quem-conteudo
    .elementor-widget-text-editor h3 {
        font-size: 16px;
    }

    .cip-quem-somos .cip-quem-visual {
        width: 100%;
        height: 380px;
    }

    /*
     * No mobile o box deixa de ser absoluto.
     * Isso impede que ele invada a próxima seção.
     */
    .cip-quem-somos .cip-destaque-box {
        position: relative !important;
        left: auto;
        bottom: auto;
        width: calc(100% - 32px);
        max-width: 420px;
        margin: -78px auto 0 !important;
        padding: 23px !important;
    }
}

/* Celulares pequenos */
@media (max-width: 480px) {
    .cip-quem-somos {
        padding-right: 16px !important;
        padding-left: 16px !important;
    }

    .cip-quem-somos .cip-quem-visual {
        height: 330px;
    }

    .cip-quem-somos .cip-destaque-box {
        width: calc(100% - 24px);
        margin-top: -58px !important;
        padding: 21px !important;
    }
}

/* ==========================================================
   ACESSIBILIDADE
========================================================== */

@media (prefers-reduced-motion: reduce) {
    .cip-quem-somos .cip-quem-visual img {
        transition: none;
    }

    .cip-quem-somos .cip-quem-visual:hover img {
        transform: none;
    }
}

/* =====================================================
   CIP — TÍTULO EDITORIAL QUEM SOMOS
===================================================== */

/* Rótulo superior */
.cip-quem-somos .cip-quem-eyebrow {
    position: relative;
    margin: 0 0 26px;
    padding-left: 37px;
}

.cip-quem-somos .cip-quem-eyebrow::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 25px;
    height: 2px;
    background: #c6d900;
    transform: translateY(-50%);
}

.cip-quem-somos
.cip-quem-eyebrow
.elementor-heading-title {
    margin: 0 !important;
    color: #28499c !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    letter-spacing: 0.17em !important;
    text-transform: uppercase;
}

/* Widget do título principal */
.cip-quem-somos .cip-quem-titulo-editorial {
    width: 100%;
    margin: 0 0 30px;
}

.cip-quem-somos
.cip-quem-titulo-editorial
.elementor-heading-title {
    display: block;
    margin: 0 !important;
    padding: 0;
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    text-transform: none !important;
}

/* Primeira linha */
.cip-quem-somos .cip-quem-titulo-base {
    display: block;
    color: #17211f;
    font-family: inherit;
    font-size: clamp(42px, 4.2vw, 65px);
    font-style: normal;
    font-weight: 500;
    line-height: 0.99;
    letter-spacing: -0.055em;
    text-transform: none;
}

/* Linha em destaque */
.cip-quem-somos .cip-quem-titulo-destaque {
    display: block;
    margin-top: 4px;
    color: #28499c;
    font-family: "Newsreader", Georgia, "Times New Roman", serif;
    font-size: clamp(48px, 4.9vw, 73px);
    font-style: italic;
    font-weight: 400;
    line-height: 0.94;
    letter-spacing: -0.035em;
    text-transform: none;
}

/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1024px) {
    .cip-quem-somos .cip-quem-titulo-base {
        font-size: clamp(38px, 4.6vw, 51px);
    }

    .cip-quem-somos .cip-quem-titulo-destaque {
        font-size: clamp(44px, 5.2vw, 58px);
    }
}

/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {
    .cip-quem-somos .cip-quem-eyebrow {
        margin-bottom: 22px;
        padding-left: 34px;
    }

    .cip-quem-somos .cip-quem-eyebrow::before {
        width: 23px;
    }

    .cip-quem-somos
    .cip-quem-eyebrow
    .elementor-heading-title {
        font-size: 10px !important;
        letter-spacing: 0.14em !important;
    }

    .cip-quem-somos .cip-quem-titulo-editorial {
        margin-bottom: 25px;
    }

    .cip-quem-somos .cip-quem-titulo-base {
        font-size: clamp(34px, 9.5vw, 44px);
        line-height: 1;
    }

    .cip-quem-somos .cip-quem-titulo-destaque {
        margin-top: 5px;
        font-size: clamp(40px, 11.5vw, 53px);
        line-height: 0.95;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e8df5bd *//* ==========================================================
   CIP ENGENHARIA — SEÇÃO DIFERENCIAIS

   Classes no Elementor:
   Diferenciais: cip-diferenciais
   Inner:        cip-diferenciais-inner
   Imagem:       cip-diferenciais-imagem
   Texto:        cip-diferenciais-conteudo

   Conteúdo do widget Título:
   <span class="cip-titulo-base">Diferenciais que fazem</span>
   <span class="cip-titulo-destaque">a diferença</span>
========================================================== */

.cip-diferenciais {
    --cip-azul: #12384a;
    --cip-azul-editorial: #28499c;
    --cip-lima: #c6d900;
    --cip-dourado: #b88a50;
    --cip-texto: #66737b;
    --cip-borda: rgba(18, 56, 74, 0.15);
    --cip-fundo-lateral: #f3f6f6;

    position: relative;
    padding: 110px 30px;
    background: #fff;
    overflow: hidden;
}

/* Faixa clara atrás da imagem */
.cip-diferenciais::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 0;
    bottom: 0;
    left: 0;
    width: calc((100% - 1280px) / 2 + 360px);
    min-width: 31%;
    background: var(--cip-fundo-lateral);
    pointer-events: none;
}

/* ==========================================================
   CONTAINER INTERNO
========================================================== */

.cip-diferenciais .cip-diferenciais-inner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 0.84fr) minmax(0, 1.16fr);
    gap: clamp(70px, 8vw, 120px);
    align-items: center;
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0;
    overflow: visible;
}

.cip-diferenciais .cip-diferenciais-imagem,
.cip-diferenciais .cip-diferenciais-conteudo {
    min-width: 0;
}

/* ==========================================================
   IMAGEM
========================================================== */

.cip-diferenciais .cip-diferenciais-imagem {
    position: relative;
    width: 100%;
    height: 500px;
    padding: 0;
    overflow: visible;
}

.cip-diferenciais .cip-diferenciais-imagem::after {
    content: "";
    position: absolute;
    z-index: -1;
    top: 18px;
    right: -18px;
    bottom: -18px;
    left: 18px;
    border: 1px solid rgba(18, 56, 74, 0.18);
    border-radius: 3px 3px 38px 3px;
    pointer-events: none;
}

.cip-diferenciais
.cip-diferenciais-imagem
.elementor-widget-image,
.cip-diferenciais
.cip-diferenciais-imagem
.elementor-widget-container {
    width: 100%;
    height: 100%;
}

.cip-diferenciais
.cip-diferenciais-imagem
.elementor-widget-container {
    overflow: hidden;
    border-radius: 3px 3px 38px 3px;
}

.cip-diferenciais .cip-diferenciais-imagem img {
    width: 100%;
    height: 100% !important;
    max-width: none;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.7s ease;
}

.cip-diferenciais .cip-diferenciais-imagem:hover img {
    transform: scale(1.035);
}

/* ==========================================================
   CONTEÚDO
========================================================== */

.cip-diferenciais .cip-diferenciais-conteudo {
    position: relative;
    width: 100%;
    max-width: 670px;
    padding: 0;
}

/*
 * Não criar ::before diretamente em .cip-diferenciais-conteudo.
 * Isso evita o rótulo entrando no meio da lista do Elementor.
 */
.cip-diferenciais .cip-diferenciais-conteudo::before,
.cip-diferenciais .cip-diferenciais-conteudo::after {
    content: none !important;
    display: none !important;
}

/* ==========================================================
   TÍTULO EDITORIAL
========================================================== */

.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-widget-heading {
    position: relative;
    width: 100%;
    margin: 0 0 42px;
    padding: 38px 0 0;
}

/* Rótulo editorial */
.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-widget-heading::before {
    content: "ENGENHARIA COM EXPERIÊNCIA";
    position: absolute;
    top: 0;
    left: 36px;
    color: var(--cip-azul-editorial);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    white-space: nowrap;
}

/* Linha verde antes do rótulo */
.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-widget-heading::after {
    content: "";
    position: absolute;
    top: 6px;
    left: 0;
    width: 25px;
    height: 2px;
    background: var(--cip-lima);
}

.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-heading-title {
    display: block;
    margin: 0;
    padding: 0;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    text-transform: none;
}

.cip-diferenciais .cip-titulo-base {
    display: block;
    color: #17211f;
    font-family: inherit;
    font-size: clamp(42px, 4.3vw, 66px);
    font-style: normal;
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -0.055em;
    text-transform: none;
}

.cip-diferenciais .cip-titulo-destaque {
    display: block;
    margin-top: 4px;
    color: var(--cip-azul-editorial);
    font-family: "Newsreader", Georgia, "Times New Roman", serif;
    font-size: clamp(49px, 5vw, 75px);
    font-style: italic;
    font-weight: 400;
    line-height: 0.94;
    letter-spacing: -0.035em;
    text-transform: none;
}

/* ==========================================================
   LISTA DE ÍCONES
========================================================== */

.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-widget-icon-list {
    width: 100%;
    margin: 0;
}

/* Impede rótulos e pseudo-elementos indevidos na lista */
.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-widget-icon-list::before,
.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-widget-icon-list::after,
.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-icon-list-items::before,
.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-icon-list-items::after {
    content: none !important;
    display: none !important;
}

.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-icon-list-items {
    display: flex !important;
    flex-direction: column;
    width: 100%;
    margin: 0;
    padding: 0;
}

.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-icon-list-item {
    position: relative;
    display: flex !important;
    align-items: center;
    width: 100%;
    min-height: 65px;
    margin: 0 !important;
    padding: 16px 46px 16px 0;
    border-top: 1px solid var(--cip-borda);
    transition:
        padding-left 0.3s ease,
        background-color 0.3s ease;
}

.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-icon-list-item:last-child {
    border-bottom: 1px solid var(--cip-borda);
}

.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-icon-list-item:hover {
    padding-left: 7px;
    background: rgba(18, 56, 74, 0.025);
}

/* Ícone circular */
.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-icon-list-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    margin: 0 14px 0 0;
    padding: 0;
    border-radius: 50%;
    color: var(--cip-azul);
    background: rgba(18, 56, 74, 0.08);
}

.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-icon-list-icon i {
    width: auto;
    color: var(--cip-azul);
    font-size: 13px;
}

.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-icon-list-icon svg {
    width: 13px;
    height: 13px;
    margin: 0;
    fill: var(--cip-azul);
}

/* Texto */
.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-icon-list-text {
    flex: 1 1 auto;
    color: var(--cip-texto);
    font-size: 17px;
    line-height: 1.45;
}

.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-icon-list-text strong {
    color: var(--cip-azul);
    font-weight: 700;
}

/* Seta editorial */
/* CIP — Remove o segundo ícone adicionado pelo CSS */
.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-icon-list-item::after {
    content: none !important;
    display: none !important;
}

/* Reajusta o espaço reservado para a seta */
.cip-diferenciais
.cip-diferenciais-conteudo
.elementor-icon-list-item {
    padding-right: 0 !important;
}

/* ==========================================================
   NOTEBOOK
========================================================== */

@media (min-width: 1025px) and (max-width: 1366px) {
    .cip-diferenciais {
        padding: 90px 40px;
    }

    .cip-diferenciais::before {
        width: 32%;
        min-width: 0;
    }

    .cip-diferenciais .cip-diferenciais-inner {
        max-width: 1160px;
        grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr);
        gap: 72px;
    }

    .cip-diferenciais .cip-diferenciais-imagem {
        height: 455px;
    }

    .cip-diferenciais .cip-titulo-base {
        font-size: clamp(40px, 4vw, 55px);
    }

    .cip-diferenciais .cip-titulo-destaque {
        font-size: clamp(46px, 4.7vw, 64px);
    }
}

/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 1024px) {
    .cip-diferenciais {
        padding: 85px 28px;
    }

    .cip-diferenciais::before {
        width: 34%;
        min-width: 0;
    }

    .cip-diferenciais .cip-diferenciais-inner {
        grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
        gap: 48px;
    }

    .cip-diferenciais .cip-diferenciais-imagem {
        height: 430px;
    }

    .cip-diferenciais
    .cip-diferenciais-conteudo
    .elementor-widget-heading {
        margin-bottom: 34px;
    }

    .cip-diferenciais .cip-titulo-base {
        font-size: clamp(37px, 4.5vw, 48px);
    }

    .cip-diferenciais .cip-titulo-destaque {
        font-size: clamp(43px, 5vw, 56px);
    }

    .cip-diferenciais
    .cip-diferenciais-conteudo
    .elementor-icon-list-text {
        font-size: 15px;
    }
}

/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 767px) {
    .cip-diferenciais {
        padding: 65px 20px;
    }

    .cip-diferenciais::before {
        display: none;
    }

    .cip-diferenciais .cip-diferenciais-inner {
        display: flex;
        flex-direction: column;
        gap: 48px;
    }

    .cip-diferenciais .cip-diferenciais-imagem {
        width: 100%;
        height: 370px;
    }

    .cip-diferenciais .cip-diferenciais-imagem::after {
        display: none;
    }

    .cip-diferenciais .cip-diferenciais-conteudo {
        width: 100%;
        max-width: none;
    }

    .cip-diferenciais
    .cip-diferenciais-conteudo
    .elementor-widget-heading {
        margin-bottom: 30px;
        padding-top: 35px;
    }

    .cip-diferenciais
    .cip-diferenciais-conteudo
    .elementor-widget-heading::before {
        top: 0;
        left: 34px;
        font-size: 10px;
        letter-spacing: 0.14em;
    }

    .cip-diferenciais
    .cip-diferenciais-conteudo
    .elementor-widget-heading::after {
        top: 5px;
        width: 23px;
    }

    .cip-diferenciais .cip-titulo-base {
        font-size: clamp(34px, 9.5vw, 45px);
        line-height: 1;
    }

    .cip-diferenciais .cip-titulo-destaque {
        margin-top: 4px;
        font-size: clamp(41px, 12vw, 54px);
        line-height: 0.95;
    }

    .cip-diferenciais
    .cip-diferenciais-conteudo
    .elementor-icon-list-item {
        min-height: 61px;
        padding: 15px 38px 15px 0;
    }

    .cip-diferenciais
    .cip-diferenciais-conteudo
    .elementor-icon-list-text {
        font-size: 15px;
    }

    .cip-diferenciais
    .cip-diferenciais-conteudo
    .elementor-icon-list-item::after {
        right: 2px;
        font-size: 18px;
    }
}

/* Celulares pequenos */
@media (max-width: 480px) {
    .cip-diferenciais {
        padding-right: 16px;
        padding-left: 16px;
    }

    .cip-diferenciais .cip-diferenciais-imagem {
        height: 315px;
    }

    .cip-diferenciais
    .cip-diferenciais-conteudo
    .elementor-widget-heading::before {
        font-size: 9px;
        letter-spacing: 0.11em;
    }
}

/* ==========================================================
   ACESSIBILIDADE
========================================================== */

@media (prefers-reduced-motion: reduce) {
    .cip-diferenciais .cip-diferenciais-imagem img,
    .cip-diferenciais
    .cip-diferenciais-conteudo
    .elementor-icon-list-item,
    .cip-diferenciais
    .cip-diferenciais-conteudo
    .elementor-icon-list-item::after {
        transition: none;
    }

    .cip-diferenciais .cip-diferenciais-imagem:hover img {
        transform: none;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-66dc299 *//* ==========================================================
   CIP ENGENHARIA — PROJETOS ARQUITETÔNICOS

   Classes no Elementor:
   Container principal: cip-projetos
   Texto introdutório: cip-introducao
   Container inferior: cip-conteudo
   Container da imagem: cip-imagem

   Conteúdo do widget Título:
   <span class="cip-projetos-rotulo">PROJETOS CIP ENGENHARIA</span>
   <span class="cip-projetos-titulo-base">Projetos arquitetônicos</span>
   <span class="cip-projetos-titulo-destaque">e estruturais</span>
========================================================== */

.cip-projetos {
    --cip-azul: #12384a;
    --cip-azul-editorial: #28499c;
    --cip-dourado: #b88a50;
    --cip-texto: #62676b;
    --cip-borda: #dfe3e4;
    --cip-fundo: #f6f6f3;

    position: relative;
    padding: 100px 32px;
    background: var(--cip-fundo);
    overflow: hidden;
}

/* Remove a antiga linha isolada no topo */
.cip-projetos::before {
    content: none;
    display: none;
}

/* Limita a largura interna */
.cip-projetos > .e-con-inner {
    width: 100%;
    max-width: 1280px;
    margin-inline: auto;
}

/* ==========================================================
   TÍTULO EDITORIAL
========================================================== */

/* Widget que contém o título */
.cip-projetos > .e-con-inner > .elementor-widget-heading,
.cip-projetos > .elementor-widget-heading {
    position: relative;
    width: 100%;
    max-width: 1080px;
    margin: 0 0 27px;
}

/* Reseta as configurações globais do título do Elementor */
.cip-projetos
.elementor-widget-heading
.elementor-heading-title {
    display: block;
    margin: 0;
    padding: 0;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    text-transform: none;
}

/* Rótulo superior */
.cip-projetos .cip-projetos-rotulo {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    margin-bottom: 27px;
    color: var(--cip-azul-editorial);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

/* Linha dourada integrada ao rótulo */
.cip-projetos .cip-projetos-rotulo::before {
    content: "";
    flex: 0 0 26px;
    width: 26px;
    height: 2px;
    background: var(--cip-dourado);
}

/* Primeira linha */
.cip-projetos .cip-projetos-titulo-base {
    display: block;
    color: #17211f;
    font-family: inherit;
    font-size: clamp(43px, 4.7vw, 69px);
    font-style: normal;
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -0.055em;
    text-transform: none;
}

/* Segunda linha em itálico */
.cip-projetos .cip-projetos-titulo-destaque {
    display: block;
    margin-top: 4px;
    color: var(--cip-azul-editorial);
    font-family: "Newsreader", Georgia, "Times New Roman", serif;
    font-size: clamp(51px, 5.3vw, 78px);
    font-style: italic;
    font-weight: 400;
    line-height: 0.94;
    letter-spacing: -0.035em;
    text-transform: none;
}

/* ==========================================================
   TEXTO INTRODUTÓRIO
========================================================== */

.cip-projetos .cip-introducao {
    width: 100%;
    max-width: 930px;
    margin: 0 0 56px;
    color: var(--cip-texto);
}

.cip-projetos .cip-introducao,
.cip-projetos .cip-introducao p {
    font-size: 17px;
    line-height: 1.7;
}

.cip-projetos .cip-introducao p {
    margin: 0;
}

/* ==========================================================
   CONTAINER COM ACORDEÃO E IMAGEM
========================================================== */

.cip-projetos .cip-conteudo {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: clamp(36px, 5vw, 76px);
    align-items: center;
    width: 100%;
}

.cip-projetos .cip-conteudo > * {
    min-width: 0;
}

/* ==========================================================
   IMAGEM
========================================================== */

.cip-projetos .cip-imagem {
    position: relative;
    width: 100%;
    min-height: 470px;
    overflow: hidden;
    border-radius: 4px 4px 48px 4px;
    box-shadow: 0 25px 65px rgba(18, 56, 74, 0.12);
}

.cip-projetos .cip-imagem .elementor-widget-image,
.cip-projetos .cip-imagem .elementor-widget-container {
    width: 100%;
    height: 100%;
    min-height: 470px;
}

.cip-projetos .cip-imagem img {
    width: 100%;
    height: 100% !important;
    min-height: 470px;
    max-width: none;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.7s ease;
}

.cip-projetos .cip-imagem:hover img {
    transform: scale(1.035);
}

/* ==========================================================
   ACORDEÃO DO ELEMENTOR
========================================================== */

.cip-projetos .elementor-widget-accordion {
    width: 100%;
}

.cip-projetos .elementor-accordion {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.cip-projetos .elementor-accordion-item {
    overflow: hidden;
    border: 1px solid var(--cip-borda) !important;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(18, 56, 74, 0.04);
    transition:
        border-color 0.3s ease,
        box-shadow 0.3s ease,
        transform 0.3s ease;
}

.cip-projetos .elementor-accordion-item:hover {
    transform: translateY(-2px);
    border-color: rgba(18, 56, 74, 0.3) !important;
    box-shadow: 0 14px 34px rgba(18, 56, 74, 0.08);
}

/* Cabeçalho de cada item */
.cip-projetos .elementor-tab-title {
    display: flex;
    align-items: center;
    padding: 21px 22px !important;
    border: 0 !important;
    color: var(--cip-azul) !important;
    background: #fff;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.35;
    transition:
        color 0.3s ease,
        background-color 0.3s ease;
}

.cip-projetos .elementor-tab-title a {
    color: inherit !important;
    font-size: inherit;
    font-weight: inherit;
    text-decoration: none !important;
}

.cip-projetos .elementor-tab-title.elementor-active {
    color: #fff !important;
    background: var(--cip-azul);
}

/* Ícones + e − */
.cip-projetos .elementor-accordion-icon {
    color: var(--cip-dourado) !important;
}

.cip-projetos .elementor-accordion-icon i,
.cip-projetos .elementor-accordion-icon svg {
    color: inherit !important;
    fill: currentColor !important;
}

.cip-projetos
.elementor-tab-title.elementor-active
.elementor-accordion-icon {
    color: #fff !important;
}

/* Conteúdo aberto */
.cip-projetos .elementor-tab-content {
    padding: 23px 24px 27px !important;
    border: 0 !important;
    color: var(--cip-texto);
    background: #fff;
    font-size: 16px;
    line-height: 1.65;
}

.cip-projetos .elementor-tab-content p {
    margin-top: 0;
}

.cip-projetos .elementor-tab-content p:last-child {
    margin-bottom: 0;
}

/* ==========================================================
   NOTEBOOK
========================================================== */

@media (min-width: 1025px) and (max-width: 1366px) {
    .cip-projetos {
        padding: 90px 40px;
    }

    .cip-projetos > .e-con-inner {
        max-width: 1160px;
    }

    .cip-projetos .cip-projetos-titulo-base {
        font-size: clamp(41px, 4.4vw, 60px);
    }

    .cip-projetos .cip-projetos-titulo-destaque {
        font-size: clamp(48px, 5vw, 68px);
    }

    .cip-projetos .cip-conteudo {
        gap: 55px;
    }

    .cip-projetos .cip-imagem,
    .cip-projetos .cip-imagem .elementor-widget-image,
    .cip-projetos .cip-imagem .elementor-widget-container,
    .cip-projetos .cip-imagem img {
        min-height: 440px;
    }
}

/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 1024px) {
    .cip-projetos {
        padding: 80px 28px;
    }

    .cip-projetos > .e-con-inner > .elementor-widget-heading,
    .cip-projetos > .elementor-widget-heading {
        max-width: 850px;
        margin-bottom: 24px;
    }

    .cip-projetos .cip-projetos-rotulo {
        margin-bottom: 23px;
    }

    .cip-projetos .cip-projetos-titulo-base {
        font-size: clamp(39px, 5vw, 54px);
    }

    .cip-projetos .cip-projetos-titulo-destaque {
        font-size: clamp(45px, 5.8vw, 62px);
    }

    .cip-projetos .cip-conteudo {
        grid-template-columns: 1fr 1fr;
        gap: 34px;
    }

    .cip-projetos .cip-imagem,
    .cip-projetos .cip-imagem .elementor-widget-image,
    .cip-projetos .cip-imagem .elementor-widget-container,
    .cip-projetos .cip-imagem img {
        min-height: 420px;
    }
}

/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 767px) {
    .cip-projetos {
        padding: 64px 20px;
    }

    .cip-projetos > .e-con-inner > .elementor-widget-heading,
    .cip-projetos > .elementor-widget-heading {
        margin-bottom: 22px;
    }

    .cip-projetos .cip-projetos-rotulo {
        gap: 10px;
        margin-bottom: 20px;
        font-size: 10px;
        letter-spacing: 0.14em;
    }

    .cip-projetos .cip-projetos-rotulo::before {
        flex-basis: 23px;
        width: 23px;
    }

    .cip-projetos .cip-projetos-titulo-base {
        font-size: clamp(34px, 9.5vw, 45px);
        line-height: 1;
    }

    .cip-projetos .cip-projetos-titulo-destaque {
        margin-top: 5px;
        font-size: clamp(41px, 11.5vw, 55px);
        line-height: 0.95;
    }

    .cip-projetos .cip-introducao {
        margin-bottom: 34px;
    }

    .cip-projetos .cip-introducao,
    .cip-projetos .cip-introducao p {
        font-size: 15px;
        line-height: 1.65;
    }

    .cip-projetos .cip-conteudo {
        display: flex;
        flex-direction: column-reverse;
        gap: 28px;
    }

    .cip-projetos .cip-imagem,
    .cip-projetos .cip-imagem .elementor-widget-image,
    .cip-projetos .cip-imagem .elementor-widget-container,
    .cip-projetos .cip-imagem img {
        width: 100%;
        min-height: 300px;
    }

    .cip-projetos .cip-imagem {
        border-radius: 4px 4px 28px 4px;
    }

    .cip-projetos .elementor-tab-title {
        padding: 18px !important;
        font-size: 15px;
    }

    .cip-projetos .elementor-tab-content {
        padding: 20px !important;
        font-size: 15px;
    }
}

/* Celulares pequenos */
@media (max-width: 480px) {
    .cip-projetos {
        padding-right: 16px;
        padding-left: 16px;
    }

    .cip-projetos .cip-projetos-rotulo {
        font-size: 9px;
        letter-spacing: 0.11em;
    }
}

/* ==========================================================
   ACESSIBILIDADE
========================================================== */

@media (prefers-reduced-motion: reduce) {
    .cip-projetos .cip-imagem img,
    .cip-projetos .elementor-accordion-item {
        transition: none;
    }

    .cip-projetos .cip-imagem:hover img,
    .cip-projetos .elementor-accordion-item:hover {
        transform: none;
    }
}

/* =====================================================
   CIP — POSIÇÃO DO RÓTULO DO TEXTO
===================================================== */

body .cip-loteamento .cip-loteamento-textos {
    position: relative !important;
}

/* Posiciona o rótulo respeitando o padding do card */
body .cip-loteamento .cip-loteamento-textos::before {
    content: "SOLUÇÕES TÉCNICAS E PRECISAS";

    position: absolute !important;
    top: 25px !important;
    right: auto !important;
    bottom: auto !important;
    left: 46px !important;

    display: block !important;
    width: auto !important;
    max-width: calc(100% - 92px) !important;
    margin: 0 !important;
    padding: 0 !important;

    color: #28499c;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    white-space: normal;
}

/* Abre espaço entre o rótulo e o primeiro parágrafo */
body .cip-loteamento
.cip-loteamento-textos
.elementor-widget-text-editor {
    width: 100% !important;
    padding-top: 24px !important;
}

/* Tablet */
@media (max-width: 1024px) and (min-width: 768px) {
    body .cip-loteamento .cip-loteamento-textos::before {
        top: 21px !important;
        left: 32px !important;
        max-width: calc(100% - 64px) !important;
        font-size: 10px;
    }

    body .cip-loteamento
    .cip-loteamento-textos
    .elementor-widget-text-editor {
        padding-top: 22px !important;
    }
}

/* Mobile */
@media (max-width: 767px) {
    body .cip-loteamento .cip-loteamento-textos::before {
        top: 20px !important;
        left: 27px !important;
        max-width: calc(100% - 54px) !important;
        font-size: 9px;
    }

    body .cip-loteamento
    .cip-loteamento-textos
    .elementor-widget-text-editor {
        padding-top: 23px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-db935d6 *//* ==========================================================
   CIP ENGENHARIA — NOSSOS SERVIÇOS

   Classes CSS no Elementor:
   Serviços:             cip-servicos
   serviços filho:       cip-servicos-inner
   Primeiro Título:      cip-servicos-titulo
   Segundo Título:       cip-servicos-intro
   Container dos cards:  cip-servicos-grid
   Cada card:             cip-servico-card

   Conteúdo sugerido para o primeiro Título:
   <span class="cip-servicos-rotulo">ENGENHARIA, PROJETOS E LICENCIAMENTOS</span>
   <span class="cip-servicos-base">Nossos <em>serviços</em></span>
========================================================== */

.cip-servicos {
    --cip-azul: #12384a;
    --cip-azul-card: #203987;
    --cip-azul-card-hover: #172e72;
    --cip-dourado: #b88a50;
    --cip-verde: #c6d900;
    --cip-texto: #626b70;
    --cip-fundo: #f7f7f4;
    --cip-branco: #ffffff;

    --width: 100% !important;
    position: relative;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 100px 32px 110px;
    background: var(--cip-fundo);
    overflow: hidden;
    isolation: isolate;
}

.cip-servicos::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;
    width: 30%;
    height: 100%;
    pointer-events: none;
    background: rgba(184, 138, 80, 0.045);
}

.cip-servicos::after {
    content: "";
    position: absolute;
    z-index: 0;
    bottom: 0;
    left: max(32px, calc((100% - 1380px) / 2));
    width: 74px;
    height: 4px;
    background: var(--cip-dourado);
}

.cip-servicos .cip-servicos-inner {
    --width: 100% !important;
    position: relative;
    z-index: 1;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 1380px !important;
    margin-inline: auto !important;
}

/* Corrige o wrapper interno criado pelo Elementor */
.cip-servicos
.cip-servicos-inner
> .e-con-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 1380px !important;
    margin-inline: auto !important;
}

.cip-servicos
.cip-servicos-inner
> .e-con-inner
> .elementor-element {
    --width: 100% !important;
    --container-widget-width: 100% !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: none !important;
    align-self: stretch !important;
}

.cip-servicos .cip-servicos-inner .elementor-widget {
    --width: 100% !important;
    --container-widget-width: 100% !important;
    width: 100% !important;
    max-width: none !important;
}

/* ==========================================================
   TÍTULO EDITORIAL
========================================================== */

.cip-servicos .cip-servicos-titulo {
    margin: 0 0 24px;
}

.cip-servicos
.cip-servicos-titulo
.elementor-heading-title {
    display: block;
    width: 100%;
    margin: 0;
    color: var(--cip-azul);
    text-align: left;
    text-transform: none;
}

.cip-servicos .cip-servicos-rotulo {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
    color: var(--cip-dourado);
    font-size: 10px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}

.cip-servicos .cip-servicos-rotulo::before {
    content: "";
    flex: 0 0 28px;
    width: 28px;
    height: 2px;
    background: var(--cip-dourado);
}

.cip-servicos .cip-servicos-base {
    display: block;
    color: var(--cip-azul);
    font-size: clamp(40px, 4.8vw, 68px);
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -0.055em;
}

.cip-servicos .cip-servicos-base em {
    color: var(--cip-azul-card);
    font-family: "Newsreader", Georgia, "Times New Roman", serif;
    font-size: 1.09em;
    font-weight: 500;
}

/* Funciona também se o título permanecer apenas como texto simples */
.cip-servicos
.cip-servicos-titulo
.elementor-heading-title:not(:has(.cip-servicos-base)) {
    font-size: clamp(34px, 4vw, 54px);
    font-weight: 600;
    line-height: 1.05;
    letter-spacing: -0.04em;
    text-transform: uppercase;
}

/* Segundo widget Título usado como introdução */
.cip-servicos .cip-servicos-intro {
    max-width: 970px !important;
    margin: 0 0 48px;
}

.cip-servicos
.cip-servicos-intro
.elementor-heading-title {
    margin: 0;
    color: var(--cip-texto);
    font-size: 17px;
    font-weight: 400;
    line-height: 1.7;
    letter-spacing: 0;
    text-transform: none;
}

/* ==========================================================
   GRADE E CARDS
========================================================== */

.cip-servicos .cip-servicos-grid,
.cip-servicos .cip-servicos-grid > .e-con-inner {
    --width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    width: 100% !important;
    max-width: none !important;
    margin: 0;
    padding: 0;
}

.cip-servicos .cip-servicos-grid > .e-con-inner {
    grid-column: 1 / -1;
}

/* Cada container filho deve preencher a célula inteira do grid */
body .elementor
.cip-servicos
.cip-servicos-grid
> .e-con,
body .elementor
.cip-servicos
.cip-servicos-grid
> .elementor-element,
body .elementor
.cip-servicos
.cip-servicos-grid
> .e-con-inner
> .e-con,
body .elementor
.cip-servicos
.cip-servicos-grid
> .e-con-inner
> .elementor-element {
    --width: 100% !important;
    --flex-grow: 0 !important;
    flex: none !important;
    justify-self: stretch !important;
    align-self: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
}

body .elementor
.cip-servicos
.cip-servicos-grid
> .e-con
> .e-con-inner {
    width: 100% !important;
    max-width: none !important;
}

.cip-servicos .cip-servico-card {
    --width: 100% !important;
    position: relative;
    display: flex !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0;
    min-height: 230px;
    margin: 0;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px 8px 28px 8px;
    background: var(--cip-azul-card);
    box-shadow: 0 14px 35px rgba(18, 56, 74, 0.1);
    overflow: hidden;
    transition:
        transform 0.3s ease,
        background 0.3s ease,
        box-shadow 0.3s ease;
}

.cip-servicos .cip-servico-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 4px;
    background: var(--cip-verde);
    transition: width 0.35s ease;
}

.cip-servicos .cip-servico-card:hover {
    transform: translateY(-7px);
    background: var(--cip-azul-card-hover);
    box-shadow: 0 24px 50px rgba(18, 56, 74, 0.2);
}

.cip-servicos .cip-servico-card:hover::before {
    width: 100%;
}

.cip-servicos
.cip-servico-card
.elementor-widget-icon-box,
.cip-servicos
.cip-servico-card
.elementor-widget-container,
.cip-servicos
.cip-servico-card
.elementor-icon-box-wrapper {
    width: 100% !important;
    height: 100%;
}

.cip-servicos
.cip-servico-card
.elementor-icon-box-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 34px 25px;
    text-align: center;
}

.cip-servicos
.cip-servico-card
.elementor-icon-box-icon {
    margin: 0 0 22px !important;
}

.cip-servicos
.cip-servico-card
.elementor-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    padding: 0;
    color: var(--cip-branco);
    font-size: 52px;
    background: transparent;
    transition:
        color 0.3s ease,
        transform 0.3s ease;
}

.cip-servicos
.cip-servico-card:hover
.elementor-icon {
    color: #dce878;
    transform: scale(1.06);
}

.cip-servicos
.cip-servico-card
.elementor-icon-box-title {
    margin: 0;
    color: var(--cip-branco);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: -0.015em;
    text-transform: uppercase;
}

.cip-servicos
.cip-servico-card
.elementor-icon-box-title a {
    display: block;
    color: inherit;
    text-decoration: none;
}

/* Faz o link do título cobrir todo o card */
.cip-servicos
.cip-servico-card
.elementor-icon-box-title a::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 3;
}

/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 1024px) {
    .cip-servicos {
        padding: 80px 28px 88px;
    }

    .cip-servicos .cip-servicos-grid,
    .cip-servicos .cip-servicos-grid > .e-con-inner {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }

    .cip-servicos .cip-servico-card {
        min-height: 215px;
    }
}

/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 767px) {
    .cip-servicos {
        padding: 64px 20px 72px;
    }

    .cip-servicos .cip-servicos-titulo {
        margin-bottom: 20px;
    }

    .cip-servicos .cip-servicos-rotulo {
        gap: 9px;
        margin-bottom: 15px;
        font-size: 8px;
        letter-spacing: 0.11em;
    }

    .cip-servicos .cip-servicos-rotulo::before {
        flex-basis: 20px;
        width: 20px;
    }

    .cip-servicos .cip-servicos-base {
        font-size: clamp(36px, 11vw, 48px);
    }

    .cip-servicos .cip-servicos-intro {
        margin-bottom: 34px;
    }

    .cip-servicos
    .cip-servicos-intro
    .elementor-heading-title {
        font-size: 15px;
        line-height: 1.65;
    }

    .cip-servicos .cip-servicos-grid,
    .cip-servicos .cip-servicos-grid > .e-con-inner {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .cip-servicos .cip-servico-card {
        min-height: 190px;
        border-radius: 7px 7px 22px 7px;
    }

    .cip-servicos
    .cip-servico-card
    .elementor-icon-box-wrapper {
        padding: 29px 22px;
    }

    .cip-servicos
    .cip-servico-card
    .elementor-icon-box-icon {
        margin-bottom: 17px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .cip-servicos .cip-servico-card,
    .cip-servicos .cip-servico-card::before,
    .cip-servicos .cip-servico-card .elementor-icon {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3428148 *//* ==========================================================
   CIP ENGENHARIA — LOTEAMENTOS E LEVANTAMENTOS

   Classes no Elementor:
   Loteamento: cip-loteamento
   Widget Título: cip-loteamento-titulo
   Inner: cip-loteamento-inner
   Imagem: cip-loteamento-imagem
   Textos: cip-loteamento-textos

   Conteúdo do widget Título:
   <span class="cip-loteamento-rotulo">TOPOGRAFIA E PLANEJAMENTO</span>
   <span class="cip-loteamento-base">Loteamentos e levantamentos</span>
   <span class="cip-loteamento-destaque">topográficos</span>
========================================================== */

.cip-loteamento {
    --cip-azul: #12384a;
    --cip-azul-editorial: #28499c;
    --cip-amarelo: #f3b600;
    --cip-amarelo-claro: #fff5d5;
    --cip-texto: #606d74;
    --cip-borda: rgba(18, 56, 74, 0.14);
    --cip-fundo: #f7f6f1;

    position: relative;
    padding: 105px 32px 115px;
    background: var(--cip-fundo);
    overflow: hidden;
}

/* Faixa amarela decorativa lateral */
.cip-loteamento::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    width: 24%;
    height: 100%;
    background: var(--cip-amarelo);
    opacity: 0.09;
    pointer-events: none;
}

/* Círculo decorativo discreto */
.cip-loteamento::after {
    content: "";
    position: absolute;
    z-index: 0;
    right: -170px;
    bottom: -210px;
    width: 430px;
    height: 430px;
    border: 1px solid rgba(243, 182, 0, 0.28);
    border-radius: 50%;
    pointer-events: none;
}

/* Limite geral para título e conteúdo */
.cip-loteamento > .e-con-inner {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 1280px;
    margin-inline: auto;
}

/* ==========================================================
   TÍTULO EDITORIAL
========================================================== */

.cip-loteamento .cip-loteamento-titulo {
    position: relative;
    width: 100%;
    max-width: 1100px;
    margin: 0 0 62px;
}

.cip-loteamento
.cip-loteamento-titulo
.elementor-heading-title {
    display: block;
    margin: 0;
    padding: 0;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    text-align: left;
    text-transform: none;
}

/* Rótulo */
.cip-loteamento .cip-loteamento-rotulo {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    margin-bottom: 27px;
    color: var(--cip-azul-editorial);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.cip-loteamento .cip-loteamento-rotulo::before {
    content: "";
    flex: 0 0 26px;
    width: 26px;
    height: 2px;
    background: var(--cip-amarelo);
}

/* Primeira linha */
.cip-loteamento .cip-loteamento-base {
    display: block;
    color: #17211f;
    font-family: inherit;
    font-size: clamp(43px, 4.7vw, 68px);
    font-style: normal;
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -0.055em;
    text-transform: none;
}

/* Palavra/linha em destaque */
.cip-loteamento .cip-loteamento-destaque {
    display: block;
    margin-top: 4px;
    color: var(--cip-azul-editorial);
    font-family: "Newsreader", Georgia, "Times New Roman", serif;
    font-size: clamp(51px, 5.3vw, 77px);
    font-style: italic;
    font-weight: 400;
    line-height: 0.94;
    letter-spacing: -0.035em;
    text-transform: none;
}

/* ==========================================================
   CONTAINER DE IMAGEM E TEXTO
========================================================== */

.cip-loteamento .cip-loteamento-inner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 0.94fr) minmax(0, 1.06fr);
    gap: clamp(55px, 7vw, 100px);
    align-items: center;
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0;
    overflow: visible;
}

.cip-loteamento .cip-loteamento-imagem,
.cip-loteamento .cip-loteamento-textos {
    min-width: 0;
}

/* ==========================================================
   IMAGEM
========================================================== */

.cip-loteamento .cip-loteamento-imagem {
    position: relative;
    width: 100%;
    height: 520px;
    padding: 0;
    overflow: visible;
}

/* Moldura deslocada */
.cip-loteamento .cip-loteamento-imagem::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 20px;
    right: -20px;
    bottom: -20px;
    left: 20px;
    border: 1px solid rgba(18, 56, 74, 0.2);
    border-radius: 4px 4px 48px 4px;
    pointer-events: none;
}

/* Marca amarela na imagem */
.cip-loteamento .cip-loteamento-imagem::after {
    content: "";
    position: absolute;
    z-index: 2;
    top: -10px;
    left: -10px;
    width: 70px;
    height: 70px;
    border-top: 4px solid var(--cip-amarelo);
    border-left: 4px solid var(--cip-amarelo);
    pointer-events: none;
}

.cip-loteamento
.cip-loteamento-imagem
.elementor-widget-image,
.cip-loteamento
.cip-loteamento-imagem
.elementor-widget-container {
    width: 100%;
    height: 100%;
}

.cip-loteamento
.cip-loteamento-imagem
.elementor-widget-container {
    overflow: hidden;
    border-radius: 4px 4px 48px 4px;
    box-shadow: 0 25px 65px rgba(18, 56, 74, 0.11);
}

.cip-loteamento .cip-loteamento-imagem img {
    width: 100%;
    height: 100% !important;
    max-width: none;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.7s ease;
}

.cip-loteamento .cip-loteamento-imagem:hover img {
    transform: scale(1.035);
}

/* ==========================================================
   TEXTOS
========================================================== */

.cip-loteamento .cip-loteamento-textos {
    position: relative;
    width: 100%;
    max-width: 640px;
    padding: 42px 42px 42px 46px;
    background: rgba(255, 255, 255, 0.7);
    border-left: 3px solid var(--cip-amarelo);
}

/* Pequeno rótulo acima do texto */
.cip-loteamento .cip-loteamento-textos::before {
    content: "SOLUÇÕES TÉCNICAS E PRECISAS";
    display: block;
    margin-bottom: 20px;
    color: var(--cip-azul-editorial);
    font-size: 11px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.cip-loteamento
.cip-loteamento-textos
.elementor-widget-text-editor {
    color: var(--cip-texto);
}

.cip-loteamento
.cip-loteamento-textos
.elementor-widget-text-editor p {
    margin: 0 0 19px;
    color: inherit;
    font-size: 16px;
    line-height: 1.68;
}

.cip-loteamento
.cip-loteamento-textos
.elementor-widget-text-editor p:last-child {
    margin-bottom: 0;
}

.cip-loteamento
.cip-loteamento-textos
.elementor-widget-text-editor strong {
    color: var(--cip-azul);
    font-weight: 700;
}

/* ==========================================================
   NOTEBOOK
========================================================== */

@media (min-width: 1025px) and (max-width: 1366px) {
    .cip-loteamento {
        padding: 90px 40px 100px;
    }

    .cip-loteamento > .e-con-inner,
    .cip-loteamento .cip-loteamento-inner {
        max-width: 1160px;
    }

    .cip-loteamento .cip-loteamento-titulo {
        margin-bottom: 52px;
    }

    .cip-loteamento .cip-loteamento-base {
        font-size: clamp(40px, 4.4vw, 59px);
    }

    .cip-loteamento .cip-loteamento-destaque {
        font-size: clamp(47px, 5vw, 67px);
    }

    .cip-loteamento .cip-loteamento-inner {
        gap: 70px;
    }

    .cip-loteamento .cip-loteamento-imagem {
        height: 470px;
    }

    .cip-loteamento .cip-loteamento-textos {
        padding: 36px 34px 36px 40px;
    }
}

/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 1024px) {
    .cip-loteamento {
        padding: 80px 28px 90px;
    }

    .cip-loteamento .cip-loteamento-titulo {
        margin-bottom: 45px;
    }

    .cip-loteamento .cip-loteamento-base {
        font-size: clamp(38px, 5vw, 52px);
    }

    .cip-loteamento .cip-loteamento-destaque {
        font-size: clamp(44px, 5.8vw, 60px);
    }

    .cip-loteamento .cip-loteamento-inner {
        grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
        gap: 45px;
    }

    .cip-loteamento .cip-loteamento-imagem {
        height: 430px;
    }

    .cip-loteamento .cip-loteamento-textos {
        padding: 30px 25px 30px 32px;
    }

    .cip-loteamento
    .cip-loteamento-textos
    .elementor-widget-text-editor p {
        font-size: 15px;
        line-height: 1.62;
    }
}

/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 767px) {
    .cip-loteamento {
        padding: 65px 20px 75px;
    }

    .cip-loteamento::before {
        top: auto;
        bottom: 0;
        width: 100%;
        height: 28%;
    }

    .cip-loteamento::after {
        display: none;
    }

    .cip-loteamento .cip-loteamento-titulo {
        margin-bottom: 38px;
    }

    .cip-loteamento .cip-loteamento-rotulo {
        gap: 10px;
        margin-bottom: 20px;
        font-size: 10px;
        letter-spacing: 0.14em;
    }

    .cip-loteamento .cip-loteamento-rotulo::before {
        flex-basis: 23px;
        width: 23px;
    }

    .cip-loteamento .cip-loteamento-base {
        font-size: clamp(34px, 9.5vw, 45px);
        line-height: 1;
    }

    .cip-loteamento .cip-loteamento-destaque {
        margin-top: 5px;
        font-size: clamp(41px, 11.5vw, 54px);
        line-height: 0.95;
    }

    .cip-loteamento .cip-loteamento-inner {
        display: flex;
        flex-direction: column;
        gap: 43px;
    }

    .cip-loteamento .cip-loteamento-imagem {
        width: 100%;
        height: 370px;
    }

    .cip-loteamento .cip-loteamento-imagem::before {
        display: none;
    }

    .cip-loteamento .cip-loteamento-imagem::after {
        top: -7px;
        left: -7px;
        width: 52px;
        height: 52px;
        border-width: 3px;
    }

    .cip-loteamento .cip-loteamento-textos {
        width: 100%;
        max-width: none;
        padding: 28px 23px 28px 27px;
        background: rgba(255, 255, 255, 0.88);
    }

    .cip-loteamento .cip-loteamento-textos::before {
        font-size: 9px;
        letter-spacing: 0.13em;
    }
}

/* Celulares pequenos */
@media (max-width: 480px) {
    .cip-loteamento {
        padding-right: 16px;
        padding-left: 16px;
    }

    .cip-loteamento .cip-loteamento-imagem {
        height: 315px;
    }

    .cip-loteamento .cip-loteamento-textos {
        padding: 25px 20px 25px 23px;
    }
}

/* ==========================================================
   ACESSIBILIDADE
========================================================== */

@media (prefers-reduced-motion: reduce) {
    .cip-loteamento .cip-loteamento-imagem img {
        transition: none;
    }

    .cip-loteamento .cip-loteamento-imagem:hover img {
        transform: none;
    }
}

/* =====================================================
   CIP — CORREÇÃO DE CONFLITOS DO ELEMENTOR
   Loteamentos e Levantamentos
===================================================== */

/* Força o fundo correto em toda a seção */
body .cip-loteamento {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 105px 32px 115px !important;
    background-color: #f7f6f1 !important;
    background-image: none !important;
}

/* Container interno geral criado pelo Elementor */
body .cip-loteamento > .e-con-inner {
    width: 100% !important;
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

/* Título sempre alinhado à esquerda */
body .cip-loteamento .cip-loteamento-titulo {
    width: 100% !important;
    max-width: 1100px !important;
    margin: 0 0 62px !important;
    padding: 0 !important;
    align-self: stretch !important;
    text-align: left !important;
}

body .cip-loteamento
.cip-loteamento-titulo
.elementor-widget-container,
body .cip-loteamento
.cip-loteamento-titulo
.elementor-heading-title {
    width: 100% !important;
    text-align: left !important;
}

/* Corrige o Inner que ficou estreito */
body .cip-loteamento .cip-loteamento-inner {
    --width: 100% !important;
    --content-width: 1280px !important;

    display: grid !important;
    grid-template-columns:
        minmax(0, 0.94fr)
        minmax(0, 1.06fr) !important;

    gap: clamp(55px, 7vw, 100px) !important;
    align-items: center !important;
    align-self: stretch !important;

    width: 100% !important;
    max-width: 1280px !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding: 0 !important;

    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

/* Impede configurações antigas de direção e largura */
body .cip-loteamento
.cip-loteamento-inner.e-con {
    flex-direction: unset !important;
    flex-wrap: unset !important;
}

/* =====================================================
   IMAGEM
===================================================== */

body .cip-loteamento .cip-loteamento-imagem {
    --width: 100% !important;

    position: relative !important;
    display: block !important;
    align-self: stretch !important;

    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: 520px !important;
    min-height: 520px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    clip-path: none !important;
    mask: none !important;
    overflow: visible !important;
}

/* Remove o recorte antigo de todos os níveis */
body .cip-loteamento .cip-loteamento-imagem *,
body .cip-loteamento .cip-loteamento-imagem img {
    clip-path: none !important;
    mask: none !important;
}

body .cip-loteamento
.cip-loteamento-imagem
.elementor-widget-image,
body .cip-loteamento
.cip-loteamento-imagem
.elementor-widget-container {
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 520px !important;
}

body .cip-loteamento
.cip-loteamento-imagem
.elementor-widget-container {
    overflow: hidden !important;
    border-radius: 4px 4px 48px 4px !important;
}

body .cip-loteamento .cip-loteamento-imagem img {
    width: 100% !important;
    max-width: none !important;
    height: 520px !important;
    min-height: 520px !important;
    object-fit: cover !important;
    object-position: center !important;
}

/* =====================================================
   TEXTOS
===================================================== */

body .cip-loteamento .cip-loteamento-textos {
    --width: 100% !important;

    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    align-self: center !important;

    width: 100% !important;
    max-width: 640px !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 42px 42px 42px 46px !important;

    background: rgba(255, 255, 255, 0.76) !important;
    border-left: 3px solid #f3b600 !important;
}

/* Remove largura fixa dos widgets de texto */
body .cip-loteamento
.cip-loteamento-textos
> .elementor-element,
body .cip-loteamento
.cip-loteamento-textos
.elementor-widget-text-editor,
body .cip-loteamento
.cip-loteamento-textos
.elementor-widget-container {
    width: 100% !important;
    max-width: none !important;
}

/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1024px) {
    body .cip-loteamento {
        padding: 80px 28px 90px !important;
    }

    body .cip-loteamento .cip-loteamento-titulo {
        margin-bottom: 45px !important;
    }

    body .cip-loteamento .cip-loteamento-inner {
        grid-template-columns:
            minmax(0, 0.92fr)
            minmax(0, 1.08fr) !important;

        gap: 45px !important;
    }

    body .cip-loteamento .cip-loteamento-imagem,
    body .cip-loteamento
    .cip-loteamento-imagem
    .elementor-widget-image,
    body .cip-loteamento
    .cip-loteamento-imagem
    .elementor-widget-container,
    body .cip-loteamento .cip-loteamento-imagem img {
        height: 430px !important;
        min-height: 430px !important;
    }

    body .cip-loteamento .cip-loteamento-textos {
        padding: 30px 25px 30px 32px !important;
    }
}

/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {
    body .cip-loteamento {
        padding: 65px 20px 75px !important;
    }

    body .cip-loteamento .cip-loteamento-titulo {
        margin-bottom: 38px !important;
    }

    body .cip-loteamento .cip-loteamento-inner {
        display: flex !important;
        flex-direction: column !important;
        gap: 43px !important;
    }

    body .cip-loteamento .cip-loteamento-imagem,
    body .cip-loteamento
    .cip-loteamento-imagem
    .elementor-widget-image,
    body .cip-loteamento
    .cip-loteamento-imagem
    .elementor-widget-container,
    body .cip-loteamento .cip-loteamento-imagem img {
        width: 100% !important;
        height: 370px !important;
        min-height: 370px !important;
    }

    body .cip-loteamento .cip-loteamento-textos {
        width: 100% !important;
        max-width: none !important;
        padding: 28px 23px 28px 27px !important;
    }
}

@media (max-width: 480px) {
    body .cip-loteamento {
        padding-right: 16px !important;
        padding-left: 16px !important;
    }

    body .cip-loteamento .cip-loteamento-imagem,
    body .cip-loteamento
    .cip-loteamento-imagem
    .elementor-widget-image,
    body .cip-loteamento
    .cip-loteamento-imagem
    .elementor-widget-container,
    body .cip-loteamento .cip-loteamento-imagem img {
        height: 315px !important;
        min-height: 315px !important;
    }
}

/* =====================================================
   CIP — CORREÇÃO DE LARGURA INTERMEDIÁRIA
   Evita imagem e texto amontoados
===================================================== */

@media (max-width: 1180px) {

    body .cip-loteamento .cip-loteamento-inner {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 55px !important;

        width: 100% !important;
        max-width: 900px !important;
        margin: 0 auto !important;
    }

    /* Imagem em largura completa */
    body .cip-loteamento .cip-loteamento-imagem {
        width: 100% !important;
        max-width: 760px !important;
        height: 470px !important;
        min-height: 470px !important;
        margin: 0 auto !important;
    }

    body .cip-loteamento
    .cip-loteamento-imagem
    .elementor-widget-image,
    body .cip-loteamento
    .cip-loteamento-imagem
    .elementor-widget-container,
    body .cip-loteamento
    .cip-loteamento-imagem img {
        width: 100% !important;
        height: 470px !important;
        min-height: 470px !important;
    }

    /* Texto passa para baixo da imagem */
    body .cip-loteamento .cip-loteamento-textos {
        width: 100% !important;
        max-width: 760px !important;
        margin: 0 auto !important;
        padding: 42px 46px !important;
    }

    body .cip-loteamento
    .cip-loteamento-textos
    .elementor-widget-text-editor {
        width: 100% !important;
        max-width: none !important;
    }

    body .cip-loteamento
    .cip-loteamento-textos
    .elementor-widget-text-editor p {
        font-size: 16px !important;
        line-height: 1.7 !important;
    }
}

/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    body .cip-loteamento .cip-loteamento-inner {
        gap: 38px !important;
    }

    body .cip-loteamento .cip-loteamento-imagem,
    body .cip-loteamento
    .cip-loteamento-imagem
    .elementor-widget-image,
    body .cip-loteamento
    .cip-loteamento-imagem
    .elementor-widget-container,
    body .cip-loteamento
    .cip-loteamento-imagem img {
        width: 100% !important;
        max-width: none !important;
        height: 360px !important;
        min-height: 360px !important;
    }

    body .cip-loteamento .cip-loteamento-textos {
        width: 100% !important;
        max-width: none !important;
        padding: 29px 25px !important;
    }

    body .cip-loteamento
    .cip-loteamento-textos
    .elementor-widget-text-editor p {
        font-size: 15px !important;
        line-height: 1.65 !important;
    }
}

@media (max-width: 480px) {

    body .cip-loteamento .cip-loteamento-imagem,
    body .cip-loteamento
    .cip-loteamento-imagem
    .elementor-widget-image,
    body .cip-loteamento
    .cip-loteamento-imagem
    .elementor-widget-container,
    body .cip-loteamento .cip-loteamento-imagem img {
        height: 310px !important;
        min-height: 310px !important;
    }
}

/* =====================================================
   CIP — AMPLIA AS COLUNAS NO DESKTOP E TABLET
   Não interfere no mobile
===================================================== */

@media (min-width: 768px) {

    /* Aproveita toda a largura disponível da seção */
    body .cip-loteamento > .e-con-inner {
        width: 100% !important;
        max-width: 1280px !important;
        margin-right: auto !important;
        margin-left: auto !important;
    }

    /* Inner com largura completa */
    body .cip-loteamento .cip-loteamento-inner {
        --width: 100% !important;

        display: grid !important;
        grid-template-columns:
            minmax(0, 1fr)
            minmax(0, 1fr) !important;

        gap: clamp(55px, 6vw, 90px) !important;
        align-items: center !important;
        align-self: stretch !important;

        width: 100% !important;
        max-width: 1280px !important;
        min-width: 0 !important;
        flex: 0 0 100% !important;

        margin: 0 auto !important;
        padding: 0 !important;
    }

    /* Remove as larguras estreitas definidas no Elementor */
    body .cip-loteamento .cip-loteamento-imagem,
    body .cip-loteamento .cip-loteamento-textos {
        --width: 100% !important;

        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        flex: none !important;
        align-self: stretch !important;
    }

    /* Imagem mais ampla */
    body .cip-loteamento .cip-loteamento-imagem {
        height: 520px !important;
        min-height: 520px !important;
    }

    body .cip-loteamento
    .cip-loteamento-imagem
    .elementor-widget-image,
    body .cip-loteamento
    .cip-loteamento-imagem
    .elementor-widget-container,
    body .cip-loteamento .cip-loteamento-imagem img {
        width: 100% !important;
        height: 520px !important;
        min-height: 520px !important;
    }

    /* Texto usa toda a segunda coluna */
    body .cip-loteamento .cip-loteamento-textos {
        height: auto !important;
        min-height: 0 !important;
        padding: 42px 46px !important;
    }

    body .cip-loteamento
    .cip-loteamento-textos
    > .elementor-element,
    body .cip-loteamento
    .cip-loteamento-textos
    .elementor-widget-text-editor,
    body .cip-loteamento
    .cip-loteamento-textos
    .elementor-widget-container {
        width: 100% !important;
        max-width: none !important;
    }
}

/* =====================================================
   CIP — CORREÇÃO DO TÍTULO DE LOTEAMENTOS
===================================================== */

body .cip-loteamento .cip-loteamento-titulo {
    width: 100% !important;
    max-width: 1080px !important;
    margin: 0 0 62px !important;
    padding: 0 !important;
    align-self: flex-start !important;
    text-align: left !important;
}

body .cip-loteamento
.cip-loteamento-titulo
.elementor-widget-container,
body .cip-loteamento
.cip-loteamento-titulo
.elementor-heading-title {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}

/* Mantém o rótulo junto ao título */
body .cip-loteamento .cip-loteamento-rotulo {
    justify-content: flex-start !important;
    margin: 0 0 27px !important;
}

/* Primeira linha */
body .cip-loteamento .cip-loteamento-base {
    display: block;
    width: 100%;
    color: #17211f;
    font-size: clamp(43px, 4.4vw, 65px);
    line-height: 0.99;
    text-align: left;
}

/* Segunda linha */
body .cip-loteamento .cip-loteamento-destaque {
    display: block;
    width: 100%;
    margin: 4px 0 0;
    color: #28499c;
    font-size: clamp(50px, 5vw, 74px);
    line-height: 0.94;
    text-align: left;
}

/* Notebook */
@media (min-width: 768px) and (max-width: 1366px) {
    body .cip-loteamento .cip-loteamento-titulo {
        max-width: 950px !important;
        margin-bottom: 52px !important;
    }

    body .cip-loteamento .cip-loteamento-base {
        font-size: clamp(40px, 4.2vw, 57px);
    }

    body .cip-loteamento .cip-loteamento-destaque {
        font-size: clamp(46px, 4.8vw, 65px);
    }
}

/* Mobile */
@media (max-width: 767px) {
    body .cip-loteamento .cip-loteamento-titulo {
        margin-bottom: 38px !important;
    }

    body .cip-loteamento .cip-loteamento-base {
        font-size: clamp(34px, 9.5vw, 45px);
    }

    body .cip-loteamento .cip-loteamento-destaque {
        font-size: clamp(41px, 11.5vw, 54px);
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1b6640c *//* ==========================================================
   CIP ENGENHARIA — LICENCIAMENTO AMBIENTAL
   Versão consolidada, sem regras duplicadas

   Classes no Elementor:
   Licenciamento:  cip-licenciamento
   Widget Título:  cip-licenciamento-titulo
   Texto + imagem: cip-licenciamento-inner
   Texto:           cip-licenciamento-texto
   Imagem:          cip-licenciamento-imagem

   Conteúdo do widget Título:
   <span class="cip-licenciamento-rotulo">MEIO AMBIENTE E REGULARIZAÇÃO</span>
   <span class="cip-licenciamento-base">Licenciamento</span>
   <span class="cip-licenciamento-destaque">ambiental</span>

   A imagem de fundo permanece configurada no Elementor.
========================================================== */

/* ==========================================================
   1. SEÇÃO E BACKGROUND
========================================================== */

.cip-licenciamento {
    --cip-verde-claro: #a9d46e;
    --cip-verde-vivo: #78b838;
    --cip-verde-escuro: #162d1b;
    --cip-lima: #c6d900;

    position: relative;
    isolation: isolate;
    width: 100%;
    padding: 105px 32px 115px;
    overflow: hidden;

    /*
     * Não usar a propriedade abreviada "background".
     * A imagem permanece definida no Elementor.
     */
    background-position: center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
}

/* Overlay sobre a imagem de fundo */
.cip-licenciamento::before {
    content: "";
    position: absolute;
    z-index: 0;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(12, 29, 16, 0.94) 0%,
        rgba(20, 45, 24, 0.88) 48%,
        rgba(19, 42, 22, 0.72) 100%
    );
    pointer-events: none;
}

/* Luz decorativa discreta */
.cip-licenciamento::after {
    content: "";
    position: absolute;
    z-index: 0;
    top: -230px;
    right: -130px;
    width: 580px;
    height: 580px;
    border-radius: 50%;
    background: radial-gradient(
        circle,
        rgba(136, 196, 72, 0.15) 0%,
        rgba(136, 196, 72, 0) 68%
    );
    pointer-events: none;
}

/* Conteúdo acima do overlay */
.cip-licenciamento > .e-con-inner {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 1340px;
    margin-inline: auto;
}

/* Desativa somente o overlay nativo, não o background */
.cip-licenciamento > .elementor-background-overlay {
    opacity: 0 !important;
}

/* ==========================================================
   2. TÍTULO EDITORIAL
========================================================== */

.cip-licenciamento .cip-licenciamento-titulo {
    position: relative;
    z-index: 1;
    align-self: flex-start;
    width: 100%;
    max-width: 1050px;
    margin: 0 0 48px;
    padding: 0;
}

.cip-licenciamento
.cip-licenciamento-titulo
.elementor-widget-container,
.cip-licenciamento
.cip-licenciamento-titulo
.elementor-heading-title {
    width: 100%;
    margin: 0;
    padding: 0;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    text-align: left;
    text-transform: none;
}

.cip-licenciamento .cip-licenciamento-rotulo {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    margin-bottom: 25px;
    color: var(--cip-verde-claro);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.cip-licenciamento .cip-licenciamento-rotulo::before {
    content: "";
    flex: 0 0 26px;
    width: 26px;
    height: 2px;
    background: var(--cip-lima);
}

.cip-licenciamento .cip-licenciamento-base {
    display: block;
    color: #fff;
    font-family: inherit;
    font-size: clamp(43px, 4.6vw, 68px);
    font-style: normal;
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -0.055em;
    text-transform: none !important;
}

.cip-licenciamento .cip-licenciamento-destaque {
    display: block;
    margin-top: 4px;
    color: var(--cip-verde-claro);
    font-family: "Newsreader", Georgia, "Times New Roman", serif;
    font-size: clamp(51px, 5.2vw, 77px);
    font-style: italic;
    font-weight: 400;
    line-height: 0.94;
    letter-spacing: -0.035em;
    text-transform: none !important;
}

/* ==========================================================
   3. GRID — TEXTO E IMAGEM
========================================================== */

.cip-licenciamento .cip-licenciamento-inner {
    --width: 100%;

    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: clamp(90px, 7vw, 125px);
    align-items: center;
    align-self: stretch;
    width: 100%;
    max-width: 1340px;
    min-width: 0;
    margin: 0 auto;
    padding: 0;
}

.cip-licenciamento .cip-licenciamento-texto,
.cip-licenciamento .cip-licenciamento-imagem {
    --width: 100%;
    width: 100%;
    max-width: none;
    min-width: 0;
}

/* ==========================================================
   4. CARD DE TEXTO
========================================================== */

.cip-licenciamento .cip-licenciamento-texto {
    position: relative;
    grid-column: 1;
    width: 100%;
    max-width: 650px;
    padding: 66px 45px 40px;
    color: rgba(255, 255, 255, 0.9);
    background: rgba(8, 24, 12, 0.48);
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-left: 3px solid var(--cip-verde-vivo);
    border-radius: 3px 3px 30px 3px;
    box-shadow: 0 24px 65px rgba(0, 0, 0, 0.17);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

/* Rótulo alinhado ao texto, sem colar na borda */
.cip-licenciamento .cip-licenciamento-texto::before {
    content: "EXPERIÊNCIA EM PROCESSOS AMBIENTAIS";
    position: absolute;
    top: 27px;
    left: 45px;
    display: block;
    width: calc(100% - 90px);
    margin: 0;
    padding: 0;
    color: var(--cip-verde-claro);
    font-size: 11px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}

.cip-licenciamento
.cip-licenciamento-texto
.elementor-widget-text-editor,
.cip-licenciamento
.cip-licenciamento-texto
.elementor-widget-container {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
    color: inherit;
}

.cip-licenciamento
.cip-licenciamento-texto
.elementor-widget-text-editor p {
    margin: 0 0 18px;
    color: inherit;
    font-size: 16px;
    line-height: 1.67;
}

.cip-licenciamento
.cip-licenciamento-texto
.elementor-widget-text-editor p:last-child {
    margin-bottom: 0;
}

.cip-licenciamento
.cip-licenciamento-texto
.elementor-widget-text-editor strong {
    color: #fff;
    font-weight: 700;
}

/* ==========================================================
   5. COLUNA DA IMAGEM
========================================================== */

.cip-licenciamento .cip-licenciamento-imagem {
    position: relative;
    grid-column: 2;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 520px !important;
    margin: 0 !important;
    padding: 20px !important;
    overflow: visible !important;

    /*
     * Não declarar "background: transparent".
     * Isso preserva um possível background do container.
     */
}

/*
 * A arte original já possui formas circulares.
 * Nenhum círculo adicional é criado com pseudo-elemento.
 */
body .elementor
.cip-licenciamento
.cip-licenciamento-imagem::before,
body .elementor
.cip-licenciamento
.cip-licenciamento-imagem::after {
    content: none !important;
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    background: none !important;
}

body .elementor
.cip-licenciamento
.cip-licenciamento-imagem
.elementor-widget-image,
body .elementor
.cip-licenciamento
.cip-licenciamento-imagem
.elementor-widget-container {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 620px !important;
    margin: 0 auto !important;
    overflow: visible !important;
    opacity: 1 !important;
    visibility: visible !important;
}

body .elementor
.cip-licenciamento
.cip-licenciamento-imagem img {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 620px !important;
    height: auto !important;
    max-height: 520px !important;
    margin: 0 auto !important;
    object-fit: contain !important;
    object-position: center !important;
    opacity: 1 !important;
    visibility: visible !important;
    filter: drop-shadow(0 24px 35px rgba(0, 0, 0, 0.22));
    transition: transform 0.6s ease;
}

/* Reexibe o widget caso uma visibilidade responsiva antiga esteja ativa */
body .elementor
.cip-licenciamento
.cip-licenciamento-imagem
.elementor-widget-image.elementor-hidden-desktop,
body .elementor
.cip-licenciamento
.cip-licenciamento-imagem
.elementor-widget-image.elementor-hidden-tablet,
body .elementor
.cip-licenciamento
.cip-licenciamento-imagem
.elementor-widget-image.elementor-hidden-mobile {
    display: block !important;
}

.cip-licenciamento .cip-licenciamento-imagem:hover img {
    transform: translateY(-5px) scale(1.02);
}

/* ==========================================================
   6. NOTEBOOK
========================================================== */

@media (min-width: 1025px) and (max-width: 1366px) {
    .cip-licenciamento {
        padding: 88px 40px 98px;
    }

    .cip-licenciamento > .e-con-inner,
    .cip-licenciamento .cip-licenciamento-inner {
        max-width: 1160px;
    }

    .cip-licenciamento .cip-licenciamento-titulo {
        max-width: 950px;
        margin-bottom: 45px;
    }

    .cip-licenciamento .cip-licenciamento-inner {
        gap: 75px;
    }

    .cip-licenciamento .cip-licenciamento-texto {
        padding: 62px 38px 36px;
    }

    .cip-licenciamento .cip-licenciamento-texto::before {
        top: 25px;
        left: 38px;
        width: calc(100% - 76px);
    }

    .cip-licenciamento .cip-licenciamento-imagem {
        min-height: 460px;
    }

    .cip-licenciamento
    .cip-licenciamento-imagem
    .elementor-widget-image,
    .cip-licenciamento
    .cip-licenciamento-imagem
    .elementor-widget-container,
    .cip-licenciamento .cip-licenciamento-imagem img {
        max-width: 540px;
    }
}

/* ==========================================================
   7. TABLET E MOBILE
========================================================== */

@media (max-width: 1024px) {
    .cip-licenciamento {
        padding: 76px 28px 86px;
        background-position: 58% center !important;
    }

    .cip-licenciamento::before {
        background: rgba(11, 31, 16, 0.87);
    }

    .cip-licenciamento::after {
        display: none;
    }

    .cip-licenciamento .cip-licenciamento-titulo {
        max-width: none;
        margin-bottom: 40px;
    }

    .cip-licenciamento .cip-licenciamento-base {
        font-size: clamp(38px, 6vw, 54px);
    }

    .cip-licenciamento .cip-licenciamento-destaque {
        font-size: clamp(45px, 7vw, 62px);
    }

    .cip-licenciamento .cip-licenciamento-inner {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 42px;
        max-width: 760px;
    }

    .cip-licenciamento .cip-licenciamento-texto,
    .cip-licenciamento .cip-licenciamento-imagem {
        width: 100%;
        max-width: none;
    }

    .cip-licenciamento .cip-licenciamento-texto {
        order: 1;
        padding: 62px 34px 35px;
    }

    .cip-licenciamento .cip-licenciamento-texto::before {
        top: 24px;
        left: 34px;
        width: calc(100% - 68px);
        font-size: 10px;
    }

    .cip-licenciamento .cip-licenciamento-imagem {
        order: 2;
        min-height: 350px;
        padding: 10px !important;
        margin-inline: auto !important;
    }

    .cip-licenciamento
    .cip-licenciamento-imagem
    .elementor-widget-image,
    .cip-licenciamento
    .cip-licenciamento-imagem
    .elementor-widget-container,
    .cip-licenciamento .cip-licenciamento-imagem img {
        max-width: 460px;
    }
}

@media (max-width: 767px) {
    .cip-licenciamento {
        padding: 62px 20px 72px;
    }

    .cip-licenciamento .cip-licenciamento-titulo {
        margin-bottom: 35px;
    }

    .cip-licenciamento .cip-licenciamento-rotulo {
        gap: 9px;
        margin-bottom: 19px;
        font-size: 9px;
        letter-spacing: 0.12em;
    }

    .cip-licenciamento .cip-licenciamento-rotulo::before {
        flex-basis: 22px;
        width: 22px;
    }

    .cip-licenciamento .cip-licenciamento-base {
        font-size: clamp(34px, 10vw, 45px);
        line-height: 1;
    }

    .cip-licenciamento .cip-licenciamento-destaque {
        margin-top: 5px;
        font-size: clamp(41px, 12vw, 54px);
        line-height: 0.95;
    }

    .cip-licenciamento .cip-licenciamento-inner {
        gap: 36px;
    }

    .cip-licenciamento .cip-licenciamento-texto {
        padding: 55px 24px 29px;
    }

    .cip-licenciamento .cip-licenciamento-texto::before {
        top: 20px;
        left: 24px;
        width: calc(100% - 48px);
        font-size: 9px;
        letter-spacing: 0.11em;
    }

    .cip-licenciamento
    .cip-licenciamento-texto
    .elementor-widget-text-editor p {
        font-size: 15px;
        line-height: 1.65;
    }

    .cip-licenciamento .cip-licenciamento-imagem {
        align-self: center !important;
        min-height: 280px !important;
        margin: 0 auto !important;
        padding: 8px !important;
    }

    .cip-licenciamento
    .cip-licenciamento-imagem
    .elementor-widget-image,
    .cip-licenciamento
    .cip-licenciamento-imagem
    .elementor-widget-container,
    .cip-licenciamento .cip-licenciamento-imagem img {
        display: block !important;
        width: 100% !important;
        max-width: 330px !important;
        margin-inline: auto !important;
        transform: none !important;
    }
}

@media (max-width: 480px) {
    .cip-licenciamento {
        padding-right: 16px;
        padding-left: 16px;
    }

    .cip-licenciamento .cip-licenciamento-imagem {
        min-height: 245px;
    }

    .cip-licenciamento
    .cip-licenciamento-imagem
    .elementor-widget-image,
    .cip-licenciamento
    .cip-licenciamento-imagem
    .elementor-widget-container,
    .cip-licenciamento .cip-licenciamento-imagem img {
        max-width: 290px !important;
    }
}

/* ==========================================================
   8. ACESSIBILIDADE
========================================================== */

@media (prefers-reduced-motion: reduce) {
    .cip-licenciamento .cip-licenciamento-imagem img {
        transition: none;
    }

    .cip-licenciamento .cip-licenciamento-imagem:hover img {
        transform: none;
    }
}
/* Desloca a imagem para a direita no desktop */
@media (min-width: 1025px) {
    .cip-licenciamento .cip-licenciamento-imagem {
        transform: translateX(clamp(25px, 2.5vw, 42px));
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-075728f *//* ==========================================================
   CIP ENGENHARIA — APROVAÇÕES

   Classes no Elementor:
   Aprovações:      cip-aprovacoes
   Textos:          cip-aprovacoes-textos
   Widget Título:   cip-aprovacoes-titulo
   Imagem:          cip-aprovacoes-imagem
   Widget da imagem: cip-aprovacoes-foto

   Conteúdo do widget Título:
   <span class="cip-aprovacoes-rotulo">CETESB · DAEE · ANVISA · BOMBEIROS · PREFEITURAS</span>
   <span class="cip-aprovacoes-base">Aprovações junto aos</span>
   <span class="cip-aprovacoes-destaque">órgãos públicos</span>
========================================================== */

/* ==========================================================
   1. CONTAINER PRINCIPAL
========================================================== */

.cip-aprovacoes {
    --cip-azul: #203987;
    --cip-azul-escuro: #172e72;
    --cip-verde-lima: #c6d900;
    --cip-verde-claro: #e2ec91;
    --cip-texto: rgba(255, 255, 255, 0.9);
    --cip-fundo: #f6f7f7;

    --width: calc(100% - 64px) !important;

    position: relative;
    display: grid !important;
    grid-template-columns: minmax(0, 650px) minmax(0, 650px);
    justify-content: center;
    align-items: center;
    width: calc(100% - 64px) !important;
    max-width: 1380px !important;
    margin: 0 auto !important;
    padding: 105px 50px 115px;
    background: var(--cip-fundo);
    overflow: visible;
    isolation: isolate;
}

/* Fundo em largura total; o conteúdo continua limitado a 1380px */
.cip-aprovacoes::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    background: var(--cip-fundo);
    pointer-events: none;
}

/* Linha decorativa */
.cip-aprovacoes::after {
    content: "";
    position: absolute;
    z-index: 0;
    right: 48px;
    bottom: 45px;
    width: 90px;
    height: 3px;
    background: var(--cip-verde-lima);
    pointer-events: none;
}

/* ==========================================================
   2. CARD DE TEXTOS
========================================================== */

.cip-aprovacoes .cip-aprovacoes-textos {
    --width: calc(100% + 70px);

    position: relative;
    z-index: 3;
    grid-column: 1;
    grid-row: 1;
    align-self: center;
    width: calc(100% + 70px);
    max-width: 690px;
    min-width: 0;
    margin: 0 -70px 0 0;
    padding: 48px 48px 50px;
    color: var(--cip-texto);
    background:
        linear-gradient(
            145deg,
            var(--cip-azul) 0%,
            var(--cip-azul-escuro) 100%
        );
    border-left: 4px solid var(--cip-verde-lima);
    border-radius: 3px 3px 35px 3px;
    box-shadow: 0 30px 70px rgba(14, 36, 88, 0.21);
}

/* ==========================================================
   3. TÍTULO EDITORIAL
========================================================== */

.cip-aprovacoes .cip-aprovacoes-titulo {
    position: relative;
    width: 100%;
    margin: 0 0 31px;
    padding: 0;
}

.cip-aprovacoes
.cip-aprovacoes-titulo
.elementor-widget-container,
.cip-aprovacoes
.cip-aprovacoes-titulo
.elementor-heading-title {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    text-align: left;
    text-transform: none;
}

/* Lista de órgãos */
.cip-aprovacoes .cip-aprovacoes-rotulo {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    width: 100%;
    margin-bottom: 24px;
    color: var(--cip-verde-claro);
    font-size: 10px;
    font-weight: 700;
    line-height: 1.45;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.cip-aprovacoes .cip-aprovacoes-rotulo::before {
    content: "";
    flex: 0 0 24px;
    width: 24px;
    height: 2px;
    margin-top: 6px;
    background: var(--cip-verde-lima);
}

/* Primeira linha */
.cip-aprovacoes .cip-aprovacoes-base {
    display: block;
    color: #fff;
    font-family: inherit;
    font-size: clamp(36px, 3.5vw, 53px);
    font-style: normal;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.05em;
    text-transform: none !important;
}

/* Segunda linha */
.cip-aprovacoes .cip-aprovacoes-destaque {
    display: block;
    margin-top: 5px;
    color: var(--cip-verde-claro);
    font-family: "Newsreader", Georgia, "Times New Roman", serif;
    font-size: clamp(43px, 4.2vw, 62px);
    font-style: italic;
    font-weight: 400;
    line-height: 0.95;
    letter-spacing: -0.035em;
    text-transform: none !important;
}

/* ==========================================================
   4. TEXTO CORRIDO
========================================================== */

.cip-aprovacoes
.cip-aprovacoes-textos
.elementor-widget-text-editor,
.cip-aprovacoes
.cip-aprovacoes-textos
.elementor-widget-text-editor
.elementor-widget-container {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
    color: inherit;
}

.cip-aprovacoes
.cip-aprovacoes-textos
.elementor-widget-text-editor p {
    margin: 0 0 17px;
    color: inherit;
    font-size: 16px;
    line-height: 1.58;
}

.cip-aprovacoes
.cip-aprovacoes-textos
.elementor-widget-text-editor p:last-child {
    margin-bottom: 0;
}

.cip-aprovacoes
.cip-aprovacoes-textos
.elementor-widget-text-editor strong {
    color: #fff;
    font-weight: 700;
}

/* ==========================================================
   5. IMAGEM
========================================================== */

.cip-aprovacoes .cip-aprovacoes-imagem {
    --width: 100%;

    position: relative;
    z-index: 1;
    grid-column: 2;
    grid-row: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    height: 660px;
    min-height: 660px;
    margin: 0;
    padding: 0;
    overflow: hidden;
    border-radius: 3px 3px 45px 3px;
    box-shadow: 0 25px 65px rgba(18, 46, 92, 0.13);
}

/* Pequena moldura deslocada */
.cip-aprovacoes .cip-aprovacoes-imagem::before {
    content: "";
    position: absolute;
    z-index: 3;
    top: 18px;
    right: 18px;
    bottom: 18px;
    left: 18px;
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 2px 2px 35px 2px;
    pointer-events: none;
}

/* Classe aplicada diretamente no widget Imagem */
body .elementor
.cip-aprovacoes
.cip-aprovacoes-foto,
body .elementor
.cip-aprovacoes
.cip-aprovacoes-imagem
.elementor-widget-image {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    margin: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

body .elementor
.cip-aprovacoes
.cip-aprovacoes-foto
.elementor-widget-container,
body .elementor
.cip-aprovacoes
.cip-aprovacoes-imagem
.elementor-widget-image
.elementor-widget-container {
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
}

body .elementor
.cip-aprovacoes
.cip-aprovacoes-foto img,
body .elementor
.cip-aprovacoes
.cip-aprovacoes-imagem
.elementor-widget-image img {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    margin: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    transition: transform 0.7s ease;
}

.cip-aprovacoes
.cip-aprovacoes-imagem:hover
.cip-aprovacoes-foto img {
    transform: scale(1.035);
}

/* ==========================================================
   6. NOTEBOOK
========================================================== */

@media (min-width: 1025px) and (max-width: 1366px) {
    .cip-aprovacoes {
        grid-template-columns: minmax(0, 580px) minmax(0, 580px);
        padding: 90px 40px 100px;
    }

    .cip-aprovacoes .cip-aprovacoes-textos {
        --width: calc(100% + 55px);
        width: calc(100% + 55px);
        max-width: 620px;
        margin-right: -55px;
        padding: 42px 40px 44px;
    }

    .cip-aprovacoes .cip-aprovacoes-imagem {
        height: 590px;
        min-height: 590px;
    }

    .cip-aprovacoes
    .cip-aprovacoes-textos
    .elementor-widget-text-editor p {
        font-size: 15px;
    }
}

/* ==========================================================
   7. TABLET
========================================================== */

@media (max-width: 1024px) {
    .cip-aprovacoes {
        --width: calc(100% - 48px) !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 0.95fr);
        width: calc(100% - 48px) !important;
        padding: 80px 28px 90px;
    }

    .cip-aprovacoes .cip-aprovacoes-textos {
        --width: calc(100% + 35px);
        width: calc(100% + 35px);
        margin-right: -35px;
        padding: 36px 32px 38px;
    }

    .cip-aprovacoes .cip-aprovacoes-base {
        font-size: clamp(32px, 4.5vw, 42px);
    }

    .cip-aprovacoes .cip-aprovacoes-destaque {
        font-size: clamp(39px, 5.4vw, 49px);
    }

    .cip-aprovacoes .cip-aprovacoes-imagem {
        height: 550px;
        min-height: 550px;
    }

    .cip-aprovacoes
    .cip-aprovacoes-textos
    .elementor-widget-text-editor p {
        font-size: 15px;
        line-height: 1.55;
    }
}

/* ==========================================================
   8. MOBILE
========================================================== */

@media (max-width: 767px) {
    .cip-aprovacoes {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0;
        --width: calc(100% - 32px) !important;
        width: calc(100% - 32px) !important;
        max-width: none !important;
        margin: 0 auto !important;
        padding: 64px 20px 72px;
        overflow: visible;
    }

    /* Também cobre estruturas em que o Elementor cria e-con-inner */
    .cip-aprovacoes > .e-con-inner {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .cip-aprovacoes::after {
        right: 20px;
        bottom: 30px;
        width: 60px;
    }

    /* No mobile a imagem aparece primeiro */
    .cip-aprovacoes .cip-aprovacoes-imagem {
        --width: 100% !important;
        order: 1;
        grid-column: auto !important;
        grid-row: auto !important;
        flex: 0 0 auto !important;
        align-self: stretch !important;
        width: 100% !important;
        max-width: none !important;
        height: 365px;
        min-height: 365px;
        margin: 0;
        border-radius: 3px 3px 28px 3px;
    }

    /* Card entra no fluxo e sobrepõe levemente a imagem */
    .cip-aprovacoes .cip-aprovacoes-textos {
        --width: calc(100% - 20px) !important;

        order: 2;
        grid-column: auto !important;
        grid-row: auto !important;
        flex: 0 0 auto !important;
        align-self: center !important;
        width: calc(100% - 20px) !important;
        max-width: none !important;
        margin: -38px 10px 0;
        padding: 34px 25px 36px;
        border-radius: 3px 3px 25px 3px;
    }

    .cip-aprovacoes .cip-aprovacoes-titulo {
        --width: 100% !important;
        width: 100% !important;
        max-width: none !important;
        margin-bottom: 26px;
    }

    .cip-aprovacoes
    .cip-aprovacoes-textos
    .elementor-widget,
    .cip-aprovacoes
    .cip-aprovacoes-textos
    .elementor-widget-container {
        --width: 100% !important;
        --container-widget-width: 100% !important;
        width: 100% !important;
        max-width: none !important;
    }

    .cip-aprovacoes .cip-aprovacoes-rotulo {
        gap: 9px;
        margin-bottom: 19px;
        font-size: 8px;
        line-height: 1.45;
        letter-spacing: 0.1em;
    }

    .cip-aprovacoes .cip-aprovacoes-rotulo::before {
        flex-basis: 20px;
        width: 20px;
    }

    .cip-aprovacoes .cip-aprovacoes-base {
        font-size: clamp(32px, 9.5vw, 42px);
        line-height: 1;
    }

    .cip-aprovacoes .cip-aprovacoes-destaque {
        margin-top: 5px;
        font-size: clamp(38px, 11.5vw, 50px);
    }

    .cip-aprovacoes
    .cip-aprovacoes-textos
    .elementor-widget-text-editor p {
        font-size: 15px;
        line-height: 1.6;
    }
}

/* Celulares pequenos */
@media (max-width: 480px) {
    .cip-aprovacoes {
        padding-right: 16px;
        padding-left: 16px;
    }

    .cip-aprovacoes .cip-aprovacoes-imagem {
        height: 310px;
        min-height: 310px;
    }

    .cip-aprovacoes .cip-aprovacoes-textos {
        --width: calc(100% - 12px) !important;
        width: calc(100% - 12px) !important;
        margin-right: 6px;
        margin-left: 6px;
        padding: 30px 21px 32px;
    }
}

/* ==========================================================
   9. ACESSIBILIDADE
========================================================== */

@media (prefers-reduced-motion: reduce) {
    .cip-aprovacoes .cip-aprovacoes-foto img {
        transition: none;
    }

    .cip-aprovacoes
    .cip-aprovacoes-imagem:hover
    .cip-aprovacoes-foto img {
        transform: none;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-16fb44e *//* ==========================================================
   CIP ENGENHARIA — NOSSOS CLIENTES

   Classes CSS no Elementor:
   Container:       cip-clientes
   Widget Título:   cip-clientes-titulo
   Editor de texto: cip-clientes-texto
   Widget Gallery:  cip-clientes-galeria

   Conteúdo sugerido para o widget Título:
   <span class="cip-clientes-rotulo">PARCERIAS CONSTRUÍDAS COM CONFIANÇA</span>
   <span class="cip-clientes-base">Nossos <em>clientes</em></span>
========================================================== */

.cip-clientes {
    --cip-clientes-fundo: #29434f;
    --cip-clientes-azul: #12384a;
    --cip-clientes-dourado: #b88a50;
    --cip-clientes-verde: #c6d900;
    --cip-clientes-branco: #ffffff;
    --cip-clientes-texto: rgba(255, 255, 255, 0.82);
    --cip-clientes-borda: rgba(255, 255, 255, 0.12);

    --width: 100% !important;
    position: relative;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 100px 32px 108px;
    align-items: center;
    background: var(--cip-clientes-fundo);
    overflow: hidden;
    isolation: isolate;
}

/* Textura discreta no fundo */
.cip-clientes::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(
            circle at 8% 12%,
            rgba(255, 255, 255, 0.055),
            transparent 24%
        ),
        linear-gradient(
            120deg,
            rgba(255, 255, 255, 0.025),
            transparent 42%
        );
}

/* Limite interno quando o container usa e-con-inner */
.cip-clientes > .e-con-inner {
    width: 100% !important;
    max-width: 1380px !important;
    margin-inline: auto !important;
}

/* Widgets diretos centralizados quando não existe e-con-inner */
.cip-clientes > .elementor-element {
    width: 100%;
    max-width: 1380px;
    margin-inline: auto;
}

/* ==========================================================
   TÍTULO EDITORIAL
========================================================== */

.cip-clientes .cip-clientes-titulo {
    margin: 0 auto 25px;
}

.cip-clientes
.cip-clientes-titulo
.elementor-widget-container,
.cip-clientes
.cip-clientes-titulo
.elementor-heading-title {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    color: var(--cip-clientes-branco);
    text-align: left;
    text-transform: none;
}

.cip-clientes .cip-clientes-rotulo {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
    color: var(--cip-clientes-verde);
    font-size: 11px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}

.cip-clientes .cip-clientes-rotulo::before {
    content: "";
    flex: 0 0 28px;
    width: 28px;
    height: 2px;
    background: var(--cip-clientes-verde);
}

.cip-clientes .cip-clientes-base {
    display: block;
    color: var(--cip-clientes-branco);
    font-size: clamp(38px, 4.5vw, 64px);
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.05em;
}

.cip-clientes .cip-clientes-base em {
    color: #dce878;
    font-family: "Newsreader", Georgia, "Times New Roman", serif;
    font-size: 1.12em;
    font-weight: 500;
    line-height: 0.9;
}

/* Funciona também se o título continuar apenas como “NOSSOS CLIENTES” */
.cip-clientes
.cip-clientes-titulo
.elementor-heading-title:not(:has(.cip-clientes-base)) {
    color: var(--cip-clientes-branco);
    font-size: clamp(34px, 4vw, 54px);
    font-weight: 600;
    line-height: 1.05;
    letter-spacing: -0.035em;
    text-transform: uppercase;
}

/* ==========================================================
   TEXTO INTRODUTÓRIO
========================================================== */

.cip-clientes .cip-clientes-texto {
    margin: 0 auto 46px;
}

.cip-clientes
.cip-clientes-texto
.elementor-widget-container {
    max-width: 1060px;
}

.cip-clientes
.cip-clientes-texto,
.cip-clientes
.cip-clientes-texto p {
    color: var(--cip-clientes-texto);
    font-size: 16px;
    line-height: 1.7;
}

.cip-clientes
.cip-clientes-texto p {
    margin: 0;
}

/* ==========================================================
   GALERIA DE LOGOS
========================================================== */

.cip-clientes .cip-clientes-galeria {
    margin: 0 auto;
}

.cip-clientes
.cip-clientes-galeria
.gallery {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 20px;
    margin: 0 !important;
}

.cip-clientes
.cip-clientes-galeria
.gallery-item {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.cip-clientes
.cip-clientes-galeria
.gallery-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 124px;
    padding: 20px 24px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(7, 23, 31, 0.1);
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

.cip-clientes
.cip-clientes-galeria
.gallery-icon:hover {
    transform: translateY(-4px);
    border-color: rgba(198, 217, 0, 0.7);
    box-shadow: 0 18px 38px rgba(7, 23, 31, 0.2);
}

.cip-clientes
.cip-clientes-galeria
.gallery-icon img {
    display: block;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 76px !important;
    margin: auto;
    border: 0 !important;
    object-fit: contain;
    filter: saturate(0.9);
    transition:
        filter 0.3s ease,
        transform 0.3s ease;
}

.cip-clientes
.cip-clientes-galeria
.gallery-icon:hover img {
    filter: saturate(1);
    transform: scale(1.025);
}

.cip-clientes
.cip-clientes-galeria
figcaption {
    display: none;
}

/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 1024px) {
    .cip-clientes {
        padding: 80px 28px 88px;
    }

    .cip-clientes
    .cip-clientes-galeria
    .gallery {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 16px;
    }

    .cip-clientes
    .cip-clientes-galeria
    .gallery-icon {
        height: 116px;
    }
}

/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 767px) {
    .cip-clientes {
        padding: 64px 20px 72px;
    }

    .cip-clientes .cip-clientes-titulo {
        margin-bottom: 20px;
    }

    .cip-clientes .cip-clientes-rotulo {
        gap: 9px;
        margin-bottom: 15px;
        font-size: 8px;
        letter-spacing: 0.11em;
    }

    .cip-clientes .cip-clientes-rotulo::before {
        flex-basis: 20px;
        width: 20px;
    }

    .cip-clientes .cip-clientes-base {
        font-size: clamp(34px, 10.5vw, 46px);
    }

    .cip-clientes .cip-clientes-texto {
        margin-bottom: 34px;
    }

    .cip-clientes
    .cip-clientes-texto,
    .cip-clientes
    .cip-clientes-texto p {
        font-size: 15px;
        line-height: 1.65;
    }

    .cip-clientes
    .cip-clientes-galeria
    .gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .cip-clientes
    .cip-clientes-galeria
    .gallery-icon {
        height: 100px;
        padding: 17px 15px;
        border-radius: 6px;
    }

    .cip-clientes
    .cip-clientes-galeria
    .gallery-icon img {
        max-height: 62px !important;
    }
}

@media (max-width: 380px) {
    .cip-clientes
    .cip-clientes-galeria
    .gallery {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    .cip-clientes
    .cip-clientes-galeria
    .gallery-icon,
    .cip-clientes
    .cip-clientes-galeria
    .gallery-icon img {
        transition: none;
    }
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-7443ea1 */.elementor-kit-8 a {
    color: #555;
    font-family: montserrat,Sans-serif;
    font-size: 17px;
    font-weight: 400;
    line-height: 24px;
}
.elementor-kit-8 h3 {
    color: #555;
   font-family: montserrat,Sans-serif;
    font-size: 17px;
    font-weight: 400;
    line-height: 45px;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6789020 *//* ==========================================================
   CIP ENGENHARIA — CONTATO

   Estrutura e classes CSS no Elementor:

   Container Contato:          cip-contato
   Container Textos e ícones:  cip-contato-info
   Título “Fale conosco”:      cip-contato-titulo
   Container Formulário:       cip-contato-formulario
   Título do formulário:       cip-formulario-titulo
   Widget Form:                cip-contato-form

   O mapa deve ficar em um container separado, imediatamente
   acima desta seção. O widget HTML com JavaScript não recebe
   classe nem formatação neste arquivo.
========================================================== */

.cip-contato {
    --cip-azul: #12384a;
    --cip-azul-claro: #294957;
    --cip-dourado: #b88a50;
    --cip-amarelo: #f4bd18;
    --cip-verde: #7cab39;
    --cip-texto: #5f686d;
    --cip-fundo: #f5f6f5;
    --cip-branco: #ffffff;
    --cip-borda: #d9dfe1;

    --width: 100% !important;
    position: relative;
    z-index: 3;
    display: flex !important;
    flex-direction: row;
    gap: 0;
    align-items: start;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 78px max(32px, calc((100% - 1380px) / 2)) 100px;
    background: var(--cip-fundo);
    overflow: visible;
}

/* ==========================================================
   COLUNA DE INFORMAÇÕES
========================================================== */

.cip-contato .cip-contato-info {
    --width: 50% !important;
    flex: 0 0 50% !important;
    width: 50% !important;
    max-width: none !important;
    margin: 0;
    padding: 0 clamp(42px, 5vw, 76px) 0 0;
}

.cip-contato .cip-contato-titulo {
    position: relative;
    margin: 0 0 29px;
    padding-top: 20px;
}

.cip-contato .cip-contato-titulo::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 48px;
    height: 3px;
    background: var(--cip-dourado);
}

.cip-contato
.cip-contato-titulo
.elementor-heading-title {
    margin: 0;
    color: var(--cip-azul);
    font-size: clamp(34px, 3.3vw, 48px);
    font-weight: 600;
    line-height: 1.05;
    letter-spacing: -0.04em;
    text-transform: none;
}

/* Caixas de ícone da coluna esquerda */
.cip-contato
.cip-contato-info
.elementor-widget-icon-box {
    margin: 0;
    padding: 17px 0;
    border-bottom: 1px solid rgba(18, 56, 74, 0.11);
}

.cip-contato
.cip-contato-info
.elementor-widget-icon-box:last-child {
    border-bottom: 0;
}

.cip-contato
.cip-contato-info
.elementor-icon-box-wrapper {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 13px;
    align-items: start;
    text-align: left;
}

.cip-contato
.cip-contato-info
.elementor-icon-box-icon {
    margin: 2px 0 0 !important;
}

.cip-contato
.cip-contato-info
.elementor-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    color: var(--cip-amarelo);
    font-size: 25px;
    background: transparent;
}

.cip-contato
.cip-contato-info
.elementor-icon-box-title {
    margin: 0 0 3px;
    color: var(--cip-azul);
    font-size: 17px;
    font-weight: 700;
    line-height: 1.3;
}

.cip-contato
.cip-contato-info
.elementor-icon-box-description {
    margin: 0;
    color: var(--cip-texto);
    font-size: 15px;
    line-height: 1.55;
}

.cip-contato
.cip-contato-info
a {
    color: inherit;
    text-decoration: none;
}

/* ==========================================================
   CARD DO FORMULÁRIO SOBRE O MAPA
========================================================== */

.cip-contato .cip-contato-formulario {
    --width: 50% !important;
    position: relative;
    z-index: 6;
    flex: 0 0 50% !important;
    width: 50% !important;
    max-width: none !important;
    margin: -170px 0 0;
    padding: 45px 42px 46px;
    border: 1px solid rgba(18, 56, 74, 0.08);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow:
        0 28px 70px rgba(18, 56, 74, 0.16),
        0 5px 15px rgba(18, 56, 74, 0.08);
}

.cip-contato .cip-formulario-titulo {
    margin: 0 0 29px;
}

.cip-contato
.cip-formulario-titulo
.elementor-heading-title {
    margin: 0;
    color: var(--cip-azul);
    font-size: clamp(28px, 2.5vw, 38px);
    font-weight: 600;
    line-height: 1.12;
    letter-spacing: -0.025em;
    text-align: center;
    text-transform: none;
}

/* Atinge somente o widget Form, nunca o widget HTML/JavaScript */
.cip-contato
.cip-contato-form
.elementor-form {
    display: grid;
    gap: 13px;
}

.cip-contato
.cip-contato-form
.elementor-form-fields-wrapper {
    margin: 0 -6px;
}

.cip-contato
.cip-contato-form
.elementor-field-group {
    margin-bottom: 13px !important;
    padding-right: 6px !important;
    padding-left: 6px !important;
}

.cip-contato
.cip-contato-form
input.elementor-field,
.cip-contato
.cip-contato-form
select.elementor-field,
.cip-contato
.cip-contato-form
textarea.elementor-field {
    min-height: 48px;
    padding: 12px 15px !important;
    border: 1px solid var(--cip-borda) !important;
    border-radius: 5px !important;
    color: var(--cip-azul) !important;
    font-size: 14px;
    line-height: 1.4;
    background: #fff !important;
    box-shadow: none !important;
    transition:
        border-color 0.25s ease,
        box-shadow 0.25s ease;
}

.cip-contato
.cip-contato-form
textarea.elementor-field {
    min-height: 130px;
    resize: vertical;
}

.cip-contato
.cip-contato-form
input.elementor-field::placeholder,
.cip-contato
.cip-contato-form
textarea.elementor-field::placeholder {
    color: #9aa2a6;
    opacity: 1;
}

.cip-contato
.cip-contato-form
input.elementor-field:focus,
.cip-contato
.cip-contato-form
select.elementor-field:focus,
.cip-contato
.cip-contato-form
textarea.elementor-field:focus {
    border-color: var(--cip-dourado) !important;
    outline: 0;
    box-shadow: 0 0 0 3px rgba(184, 138, 80, 0.13) !important;
}

/* reCAPTCHA: preserva as dimensões originais do Google */
.cip-contato
.cip-contato-form
.elementor-field-type-recaptcha,
.cip-contato
.cip-contato-form
.elementor-field-type-recaptcha_v3 {
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    margin-bottom: 13px !important;
    padding: 0 6px !important;
    border: 0 !important;
    background: transparent !important;
    overflow: visible !important;
}

.cip-contato
.cip-contato-form
.elementor-field-type-recaptcha
.elementor-field,
.cip-contato
.cip-contato-form
.elementor-field-type-recaptcha_v3
.elementor-field,
.cip-contato
.cip-contato-form
.elementor-g-recaptcha,
.cip-contato
.cip-contato-form
.g-recaptcha {
    width: auto !important;
    max-width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.cip-contato
.cip-contato-form
.g-recaptcha > div,
.cip-contato
.cip-contato-form
.g-recaptcha iframe {
    max-width: 100% !important;
}

.cip-contato
.cip-contato-form
.elementor-field-type-submit {
    margin-top: 2px;
}

.cip-contato
.cip-contato-form
.elementor-button {
    width: 100%;
    min-height: 50px;
    border: 0;
    border-radius: 6px;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    background: linear-gradient(
        90deg,
        var(--cip-verde),
        #c8a43c
    );
    box-shadow: 0 10px 24px rgba(124, 171, 57, 0.19);
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        filter 0.25s ease;
}

.cip-contato
.cip-contato-form
.elementor-button:hover {
    transform: translateY(-2px);
    filter: brightness(1.04);
    box-shadow: 0 14px 28px rgba(124, 171, 57, 0.27);
}

.cip-contato
.cip-contato-form
.elementor-message {
    margin: 13px 6px 0;
    font-size: 14px;
}

/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 1024px) {
    .cip-contato {
        padding: 70px 28px 84px;
    }

    .cip-contato .cip-contato-info {
        padding-right: 36px;
    }

    .cip-contato .cip-contato-formulario {
        margin-top: -135px;
        padding: 38px 32px 40px;
    }
}

/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 767px) {
    .cip-contato {
        display: flex !important;
        flex-direction: column;
        gap: 38px;
        padding: 58px 20px 70px;
        overflow: hidden;
    }

    .cip-contato .cip-contato-info,
    .cip-contato .cip-contato-formulario {
        --width: 100% !important;
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: none !important;
        margin-right: 0;
        margin-left: 0;
    }

    .cip-contato .cip-contato-info {
        padding-right: 0;
    }

    .cip-contato .cip-contato-titulo {
        margin-bottom: 20px;
    }

    .cip-contato
    .cip-contato-titulo
    .elementor-heading-title {
        font-size: clamp(32px, 10vw, 42px);
    }

    .cip-contato
    .cip-contato-info
    .elementor-widget-icon-box {
        padding: 14px 0;
    }

    /* Sem sobreposição no mobile para evitar corte e desalinhamento */
    .cip-contato .cip-contato-formulario {
        margin-top: 0;
        padding: 32px 22px 34px;
        border-radius: 10px;
    }

    .cip-contato
    .cip-formulario-titulo
    .elementor-heading-title {
        font-size: clamp(27px, 8vw, 34px);
    }
}

@media (max-width: 380px) {
    .cip-contato {
        padding-right: 16px;
        padding-left: 16px;
    }

    .cip-contato .cip-contato-formulario {
        padding-right: 18px;
        padding-left: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .cip-contato
    .cip-contato-form
    .elementor-field,
    .cip-contato
    .cip-contato-form
    .elementor-button {
        transition: none;
    }
}/* End custom CSS */