.elementor-5118 .elementor-element.elementor-element-f8ecaad{--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-5118 .elementor-element.elementor-element-74e2257 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5118 .elementor-element.elementor-element-7f1fc945{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--gap:60px 60px;--row-gap:60px;--column-gap:60px;border-style:solid;--border-style:solid;border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:#B9B9B9;--border-color:#B9B9B9;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:99;}.elementor-5118 .elementor-element.elementor-element-7f1fc945:not(.elementor-motion-effects-element-type-background), .elementor-5118 .elementor-element.elementor-element-7f1fc945 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF1A;}.elementor-5118 .elementor-element.elementor-element-7f1fc945.e-con{--align-self:center;}.elementor-5118 .elementor-element.elementor-element-2b82e0ca{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;--gap:60px 60px;--row-gap:60px;--column-gap:60px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:3px;--padding-bottom:3px;--padding-left:3px;--padding-right:3px;}.elementor-5118 .elementor-element.elementor-element-2b82e0ca.e-con{--align-self:center;}.elementor-5118 .elementor-element.elementor-element-3312ed1a .elementor-button{background-color:#FF6801;font-family:"Montserrat", Sans-serif;font-size:13px;font-weight:500;fill:#FFFFFF;color:#FFFFFF;border-radius:7px 7px 7px 7px;padding:10px 10px 10px 10px;}.elementor-5118 .elementor-element.elementor-element-3312ed1a > .elementor-widget-container{margin:0px 170px 0px 0px;padding:4px 4px 4px 4px;}.elementor-5118 .elementor-element.elementor-element-3312ed1a.elementor-element{--align-self:center;--order:99999 /* order end hack */;}.elementor-5118 .elementor-element.elementor-element-3312ed1a .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-5118 .elementor-element.elementor-element-3312ed1a .elementor-button .elementor-button-content-wrapper{gap:15px;}.elementor-5118 .elementor-element.elementor-element-3cbdce3{--display:flex;--position:absolute;--min-height:40px;--justify-content:center;--overflow:hidden;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;top:calc(50% + -20.00px);--z-index:0;}.elementor-5118 .elementor-element.elementor-element-3cbdce3.e-con{--align-self:center;}body:not(.rtl) .elementor-5118 .elementor-element.elementor-element-3cbdce3{left:32px;}body.rtl .elementor-5118 .elementor-element.elementor-element-3cbdce3{right:32px;}.elementor-5118 .elementor-element.elementor-element-75838bb5 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5118 .elementor-element.elementor-element-75838bb5 img{max-width:71%;border-radius:0px 0px 0px 0px;}.elementor-5118 .elementor-element.elementor-element-784127cf{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:60px 60px;--row-gap:60px;--column-gap:60px;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;--z-index:25;}.elementor-5118 .elementor-element.elementor-element-784127cf:not(.elementor-motion-effects-element-type-background), .elementor-5118 .elementor-element.elementor-element-784127cf > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #FFFFFF 0%, #F5F5F7 100%);}.elementor-5118 .elementor-element.elementor-element-b5008ba{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:60px 60px;--row-gap:60px;--column-gap:60px;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-5118 .elementor-element.elementor-element-154b2517 .elementor-button{background-color:#FF6801;font-family:"Montserrat", Sans-serif;font-size:15px;font-weight:500;}.elementor-5118 .elementor-element.elementor-element-154b2517.elementor-element{--align-self:center;}.elementor-5118 .elementor-element.elementor-element-154b2517 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-5118 .elementor-element.elementor-element-154b2517 .elementor-button .elementor-button-content-wrapper{gap:25px;}.elementor-5118 .elementor-element.elementor-element-d8fb3c7{--display:flex;--min-height:0px;--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;}.elementor-5118 .elementor-element.elementor-element-d8fb3c7:not(.elementor-motion-effects-element-type-background), .elementor-5118 .elementor-element.elementor-element-d8fb3c7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F5F6;}.elementor-5118 .elementor-element.elementor-element-b80d0e9{--display:flex;--min-height:660px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:none;--border-style:none;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:0;}.elementor-5118 .elementor-element.elementor-element-3f6ac0e{--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;}.elementor-5118 .elementor-element.elementor-element-dcebd3e{--display:flex;--justify-content:center;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:20px 20px 20px 20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:5px;--padding-bottom:5px;--padding-left:0px;--padding-right:0px;}.elementor-5118 .elementor-element.elementor-element-dcebd3e:not(.elementor-motion-effects-element-type-background), .elementor-5118 .elementor-element.elementor-element-dcebd3e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-5118 .elementor-element.elementor-element-dcebd3e.e-con{--align-self:flex-start;}.elementor-5118 .elementor-element.elementor-element-34f6cda > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5118 .elementor-element.elementor-element-34f6cda .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-bottom:calc(0px/2);}.elementor-5118 .elementor-element.elementor-element-34f6cda .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-top:calc(0px/2);}.elementor-5118 .elementor-element.elementor-element-34f6cda .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-right:calc(0px/2);margin-left:calc(0px/2);}.elementor-5118 .elementor-element.elementor-element-34f6cda .elementor-icon-list-items.elementor-inline-items{margin-right:calc(-0px/2);margin-left:calc(-0px/2);}body.rtl .elementor-5118 .elementor-element.elementor-element-34f6cda .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{left:calc(-0px/2);}body:not(.rtl) .elementor-5118 .elementor-element.elementor-element-34f6cda .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{right:calc(-0px/2);}.elementor-5118 .elementor-element.elementor-element-34f6cda .elementor-icon-list-icon i{color:#F0D808;transition:color 0.3s;}.elementor-5118 .elementor-element.elementor-element-34f6cda .elementor-icon-list-icon svg{fill:#F0D808;transition:fill 0.3s;}.elementor-5118 .elementor-element.elementor-element-34f6cda{--e-icon-list-icon-size:19px;--icon-vertical-offset:0px;}.elementor-5118 .elementor-element.elementor-element-34f6cda .elementor-icon-list-item > .elementor-icon-list-text, .elementor-5118 .elementor-element.elementor-element-34f6cda .elementor-icon-list-item > a{font-family:"Lato", Sans-serif;font-size:14px;}.elementor-5118 .elementor-element.elementor-element-34f6cda .elementor-icon-list-text{color:#3A2258;transition:color 0.3s;}.elementor-5118 .elementor-element.elementor-element-a9c49a8{width:var( --container-widget-width, 85.89% );max-width:85.89%;--container-widget-width:85.89%;--container-widget-flex-grow:0;z-index:0;}.elementor-5118 .elementor-element.elementor-element-a9c49a8 .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-size:60px;font-weight:500;text-transform:none;text-decoration:none;line-height:1em;letter-spacing:0em;color:#333333;}.elementor-5118 .elementor-element.elementor-element-78aee9c .elementor-heading-title{font-family:"Lato", Sans-serif;font-size:20px;color:#666666;}.elementor-5118 .elementor-element.elementor-element-8109bea .elementor-button{background-color:#3BB900;font-family:"Montserrat", Sans-serif;font-size:15px;font-weight:500;fill:#FFFFFF;color:#FFFFFF;border-radius:7px 7px 7px 7px;}.elementor-5118 .elementor-element.elementor-element-8109bea > .elementor-widget-container:hover{--e-transform-scale:1.08;}.elementor-5118 .elementor-element.elementor-element-8109bea.elementor-element{--align-self:flex-start;}.elementor-5118 .elementor-element.elementor-element-8109bea .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-5118 .elementor-element.elementor-element-8109bea .elementor-button .elementor-button-content-wrapper{gap:15px;}.elementor-5118 .elementor-element.elementor-element-4e5d5b3{--display:flex;--min-height:0px;--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;}.elementor-5118 .elementor-element.elementor-element-170dfc1 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;border-radius:0px 0px 0px 0px;}.elementor-5118 .elementor-element.elementor-element-170dfc1 img{border-radius:25px 25px 25px 25px;}.elementor-5118 .elementor-element.elementor-element-56f42f5 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5118 .elementor-element.elementor-element-0f3469b{--display:flex;}.elementor-5118 .elementor-element.elementor-element-b84232a .elementor-button{background-color:#FF6801;font-family:"Montserrat", Sans-serif;font-size:15px;font-weight:500;fill:#FFFFFF;color:#FFFFFF;border-radius:7px 7px 7px 7px;}.elementor-5118 .elementor-element.elementor-element-b84232a.elementor-element{--align-self:flex-start;}.elementor-5118 .elementor-element.elementor-element-b84232a .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-5118 .elementor-element.elementor-element-b84232a .elementor-button .elementor-button-content-wrapper{gap:15px;}.elementor-5118 .elementor-element.elementor-element-15dbc95{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--margin-top:00px;--margin-bottom:00px;--margin-left:00px;--margin-right:00px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5118 .elementor-element.elementor-element-15dbc95:not(.elementor-motion-effects-element-type-background), .elementor-5118 .elementor-element.elementor-element-15dbc95 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F5F6;}.elementor-5118 .elementor-element.elementor-element-bea1038{--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-5118 .elementor-element.elementor-element-ee84b4d > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5118 .elementor-element.elementor-element-ee84b4d .elementor-icon-box-wrapper{text-align:left;}.elementor-5118 .elementor-element.elementor-element-ee84b4d{--icon-box-icon-margin:21px;}.elementor-5118 .elementor-element.elementor-element-ee84b4d .elementor-icon-box-title{margin-bottom:4px;color:#333333;}.elementor-5118 .elementor-element.elementor-element-ee84b4d.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;fill:#333333;color:#333333;}.elementor-5118 .elementor-element.elementor-element-ee84b4d.elementor-view-framed .elementor-icon, .elementor-5118 .elementor-element.elementor-element-ee84b4d.elementor-view-default .elementor-icon{fill:#FFFFFF;color:#FFFFFF;border-color:#FFFFFF;}.elementor-5118 .elementor-element.elementor-element-ee84b4d.elementor-view-framed .elementor-icon{background-color:#333333;}.elementor-5118 .elementor-element.elementor-element-ee84b4d .elementor-icon{font-size:19px;padding:13px;}.elementor-5118 .elementor-element.elementor-element-ee84b4d .elementor-icon-box-title, .elementor-5118 .elementor-element.elementor-element-ee84b4d .elementor-icon-box-title a{font-family:"Lato", Sans-serif;font-size:18px;}.elementor-5118 .elementor-element.elementor-element-ee84b4d .elementor-icon-box-description{font-family:"Lato", Sans-serif;color:#292929;}.elementor-5118 .elementor-element.elementor-element-b54bff1{--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-5118 .elementor-element.elementor-element-717d9b2 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5118 .elementor-element.elementor-element-717d9b2 .elementor-icon-box-wrapper{text-align:left;}.elementor-5118 .elementor-element.elementor-element-717d9b2{--icon-box-icon-margin:21px;}.elementor-5118 .elementor-element.elementor-element-717d9b2 .elementor-icon-box-title{margin-bottom:4px;color:#333333;}.elementor-5118 .elementor-element.elementor-element-717d9b2.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;fill:#333333;color:#333333;}.elementor-5118 .elementor-element.elementor-element-717d9b2.elementor-view-framed .elementor-icon, .elementor-5118 .elementor-element.elementor-element-717d9b2.elementor-view-default .elementor-icon{fill:#FFFFFF;color:#FFFFFF;border-color:#FFFFFF;}.elementor-5118 .elementor-element.elementor-element-717d9b2.elementor-view-framed .elementor-icon{background-color:#333333;}.elementor-5118 .elementor-element.elementor-element-717d9b2 .elementor-icon{font-size:19px;padding:13px;}.elementor-5118 .elementor-element.elementor-element-717d9b2 .elementor-icon-box-title, .elementor-5118 .elementor-element.elementor-element-717d9b2 .elementor-icon-box-title a{font-family:"Lato", Sans-serif;font-size:18px;}.elementor-5118 .elementor-element.elementor-element-717d9b2 .elementor-icon-box-description{font-family:"Lato", Sans-serif;color:#292929;}.elementor-5118 .elementor-element.elementor-element-8626395{--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-5118 .elementor-element.elementor-element-99af2d9 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5118 .elementor-element.elementor-element-99af2d9 .elementor-icon-box-wrapper{text-align:left;}.elementor-5118 .elementor-element.elementor-element-99af2d9{--icon-box-icon-margin:21px;}.elementor-5118 .elementor-element.elementor-element-99af2d9 .elementor-icon-box-title{margin-bottom:4px;color:#333333;}.elementor-5118 .elementor-element.elementor-element-99af2d9.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;fill:#333333;color:#333333;}.elementor-5118 .elementor-element.elementor-element-99af2d9.elementor-view-framed .elementor-icon, .elementor-5118 .elementor-element.elementor-element-99af2d9.elementor-view-default .elementor-icon{fill:#FFFFFF;color:#FFFFFF;border-color:#FFFFFF;}.elementor-5118 .elementor-element.elementor-element-99af2d9.elementor-view-framed .elementor-icon{background-color:#333333;}.elementor-5118 .elementor-element.elementor-element-99af2d9 .elementor-icon{font-size:19px;padding:13px;}.elementor-5118 .elementor-element.elementor-element-99af2d9 .elementor-icon-box-title, .elementor-5118 .elementor-element.elementor-element-99af2d9 .elementor-icon-box-title a{font-family:"Lato", Sans-serif;font-size:18px;}.elementor-5118 .elementor-element.elementor-element-99af2d9 .elementor-icon-box-description{font-family:"Lato", Sans-serif;color:#292929;}.elementor-5118 .elementor-element.elementor-element-47ea8f4{--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-5118 .elementor-element.elementor-element-47ea8f4:not(.elementor-motion-effects-element-type-background), .elementor-5118 .elementor-element.elementor-element-47ea8f4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F5F6;}.elementor-5118 .elementor-element.elementor-element-3a28a05 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;border-radius:0px 0px 0px 0px;}.elementor-5118 .elementor-element.elementor-element-c38254b{--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-5118 .elementor-element.elementor-element-c38254b:not(.elementor-motion-effects-element-type-background), .elementor-5118 .elementor-element.elementor-element-c38254b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F5F6;}.elementor-5118 .elementor-element.elementor-element-c38254b.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-5118 .elementor-element.elementor-element-32ae0ca > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5118 .elementor-element.elementor-element-6f0891b{--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-5118 .elementor-element.elementor-element-6f0891b:not(.elementor-motion-effects-element-type-background), .elementor-5118 .elementor-element.elementor-element-6f0891b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F5F6;}.elementor-5118 .elementor-element.elementor-element-55bab14 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5118 .elementor-element.elementor-element-94178d7{--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-5118 .elementor-element.elementor-element-f937322 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5118 .elementor-element.elementor-element-aa52f83{--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-5118 .elementor-element.elementor-element-aa52f83:not(.elementor-motion-effects-element-type-background), .elementor-5118 .elementor-element.elementor-element-aa52f83 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F5F6;}.elementor-5118 .elementor-element.elementor-element-02c4069 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5118 .elementor-element.elementor-element-9ac1b6a{--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-5118 .elementor-element.elementor-element-9ac1b6a:not(.elementor-motion-effects-element-type-background), .elementor-5118 .elementor-element.elementor-element-9ac1b6a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#222222;}.elementor-5118 .elementor-element.elementor-element-bef3701 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-5118 .elementor-element.elementor-element-a9c49a8{--container-widget-width:494.7200012207px;--container-widget-flex-grow:0;width:var( --container-widget-width, 494.7200012207px );max-width:494.7200012207px;}.elementor-5118 .elementor-element.elementor-element-a9c49a8 .elementor-heading-title{font-size:26.69px;line-height:1.2em;}}@media(max-width:767px){.elementor-5118 .elementor-element.elementor-element-2b82e0ca{--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-5118 .elementor-element.elementor-element-3cbdce3{--width:93.779998779297px;}.elementor-5118 .elementor-element.elementor-element-784127cf{--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:30px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5118 .elementor-element.elementor-element-b5008ba{--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5118 .elementor-element.elementor-element-b5008ba.e-con{--align-self:flex-start;--order:-99999 /* order start hack */;--flex-grow:1;--flex-shrink:0;}.elementor-5118 .elementor-element.elementor-element-42a2cf6e img{max-width:67%;}.elementor-5118 .elementor-element.elementor-element-154b2517 .elementor-button{padding:10px 60px 10px 60px;}.elementor-5118 .elementor-element.elementor-element-b80d0e9{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-5118 .elementor-element.elementor-element-a9c49a8 .elementor-heading-title{font-size:24.48px;line-height:1.2em;}.elementor-5118 .elementor-element.elementor-element-15dbc95{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--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-5118 .elementor-element.elementor-element-15dbc95.e-con{--align-self:center;}.elementor-5118 .elementor-element.elementor-element-bea1038{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--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-5118 .elementor-element.elementor-element-bea1038.e-con{--align-self:center;}.elementor-5118 .elementor-element.elementor-element-ee84b4d.elementor-element{--align-self:center;}.elementor-5118 .elementor-element.elementor-element-ee84b4d .elementor-icon-box-wrapper{text-align:center;}.elementor-5118 .elementor-element.elementor-element-717d9b2.elementor-element{--align-self:center;}.elementor-5118 .elementor-element.elementor-element-717d9b2 .elementor-icon-box-wrapper{text-align:center;}.elementor-5118 .elementor-element.elementor-element-99af2d9.elementor-element{--align-self:center;}.elementor-5118 .elementor-element.elementor-element-99af2d9 .elementor-icon-box-wrapper{text-align:center;}}@media(min-width:768px){.elementor-5118 .elementor-element.elementor-element-7f1fc945{--content-width:1600px;}.elementor-5118 .elementor-element.elementor-element-2b82e0ca{--content-width:1600px;}.elementor-5118 .elementor-element.elementor-element-3cbdce3{--width:15%;}.elementor-5118 .elementor-element.elementor-element-d8fb3c7{--content-width:1400px;}.elementor-5118 .elementor-element.elementor-element-3f6ac0e{--width:50%;}.elementor-5118 .elementor-element.elementor-element-4e5d5b3{--width:44%;}.elementor-5118 .elementor-element.elementor-element-c38254b{--width:94.377%;}}@media(max-width:1024px) and (min-width:768px){.elementor-5118 .elementor-element.elementor-element-3cbdce3{--width:93.779998779297px;}}/* Start custom CSS for button, class: .elementor-element-3312ed1a */.elementor-5118 .elementor-element.elementor-element-3312ed1a .elementor-button {
    animation: 3.4s cubic-bezier(0.2, 0.5, 0.9, 0.6) 2s infinite brilho;
    background-image: linear-gradient(45deg, #01c650, #00612c, #01c650, #00612c);
    background-size: 400% 200%;
    transition: background 5s ease, box-shadow 0.5s;
}

::placeholder {
    opacity: 1 !important;
}

@keyframes brilho {
    0% {
        background-position: 0 0;
    }

    100% {
        background-position: 100% 0;
    }
}

.elementor-30 .elementor-element.elementor-element-06694f6 .elementor-button:hover {
    box-shadow: 0 0 15px 1px #F6D972;
    transition: all .8s;
}

@media (max-width: 767px) {
    .elementor-30 .elementor-element.elementor-element-06694f6 .elementor-button {
        border-radius: 3px !important;
    }

    .elementor-30 .elementor-element.elementor-element-06694f6 .elementor-field-textual {
        border-radius: 3px !important;
    }

    .elementor-30 .elementor-element.elementor-element-06694f6 .elementor-field-group:not(.elementor-field-type-upload) .elementor-field:not(.elementor-select-wrapper) {
        border-width: 1px 1px 1px 1px;
        border-radius: 5px 5px 5px 5px;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7f1fc945 */.elementor-5118 .elementor-element.elementor-element-7f1fc945 {
    -webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-154b2517 */.elementor-5118 .elementor-element.elementor-element-154b2517 .elementor-button {
    animation: 3.4s cubic-bezier(0.2, 0.5, 0.9, 0.6) 2s infinite brilho;
    background-image: linear-gradient(45deg, #01c650, #00612c, #01c650, #00612c);
    background-size: 400% 200%;
    transition: background 5s ease, box-shadow 0.5s;
}

::placeholder {
    opacity: 1 !important;
}

@keyframes brilho {
    0% {
        background-position: 0 0;
    }

    100% {
        background-position: 100% 0;
    }
}

.elementor-30 .elementor-element.elementor-element-06694f6 .elementor-button:hover {
    box-shadow: 0 0 15px 1px #F6D972;
    transition: all .8s;
}

@media (max-width: 767px) {
    .elementor-30 .elementor-element.elementor-element-06694f6 .elementor-button {
        border-radius: 3px !important;
    }

    .elementor-30 .elementor-element.elementor-element-06694f6 .elementor-field-textual {
        border-radius: 3px !important;
    }

    .elementor-30 .elementor-element.elementor-element-06694f6 .elementor-field-group:not(.elementor-field-type-upload) .elementor-field:not(.elementor-select-wrapper) {
        border-width: 1px 1px 1px 1px;
        border-radius: 5px 5px 5px 5px;
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-8109bea */.elementor-5118 .elementor-element.elementor-element-8109bea .elementor-button {
    animation: 3.4s cubic-bezier(0.2, 0.5, 0.9, 0.6) 2s infinite brilho;
    background-image: linear-gradient(45deg, #01c650, #00612c, #01c650, #00612c);
    background-size: 400% 200%;
    transition: background 5s ease, box-shadow 0.5s;
}

::placeholder {
    opacity: 1 !important;
}

@keyframes brilho {
    0% {
        background-position: 0 0;
    }

    100% {
        background-position: 100% 0;
    }
}

.elementor-30 .elementor-element.elementor-element-06694f6 .elementor-button:hover {
    box-shadow: 0 0 15px 1px #F6D972;
    transition: all .8s;
}

@media (max-width: 767px) {
    .elementor-30 .elementor-element.elementor-element-06694f6 .elementor-button {
        border-radius: 3px !important;
    }

    .elementor-30 .elementor-element.elementor-element-06694f6 .elementor-field-textual {
        border-radius: 3px !important;
    }

    .elementor-30 .elementor-element.elementor-element-06694f6 .elementor-field-group:not(.elementor-field-type-upload) .elementor-field:not(.elementor-select-wrapper) {
        border-width: 1px 1px 1px 1px;
        border-radius: 5px 5px 5px 5px;
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-b84232a */.elementor-5118 .elementor-element.elementor-element-b84232a .elementor-button {
    animation: 3.4s cubic-bezier(0.2, 0.5, 0.9, 0.6) 2s infinite brilho;
    background-image: linear-gradient(45deg, #01c650, #00612c, #01c650, #00612c);
    background-size: 400% 200%;
    transition: background 5s ease, box-shadow 0.5s;
}

::placeholder {
    opacity: 1 !important;
}

@keyframes brilho {
    0% {
        background-position: 0 0;
    }

    100% {
        background-position: 100% 0;
    }
}

.elementor-30 .elementor-element.elementor-element-06694f6 .elementor-button:hover {
    box-shadow: 0 0 15px 1px #F6D972;
    transition: all .8s;
}

@media (max-width: 767px) {
    .elementor-30 .elementor-element.elementor-element-06694f6 .elementor-button {
        border-radius: 3px !important;
    }

    .elementor-30 .elementor-element.elementor-element-06694f6 .elementor-field-textual {
        border-radius: 3px !important;
    }

    .elementor-30 .elementor-element.elementor-element-06694f6 .elementor-field-group:not(.elementor-field-type-upload) .elementor-field:not(.elementor-select-wrapper) {
        border-width: 1px 1px 1px 1px;
        border-radius: 5px 5px 5px 5px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3a28a05 */.about-content {
  color: #333;
}

.about-content .section-title,
.about-content .badge,
.about-content p {
  color: #333;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-32ae0ca */.services-section {
  color: #333;
}

.services-section .section-title,
.services-section .badge,
.services-section .section-subtitle,
.services-section .service-title,
.services-section .service-description {
  color: #333;
}
.service-icon-container i {
  color: #333 !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-55bab14 *//* Só textos, títulos, badges e ícones de seção */
.section-title,
.section-subtitle,
.badge,
.service-title,
.service-description,
.testimonial-text,
.author-name,
.author-role,
.quote-icon i {
  color: #333 !important;
}/* End custom CSS */
/* Start custom CSS *//* Base Styles */
:root {
  --primary: #6a3ea1;
  --primary-light: #9d71d0;
  --primary-dark: #5a2e91;
  --secondary: #3a2258;
  --accent-pink: #ffd4e5;
  --accent-blue: #d4eaff;
  --accent-purple: #e0d5f5;
  --accent-light: #f0e6ff;
  --background: #f9f5ff;
  --text: #3a2258;
  --text-light: rgba(106, 62, 161, 0.8);
  --white: #ffffff;
  --yellow: #ffb800;
  --border-color: #e0d5f5;
  --radius: 0.5rem;
  --radius-lg: 1rem;
  --radius-xl: 1.5rem;
  --shadow: 0 10px 30px rgba(106, 62, 161, 0.1);
  --shadow-lg: 0 20px 40px rgba(106, 62, 161, 0.15);
  --transition: all 0.3s ease;
}

/* Typography */
body {
  font-family: "Lato", sans-serif;
  color: var(--text);
  background-color: var(--white);
  line-height: 1.6;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Playfair Display", serif;
  font-weight: 500;
  line-height: 1.2;
}

/* Layout */
.container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1rem;
}

section {
  padding: 4rem 0;
}

/* Buttons */
.primary-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 2rem;
  background: linear-gradient(to right, var(--primary), var(--primary-light));
  color: var(--white);
  font-weight: 500;
  border-radius: 9999px;
  text-decoration: none;
  box-shadow: 0 10px 20px rgba(106, 62, 161, 0.2);
  transition: var(--transition);
}

.primary-button:hover {
  background: linear-gradient(to right, var(--primary-dark), var(--primary));
  transform: translateY(-2px);
  box-shadow: 0 15px 25px rgba(106, 62, 161, 0.3);
}

.outline-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 2rem;
  background: transparent;
  color: var(--primary);
  font-weight: 500;
  border: 2px solid var(--primary);
  border-radius: 9999px;
  text-decoration: none;
  transition: var(--transition);
}

.outline-button:hover {
  background-color: var(--accent-light);
  transform: translateY(-2px);
}

.service-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 1.5rem;
  background-color: var(--white);
  color: var(--primary);
  font-weight: 500;
  border-radius: var(--radius);
  text-decoration: none;
  transition: var(--transition);
}

.service-button:hover {
  background-color: var(--accent-light);
}

.submit-button {
  display: block;
  width: 100%;
  padding: 1rem;
  background: linear-gradient(to right, var(--primary), var(--primary-light));
  color: var(--white);
  font-weight: 500;
  border: none;
  border-radius: var(--radius);
  cursor: pointer;
  transition: var(--transition);
}

.submit-button:hover {
  background: linear-gradient(to right, var(--primary-dark), var(--primary));
}

.cta-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 2rem;
  background-color: var(--white);
  color: var(--primary);
  font-weight: 500;
  border-radius: 9999px;
  text-decoration: none;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
  transition: var(--transition);
}

.cta-button:hover {
  background-color: var(--white);
  transform: translateY(-2px);
  box-shadow: 0 15px 25px rgba(0, 0, 0, 0.15);
}

/* Badge */
.badge {
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 1rem;
  background-color: var(--accent-light);
  color: var(--primary);
  font-size: 0.875rem;
  font-weight: 500;
  border-radius: 9999px;
  margin-bottom: 1rem;
}

.badge-light {
  background-color: rgba(255, 255, 255, 0.2);
  color: var(--white);
}

.star-icon {
  color: var(--yellow);
  margin-right: 0.5rem;
}

/* Section Headers */
.section-header {
  text-align: center;
  max-width: 800px;
  margin: 0 auto 3rem;
}

.section-title {
  font-size: 2.5rem;
  color: var(--secondary);
  margin-bottom: 1rem;
}

.section-subtitle {
  color: var(--text-light);
  font-size: 1.125rem;
}

.section-text {
  color: var(--text-light);
  margin-bottom: 1.5rem;
}

.section-cta {
  text-align: center;
  margin-top: 3rem;
}

/* Hero Section */
.hero-section {
  position: relative;
  padding: 6rem 0;
  overflow: hidden;
  background: linear-gradient(to bottom, var(--background), var(--white));
}

.decorative-circle {
  position: absolute;
  border-radius: 50%;
  opacity: 0.2;
  filter: blur(40px);
}

.decorative-circle-1 {
  top: 5rem;
  right: 10%;
  width: 16rem;
  height: 16rem;
  background-color: var(--accent-pink);
  animation: pulse 8s infinite alternate;
}

.decorative-circle-2 {
  bottom: 5rem;
  left: 10%;
  width: 18rem;
  height: 18rem;
  background-color: var(--accent-blue);
  animation: pulse 10s infinite alternate;
}

.decorative-circle-3 {
  top: 10rem;
  left: 20%;
  width: 12rem;
  height: 12rem;
  background-color: var(--accent-purple);
  animation: pulse 7s infinite alternate;
}

.hero-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
  align-items: center;
}

.hero-content {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.hero-title {
  font-size: 3.5rem;
  color: var(--secondary);
  line-height: 1.2;
}

.highlight {
  position: relative;
  display: inline-block;
}

.highlight::after {
  content: "";
  position: absolute;
  bottom: -0.5rem;
  left: 0;
  width: 100%;
  height: 0.25rem;
  background-color: var(--yellow);
  border-radius: 9999px;
}

.hero-description {
  font-size: 1.25rem;
  color: var(--text-light);
}

.hero-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 1rem;
}

.client-avatars {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: 1rem;
}

.avatars-container {
  display: flex;
}

.avatar-item {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background-color: var(--accent-light);
  border: 2px solid var(--white);
  margin-left: -0.75rem;
  background-image: url("https://via.placeholder.com/40");
  background-size: cover;
}

.avatar-item:first-child {
  margin-left: 0;
}

.avatars-text {
  font-size: 0.875rem;
  color: var(--primary);
}

.bold-text {
  font-weight: 700;
}

.hero-image-container {
  position: relative;
}

.floating-element {
  position: absolute;
  border-radius: 50%;
  z-index: 1;
}

.circle-pink {
  top: -1.5rem;
  left: -1.5rem;
  width: 6rem;
  height: 6rem;
  background-color: var(--accent-pink);
  opacity: 0.3;
  animation: float 4s ease-in-out infinite;
}

.circle-blue {
  bottom: -1.5rem;
  right: -1.5rem;
  width: 8rem;
  height: 8rem;
  background-color: var(--accent-blue);
  opacity: 0.3;
  animation: float 4s ease-in-out infinite reverse;
}

.hero-image {
  position: relative;
  z-index: 2;
  border-radius: var(--radius-xl);
  overflow: hidden;
  border: 4px solid var(--white);
  box-shadow: var(--shadow-lg);
  transition: transform 0.3s ease;
}

.hero-image:hover {
  transform: scale(1.02);
}

.hero-image img {
  width: 100%;
  height: 500px;
  object-fit: cover;
  display: block;
}

.floating-card {
  position: absolute;
  z-index: 3;
  background-color: var(--white);
  padding: 1rem;
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  animation: float 4s ease-in-out infinite;
}

.rating-card {
  bottom: -2rem;
  left: -2rem;
}

.stars {
  display: flex;
  gap: 0.25rem;
  margin-bottom: 0.25rem;
}

.stars i {
  color: var(--yellow);
}

.rating-value {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--secondary);
}

.rating-text {
  font-size: 0.75rem;
  color: var(--text-light);
  margin-top: 0.25rem;
}

/* Credentials Section */
.credentials-section {
  background: linear-gradient(to right, var(--accent-light), var(--accent-blue));
  padding: 2rem 0;
}

.credentials-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 2rem;
}

.credential-item {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.credential-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  background-color: var(--white);
  border-radius: 50%;
  box-shadow: var(--shadow);
}

.credential-icon i {
  color: var(--primary);
}

.credential-title {
  font-weight: 500;
  color: var(--secondary);
}

.credential-subtitle {
  font-size: 0.875rem;
  color: var(--text-light);
}

/* About Section */
.about-section {
  padding: 6rem 0;
}

.about-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: center;
}

.about-image-container {
  position: relative;
}

.about-image {
  position: relative;
  z-index: 2;
  border-radius: var(--radius-xl);
  overflow: hidden;
  border: 4px solid var(--white);
  box-shadow: var(--shadow-lg);
  transition: transform 0.3s ease;
}

.about-image:hover {
  transform: scale(1.02);
}

.about-image img {
  width: 100%;
  height: 500px;
  object-fit: cover;
  display: block;
}

.about-card-1 {
  top: 1rem;
  right: -1rem;
  transform: rotate(6deg);
}

.about-card-2 {
  bottom: -1rem;
  left: -1rem;
  transform: rotate(-6deg);
}

.card-title {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--secondary);
}

.card-subtitle {
  font-size: 0.75rem;
  color: var(--text-light);
}

/* Services Section */
.services-section {
  background-color: var(--background);
  padding: 6rem 0;
}

.services-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 2rem;
}

.service-card {
  background-color: var(--white);
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow);
  transition: transform 0.3s ease;
}

.service-card:hover {
  transform: translateY(-10px);
  box-shadow: var(--shadow-lg);
}

.service-image {
  position: relative;
  aspect-ratio: 1;
  overflow: hidden;
}

.service-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.service-card:hover .service-image img {
  transform: scale(1.05);
}

.service-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.5), transparent);
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 1.5rem;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.service-card:hover .service-overlay {
  opacity: 1;
}

.service-content {
  padding: 1.5rem;
}

.service-icon-container {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  margin-bottom: 0.75rem;
}

.service-icon-container i {
  color: var(--primary);
}

.service-title {
  font-size: 1.25rem;
  color: var(--secondary);
  margin-bottom: 0.5rem;
}

.service-description {
  color: var(--text-light);
}

/* Portfolio Section */
.portfolio-section {
  padding: 6rem 0;
}

.portfolio-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 1.5rem;
}

