.elementor-345 .elementor-element.elementor-element-c0e9086{--display:flex;--min-height:800px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--overlay-opacity:0.39;--overlay-mix-blend-mode:multiply;--padding-top:130px;--padding-bottom:10px;--padding-left:20px;--padding-right:20px;}.elementor-345 .elementor-element.elementor-element-c0e9086:not(.elementor-motion-effects-element-type-background), .elementor-345 .elementor-element.elementor-element-c0e9086 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://thegrottospa.co.za/cape-town/wp-content/uploads/sites/2/2026/11/Page-hero.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-345 .elementor-element.elementor-element-c0e9086::before, .elementor-345 .elementor-element.elementor-element-c0e9086 > .elementor-background-video-container::before, .elementor-345 .elementor-element.elementor-element-c0e9086 > .e-con-inner > .elementor-background-video-container::before, .elementor-345 .elementor-element.elementor-element-c0e9086 > .elementor-background-slideshow::before, .elementor-345 .elementor-element.elementor-element-c0e9086 > .e-con-inner > .elementor-background-slideshow::before, .elementor-345 .elementor-element.elementor-element-c0e9086 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-345 .elementor-element.elementor-element-e1fd812{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--z-index:1;}.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-345 .elementor-element.elementor-element-7f094e9{text-align:center;}.elementor-345 .elementor-element.elementor-element-7f094e9 .elementor-heading-title{font-family:"the-seasons", Sans-serif;font-size:64px;font-weight:300;line-height:1.4em;letter-spacing:-0.64px;color:var( --e-global-color-ct01bgp );}.elementor-345 .elementor-element.elementor-element-80da0ba{--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;--padding-top:85px;--padding-bottom:85px;--padding-left:20px;--padding-right:20px;}.elementor-345 .elementor-element.elementor-element-8b74f78{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:00px 00px;--row-gap:00px;--column-gap:00px;}.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-345 .elementor-element.elementor-element-70d938e{text-align:start;font-family:"commuters-sans", Sans-serif;font-size:18px;font-weight:300;line-height:1.2em;color:var( --e-global-color-text );}.elementor-345 .elementor-element.elementor-element-9b3cc88{--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;--padding-top:85px;--padding-bottom:85px;--padding-left:20px;--padding-right:20px;}.elementor-345 .elementor-element.elementor-element-096bb7e{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:00px 00px;--row-gap:00px;--column-gap:00px;}.elementor-345 .elementor-element.elementor-element-ea7f512{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 15px) 0px;text-align:start;}.elementor-345 .elementor-element.elementor-element-ea7f512 .elementor-heading-title{font-family:"commuters-sans", Sans-serif;font-size:18px;font-weight:500;text-transform:uppercase;line-height:1.2em;letter-spacing:0.96px;color:var( --e-global-color-primary );}.elementor-345 .elementor-element.elementor-element-28e590c{text-align:start;font-family:"commuters-sans", Sans-serif;font-size:16px;font-weight:300;line-height:1.2em;color:var( --e-global-color-text );}.elementor-345 .elementor-element.elementor-element-28e590c p{margin-block-end:0px;}.elementor-345 .elementor-element.elementor-element-e13bd3f{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 15px) 0px;text-align:start;}.elementor-345 .elementor-element.elementor-element-e13bd3f .elementor-heading-title{font-family:"commuters-sans", Sans-serif;font-size:18px;font-weight:500;text-transform:uppercase;line-height:1.2em;letter-spacing:0.96px;color:var( --e-global-color-primary );}.elementor-345 .elementor-element.elementor-element-bf370d7{text-align:start;font-family:"commuters-sans", Sans-serif;font-size:16px;font-weight:300;line-height:1.2em;color:var( --e-global-color-text );}.elementor-345 .elementor-element.elementor-element-bf370d7 p{margin-block-end:0px;}.elementor-345 .elementor-element.elementor-element-c56c70a{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 15px) 0px;text-align:start;}.elementor-345 .elementor-element.elementor-element-c56c70a .elementor-heading-title{font-family:"commuters-sans", Sans-serif;font-size:18px;font-weight:500;text-transform:uppercase;line-height:1.2em;letter-spacing:0.96px;color:var( --e-global-color-primary );}.elementor-345 .elementor-element.elementor-element-915b853{text-align:start;font-family:"commuters-sans", Sans-serif;font-size:16px;font-weight:300;line-height:1.2em;color:var( --e-global-color-text );}.elementor-345 .elementor-element.elementor-element-915b853 p{margin-block-end:0px;}.elementor-345 .elementor-element.elementor-element-7487a76{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 15px) 0px;text-align:start;}.elementor-345 .elementor-element.elementor-element-7487a76 .elementor-heading-title{font-family:"commuters-sans", Sans-serif;font-size:18px;font-weight:500;text-transform:uppercase;line-height:1.2em;letter-spacing:0.96px;color:var( --e-global-color-primary );}.elementor-345 .elementor-element.elementor-element-d9fb5e6{text-align:start;font-family:"commuters-sans", Sans-serif;font-size:16px;font-weight:300;line-height:1.2em;color:var( --e-global-color-text );}.elementor-345 .elementor-element.elementor-element-d9fb5e6 p{margin-block-end:0px;}.elementor-345 .elementor-element.elementor-element-9e898fa{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 15px) 0px;text-align:start;}.elementor-345 .elementor-element.elementor-element-9e898fa .elementor-heading-title{font-family:"commuters-sans", Sans-serif;font-size:18px;font-weight:500;text-transform:uppercase;line-height:1.2em;letter-spacing:0.96px;color:var( --e-global-color-primary );}.elementor-345 .elementor-element.elementor-element-1df61fe{text-align:start;font-family:"commuters-sans", Sans-serif;font-size:16px;font-weight:300;line-height:1.2em;color:var( --e-global-color-text );}.elementor-345 .elementor-element.elementor-element-1df61fe p{margin-block-end:0px;}.elementor-345 .elementor-element.elementor-element-e51d77e{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 15px) 0px;text-align:start;}.elementor-345 .elementor-element.elementor-element-e51d77e .elementor-heading-title{font-family:"commuters-sans", Sans-serif;font-size:18px;font-weight:500;text-transform:uppercase;line-height:1.2em;letter-spacing:0.96px;color:var( --e-global-color-primary );}.elementor-345 .elementor-element.elementor-element-b1d695f{text-align:start;font-family:"commuters-sans", Sans-serif;font-size:16px;font-weight:300;line-height:1.2em;color:var( --e-global-color-text );}.elementor-345 .elementor-element.elementor-element-b1d695f p{margin-block-end:0px;}.elementor-345 .elementor-element.elementor-element-0b4f348{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 15px) 0px;text-align:start;}.elementor-345 .elementor-element.elementor-element-0b4f348 .elementor-heading-title{font-family:"commuters-sans", Sans-serif;font-size:18px;font-weight:500;text-transform:uppercase;line-height:1.2em;letter-spacing:0.96px;color:var( --e-global-color-primary );}.elementor-345 .elementor-element.elementor-element-1026f1d{text-align:start;font-family:"commuters-sans", Sans-serif;font-size:16px;font-weight:300;line-height:1.2em;color:var( --e-global-color-text );}.elementor-345 .elementor-element.elementor-element-1026f1d p{margin-block-end:0px;}.elementor-345 .elementor-element.elementor-element-49b51c5{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 15px) 0px;text-align:start;}.elementor-345 .elementor-element.elementor-element-49b51c5 .elementor-heading-title{font-family:"commuters-sans", Sans-serif;font-size:18px;font-weight:500;text-transform:uppercase;line-height:1.2em;letter-spacing:0.96px;color:var( --e-global-color-primary );}.elementor-345 .elementor-element.elementor-element-2c5770f{text-align:start;font-family:"commuters-sans", Sans-serif;font-size:16px;font-weight:300;line-height:1.2em;color:var( --e-global-color-text );}.elementor-345 .elementor-element.elementor-element-2c5770f p{margin-block-end:0px;}.elementor-345 .elementor-element.elementor-element-b905871{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 15px) 0px;text-align:start;}.elementor-345 .elementor-element.elementor-element-b905871 .elementor-heading-title{font-family:"commuters-sans", Sans-serif;font-size:18px;font-weight:500;text-transform:uppercase;line-height:1.2em;letter-spacing:0.96px;color:var( --e-global-color-primary );}.elementor-345 .elementor-element.elementor-element-d785ff1{text-align:start;font-family:"commuters-sans", Sans-serif;font-size:16px;font-weight:300;line-height:1.2em;color:var( --e-global-color-text );}.elementor-345 .elementor-element.elementor-element-d785ff1 p{margin-block-end:0px;}@media(max-width:1024px){.elementor-345 .elementor-element.elementor-element-c0e9086{--min-height:720px;}.elementor-345 .elementor-element.elementor-element-7f094e9 .elementor-heading-title{font-size:52px;letter-spacing:-0.52px;}.elementor-345 .elementor-element.elementor-element-80da0ba{--padding-top:70px;--padding-bottom:70px;--padding-left:20px;--padding-right:20px;}.elementor-345 .elementor-element.elementor-element-9b3cc88{--padding-top:70px;--padding-bottom:70px;--padding-left:20px;--padding-right:20px;}.elementor-345 .elementor-element.elementor-element-ea7f512 .elementor-heading-title{font-size:15px;letter-spacing:0.9px;}.elementor-345 .elementor-element.elementor-element-e13bd3f .elementor-heading-title{font-size:15px;letter-spacing:0.9px;}.elementor-345 .elementor-element.elementor-element-c56c70a .elementor-heading-title{font-size:15px;letter-spacing:0.9px;}.elementor-345 .elementor-element.elementor-element-7487a76 .elementor-heading-title{font-size:15px;letter-spacing:0.9px;}.elementor-345 .elementor-element.elementor-element-9e898fa .elementor-heading-title{font-size:15px;letter-spacing:0.9px;}.elementor-345 .elementor-element.elementor-element-e51d77e .elementor-heading-title{font-size:15px;letter-spacing:0.9px;}.elementor-345 .elementor-element.elementor-element-0b4f348 .elementor-heading-title{font-size:15px;letter-spacing:0.9px;}.elementor-345 .elementor-element.elementor-element-49b51c5 .elementor-heading-title{font-size:15px;letter-spacing:0.9px;}.elementor-345 .elementor-element.elementor-element-b905871 .elementor-heading-title{font-size:15px;letter-spacing:0.9px;}}@media(max-width:767px){.elementor-345 .elementor-element.elementor-element-c0e9086{--min-height:720px;}.elementor-345 .elementor-element.elementor-element-7f094e9 .elementor-heading-title{font-size:40px;letter-spacing:-0.4px;}.elementor-345 .elementor-element.elementor-element-80da0ba{--padding-top:55px;--padding-bottom:55px;--padding-left:20px;--padding-right:20px;}.elementor-345 .elementor-element.elementor-element-70d938e{font-size:17px;}.elementor-345 .elementor-element.elementor-element-9b3cc88{--padding-top:55px;--padding-bottom:55px;--padding-left:20px;--padding-right:20px;}.elementor-345 .elementor-element.elementor-element-ea7f512 .elementor-heading-title{font-size:14px;letter-spacing:0.84px;}.elementor-345 .elementor-element.elementor-element-28e590c{font-size:17px;}.elementor-345 .elementor-element.elementor-element-e13bd3f .elementor-heading-title{font-size:14px;letter-spacing:0.84px;}.elementor-345 .elementor-element.elementor-element-bf370d7{font-size:17px;}.elementor-345 .elementor-element.elementor-element-c56c70a .elementor-heading-title{font-size:14px;letter-spacing:0.84px;}.elementor-345 .elementor-element.elementor-element-915b853{font-size:17px;}.elementor-345 .elementor-element.elementor-element-7487a76 .elementor-heading-title{font-size:14px;letter-spacing:0.84px;}.elementor-345 .elementor-element.elementor-element-d9fb5e6{font-size:17px;}.elementor-345 .elementor-element.elementor-element-9e898fa .elementor-heading-title{font-size:14px;letter-spacing:0.84px;}.elementor-345 .elementor-element.elementor-element-1df61fe{font-size:17px;}.elementor-345 .elementor-element.elementor-element-e51d77e .elementor-heading-title{font-size:14px;letter-spacing:0.84px;}.elementor-345 .elementor-element.elementor-element-b1d695f{font-size:17px;}.elementor-345 .elementor-element.elementor-element-0b4f348 .elementor-heading-title{font-size:14px;letter-spacing:0.84px;}.elementor-345 .elementor-element.elementor-element-1026f1d{font-size:17px;}.elementor-345 .elementor-element.elementor-element-49b51c5 .elementor-heading-title{font-size:14px;letter-spacing:0.84px;}.elementor-345 .elementor-element.elementor-element-2c5770f{font-size:17px;}.elementor-345 .elementor-element.elementor-element-b905871 .elementor-heading-title{font-size:14px;letter-spacing:0.84px;}.elementor-345 .elementor-element.elementor-element-d785ff1{font-size:17px;}}/* Start custom CSS for text-editor, class: .elementor-element-70d938e */.elementor-345 .elementor-element.elementor-element-70d938e li:not(last-child) {
    margin-bottom: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-28e590c */.elementor-345 .elementor-element.elementor-element-28e590c li:not(last-child) {
    margin-bottom: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-bf370d7 */.elementor-345 .elementor-element.elementor-element-bf370d7 li:not(last-child) {
    margin-bottom: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-915b853 */.elementor-345 .elementor-element.elementor-element-915b853 li:not(last-child) {
    margin-bottom: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-d9fb5e6 */.elementor-345 .elementor-element.elementor-element-d9fb5e6 li:not(last-child) {
    margin-bottom: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-1df61fe */.elementor-345 .elementor-element.elementor-element-1df61fe li:not(last-child) {
    margin-bottom: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-b1d695f */.elementor-345 .elementor-element.elementor-element-b1d695f li:not(last-child) {
    margin-bottom: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-1026f1d */.elementor-345 .elementor-element.elementor-element-1026f1d li:not(last-child) {
    margin-bottom: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-2c5770f */.elementor-345 .elementor-element.elementor-element-2c5770f li:not(last-child) {
    margin-bottom: 15px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-d785ff1 */.elementor-345 .elementor-element.elementor-element-d785ff1 li:not(last-child) {
    margin-bottom: 15px;
}/* End custom CSS */