.elementor-571 .elementor-element.elementor-element-08db818{--display:flex;--min-height:540px;--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:flex-end;--align-items:flex-start;--overlay-opacity:0.65;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-571 .elementor-element.elementor-element-08db818:not(.elementor-motion-effects-element-type-background), .elementor-571 .elementor-element.elementor-element-08db818 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://tgn.redfernmediadevelopment2023.com/wp-content/uploads/2026/05/DSC05693-scaled.jpg");background-position:center 30%;background-size:cover;}.elementor-571 .elementor-element.elementor-element-08db818::before, .elementor-571 .elementor-element.elementor-element-08db818 > .elementor-background-video-container::before, .elementor-571 .elementor-element.elementor-element-08db818 > .e-con-inner > .elementor-background-video-container::before, .elementor-571 .elementor-element.elementor-element-08db818 > .elementor-background-slideshow::before, .elementor-571 .elementor-element.elementor-element-08db818 > .e-con-inner > .elementor-background-slideshow::before, .elementor-571 .elementor-element.elementor-element-08db818 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#1E1228;--background-overlay:'';}.elementor-571 .elementor-element.elementor-element-a17ee9d{--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:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:52px;--padding-left:48px;--padding-right:48px;}.elementor-571 .elementor-element.elementor-element-a17ee9d:not(.elementor-motion-effects-element-type-background), .elementor-571 .elementor-element.elementor-element-a17ee9d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );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-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );color:var( --e-global-color-primary );}.elementor-571 .elementor-element.elementor-element-17aabe8 > .elementor-widget-container{margin:16px 0px 20px 0px;}.elementor-571 .elementor-element.elementor-element-17aabe8{text-align:start;}.elementor-571 .elementor-element.elementor-element-17aabe8 .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:50px;font-weight:400;line-height:1.15em;letter-spacing:-0.02em;color:#ffffff;}.elementor-571 .elementor-element.elementor-element-d8770c2{--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:center;--padding-top:56px;--padding-bottom:56px;--padding-left:0px;--padding-right:0px;}.elementor-571 .elementor-element.elementor-element-d8770c2:not(.elementor-motion-effects-element-type-background), .elementor-571 .elementor-element.elementor-element-d8770c2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F3EFF6;}.elementor-571 .elementor-element.elementor-element-191cfaa{--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;--gap:32px 32px;--row-gap:32px;--column-gap:32px;--padding-top:0px;--padding-bottom:0px;--padding-left:32px;--padding-right:32px;}.elementor-571 .elementor-element.elementor-element-6a51b58 > .elementor-widget-container{padding:0px 0px 0px 20px;border-style:solid;border-width:0px 0px 0px 4px;border-color:var( --e-global-color-kz-plum-mid );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}.elementor-571 .elementor-element.elementor-element-502a730 .elementor-button{background-color:#1E1228;fill:#ffffff;color:#ffffff;border-radius:100px 100px 100px 100px;}.elementor-571 .elementor-element.elementor-element-502a730 .elementor-button-content-wrapper{flex-direction:row;}.elementor-571 .elementor-element.elementor-element-788ca7e{--display:flex;--padding-top:96px;--padding-bottom:96px;--padding-left:0px;--padding-right:0px;}.elementor-571 .elementor-element.elementor-element-788ca7e:not(.elementor-motion-effects-element-type-background), .elementor-571 .elementor-element.elementor-element-788ca7e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FAF8F6;}.elementor-571 .elementor-element.elementor-element-1fe850a{--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:center;--gap:80px 80px;--row-gap:80px;--column-gap:80px;--padding-top:0px;--padding-bottom:0px;--padding-left:32px;--padding-right:32px;}.elementor-571 .elementor-element.elementor-element-1a3dbd4{--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;--gap:24px 24px;--row-gap:24px;--column-gap:24px;}.elementor-571 .elementor-element.elementor-element-c9c52dd{text-align:start;}.elementor-571 .elementor-element.elementor-element-c9c52dd .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:44px;font-weight:400;line-height:1.18em;letter-spacing:-0.02em;color:#1E1228;}.elementor-571 .elementor-element.elementor-element-e89a1bb{--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;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-571 .elementor-element.elementor-element-5138d2a{text-align:center;}.elementor-571 .elementor-element.elementor-element-5138d2a img{width:100%;height:480px;object-fit:cover;object-position:center center;border-radius:20px 20px 20px 20px;}.elementor-571 .elementor-element.elementor-element-0e2814e{--display:flex;--padding-top:96px;--padding-bottom:96px;--padding-left:0px;--padding-right:0px;}.elementor-571 .elementor-element.elementor-element-0e2814e:not(.elementor-motion-effects-element-type-background), .elementor-571 .elementor-element.elementor-element-0e2814e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-571 .elementor-element.elementor-element-262ddc3{--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:0px;--padding-bottom:0px;--padding-left:32px;--padding-right:32px;}.elementor-571 .elementor-element.elementor-element-081b470{text-align:start;}.elementor-571 .elementor-element.elementor-element-081b470 .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:44px;font-weight:400;line-height:1.18em;letter-spacing:-0.02em;color:#1a0f24;}.elementor-571 .elementor-element.elementor-element-8a811fd{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--flex-wrap:nowrap;--margin-top:48px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-571 .elementor-element.elementor-element-b371ab4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:rgba(100,60,140,0.12);--border-color:rgba(100,60,140,0.12);--border-radius:12px 12px 12px 12px;--padding-top:32px;--padding-bottom:32px;--padding-left:28px;--padding-right:28px;}.elementor-571 .elementor-element.elementor-element-b371ab4:not(.elementor-motion-effects-element-type-background), .elementor-571 .elementor-element.elementor-element-b371ab4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#f7f3fa;}.elementor-571 .elementor-element.elementor-element-37228ef{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:rgba(100,60,140,0.12);--border-color:rgba(100,60,140,0.12);--border-radius:12px 12px 12px 12px;--padding-top:32px;--padding-bottom:32px;--padding-left:28px;--padding-right:28px;}.elementor-571 .elementor-element.elementor-element-37228ef:not(.elementor-motion-effects-element-type-background), .elementor-571 .elementor-element.elementor-element-37228ef > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#f7f3fa;}.elementor-571 .elementor-element.elementor-element-4d711e0{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:rgba(100,60,140,0.12);--border-color:rgba(100,60,140,0.12);--border-radius:12px 12px 12px 12px;--padding-top:32px;--padding-bottom:32px;--padding-left:28px;--padding-right:28px;}.elementor-571 .elementor-element.elementor-element-4d711e0:not(.elementor-motion-effects-element-type-background), .elementor-571 .elementor-element.elementor-element-4d711e0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#f7f3fa;}.elementor-571 .elementor-element.elementor-element-f71d0d3{--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-571 .elementor-element.elementor-element-e4b96b2{--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:center;--padding-top:96px;--padding-bottom:96px;--padding-left:0px;--padding-right:0px;}.elementor-571 .elementor-element.elementor-element-e4b96b2:not(.elementor-motion-effects-element-type-background), .elementor-571 .elementor-element.elementor-element-e4b96b2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FAF8F6;}.elementor-571 .elementor-element.elementor-element-5336cc8{--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:0px;--padding-bottom:0px;--padding-left:32px;--padding-right:32px;}.elementor-571 .elementor-element.elementor-element-0eed1b8{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--overflow:hidden;--border-radius:12px 12px 12px 12px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-571 .elementor-element.elementor-element-0eed1b8:not(.elementor-motion-effects-element-type-background), .elementor-571 .elementor-element.elementor-element-0eed1b8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1E1228;}.elementor-571 .elementor-element.elementor-element-f18ab6a{--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:space-between;--padding-top:52px;--padding-bottom:52px;--padding-left:52px;--padding-right:52px;}.elementor-571 .elementor-element.elementor-element-58b0f67{text-align:start;}.elementor-571 .elementor-element.elementor-element-58b0f67 .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:28px;font-weight:400;line-height:1.25em;letter-spacing:-0.02em;color:#ffffff;}.elementor-571 .elementor-element.elementor-element-20e6c53 .elementor-button{background-color:var( --e-global-color-3206ae6 );font-family:"Libre Franklin", Sans-serif;font-size:15px;font-weight:500;fill:#1E1228;color:#1E1228;border-radius:100px 100px 100px 100px;}.elementor-571 .elementor-element.elementor-element-20e6c53 > .elementor-widget-container{margin:40px 0px 0px 0px;}.elementor-571 .elementor-element.elementor-element-ddeeea6{--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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-571 .elementor-element.elementor-element-ddeeea6:not(.elementor-motion-effects-element-type-background), .elementor-571 .elementor-element.elementor-element-ddeeea6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://tgn.redfernmediadevelopment2023.com/wp-content/uploads/2026/05/DSA05890-scaled.jpg");background-position:center center;background-size:cover;}.elementor-571 .elementor-element.elementor-element-2fc6385{--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:center;--padding-top:96px;--padding-bottom:96px;--padding-left:0px;--padding-right:0px;}.elementor-571 .elementor-element.elementor-element-2fc6385:not(.elementor-motion-effects-element-type-background), .elementor-571 .elementor-element.elementor-element-2fc6385 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-571 .elementor-element.elementor-element-d2d689b{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:32px;--padding-right:32px;}.elementor-571 .elementor-element.elementor-element-fe8bf0e{text-align:start;}.elementor-571 .elementor-element.elementor-element-fe8bf0e .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:44px;font-weight:400;line-height:1.18em;letter-spacing:-0.02em;color:#1E1228;}.elementor-571 .elementor-element.elementor-element-285b6ba{--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:64px 64px;--row-gap:64px;--column-gap:64px;--margin-top:56px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-571 .elementor-element.elementor-element-0ee022d{--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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-571 .elementor-element.elementor-element-faea01e{--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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-571 .elementor-element.elementor-element-294d434{--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-571 .elementor-element.elementor-element-202afeb{--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:center;--padding-top:96px;--padding-bottom:96px;--padding-left:0px;--padding-right:0px;}.elementor-571 .elementor-element.elementor-element-202afeb:not(.elementor-motion-effects-element-type-background), .elementor-571 .elementor-element.elementor-element-202afeb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-571 .elementor-element.elementor-element-1c68695{--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:0px;--padding-bottom:0px;--padding-left:32px;--padding-right:32px;}.elementor-571 .elementor-element.elementor-element-37eec41{text-align:start;}.elementor-571 .elementor-element.elementor-element-37eec41 .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:44px;font-weight:400;line-height:1.18em;letter-spacing:-0.02em;color:#1E1228;}.elementor-571 .elementor-element.elementor-element-9ed28ff{--display:flex;--position:relative;--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:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:48px;--margin-bottom:64px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;top:0px;}body:not(.rtl) .elementor-571 .elementor-element.elementor-element-9ed28ff{left:0px;}body.rtl .elementor-571 .elementor-element.elementor-element-9ed28ff{right:0px;}.elementor-571 .elementor-element.elementor-element-92c0f28{--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:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-571 .elementor-element.elementor-element-05426c8{--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:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-571 .elementor-element.elementor-element-b6a3db4{--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:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-571 .elementor-element.elementor-element-1458dc5{--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:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-571 .elementor-element.elementor-element-30a8909{width:var( --container-widget-width, 70% );max-width:70%;--container-widget-width:70%;--container-widget-flex-grow:0;}.elementor-571 .elementor-element.elementor-element-30a8909.elementor-element{--align-self:center;}.elementor-571 .elementor-element.elementor-element-bd582b6{--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-571 .elementor-element.elementor-element-52a642c{--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-571 .elementor-element.elementor-element-ba39012{--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:center;--padding-top:120px;--padding-bottom:120px;--padding-left:0px;--padding-right:0px;}.elementor-571 .elementor-element.elementor-element-ba39012:not(.elementor-motion-effects-element-type-background), .elementor-571 .elementor-element.elementor-element-ba39012 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1E1228;}.elementor-571 .elementor-element.elementor-element-b45ebe9{--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:center;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:0px;--padding-bottom:0px;--padding-left:32px;--padding-right:32px;}.elementor-571 .elementor-element.elementor-element-96f64e3{text-align:center;}.elementor-571 .elementor-element.elementor-element-96f64e3 .elementor-heading-title{font-family:"Lora", Sans-serif;font-size:44px;font-weight:400;line-height:1.18em;letter-spacing:-0.02em;color:#ffffff;}.elementor-571 .elementor-element.elementor-element-cbea63d .elementor-button{background-color:var( --e-global-color-3206ae6 );font-family:"Libre Franklin", Sans-serif;font-size:15px;font-weight:500;fill:#1E1228;color:#1E1228;border-radius:100px 100px 100px 100px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-571 .elementor-element.elementor-element-1fe850a{--content-width:1200px;}}@media(max-width:1024px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}}@media(max-width:767px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-571 .elementor-element.elementor-element-17aabe8 .elementor-heading-title{font-size:28px;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-571 .elementor-element.elementor-element-8a811fd{--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-571 .elementor-element.elementor-element-30a8909{--container-widget-width:1000px;--container-widget-flex-grow:0;width:var( --container-widget-width, 1000px );max-width:1000px;}}/* Start custom CSS *//* ── GLOBAL PAGE TOKENS ─────────────────────────────── */
:root {
  --plum: #2D1B3D;
  --plum-deep: #1E1228;
  --plum-mid: #8B6A9E;
  --plum-light: #C9B8D4;
  --plum-wash: #F3EFF6;
  --canvas: #FAF8F6;
  --surface: #FFFFFF;
  --text-primary: #2D2A33;
  --text-secondary: #8A8690;
  --border: #E8E4E0;
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
}

/* Remove default Elementor section padding for this page */
.e-con { --content-width: 1200px; }


/* Push text container above the overlay */
#hero-text-inner {
  position: relative;
  z-index: 2;
}