.portfolio-item {
  position: relative;
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow);
}

.portfolio-featured {
  grid-column: span 2;
  grid-row: span 2;
}

.portfolio-image {
  position: relative;
  height: 100%;
}

.portfolio-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.portfolio-item:hover .portfolio-image img {
  transform: scale(1.05);
}

.portfolio-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.6), transparent);
  display: flex;
  align-items: flex-end;
  padding: 1.5rem;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.portfolio-item:hover .portfolio-overlay {
  opacity: 1;
}

.portfolio-caption {
  color: var(--white);
}

.portfolio-title {
  font-size: 1.25rem;
  margin-bottom: 0.25rem;
}

.portfolio-subtitle {
  font-size: 0.875rem;
  opacity: 0.8;
}

/* Testimonials Section */
.testimonials-section {
  background-color: var(--background);
  padding: 6rem 0;
}

.testimonials-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 2rem;
}

.testimonial-card {
  position: relative;
  background-color: var(--white);
  border: 1px solid var(--border-color);
  border-radius: var(--radius-lg);
  padding: 2rem;
  box-shadow: var(--shadow);
  transition: transform 0.3s ease;
}

.testimonial-card:hover {
  transform: translateY(-10px);
}

.quote-icon {
  position: absolute;
  top: -1.25rem;
  left: 2rem;
  background-color: var(--accent-light);
  color: var(--primary);
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.testimonial-content {
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: space-between;
  padding-top: 1.5rem;
}

.testimonial-stars {
  display: flex;
  gap: 0.25rem;
  margin-bottom: 1rem;
}

.testimonial-stars i {
  color: var(--yellow);
}

.testimonial-text {
  color: var(--text-light);
  font-style: italic;
  margin-bottom: 1.5rem;
}

.testimonial-author {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.author-avatar {
  width: 3rem;
  height: 3rem;
  background-color: var(--accent-light);
  color: var(--primary);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
}

.author-name {
  font-weight: 500;
  color: var(--secondary);
}

.author-role {
  font-size: 0.875rem;
  color: var(--text-light);
}

/* CTA Section */
.cta-section {
  position: relative;
  padding: 6rem 0;
  overflow: hidden;
}

.cta-background {
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, var(--primary), var(--primary-light));
  opacity: 0.9;
  z-index: 1;
}

.cta-background::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("https://via.placeholder.com/1600x800");
  background-size: cover;
  opacity: 0.2;
}

