.elementor-23 .elementor-element.elementor-element-88cfa29{--display:flex;--min-height:calc(100vh - 200px);--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;--overlay-opacity:1;--padding-top:90px;--padding-bottom:90px;--padding-left:30px;--padding-right:30px;}.elementor-23 .elementor-element.elementor-element-88cfa29:not(.elementor-motion-effects-element-type-background), .elementor-23 .elementor-element.elementor-element-88cfa29 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://rosys.co.za/wp-content/uploads/2026/09/Rosys-Event-Floral-Styling-1.jpg");background-position:center center;background-size:cover;}.elementor-23 .elementor-element.elementor-element-88cfa29::before, .elementor-23 .elementor-element.elementor-element-88cfa29 > .elementor-background-video-container::before, .elementor-23 .elementor-element.elementor-element-88cfa29 > .e-con-inner > .elementor-background-video-container::before, .elementor-23 .elementor-element.elementor-element-88cfa29 > .elementor-background-slideshow::before, .elementor-23 .elementor-element.elementor-element-88cfa29 > .e-con-inner > .elementor-background-slideshow::before, .elementor-23 .elementor-element.elementor-element-88cfa29 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(180deg, #2C252300 0%, #2C252380 100%);}.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-23 .elementor-element.elementor-element-83a85fd .elementor-heading-title{font-family:var( --e-global-typography-87670e2-font-family ), Sans-serif;font-size:var( --e-global-typography-87670e2-font-size );font-weight:var( --e-global-typography-87670e2-font-weight );text-transform:var( --e-global-typography-87670e2-text-transform );font-style:var( --e-global-typography-87670e2-font-style );line-height:var( --e-global-typography-87670e2-line-height );color:var( --e-global-color-018afb5 );}.elementor-23 .elementor-element.elementor-element-1b5ab2c{--display:flex;--gap:30px 30px;--row-gap:30px;--column-gap:30px;--padding-top:120px;--padding-bottom:120px;--padding-left:30px;--padding-right:30px;}.elementor-23 .elementor-element.elementor-element-8f845ab{text-align:center;}.elementor-23 .elementor-element.elementor-element-8f845ab .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.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-23 .elementor-element.elementor-element-d21104d{text-align:center;}.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-23 .elementor-element.elementor-element-c28f079{--display:flex;}.elementor-23 .elementor-element.elementor-element-3dd82f3{--display:flex;}.elementor-23 .elementor-element.elementor-element-d244e24{--display:flex;--justify-content:flex-end;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.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-23 .elementor-element.elementor-element-6ed55c2 img{height:30vw;object-fit:cover;object-position:center center;}body:not(.rtl) .elementor-23 .elementor-element.elementor-element-b7e94c9{left:30px;}body.rtl .elementor-23 .elementor-element.elementor-element-b7e94c9{right:30px;}.elementor-23 .elementor-element.elementor-element-b7e94c9{bottom:25px;}.elementor-23 .elementor-element.elementor-element-b7e94c9 .elementor-heading-title{font-family:"Trajan Regular", Sans-serif;font-size:16px;font-weight:400;text-transform:uppercase;line-height:1.3em;letter-spacing:1px;color:var( --e-global-color-018afb5 );}.elementor-23 .elementor-element.elementor-element-4e9a38a{--display:flex;}.elementor-23 .elementor-element.elementor-element-9a5d8a9{--display:flex;--justify-content:flex-end;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-23 .elementor-element.elementor-element-1f0727d img{height:30vw;object-fit:cover;object-position:center center;}body:not(.rtl) .elementor-23 .elementor-element.elementor-element-4f8f35a{left:30px;}body.rtl .elementor-23 .elementor-element.elementor-element-4f8f35a{right:30px;}.elementor-23 .elementor-element.elementor-element-4f8f35a{bottom:25px;}.elementor-23 .elementor-element.elementor-element-4f8f35a .elementor-heading-title{font-family:"Trajan Regular", Sans-serif;font-size:16px;font-weight:400;text-transform:uppercase;line-height:1.3em;letter-spacing:1px;color:var( --e-global-color-018afb5 );}.elementor-23 .elementor-element.elementor-element-b439761{--display:flex;}.elementor-23 .elementor-element.elementor-element-ae2fa6f{--display:flex;--justify-content:flex-end;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-23 .elementor-element.elementor-element-848b719 img{height:30vw;object-fit:cover;object-position:center center;}body:not(.rtl) .elementor-23 .elementor-element.elementor-element-558accd{left:30px;}body.rtl .elementor-23 .elementor-element.elementor-element-558accd{right:30px;}.elementor-23 .elementor-element.elementor-element-558accd{bottom:25px;}.elementor-23 .elementor-element.elementor-element-558accd .elementor-heading-title{font-family:"Trajan Regular", Sans-serif;font-size:16px;font-weight:400;text-transform:uppercase;line-height:1.3em;letter-spacing:1px;color:var( --e-global-color-018afb5 );}.elementor-23 .elementor-element.elementor-element-1740dec{--display:flex;}.elementor-23 .elementor-element.elementor-element-2857961{--display:flex;--justify-content:flex-end;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-23 .elementor-element.elementor-element-6eca1ac img{height:30vw;object-fit:cover;object-position:center center;}body:not(.rtl) .elementor-23 .elementor-element.elementor-element-e0d8d5b{left:30px;}body.rtl .elementor-23 .elementor-element.elementor-element-e0d8d5b{right:30px;}.elementor-23 .elementor-element.elementor-element-e0d8d5b{bottom:25px;}.elementor-23 .elementor-element.elementor-element-e0d8d5b .elementor-heading-title{font-family:"Trajan Regular", Sans-serif;font-size:16px;font-weight:400;text-transform:uppercase;line-height:1.3em;letter-spacing:1px;color:var( --e-global-color-018afb5 );}.elementor-23 .elementor-element.elementor-element-1da0a53{--display:flex;}.elementor-23 .elementor-element.elementor-element-94bf9d4{--display:flex;--justify-content:flex-end;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-23 .elementor-element.elementor-element-d11b7eb img{height:30vw;object-fit:cover;object-position:center center;}body:not(.rtl) .elementor-23 .elementor-element.elementor-element-b64e4e1{left:30px;}body.rtl .elementor-23 .elementor-element.elementor-element-b64e4e1{right:30px;}.elementor-23 .elementor-element.elementor-element-b64e4e1{bottom:25px;}.elementor-23 .elementor-element.elementor-element-b64e4e1 .elementor-heading-title{font-family:"Trajan Regular", Sans-serif;font-size:16px;font-weight:400;text-transform:uppercase;line-height:1.3em;letter-spacing:1px;color:var( --e-global-color-018afb5 );}.elementor-23 .elementor-element.elementor-element-b454dc4{--display:flex;}.elementor-23 .elementor-element.elementor-element-99d2d4c{--display:flex;--justify-content:flex-end;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-23 .elementor-element.elementor-element-04e968f img{height:30vw;object-fit:cover;object-position:center center;}body:not(.rtl) .elementor-23 .elementor-element.elementor-element-d62de2f{left:30px;}body.rtl .elementor-23 .elementor-element.elementor-element-d62de2f{right:30px;}.elementor-23 .elementor-element.elementor-element-d62de2f{bottom:25px;}.elementor-23 .elementor-element.elementor-element-d62de2f .elementor-heading-title{font-family:"Trajan Regular", Sans-serif;font-size:16px;font-weight:400;text-transform:uppercase;line-height:1.3em;letter-spacing:1px;color:var( --e-global-color-018afb5 );}.elementor-23 .elementor-element.elementor-element-36daaf6{--e-n-carousel-swiper-offset-size:100px;--e-n-carousel-swiper-slides-gap:30px;--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;}.elementor-23 .elementor-element.elementor-element-48b551b{--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:120px;--padding-bottom:120px;--padding-left:0px;--padding-right:0px;}.elementor-23 .elementor-element.elementor-element-0ff7b1a{--display:flex;--gap:30px 30px;--row-gap:30px;--column-gap:30px;--padding-top:100px;--padding-bottom:100px;--padding-left:100px;--padding-right:100px;}.elementor-23 .elementor-element.elementor-element-f06cc85 .elementor-heading-title{font-family:"Trajan Regular", Sans-serif;font-size:20px;font-weight:400;line-height:1.4em;letter-spacing:2px;}.elementor-23 .elementor-element.elementor-element-0feda27{--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:flex-start;--gap:60px 60px;--row-gap:60px;--column-gap:60px;border-style:solid;--border-style:solid;border-width:1px 0px 0px 0px;--border-top-width:1px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;border-color:var( --e-global-color-353b81f );--border-color:var( --e-global-color-353b81f );}.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-23 .elementor-element.elementor-element-f04de6c{width:var( --container-widget-width, 40% );max-width:40%;padding:20px 0px 20px 0px;--container-widget-width:40%;--container-widget-flex-grow:0;border-style:solid;border-width:0px 0px 1px 0px;border-color:var( --e-global-color-353b81f );--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-23 .elementor-element.elementor-element-f04de6c.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-23 .elementor-element.elementor-element-f04de6c .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(40px/2);}.elementor-23 .elementor-element.elementor-element-f04de6c .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(40px/2);}.elementor-23 .elementor-element.elementor-element-f04de6c .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(40px/2);}.elementor-23 .elementor-element.elementor-element-f04de6c .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-40px/2);}.elementor-23 .elementor-element.elementor-element-f04de6c .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-40px/2);}.elementor-23 .elementor-element.elementor-element-f04de6c .elementor-icon-list-item:not(:last-child):after{content:"";width:100%;border-color:var( --e-global-color-353b81f );}.elementor-23 .elementor-element.elementor-element-f04de6c .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child):after{border-block-start-style:solid;border-block-start-width:1px;}.elementor-23 .elementor-element.elementor-element-f04de6c .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-style:solid;}.elementor-23 .elementor-element.elementor-element-f04de6c .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-width:1px;}.elementor-23 .elementor-element.elementor-element-f04de6c .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-23 .elementor-element.elementor-element-f04de6c .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-23 .elementor-element.elementor-element-f04de6c .elementor-icon-list-text{transition:color 0.3s;}.elementor-23 .elementor-element.elementor-element-a8c6cea{width:var( --container-widget-width, 40% );max-width:40%;padding:20px 0px 20px 0px;--container-widget-width:40%;--container-widget-flex-grow:0;border-style:solid;border-width:0px 0px 1px 0px;border-color:var( --e-global-color-353b81f );--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-23 .elementor-element.elementor-element-a8c6cea.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-23 .elementor-element.elementor-element-a8c6cea .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(40px/2);}.elementor-23 .elementor-element.elementor-element-a8c6cea .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(40px/2);}.elementor-23 .elementor-element.elementor-element-a8c6cea .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(40px/2);}.elementor-23 .elementor-element.elementor-element-a8c6cea .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-40px/2);}.elementor-23 .elementor-element.elementor-element-a8c6cea .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-40px/2);}.elementor-23 .elementor-element.elementor-element-a8c6cea .elementor-icon-list-item:not(:last-child):after{content:"";width:100%;border-color:var( --e-global-color-353b81f );}.elementor-23 .elementor-element.elementor-element-a8c6cea .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child):after{border-block-start-style:solid;border-block-start-width:1px;}.elementor-23 .elementor-element.elementor-element-a8c6cea .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-style:solid;}.elementor-23 .elementor-element.elementor-element-a8c6cea .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-width:1px;}.elementor-23 .elementor-element.elementor-element-a8c6cea .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-23 .elementor-element.elementor-element-a8c6cea .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-23 .elementor-element.elementor-element-a8c6cea .elementor-icon-list-text{transition:color 0.3s;}.elementor-23 .elementor-element.elementor-element-2c62892{--display:flex;--min-height:500px;}.elementor-23 .elementor-element.elementor-element-2c62892:not(.elementor-motion-effects-element-type-background), .elementor-23 .elementor-element.elementor-element-2c62892 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://rosys.co.za/wp-content/uploads/2026/09/Rosys-Event-Floral-Styling-2.jpg");background-position:center center;background-size:cover;}.elementor-23 .elementor-element.elementor-element-6b9011e{--display:flex;}.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-23 .elementor-element.elementor-element-af6e0f7{--image-transition-duration:800ms;--content-text-align:center;--content-padding:20px;--content-transition-duration:800ms;--content-transition-delay:800ms;}.elementor-23 .elementor-element.elementor-element-8e7f591{--display:flex;--gap:90px 90px;--row-gap:90px;--column-gap:90px;--padding-top:120px;--padding-bottom:120px;--padding-left:30px;--padding-right:30px;}.elementor-23 .elementor-element.elementor-element-8de69d0{--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:space-between;--align-items:center;}.elementor-23 .elementor-element.elementor-element-8361fbd .elementor-heading-title{font-family:"Cormorant Garamond", Sans-serif;font-size:24px;font-weight:300;text-transform:none;font-style:italic;line-height:1.3em;color:#8A6E62;}.elementor-23 .elementor-element.elementor-element-2ba0937{--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:60px 60px;--row-gap:60px;--column-gap:60px;border-style:solid;--border-style:solid;border-width:1px 0px 1px 0px;--border-top-width:1px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:var( --e-global-color-353b81f );--border-color:var( --e-global-color-353b81f );--padding-top:40px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-23 .elementor-element.elementor-element-c4f51a2{--display:flex;}.elementor-23 .elementor-element.elementor-element-5390f7e .elementor-heading-title{font-family:"Cormorant Garamond", Sans-serif;font-size:70px;font-weight:300;text-transform:none;font-style:italic;color:var( --e-global-color-8797c85 );}.elementor-23 .elementor-element.elementor-element-9c005d2 .elementor-heading-title{font-family:"Trajan Regular", Sans-serif;font-size:20px;font-weight:400;line-height:1.4em;letter-spacing:2px;}.elementor-23 .elementor-element.elementor-element-72f68bf{--display:flex;}.elementor-23 .elementor-element.elementor-element-6558ae2 .elementor-heading-title{font-family:"Cormorant Garamond", Sans-serif;font-size:70px;font-weight:300;text-transform:none;font-style:italic;color:var( --e-global-color-8797c85 );}.elementor-23 .elementor-element.elementor-element-f70f20d .elementor-heading-title{font-family:"Trajan Regular", Sans-serif;font-size:20px;font-weight:400;line-height:1.4em;letter-spacing:2px;}.elementor-23 .elementor-element.elementor-element-e2d9e82{--display:flex;}.elementor-23 .elementor-element.elementor-element-b0249b9 .elementor-heading-title{font-family:"Cormorant Garamond", Sans-serif;font-size:70px;font-weight:300;text-transform:none;font-style:italic;color:var( --e-global-color-8797c85 );}.elementor-23 .elementor-element.elementor-element-da6771a .elementor-heading-title{font-family:"Trajan Regular", Sans-serif;font-size:20px;font-weight:400;line-height:1.4em;letter-spacing:2px;}.elementor-23 .elementor-element.elementor-element-62abd88{--display:flex;}.elementor-23 .elementor-element.elementor-element-55d4c2a .elementor-heading-title{font-family:"Cormorant Garamond", Sans-serif;font-size:70px;font-weight:300;text-transform:none;font-style:italic;color:var( --e-global-color-8797c85 );}.elementor-23 .elementor-element.elementor-element-bf94bf0 .elementor-heading-title{font-family:"Trajan Regular", Sans-serif;font-size:20px;font-weight:400;line-height:1.4em;letter-spacing:2px;}.elementor-23 .elementor-element.elementor-element-4718f5d{--display:flex;--gap:30px 30px;--row-gap:30px;--column-gap:30px;}.elementor-23 .elementor-element.elementor-element-655bebc{text-align:center;}.elementor-23 .elementor-element.elementor-element-655bebc .elementor-heading-title{font-family:"Cormorant Garamond", Sans-serif;font-size:90px;font-weight:300;text-transform:none;font-style:italic;}.elementor-23 .elementor-element.elementor-element-0dfa540{text-align:center;}.elementor-23 .elementor-element.elementor-element-0dfa540 .elementor-heading-title{font-family:var( --e-global-typography-52bae30-font-family ), Sans-serif;font-size:var( --e-global-typography-52bae30-font-size );font-weight:var( --e-global-typography-52bae30-font-weight );text-transform:var( --e-global-typography-52bae30-text-transform );line-height:var( --e-global-typography-52bae30-line-height );letter-spacing:var( --e-global-typography-52bae30-letter-spacing );color:var( --e-global-color-8797c85 );}.elementor-23 .elementor-element.elementor-element-80ccb3b{--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;}.elementor-23 .elementor-element.elementor-element-9b0639c{--display:flex;--min-height:500px;}.elementor-23 .elementor-element.elementor-element-9b0639c:not(.elementor-motion-effects-element-type-background), .elementor-23 .elementor-element.elementor-element-9b0639c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://rosys.co.za/wp-content/uploads/2026/09/Rosys-Floral-Styling-12.jpg");background-position:center center;background-size:cover;}.elementor-23 .elementor-element.elementor-element-fc5ac22{--display:flex;--gap:30px 30px;--row-gap:30px;--column-gap:30px;--padding-top:100px;--padding-bottom:100px;--padding-left:100px;--padding-right:100px;}.elementor-23 .elementor-element.elementor-element-8594c87 .elementor-heading-title{font-family:var( --e-global-typography-52bae30-font-family ), Sans-serif;font-size:var( --e-global-typography-52bae30-font-size );font-weight:var( --e-global-typography-52bae30-font-weight );text-transform:var( --e-global-typography-52bae30-text-transform );line-height:var( --e-global-typography-52bae30-line-height );letter-spacing:var( --e-global-typography-52bae30-letter-spacing );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-23 .elementor-element.elementor-element-e92766b .elementor-field-group{padding-right:calc( 20px/2 );padding-left:calc( 20px/2 );margin-bottom:20px;}.elementor-23 .elementor-element.elementor-element-e92766b .elementor-form-fields-wrapper{margin-left:calc( -20px/2 );margin-right:calc( -20px/2 );margin-bottom:-20px;}.elementor-23 .elementor-element.elementor-element-e92766b .elementor-field-group.recaptcha_v3-bottomleft, .elementor-23 .elementor-element.elementor-element-e92766b .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-23 .elementor-element.elementor-element-e92766b .elementor-labels-inline .elementor-field-group > label{padding-left:6px;}body:not(.rtl) .elementor-23 .elementor-element.elementor-element-e92766b .elementor-labels-inline .elementor-field-group > label{padding-right:6px;}body .elementor-23 .elementor-element.elementor-element-e92766b .elementor-labels-above .elementor-field-group > label{padding-bottom:6px;}.elementor-23 .elementor-element.elementor-element-e92766b .elementor-field-group > label{font-family:"Montserrat", Sans-serif;font-size:13px;font-weight:500;text-transform:uppercase;line-height:1.3em;letter-spacing:2px;}.elementor-23 .elementor-element.elementor-element-e92766b .elementor-field-type-html{padding-bottom:0px;}.elementor-23 .elementor-element.elementor-element-e92766b{--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;}@media(max-width:1024px){.elementor-23 .elementor-element.elementor-element-88cfa29{--min-height:600px;--padding-top:75px;--padding-bottom:75px;--padding-left:25px;--padding-right:25px;}.elementor-23 .elementor-element.elementor-element-83a85fd .elementor-heading-title{font-size:var( --e-global-typography-87670e2-font-size );line-height:var( --e-global-typography-87670e2-line-height );}.elementor-23 .elementor-element.elementor-element-1b5ab2c{--padding-top:75px;--padding-bottom:75px;--padding-left:25px;--padding-right:25px;}.elementor-23 .elementor-element.elementor-element-6ed55c2 img{height:50vw;}.elementor-23 .elementor-element.elementor-element-1f0727d img{height:50vw;}.elementor-23 .elementor-element.elementor-element-848b719 img{height:50vw;}.elementor-23 .elementor-element.elementor-element-6eca1ac img{height:50vw;}.elementor-23 .elementor-element.elementor-element-d11b7eb img{height:50vw;}.elementor-23 .elementor-element.elementor-element-04e968f img{height:50vw;}.elementor-23 .elementor-element.elementor-element-36daaf6{--e-n-carousel-swiper-slides-to-display:2;}.elementor-23 .elementor-element.elementor-element-48b551b{--flex-direction:column-reverse;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:75px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-23 .elementor-element.elementor-element-0ff7b1a{--padding-top:75px;--padding-bottom:75px;--padding-left:25px;--padding-right:25px;}.elementor-23 .elementor-element.elementor-element-0feda27{--gap:40px 40px;--row-gap:40px;--column-gap:40px;}.elementor-23 .elementor-element.elementor-element-8e7f591{--gap:75px 75px;--row-gap:75px;--column-gap:75px;--padding-top:75px;--padding-bottom:75px;--padding-left:25px;--padding-right:25px;}.elementor-23 .elementor-element.elementor-element-8361fbd{width:var( --container-widget-width, 260px );max-width:260px;--container-widget-width:260px;--container-widget-flex-grow:0;}.elementor-23 .elementor-element.elementor-element-8361fbd .elementor-heading-title{font-size:20px;}.elementor-23 .elementor-element.elementor-element-2ba0937{--gap:20px 40px;--row-gap:20px;--column-gap:40px;--flex-wrap:wrap;--padding-top:20px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-23 .elementor-element.elementor-element-c4f51a2.e-con{--flex-grow:1;--flex-shrink:0;}.elementor-23 .elementor-element.elementor-element-9c005d2 .elementor-heading-title{font-size:18px;}.elementor-23 .elementor-element.elementor-element-72f68bf.e-con{--flex-grow:1;--flex-shrink:0;}.elementor-23 .elementor-element.elementor-element-f70f20d .elementor-heading-title{font-size:18px;}.elementor-23 .elementor-element.elementor-element-e2d9e82.e-con{--flex-grow:1;--flex-shrink:0;}.elementor-23 .elementor-element.elementor-element-da6771a .elementor-heading-title{font-size:18px;}.elementor-23 .elementor-element.elementor-element-62abd88.e-con{--flex-grow:1;--flex-shrink:0;}.elementor-23 .elementor-element.elementor-element-bf94bf0 .elementor-heading-title{font-size:18px;}.elementor-23 .elementor-element.elementor-element-655bebc .elementor-heading-title{font-size:60px;}.elementor-23 .elementor-element.elementor-element-0dfa540 .elementor-heading-title{font-size:var( --e-global-typography-52bae30-font-size );line-height:var( --e-global-typography-52bae30-line-height );letter-spacing:var( --e-global-typography-52bae30-letter-spacing );}.elementor-23 .elementor-element.elementor-element-80ccb3b{--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-23 .elementor-element.elementor-element-fc5ac22{--padding-top:75px;--padding-bottom:75px;--padding-left:25px;--padding-right:25px;}.elementor-23 .elementor-element.elementor-element-8594c87 .elementor-heading-title{font-size:var( --e-global-typography-52bae30-font-size );line-height:var( --e-global-typography-52bae30-line-height );letter-spacing:var( --e-global-typography-52bae30-letter-spacing );}}@media(max-width:767px){.elementor-23 .elementor-element.elementor-element-88cfa29{--min-height:calc(100vh - 78.5px);--padding-top:60px;--padding-bottom:60px;--padding-left:20px;--padding-right:20px;}.elementor-23 .elementor-element.elementor-element-83a85fd .elementor-heading-title{font-size:var( --e-global-typography-87670e2-font-size );line-height:var( --e-global-typography-87670e2-line-height );}.elementor-23 .elementor-element.elementor-element-1b5ab2c{--padding-top:60px;--padding-bottom:60px;--padding-left:20px;--padding-right:20px;}.elementor-23 .elementor-element.elementor-element-6ed55c2 img{height:400px;}.elementor-23 .elementor-element.elementor-element-1f0727d img{height:400px;}.elementor-23 .elementor-element.elementor-element-848b719 img{height:400px;}.elementor-23 .elementor-element.elementor-element-6eca1ac img{height:400px;}.elementor-23 .elementor-element.elementor-element-d11b7eb img{height:400px;}.elementor-23 .elementor-element.elementor-element-04e968f img{height:400px;}.elementor-23 .elementor-element.elementor-element-36daaf6{--e-n-carousel-swiper-slides-to-display:1;}.elementor-23 .elementor-element.elementor-element-0ff7b1a{--padding-top:60px;--padding-bottom:60px;--padding-left:20px;--padding-right:20px;}.elementor-23 .elementor-element.elementor-element-0feda27{--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;}.elementor-23 .elementor-element.elementor-element-f04de6c{width:100%;max-width:100%;}.elementor-23 .elementor-element.elementor-element-a8c6cea{width:100%;max-width:100%;}.elementor-23 .elementor-element.elementor-element-2c62892{--min-height:400px;}.elementor-23 .elementor-element.elementor-element-8e7f591{--gap:60px 60px;--row-gap:60px;--column-gap:60px;--padding-top:60px;--padding-bottom:60px;--padding-left:20px;--padding-right:20px;}.elementor-23 .elementor-element.elementor-element-8361fbd{width:100%;max-width:100%;}.elementor-23 .elementor-element.elementor-element-4718f5d{--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-23 .elementor-element.elementor-element-655bebc .elementor-heading-title{font-size:46px;}.elementor-23 .elementor-element.elementor-element-0dfa540 .elementor-heading-title{font-size:var( --e-global-typography-52bae30-font-size );line-height:var( --e-global-typography-52bae30-line-height );letter-spacing:var( --e-global-typography-52bae30-letter-spacing );}.elementor-23 .elementor-element.elementor-element-9b0639c{--min-height:400px;}.elementor-23 .elementor-element.elementor-element-fc5ac22{--padding-top:60px;--padding-bottom:60px;--padding-left:20px;--padding-right:20px;}.elementor-23 .elementor-element.elementor-element-8594c87 .elementor-heading-title{font-size:var( --e-global-typography-52bae30-font-size );line-height:var( --e-global-typography-52bae30-line-height );letter-spacing:var( --e-global-typography-52bae30-letter-spacing );}}@media(min-width:768px){.elementor-23 .elementor-element.elementor-element-1b5ab2c{--content-width:740px;}.elementor-23 .elementor-element.elementor-element-0ff7b1a{--width:50%;}.elementor-23 .elementor-element.elementor-element-2c62892{--width:50%;}.elementor-23 .elementor-element.elementor-element-8e7f591{--content-width:1460px;}.elementor-23 .elementor-element.elementor-element-9b0639c{--width:50%;}.elementor-23 .elementor-element.elementor-element-fc5ac22{--width:50%;}}@media(max-width:1024px) and (min-width:768px){.elementor-23 .elementor-element.elementor-element-0ff7b1a{--width:100%;}.elementor-23 .elementor-element.elementor-element-2c62892{--width:100%;}.elementor-23 .elementor-element.elementor-element-c4f51a2{--width:40%;}.elementor-23 .elementor-element.elementor-element-72f68bf{--width:40%;}.elementor-23 .elementor-element.elementor-element-e2d9e82{--width:40%;}.elementor-23 .elementor-element.elementor-element-62abd88{--width:40%;}.elementor-23 .elementor-element.elementor-element-9b0639c{--width:100%;}.elementor-23 .elementor-element.elementor-element-fc5ac22{--width:100%;}}/* Start custom CSS for heading, class: .elementor-element-8f845ab */.elementor-23 .elementor-element.elementor-element-8f845ab p {
    margin: 8px 0 -8px !important;
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-6ed55c2 */.elementor-23 .elementor-element.elementor-element-6ed55c2 {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-6ed55c2 img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-6ed55c2::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d244e24 */.elementor-23 .elementor-element.elementor-element-d244e24:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-1f0727d */.elementor-23 .elementor-element.elementor-element-1f0727d {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-1f0727d img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-1f0727d::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9a5d8a9 */.elementor-23 .elementor-element.elementor-element-9a5d8a9:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-848b719 */.elementor-23 .elementor-element.elementor-element-848b719 {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-848b719 img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-848b719::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ae2fa6f */.elementor-23 .elementor-element.elementor-element-ae2fa6f:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-6eca1ac */.elementor-23 .elementor-element.elementor-element-6eca1ac {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-6eca1ac img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-6eca1ac::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2857961 */.elementor-23 .elementor-element.elementor-element-2857961:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-d11b7eb */.elementor-23 .elementor-element.elementor-element-d11b7eb {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-d11b7eb img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-d11b7eb::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-94bf9d4 */.elementor-23 .elementor-element.elementor-element-94bf9d4:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-04e968f */.elementor-23 .elementor-element.elementor-element-04e968f {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-04e968f img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-04e968f::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-99d2d4c */.elementor-23 .elementor-element.elementor-element-99d2d4c:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-6ed55c2 */.elementor-23 .elementor-element.elementor-element-6ed55c2 {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-6ed55c2 img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-6ed55c2::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d244e24 */.elementor-23 .elementor-element.elementor-element-d244e24:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-1f0727d */.elementor-23 .elementor-element.elementor-element-1f0727d {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-1f0727d img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-1f0727d::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9a5d8a9 */.elementor-23 .elementor-element.elementor-element-9a5d8a9:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-848b719 */.elementor-23 .elementor-element.elementor-element-848b719 {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-848b719 img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-848b719::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ae2fa6f */.elementor-23 .elementor-element.elementor-element-ae2fa6f:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-6eca1ac */.elementor-23 .elementor-element.elementor-element-6eca1ac {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-6eca1ac img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-6eca1ac::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2857961 */.elementor-23 .elementor-element.elementor-element-2857961:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-d11b7eb */.elementor-23 .elementor-element.elementor-element-d11b7eb {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-d11b7eb img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-d11b7eb::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-94bf9d4 */.elementor-23 .elementor-element.elementor-element-94bf9d4:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-04e968f */.elementor-23 .elementor-element.elementor-element-04e968f {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-04e968f img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-04e968f::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-99d2d4c */.elementor-23 .elementor-element.elementor-element-99d2d4c:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-6ed55c2 */.elementor-23 .elementor-element.elementor-element-6ed55c2 {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-6ed55c2 img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-6ed55c2::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d244e24 */.elementor-23 .elementor-element.elementor-element-d244e24:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-1f0727d */.elementor-23 .elementor-element.elementor-element-1f0727d {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-1f0727d img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-1f0727d::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9a5d8a9 */.elementor-23 .elementor-element.elementor-element-9a5d8a9:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-848b719 */.elementor-23 .elementor-element.elementor-element-848b719 {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-848b719 img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-848b719::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ae2fa6f */.elementor-23 .elementor-element.elementor-element-ae2fa6f:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-6eca1ac */.elementor-23 .elementor-element.elementor-element-6eca1ac {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-6eca1ac img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-6eca1ac::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2857961 */.elementor-23 .elementor-element.elementor-element-2857961:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-d11b7eb */.elementor-23 .elementor-element.elementor-element-d11b7eb {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-d11b7eb img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-d11b7eb::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-94bf9d4 */.elementor-23 .elementor-element.elementor-element-94bf9d4:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-04e968f */.elementor-23 .elementor-element.elementor-element-04e968f {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-04e968f img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-04e968f::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-99d2d4c */.elementor-23 .elementor-element.elementor-element-99d2d4c:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-6ed55c2 */.elementor-23 .elementor-element.elementor-element-6ed55c2 {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-6ed55c2 img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-6ed55c2::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d244e24 */.elementor-23 .elementor-element.elementor-element-d244e24:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-1f0727d */.elementor-23 .elementor-element.elementor-element-1f0727d {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-1f0727d img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-1f0727d::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9a5d8a9 */.elementor-23 .elementor-element.elementor-element-9a5d8a9:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-848b719 */.elementor-23 .elementor-element.elementor-element-848b719 {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-848b719 img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-848b719::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ae2fa6f */.elementor-23 .elementor-element.elementor-element-ae2fa6f:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-6eca1ac */.elementor-23 .elementor-element.elementor-element-6eca1ac {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-6eca1ac img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-6eca1ac::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2857961 */.elementor-23 .elementor-element.elementor-element-2857961:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-d11b7eb */.elementor-23 .elementor-element.elementor-element-d11b7eb {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-d11b7eb img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-d11b7eb::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-94bf9d4 */.elementor-23 .elementor-element.elementor-element-94bf9d4:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-04e968f */.elementor-23 .elementor-element.elementor-element-04e968f {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-04e968f img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-04e968f::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-99d2d4c */.elementor-23 .elementor-element.elementor-element-99d2d4c:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-6ed55c2 */.elementor-23 .elementor-element.elementor-element-6ed55c2 {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-6ed55c2 img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-6ed55c2::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d244e24 */.elementor-23 .elementor-element.elementor-element-d244e24:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-1f0727d */.elementor-23 .elementor-element.elementor-element-1f0727d {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-1f0727d img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-1f0727d::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9a5d8a9 */.elementor-23 .elementor-element.elementor-element-9a5d8a9:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-848b719 */.elementor-23 .elementor-element.elementor-element-848b719 {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-848b719 img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-848b719::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ae2fa6f */.elementor-23 .elementor-element.elementor-element-ae2fa6f:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-6eca1ac */.elementor-23 .elementor-element.elementor-element-6eca1ac {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-6eca1ac img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-6eca1ac::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2857961 */.elementor-23 .elementor-element.elementor-element-2857961:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-d11b7eb */.elementor-23 .elementor-element.elementor-element-d11b7eb {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-d11b7eb img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-d11b7eb::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-94bf9d4 */.elementor-23 .elementor-element.elementor-element-94bf9d4:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-04e968f */.elementor-23 .elementor-element.elementor-element-04e968f {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-04e968f img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-04e968f::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-99d2d4c */.elementor-23 .elementor-element.elementor-element-99d2d4c:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-6ed55c2 */.elementor-23 .elementor-element.elementor-element-6ed55c2 {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-6ed55c2 img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-6ed55c2::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d244e24 */.elementor-23 .elementor-element.elementor-element-d244e24:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-1f0727d */.elementor-23 .elementor-element.elementor-element-1f0727d {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-1f0727d img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-1f0727d::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9a5d8a9 */.elementor-23 .elementor-element.elementor-element-9a5d8a9:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-848b719 */.elementor-23 .elementor-element.elementor-element-848b719 {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-848b719 img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-848b719::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ae2fa6f */.elementor-23 .elementor-element.elementor-element-ae2fa6f:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-6eca1ac */.elementor-23 .elementor-element.elementor-element-6eca1ac {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-6eca1ac img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-6eca1ac::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2857961 */.elementor-23 .elementor-element.elementor-element-2857961:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-d11b7eb */.elementor-23 .elementor-element.elementor-element-d11b7eb {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-d11b7eb img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-d11b7eb::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-94bf9d4 */.elementor-23 .elementor-element.elementor-element-94bf9d4:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-04e968f */.elementor-23 .elementor-element.elementor-element-04e968f {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-04e968f img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-04e968f::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-99d2d4c */.elementor-23 .elementor-element.elementor-element-99d2d4c:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-6ed55c2 */.elementor-23 .elementor-element.elementor-element-6ed55c2 {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-6ed55c2 img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-6ed55c2::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d244e24 */.elementor-23 .elementor-element.elementor-element-d244e24:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-1f0727d */.elementor-23 .elementor-element.elementor-element-1f0727d {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-1f0727d img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-1f0727d::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9a5d8a9 */.elementor-23 .elementor-element.elementor-element-9a5d8a9:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-848b719 */.elementor-23 .elementor-element.elementor-element-848b719 {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-848b719 img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-848b719::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ae2fa6f */.elementor-23 .elementor-element.elementor-element-ae2fa6f:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-6eca1ac */.elementor-23 .elementor-element.elementor-element-6eca1ac {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-6eca1ac img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-6eca1ac::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2857961 */.elementor-23 .elementor-element.elementor-element-2857961:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-d11b7eb */.elementor-23 .elementor-element.elementor-element-d11b7eb {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-d11b7eb img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-d11b7eb::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-94bf9d4 */.elementor-23 .elementor-element.elementor-element-94bf9d4:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-04e968f */.elementor-23 .elementor-element.elementor-element-04e968f {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-04e968f img {
    display: block;
    width: 100%;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-04e968f::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(180deg, #2C252300 70%, #2C252380 100%);
    z-index: 1;
    pointer-events: none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-99d2d4c */.elementor-23 .elementor-element.elementor-element-99d2d4c:hover img {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for gallery, class: .elementor-element-af6e0f7 */.elementor-23 .elementor-element.elementor-element-af6e0f7 .elementor-gallery-item {
    overflow: hidden;
}

.elementor-23 .elementor-element.elementor-element-af6e0f7 .e-gallery-image {
    background-position: center center;
    transform-origin: center center;
    transition: transform 0.8s ease;
}

.elementor-23 .elementor-element.elementor-element-af6e0f7 .elementor-gallery-item:hover .e-gallery-image {
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-0dfa540 */.elementor-23 .elementor-element.elementor-element-0dfa540 h1 {
    margin-bottom: 0 !important;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-8594c87 */.elementor-23 .elementor-element.elementor-element-8594c87 h1 {
    margin-bottom: 0 !important;
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Trajan Regular';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://rosys.co.za/wp-content/uploads/2026/08/TrajanPro-Regular.eot');
	src: url('https://rosys.co.za/wp-content/uploads/2026/08/TrajanPro-Regular.eot?#iefix') format('embedded-opentype'),
		url('https://rosys.co.za/wp-content/uploads/2026/08/TrajanPro-Regular.woff2') format('woff2'),
		url('https://rosys.co.za/wp-content/uploads/2026/08/TrajanPro-Regular.woff') format('woff'),
		url('https://rosys.co.za/wp-content/uploads/2026/08/TrajanPro-Regular.ttf') format('truetype'),
		url('https://rosys.co.za/wp-content/uploads/2026/08/TrajanPro-Regular.svg#TrajanRegular') format('svg');
}
/* End Custom Fonts CSS */