/* Label */
#hero-label .elementor-text-editor {
  line-height: 1;
  margin-bottom: 0;
}

/* Heading */
#hero-h1 .elementor-heading-title {
  font-family: 'Lora', Georgia, serif !important;
  font-size: clamp(28px, 3.6vw, 50px) !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  color: #ffffff !important;
  max-width: 740px;
}

/* Lead */
#hero-lead .elementor-text-editor p {
  font-family: 'Libre Franklin', 'Helvetica Neue', sans-serif !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
  color: rgba(255,255,255,0.7) !important;
  font-weight: 300 !important;
  max-width: 560px;
}

/* ── HERO ENTRANCE ANIMATIONS ──────────────────────── */
@keyframes heroFadeUp {
  from { opacity: 0; transform: translateY(28px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes heroFadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

#hero-header {
  animation: heroFadeIn 0.9s var(--ease-out) both;
}

#hero-label .elementor-widget-container {
  animation: heroFadeUp 0.8s 0.2s var(--ease-out) both;
}

#hero-h1 .elementor-widget-container {
  animation: heroFadeUp 0.9s 0.35s var(--ease-out) both;
}

#hero-lead .elementor-widget-container {
  animation: heroFadeUp 0.9s 0.55s var(--ease-out) both;
}

/* ── SECTION 2: ORIGIN BAND ─────────────────────────── */
#origin-band {
  border-top: 1px solid var(--plum-light);
  border-bottom: 1px solid var(--plum-light);
}