.cta-content {
  position: relative;
  z-index: 2;
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
  color: var(--white);
}

.cta-title {
  font-size: 3rem;
  margin: 1.5rem 0;
}

.cta-text {
  font-size: 1.25rem;
  opacity: 0.8;
  margin-bottom: 2rem;
}

.cta-note {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin-top: 1rem;
  font-size: 0.875rem;
  opacity: 0.8;
}

/* Contact Section */
.contact-section {
  padding: 6rem 0;
}

.contact-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: start;
}

.contact-methods {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  margin: 2.5rem 0;
}

.contact-method {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.contact-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  background-color: var(--accent-light);
  color: var(--primary);
  border-radius: 50%;
  box-shadow: var(--shadow);
}

.contact-method-title {
  font-weight: 500;
  color: var(--secondary);
}

.contact-method-text {
  color: var(--text-light);
}

.social-links {
  display: flex;
  gap: 1rem;
}

.social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  background-color: var(--accent-light);
  color: var(--primary);
  border-radius: 50%;
  transition: var(--transition);
}

.social-link:hover {
  background-color: var(--primary);
  color: var(--white);
  transform: rotate(5deg) scale(1.1);
}

.contact-form-container {
  position: relative;
  background-color: var(--white);
  border: 1px solid var(--border-color);
  border-radius: var(--radius-lg);
  padding: 2rem;
  box-shadow: var(--shadow-lg);
}