/* Left-border accent on the quote paragraph */
#origin-quote .elementor-widget-container {
  border-left: 3px solid var(--plum-mid);
  padding-left: 24px;
}

#origin-quote .elementor-text-editor p {
  font-family: 'Libre Franklin', 'Helvetica Neue', sans-serif !important;
  font-size: clamp(16px, 1.3vw, 18px) !important;
  font-weight: 400 !important;
  line-height: 1.8 !important;
  color: var(--text-primary) !important;
  max-width: 680px;
}

/* CTA button — dark pill */
#origin-cta .elementor-button {
  background: var(--plum-deep) !important;
  color: #ffffff !important;
  border-radius: 100px !important;
  font-family: 'Libre Franklin', sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  padding: 16px 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  transition: background 300ms var(--ease-out), box-shadow 300ms var(--ease-out) !important;
  border: none !important;
}
#origin-cta .elementor-button:hover {
  background: var(--plum) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.2);
}

/* Fade-up entrance — triggered by IntersectionObserver (shared JS below) */
#origin-quote .elementor-widget-container,
#origin-cta .elementor-widget-container {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.7s var(--ease-out), transform 0.7s var(--ease-out);
}
#origin-quote.tgn-visible .elementor-widget-container {
  opacity: 1; transform: none;
}
#origin-cta.tgn-visible .elementor-widget-container {
  opacity: 1; transform: none;
  transition-delay: 0.15s;
}

/* ── SCROLL FADE UTILITY (all sections) ──────────────── */
.tgn-fade-el {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 0.7s var(--ease-out), transform 0.7s var(--ease-out);
}
.tgn-fade-el.tgn-visible {
  opacity: 1;
  transform: none;
}
.tgn-fade-el.delay-1 { transition-delay: 0.12s; }
.tgn-fade-el.delay-2 { transition-delay: 0.24s; }
.tgn-fade-el.delay-3 { transition-delay: 0.36s; }

/* ── SECTION 3: STORY / MORTAR ATTACK ───────────────── */
#story-section {
  border-top: 1px solid var(--border);
}

/* Headline */
#story-headline .elementor-heading-title {
  font-family: 'Lora', Georgia, serif !important;
  font-size: clamp(30px, 3.5vw, 44px) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.02em !important;
  color: var(--plum-deep) !important;
}

/* Body paragraphs */
#story-body .elementor-text-editor p {
  font-size: 16px !important;
  line-height: 1.8 !important;
  color: var(--text-secondary) !important;
  font-weight: 300 !important;
  font-family: 'Libre Franklin', sans-serif !important;
}

/* Image — rounded corners, cover crop */
#story-image img {
  border-radius: 12px !important;
  width: 100% !important;
  height: 480px !important;
  object-fit: cover !important;
  object-position: center 20% !important;
  display: block !important;
}

/* Equal columns */
#story-left,
#story-right {
  flex: 1 1 0 !important;
  min-width: 0 !important;
}

/* Responsive — stack on mobile */
@media (max-width: 900px) {
  #story-inner {
    flex-direction: column !important;
    gap: 32px !important;
  }
  #story-left,
  #story-right {
    width: 100% !important;
  }
  #story-image img {
    height: 320px !important;
  }
}

/* ── SECTION 4: PULL QUOTES ─────────────────────────── */
#pq-section {
  border-top: 1px solid var(--border);
}

/* Headline */
#pq-headline .elementor-heading-title {
  font-family: 'Lora', Georgia, serif !important;
  font-size: clamp(30px, 3.5vw, 44px) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.02em !important;
  color: #1a0f24 !important;
}

/* Grid — equal columns, no wrap */
#pq-grid {
  flex-wrap: nowrap !important;
}
#pq-col-1,
#pq-col-2,
#pq-col-3 {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  transition: transform 400ms var(--ease-spring),
              background 300ms var(--ease-out) !important;
}
#pq-col-1:hover,
#pq-col-2:hover,
#pq-col-3:hover {
  transform: translateY(-4px) !important;
  background: #efe8f5 !important;
}

/* Quote text */
#pq-card-1 .elementor-text-editor p,
#pq-card-2 .elementor-text-editor p,
#pq-card-3 .elementor-text-editor p {
  font-family: 'Lora', Georgia, serif !important;
  font-style: italic !important;
  font-size: 19px !important;
  color: #1a0f24 !important;
  line-height: 1.5 !important;
}

/* Responsive — stack on mobile */
@media (max-width: 900px) {
  #pq-grid {
    flex-direction: column !important;
    flex-wrap: wrap !important;
  }
  #pq-col-1,
  #pq-col-2,
  #pq-col-3 {
    width: 100% !important;
  }
}

/* ── SECTION 4: PULL QUOTE CARD ANIMATIONS (fix) ────── */

/* Cards start hidden — observer adds tgn-visible to the column container */
#pq-col-1,
#pq-col-2,
#pq-col-3 {
  opacity: 0;
  transform: translateY(24px);
  transition:
    opacity 0.7s var(--ease-out),
    transform 0.7s var(--ease-out),
    background 300ms var(--ease-out) !important;
}

/* Visible state — observer fires */
#pq-col-1.tgn-visible,
#pq-col-2.tgn-visible,
#pq-col-3.tgn-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Hover lift — only once visible, override transform */
#pq-col-1.tgn-visible:hover,
#pq-col-2.tgn-visible:hover,
#pq-col-3.tgn-visible:hover {
  transform: translateY(-4px) !important;
  background: #efe8f5 !important;
  transition:
    transform 400ms var(--ease-spring),
    background 300ms var(--ease-out) !important;
}

/* Stagger delays via delay utility classes */
#pq-col-1 { transition-delay: 0s; }
#pq-col-2 { transition-delay: 0.13s; }
#pq-col-3 { transition-delay: 0.26s; }