.contact-form {
  position: relative;
  z-index: 2;
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-bottom: 1rem;
}

.form-group {
  margin-bottom: 1rem;
}

label {
  display: block;
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--secondary);
  margin-bottom: 0.5rem;
}

.form-control {
  width: 100%;
  padding: 0.75rem;
  border: 1px solid var(--border-color);
  border-radius: var(--radius);
  background-color: var(--white);
  transition: var(--transition);
}

.form-control:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 2px rgba(106, 62, 161, 0.2);
}

textarea.form-control {
  min-height: 120px;
  resize: vertical;
}

/* Animations */
@keyframes float {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}

@keyframes pulse {
  0% {
    transform: scale(1);
    opacity: 0.2;
  }
  50% {
    transform: scale(1.2);
    opacity: 0.3;
  }
  100% {
    transform: scale(1);
    opacity: 0.2;
  }
}

/* Responsive */
@media (max-width: 992px) {
  .hero-grid,
  .about-grid,
  .contact-grid {
    grid-template-columns: 1fr;
  }

  .hero-content {
    order: 1;
  }

  .hero-image-container {
    order: 0;
    margin-bottom: 2rem;
  }

  .portfolio-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .portfolio-featured {
    grid-column: span 2;
    grid-row: span 1;
  }
}

@media (max-width: 768px) {
  .section-title {
    font-size: 2rem;
  }

  .hero-title {
    font-size: 2.5rem;
  }

  .cta-title {
    font-size: 2.25rem;
  }

  .form-row {
    grid-template-columns: 1fr;
  }

  .credentials-grid {
    justify-content: center;
  }
}

@media (max-width: 576px) {
  .portfolio-grid {
    grid-template-columns: 1fr;
  }

  .portfolio-featured {
    grid-column: span 1;
  }

  .hero-buttons {
    flex-direction: column;
  }
}/* End custom CSS */