/* ── SECTION 5: KEYNOTE TOPICS WRAPPER ───────────────── */
#kn-section-wrap,
#kn-section-wrap > .elementor-widget-wrap,
#kn-section-wrap > .e-con-inner {
  padding: 0 !important;
  margin: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
}

/* Remove any top border Elementor adds between sections */
#kn-section-wrap {
  border-top: none !important;
}

/* Ensure the sticky scroll container sits flush */
#kn-cred-scroll {
  display: block;
  width: 100%;
}

/* ── SECTION 6: CUSTOM & CONFIDENTIAL SESSIONS ───────── */
#custom-sessions-section {
  border-top: none;
}

/* Dark card — overflow hidden already set on container */
#custom-sessions-card {
  min-height: 360px;
}

/* Content column */
#custom-sessions-content {
  flex: 1 1 0 !important;
  min-width: 0 !important;
}

/* Headline */
#custom-sessions-title .elementor-heading-title {
  font-family: 'Lora', Georgia, serif !important;
  font-size: clamp(22px, 2.2vw, 28px) !important;
  color: #ffffff !important;
  line-height: 1.25 !important;
  letter-spacing: -0.02em !important;
  margin-bottom: 16px;
}

/* Body text */
#custom-sessions-body .elementor-text-editor p {
  font-size: 15px !important;
  line-height: 1.75 !important;
  color: rgba(255,255,255,0.6) !important;
  font-weight: 300 !important;
  font-family: 'Libre Franklin', sans-serif !important;
}

/* CTA button — white pill */
#custom-sessions-cta .elementor-button {
  background: #ffffff !important;
  color: #1E1228 !important;
  border-radius: 100px !important;
  font-family: 'Libre Franklin', sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  padding: 12px 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  border: none !important;
  white-space: nowrap !important;
  width: max-content !important;
  transition: box-shadow 300ms var(--ease-out),
              transform 150ms var(--ease-spring) !important;
}
#custom-sessions-cta .elementor-button:hover {
  box-shadow: 0 8px 24px rgba(0,0,0,0.25) !important;
}
#custom-sessions-cta .elementor-button:active {
  transform: scale(0.98) !important;
}

/* Image column — fills height of card */
#custom-sessions-img-col {
  flex-shrink: 0 !important;
  position: relative !important;
  min-height: 360px !important;
  overflow: hidden !important;
}

#custom-sessions-img .elementor-widget-container,
#custom-sessions-img figure,
#custom-sessions-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  margin: 0 !important;
}

/* Image zoom on card hover */
#custom-sessions-card:hover #custom-sessions-img img {
  transform: scale(1.04);
  transition: transform 600ms var(--ease-out);
}
#custom-sessions-img img {
  transition: transform 600ms var(--ease-out);
}

/* Fade-up entrance for the whole card */
#custom-sessions-card {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.75s var(--ease-out),
              transform 0.75s var(--ease-out);
}
#custom-sessions-card.tgn-visible {
  opacity: 1;
  transform: none;
}

/* Responsive — stack vertically on mobile */
@media (max-width: 900px) {
  #custom-sessions-card {
    flex-direction: column !important;
  }
  #custom-sessions-content {
    width: 100% !important;
    padding: 36px 28px 32px !important;
  }
  #custom-sessions-img-col {
    width: 100% !important;
    min-height: 240px !important;
    order: 2;
  }
}

/* ── SECTION 7: WHERE KARI SPEAKS ───────────────────── */
#ws-section {
  border-top: 1px solid var(--border);
}

/* Headline */
#ws-headline .elementor-heading-title {
  font-family: 'Lora', Georgia, serif !important;
  font-size: clamp(30px, 3.5vw, 44px) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.02em !important;
  color: var(--plum-deep) !important;
  margin-bottom: 24px;
}

/* Intro paragraph */
#ws-intro .elementor-text-editor p {
  font-size: 18px !important;
  line-height: 1.75 !important;
  color: var(--text-secondary) !important;
  font-weight: 300 !important;
  font-family: 'Libre Franklin', sans-serif !important;
  max-width: 600px;
}

/* Two columns — equal, no wrap */
#ws-grid {
  flex-wrap: nowrap !important;
}
#ws-col-1,
#ws-col-2 {
  flex: 1 1 0 !important;
  min-width: 0 !important;
}

/* Column labels */
#ws-col-1 .elementor-text-editor p:first-child,
#ws-col-2 .elementor-text-editor p:first-child {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--plum-mid) !important;
  margin-bottom: 24px !important;
}

/* List items — divider lines between each */
#ws-col-1 .elementor-text-editor li,
#ws-col-2 .elementor-text-editor li {
  font-size: 16px !important;
  color: var(--text-primary) !important;
  font-family: 'Libre Franklin', sans-serif !important;
  line-height: 1.6 !important;
}

/* Responsive — stack on mobile */
@media (max-width: 900px) {
  #ws-grid {
    flex-direction: column !important;
    gap: 40px !important;
  }
  #ws-col-1,
  #ws-col-2 {
    width: 100% !important;
  }
}

/* ── SECTION 8: TESTIMONIALS WRAPPER ────────────────── */
#tgn-testimonials-wrap,
#tgn-testimonials-wrap > .e-con-inner {
  padding: 0 !important;
  margin: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
}
#tgn-testimonials-wrap {
  border-top: none !important;
}

/* ── SECTION 9: HOW BOOKING WORKS ───────────────────── */
#booking-section {
  border-top: 1px solid var(--border);
}

/* Headline */
#booking-headline .elementor-heading-title {
  font-family: 'Lora', Georgia, serif !important;
  font-size: clamp(30px, 3.5vw, 44px) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.02em !important;
  color: var(--plum-deep) !important;
}

/* Steps row — horizontal connector line */
#booking-steps {
  position: relative;
}
#booking-steps::before {
  content: '';
  position: absolute;
  top: 24px;
  left: 12.5%;
  right: 12.5%;
  height: 1px;
  background: var(--border);
  z-index: 0;
}

/* Each step */
#booking-step-1,
#booking-step-2,
#booking-step-3,
#booking-step-4 {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  align-items: center;
  text-align: center;
}

/* Step number circle */
.bk-step-num {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--plum-wash);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Lora', Georgia, serif;
  font-size: 18px;
  color: var(--plum);
  font-style: italic;
  margin: 0 auto 24px;
  position: relative;
  z-index: 1;
  flex-shrink: 0;
}

/* Step title */
.bk-step-title {
  font-size: 16px !important;
  font-weight: 600 !important;
  color: var(--plum-deep) !important;
  line-height: 1.4 !important;
  margin-bottom: 8px !important;
  font-family: 'Libre Franklin', sans-serif !important;
}

/* Step body */
.bk-step-body {
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: var(--text-secondary) !important;
  font-weight: 300 !important;
  font-family: 'Libre Franklin', sans-serif !important;
}

/* ── BOOKING FORM ─────────────────────────────────────── */
.bk-form-wrap {
  background: var(--canvas);
  border-radius: 16px;
  padding: 40px 40px 36px;
}

.bk-form-title {
  font-family: 'Lora', Georgia, serif;
  font-size: 22px;
  color: var(--plum-deep);
  margin-bottom: 28px;
  line-height: 1.3;
  text-align: center;
}

.bk-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.bk-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 14px;
}

.bk-field label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--text-secondary);
  font-family: 'Libre Franklin', sans-serif;
}

.bk-req { color: var(--plum-mid); }

.bk-field input,
.bk-field select,
.bk-field textarea {
  font-family: 'Libre Franklin', sans-serif;
  font-size: 15px;
  color: var(--text-primary);
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 12px 16px;
  outline: none;
  transition: border-color 250ms, box-shadow 250ms;
  width: 100%;
  -webkit-appearance: none;
  appearance: none;
}

.bk-field input:focus,
.bk-field select:focus,
.bk-field textarea:focus {
  border-color: var(--plum-mid);
  box-shadow: 0 0 0 3px rgba(139,106,158,0.12);
}

.bk-field textarea {
  resize: vertical;
  min-height: 96px;
}

.bk-submit-row {
  display: flex;
  justify-content: center;
  margin-top: 8px;
}

.bk-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 16px 36px;
  font-family: 'Libre Franklin', sans-serif;
  font-size: 15px;
  font-weight: 500;
  color: #ffffff;
  background: var(--plum);
  border: none;
  border-radius: 100px;
  cursor: pointer;
  transition: background 300ms var(--ease-out),
              transform 150ms var(--ease-spring);
}
.bk-submit:hover { background: var(--plum-deep); }
.bk-submit:active { transform: scale(0.98); }
.bk-submit svg { transition: transform 300ms var(--ease-out); }
.bk-submit:hover svg { transform: translateX(4px); }

/* Responsive */
@media (max-width: 900px) {
  #booking-steps {
    flex-wrap: wrap !important;
    gap: 32px !important;
  }
  #booking-steps::before { display: none; }
  #booking-step-1,
  #booking-step-2,
  #booking-step-3,
  #booking-step-4 {
    width: 50% !important;
    flex: 0 0 calc(50% - 16px) !important;
    align-items: flex-start !important;
    text-align: left !important;
    padding: 0 !important;
  }
  .bk-step-num { margin: 0 0 16px 0; }
  .bk-row { grid-template-columns: 1fr; }
  .bk-form-wrap { padding: 32px 24px; }
}

/* ── SECTION 10: SPEAKER RESOURCES WRAPPER ──────────── */
#tgn-resources-wrap,
#tgn-resources-wrap > .e-con-inner {
  padding: 0 !important;
  margin: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
}
#tgn-resources-wrap {
  border-top: none !important;
}

/* ── SECTION 11: FAQ WRAPPER ─────────────────────────── */
#tgn-faq-wrap,
#tgn-faq-wrap > .e-con-inner {
  padding: 0 !important;
  margin: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
}
#tgn-faq-wrap {
  border-top: none !important;
}

/* ── SECTION 11 + 12: FINAL SECTIONS ────────────────── */

/* FAQ section top border (from resources dark bg) */
#tgn-faq { border-top: none; }

/* ── SECTION 12: ABOUT KARI CTA ──────────────────────── */
#about-cta-section {
  border-top: none;
}

/* Headline */
#about-cta-headline .elementor-heading-title {
  font-family: 'Lora', Georgia, serif !important;
  font-size: clamp(30px, 3.5vw, 44px) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.02em !important;
  color: #ffffff !important;
  text-align: center !important;
}

/* Body paragraphs */
#about-cta-body .elementor-text-editor p {
  font-size: 16px !important;
  line-height: 1.8 !important;
  color: rgba(255,255,255,0.6) !important;
  font-weight: 300 !important;
  font-family: 'Libre Franklin', sans-serif !important;
  text-align: center !important;
}

/* CTA button — white pill */
#about-cta-btn .elementor-button {
  background: #ffffff !important;
  color: #1E1228 !important;
  border-radius: 100px !important;
  font-family: 'Libre Franklin', sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  padding: 16px 36px !important;
  transition: box-shadow 300ms var(--ease-out),
              transform 150ms var(--ease-spring) !important;
  border: none !important;
}
#about-cta-btn .elementor-button:hover {
  box-shadow: 0 8px 32px rgba(0,0,0,0.25) !important;
}
#about-cta-btn .elementor-button:active {
  transform: scale(0.98) !important;
}

/* ── SECTION 9: HOW BOOKING WORKS — reference match ──── */

/* Steps row — relative for the connector line */
#booking-steps {
  position: relative !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  flex-wrap: nowrap !important;
  gap: 0 !important;
  width: 100% !important;
}

/* Horizontal connector line — runs through centre of circles */
#booking-steps::before {
  content: '' !important;
  position: absolute !important;
  top: 24px !important;
  left: calc(12.5%) !important;
  right: calc(12.5%) !important;
  height: 1px !important;
  background: #D9D4E0 !important;
  z-index: 0 !important;
}

/* Each step column — equal width, centred content */
#booking-step-1,
#booking-step-2,
#booking-step-3,
#booking-step-4 {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  padding: 0 16px !important;
}

/* Number circle — centred, sits on top of the line */
.bk-step-num {
  width: 48px !important;
  height: 48px !important;
  border-radius: 50% !important;
  background: #EDE8F2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: 'Lora', Georgia, serif !important;
  font-size: 18px !important;
  font-style: italic !important;
  color: #2D1B3D !important;
  margin: 0 auto 28px auto !important;
  position: relative !important;
  z-index: 1 !important;
  flex-shrink: 0 !important;
}

/* Step title — bold, centred, dark */
.bk-step-title {
  font-family: 'Libre Franklin', sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #1E1228 !important;
  line-height: 1.45 !important;
  margin-bottom: 10px !important;
  text-align: center !important;
  display: block !important;
}

/* Step body — lighter, centred */
.bk-step-body {
  font-family: 'Libre Franklin', sans-serif !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  color: #8A8690 !important;
  line-height: 1.7 !important;
  text-align: center !important;
  display: block !important;
}

/* Also target the text-editor wrappers inside each step */
#booking-step-1 .elementor-text-editor,
#booking-step-2 .elementor-text-editor,
#booking-step-3 .elementor-text-editor,
#booking-step-4 .elementor-text-editor {
  text-align: center !important;
  width: 100% !important;
}

/* Responsive */
@media (max-width: 900px) {
  #booking-steps {
    flex-wrap: wrap !important;
    gap: 32px !important;
  }
  #booking-steps::before { display: none !important; }
  #booking-step-1,
  #booking-step-2,
  #booking-step-3,
  #booking-step-4 {
    flex: 0 0 calc(50% - 16px) !important;
    width: calc(50% - 16px) !important;
    align-items: center !important;
    text-align: center !important;
    padding: 0 8px !important;
  }
  .bk-step-num { margin: 0 auto 20px auto !important; }
}

/* ── BOOKING STEPS: real line fix ────────────────────── */

/* The HTML widget wrapper must not participate in flex layout */
.elementor-element-412acdf {
  position: static !important;
  width: 0 !important;
  height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: visible !important;
  flex: 0 0 0 !important;
}
.elementor-element-412acdf .elementor-widget-container {
  padding: 0 !important;
  margin: 0 !important;
}

/* Ensure parent has position relative for the absolute line */
.elementor-element-9ed28ff {
  position: relative !important;
}

/* Circles stay above the line */
.bk-step-num {
  position: relative !important;
  z-index: 2 !important;
}

/* ── FAQ: remove hover/focus background on summary button ── */
#tgn-faq .tgn-faq-summary,
#tgn-faq .tgn-faq-summary:hover,
#tgn-faq .tgn-faq-summary:focus,
#tgn-faq .tgn-faq-summary:active,
#tgn-faq .tgn-faq-summary:focus-visible {
  background: none !important;
  background-color: transparent !important;
  outline: none !important;
  box-shadow: none !important;
  -webkit-tap-highlight-color: transparent !important;
}
#tgn-faq .tgn-faq-item:hover,
#tgn-faq .tgn-faq-item:focus-within {
  background: none !important;
  background-color: transparent !important;
}

/* ══════════════════════════════════════════════════════
   TGN ENTRANCE ANIMATIONS v3 — DEFINITIVE (page 571)
   ══════════════════════════════════════════════════════ */

/* ── BASE: every .tgn-fade-el starts hidden ─────────── */
.tgn-fade-el {
  opacity: 0 !important;
  transform: translateY(44px) !important;
  transition:
    opacity  0.8s cubic-bezier(0.16,1,0.3,1),
    transform 0.8s cubic-bezier(0.16,1,0.3,1) !important;
  will-change: opacity, transform;
}
.tgn-fade-el.tgn-visible {
  opacity: 1 !important;
  transform: none !important;
}

/* ── HEADLINE VARIANT: blur + extra travel ───────────── */
.tgn-fade-el.tgn-headline {
  opacity: 0 !important;
  transform: translateY(52px) !important;
  filter: blur(4px) !important;
  transition:
    opacity  0.9s cubic-bezier(0.16,1,0.3,1),
    transform 0.9s cubic-bezier(0.16,1,0.3,1),
    filter   0.9s cubic-bezier(0.16,1,0.3,1) !important;
}
.tgn-fade-el.tgn-headline.tgn-visible {
  opacity: 1 !important;
  transform: none !important;
  filter: blur(0) !important;
}

/* ── STAGGER DELAYS ──────────────────────────────────── */
.tgn-fade-el.tgn-delay-1,
.tgn-fade-el.delay-1 { transition-delay: 0.15s !important; }
.tgn-fade-el.tgn-delay-2,
.tgn-fade-el.delay-2 { transition-delay: 0.30s !important; }
.tgn-fade-el.tgn-delay-3,
.tgn-fade-el.delay-3 { transition-delay: 0.45s !important; }

/* ── PULL QUOTE CARDS ────────────────────────────────── */
#pq-col-1, #pq-col-2, #pq-col-3 {
  opacity: 0 !important;
  transform: translateY(44px) !important;
  transition:
    opacity  0.75s cubic-bezier(0.16,1,0.3,1),
    transform 0.75s cubic-bezier(0.16,1,0.3,1),
    background 300ms ease !important;
}
#pq-col-1 { transition-delay: 0s !important; }
#pq-col-2 { transition-delay: 0.15s !important; }
#pq-col-3 { transition-delay: 0.30s !important; }
#pq-col-1.tgn-visible,
#pq-col-2.tgn-visible,
#pq-col-3.tgn-visible {
  opacity: 1 !important;
  transform: none !important;
}
#pq-col-1.tgn-visible:hover,
#pq-col-2.tgn-visible:hover,
#pq-col-3.tgn-visible:hover {
  transform: translateY(-5px) !important;
  background: #efe8f5 !important;
  transition: transform 350ms cubic-bezier(0.34,1.56,0.64,1), background 300ms ease !important;
}

/* ── STORY IMAGE: slide from right ──────────────────── */
#e89a1bb.tgn-fade-el,
.elementor-element-e89a1bb.tgn-fade-el {
  opacity: 0 !important;
  transform: translateX(52px) !important;
  transition:
    opacity  0.9s cubic-bezier(0.16,1,0.3,1),
    transform 0.9s cubic-bezier(0.16,1,0.3,1) !important;
}
#e89a1bb.tgn-fade-el.tgn-visible,
.elementor-element-e89a1bb.tgn-fade-el.tgn-visible {
  opacity: 1 !important;
  transform: none !important;
}

/* ── CUSTOM SESSIONS CARD ────────────────────────────── */
#custom-sessions-card.tgn-fade-el,
.elementor-element-0eed1b8.tgn-fade-el {
  opacity: 0 !important;
  transform: translateY(44px) !important;
  transition:
    opacity  0.85s cubic-bezier(0.16,1,0.3,1),
    transform 0.85s cubic-bezier(0.16,1,0.3,1) !important;
}
#custom-sessions-card.tgn-fade-el.tgn-visible,
.elementor-element-0eed1b8.tgn-fade-el.tgn-visible {
  opacity: 1 !important;
  transform: none !important;
}

/* ── BOOKING STEPS: scale-up bounce ─────────────────── */
.elementor-element-92c0f28.tgn-fade-el,
.elementor-element-05426c8.tgn-fade-el,
.elementor-element-b6a3db4.tgn-fade-el,
.elementor-element-1458dc5.tgn-fade-el {
  opacity: 0 !important;
  transform: translateY(36px) scale(0.94) !important;
  transition:
    opacity  0.7s cubic-bezier(0.16,1,0.3,1),
    transform 0.7s cubic-bezier(0.34,1.56,0.64,1) !important;
}
.elementor-element-92c0f28.tgn-fade-el.tgn-visible,
.elementor-element-05426c8.tgn-fade-el.tgn-visible,
.elementor-element-b6a3db4.tgn-fade-el.tgn-visible,
.elementor-element-1458dc5.tgn-fade-el.tgn-visible {
  opacity: 1 !important;
  transform: none !important;
}

/* ── RESOURCE CARDS (self-contained, already have own CSS) ─
   Override from inside the HTML widget handles these,
   but also ensure the wrapper doesn't block them */
.tgn-res-card { transition-delay: var(--delay, 0s) !important; }

/* ── FAQ ITEMS (self-contained HTML widget) ─────────── */
.tgn-faq-headline,
.tgn-faq-item {
  opacity: 0;
  transform: translateY(22px);
  transition:
    opacity 0.65s cubic-bezier(0.16,1,0.3,1),
    transform 0.65s cubic-bezier(0.16,1,0.3,1);
}
.tgn-faq-headline.tgn-visible,
.tgn-faq-item.tgn-visible {
  opacity: 1;
  transform: none;
}

/* ── PREVENT LAYOUT SHIFT ───────────────────────────── */
.tgn-fade-el { backface-visibility: hidden; }/* End custom CSS */