.elementor-50267 .elementor-element.elementor-element-6b6f7445{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-17336473{--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;overflow:visible;}.elementor-widget-breadcrumbs{font-family:var( --e-global-typography-secondary-font-family );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-50267 .elementor-element.elementor-element-1f14c156{padding:00px 15px 0px 14px;font-family:"Poppins";font-weight:400;color:var( --e-global-color-7dc04b9 );}.elementor-50267 .elementor-element.elementor-element-1f14c156 a{color:var( --e-global-color-text );}.elementor-50267 .elementor-element.elementor-element-4f7c7795{--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;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-7c5e2a9b{--display:flex;--min-height:58vh;--justify-content:flex-end;--overlay-opacity:0.19;--border-radius:24px 24px 24px 24px;--padding-top:35px;--padding-bottom:35px;--padding-left:35px;--padding-right:114px;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-7c5e2a9b:not(.elementor-motion-effects-element-type-background), .elementor-50267 .elementor-element.elementor-element-7c5e2a9b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://klf.fr/wp-content/uploads/2026/08/Gemini_Generated_Image_2s74z52s74z52s74.webp");background-position:center center;background-size:cover;}.elementor-50267 .elementor-element.elementor-element-7c5e2a9b::before, .elementor-50267 .elementor-element.elementor-element-7c5e2a9b > .elementor-background-video-container::before, .elementor-50267 .elementor-element.elementor-element-7c5e2a9b > .e-con-inner > .elementor-background-video-container::before, .elementor-50267 .elementor-element.elementor-element-7c5e2a9b > .elementor-background-slideshow::before, .elementor-50267 .elementor-element.elementor-element-7c5e2a9b > .e-con-inner > .elementor-background-slideshow::before, .elementor-50267 .elementor-element.elementor-element-7c5e2a9b > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-text );--background-overlay:'';}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-50267 .elementor-element.elementor-element-f3b1397 .elementor-heading-title{font-family:"Poppins";font-size:48px;font-weight:700;color:#FFFFFF;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family );font-size:var( --e-global-typography-text-font-size );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-50267 .elementor-element.elementor-element-1f73afe{font-family:"Poppins";font-size:21px;font-weight:400;color:#FFFFFF;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-50267 .elementor-element.elementor-element-3d2023a0 .elementor-button{background-color:var( --e-global-color-4b32825 );font-family:"Fredoka";font-size:20px;font-weight:700;fill:#FFFFFF;color:#FFFFFF;border-radius:10px 10px 10px 10px;}.elementor-50267 .elementor-element.elementor-element-56bdf058{--display:flex;--padding-top:-1px;--padding-bottom:-1px;--padding-left:-1px;--padding-right:-1px;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-1c9afe64{--display:flex;border-style:solid;--border-style:solid;border-width:3px 3px 3px 3px;--border-top-width:3px;--border-right-width:3px;--border-bottom-width:3px;--border-left-width:3px;border-color:#85ABF4;--border-color:#85ABF4;--border-radius:24px 24px 24px 24px;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-1c9afe64:not(.elementor-motion-effects-element-type-background), .elementor-50267 .elementor-element.elementor-element-1c9afe64 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFF8F5;}.elementor-50267 .elementor-element.elementor-element-7848fe26{--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;--padding-top:-1px;--padding-bottom:-1px;--padding-left:-1px;--padding-right:-1px;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-3e185c51{--display:flex;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-22626c5f .elementor-heading-title{font-family:"Fredoka";font-size:15px;font-weight:800;-webkit-text-stroke-color:#000;stroke:#000;color:var( --e-global-color-c5db278 );}.elementor-50267 .elementor-element.elementor-element-f6c15b9 .elementskit-section-title-wraper .elementskit-section-title > span{background-color:#F6BC39;color:#FFFFFF;padding:3px 3px 3px 3px;border-radius:10px 10px 10px 10px;}.elementor-50267 .elementor-element.elementor-element-f6c15b9{padding:0px 0px 0px 0px;}.elementor-50267 .elementor-element.elementor-element-f6c15b9 .elementskit-section-title-wraper .elementskit-section-title{font-family:"Poppins";font-size:18px;font-weight:900;}.elementor-50267 .elementor-element.elementor-element-f6c15b9 .elementskit-section-title-wraper .elementskit-section-title span:last-child, .elementor-50267 .elementor-element.elementor-element-f6c15b9 .elementskit-section-title-wraper .elementskit-section-title > span{font-family:"Poppins";font-size:40px;font-weight:900;}.elementor-50267 .elementor-element.elementor-element-45f6dce8{--display:flex;--justify-content:flex-end;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-d0ca6fe{text-align:start;}.elementor-50267 .elementor-element.elementor-element-d0ca6fe .elementor-heading-title{font-family:"Poppins";font-size:12px;font-weight:600;color:var( --e-global-color-text );}.elementor-50267 .elementor-element.elementor-element-39e60f7 .elementor-heading-title{font-family:"Fredoka";font-size:15px;font-weight:800;-webkit-text-stroke-color:#000;stroke:#000;color:var( --e-global-color-c5db278 );}.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 );font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-50267 .elementor-element.elementor-element-804e4c1 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(5px/2);}.elementor-50267 .elementor-element.elementor-element-804e4c1 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(5px/2);}.elementor-50267 .elementor-element.elementor-element-804e4c1 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(5px/2);}.elementor-50267 .elementor-element.elementor-element-804e4c1 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-5px/2);}.elementor-50267 .elementor-element.elementor-element-804e4c1 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-5px/2);}.elementor-50267 .elementor-element.elementor-element-804e4c1 .elementor-icon-list-item:not(:last-child):after{content:"";width:100%;border-color:#DDDDDD78;}.elementor-50267 .elementor-element.elementor-element-804e4c1 .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-50267 .elementor-element.elementor-element-804e4c1 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-style:solid;}.elementor-50267 .elementor-element.elementor-element-804e4c1 .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-width:1px;}.elementor-50267 .elementor-element.elementor-element-804e4c1 .elementor-icon-list-icon i{color:var( --e-global-color-9d8c194 );transition:color 0.3s;}.elementor-50267 .elementor-element.elementor-element-804e4c1 .elementor-icon-list-icon svg{fill:var( --e-global-color-9d8c194 );transition:fill 0.3s;}.elementor-50267 .elementor-element.elementor-element-804e4c1{--e-icon-list-icon-size:18px;--icon-vertical-offset:0px;}.elementor-50267 .elementor-element.elementor-element-804e4c1 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-50267 .elementor-element.elementor-element-804e4c1 .elementor-icon-list-item > a{font-family:"Fredoka";font-size:15px;font-weight:400;}.elementor-50267 .elementor-element.elementor-element-804e4c1 .elementor-icon-list-text{color:var( --e-global-color-text );transition:color 0.3s;}.elementor-50267 .elementor-element.elementor-element-2549a414 .elementor-heading-title{font-family:"Fredoka";font-size:15px;font-weight:800;-webkit-text-stroke-color:#000;stroke:#000;color:var( --e-global-color-c5db278 );}.elementor-50267 .elementor-element.elementor-element-4bc4cf8 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(5px/2);}.elementor-50267 .elementor-element.elementor-element-4bc4cf8 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(5px/2);}.elementor-50267 .elementor-element.elementor-element-4bc4cf8 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(5px/2);}.elementor-50267 .elementor-element.elementor-element-4bc4cf8 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-5px/2);}.elementor-50267 .elementor-element.elementor-element-4bc4cf8 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-5px/2);}.elementor-50267 .elementor-element.elementor-element-4bc4cf8 .elementor-icon-list-item:not(:last-child):after{content:"";width:100%;border-color:#DDDDDD78;}.elementor-50267 .elementor-element.elementor-element-4bc4cf8 .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-50267 .elementor-element.elementor-element-4bc4cf8 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-style:solid;}.elementor-50267 .elementor-element.elementor-element-4bc4cf8 .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-width:1px;}.elementor-50267 .elementor-element.elementor-element-4bc4cf8 .elementor-icon-list-icon i{color:var( --e-global-color-9d8c194 );transition:color 0.3s;}.elementor-50267 .elementor-element.elementor-element-4bc4cf8 .elementor-icon-list-icon svg{fill:var( --e-global-color-9d8c194 );transition:fill 0.3s;}.elementor-50267 .elementor-element.elementor-element-4bc4cf8{--e-icon-list-icon-size:18px;--icon-vertical-offset:0px;}.elementor-50267 .elementor-element.elementor-element-4bc4cf8 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-50267 .elementor-element.elementor-element-4bc4cf8 .elementor-icon-list-item > a{font-family:"Fredoka";font-size:15px;font-weight:400;}.elementor-50267 .elementor-element.elementor-element-4bc4cf8 .elementor-icon-list-text{color:var( --e-global-color-text );transition:color 0.3s;}.elementor-50267 .elementor-element.elementor-element-55248128{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:flex-start;--gap:9px 9px;--row-gap:9px;--column-gap:9px;--padding-top:-1px;--padding-bottom:-1px;--padding-left:-1px;--padding-right:-1px;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-5a1a9257 .ekit-btn-wraper .elementskit-btn{justify-content:center;}.elementor-50267 .elementor-element.elementor-element-5a1a9257 .elementskit-btn{background-color:var( --e-global-color-4b32825 );width:100%;font-family:"Fredoka";font-size:18px;font-weight:700;color:#FFFFFF;fill:#FFFFFF;border-style:none;border-radius:13px 13px 13px 13px;}.elementor-50267 .elementor-element.elementor-element-5a1a9257{padding:0px 0px 0px 0px;}.elementor-50267 .elementor-element.elementor-element-5a1a9257 .elementskit-btn:hover{color:#FFFFFF;fill:#FFFFFF;}.elementor-50267 .elementor-element.elementor-element-5a1a9257 .elementskit-btn > :is(i, svg){font-size:14px;}.elementor-50267 .elementor-element.elementor-element-5a1a9257 .elementskit-btn > i, .elementor-50267 .elementor-element.elementor-element-5a1a9257 .elementskit-btn > svg{margin-right:5px;}.rtl .elementor-50267 .elementor-element.elementor-element-5a1a9257 .elementskit-btn > i, .rtl .elementor-50267 .elementor-element.elementor-element-5a1a9257 .elementskit-btn > svg{margin-left:5px;margin-right:0;}.elementor-50267 .elementor-element.elementor-element-27e877ed{--display:flex;--min-height:78vh;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-504216f1{--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:60px;--padding-bottom:60px;--padding-left:60px;--padding-right:0px;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-504216f1.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-50267 .elementor-element.elementor-element-7313ebf1{text-align:center;}.elementor-50267 .elementor-element.elementor-element-7313ebf1 .elementor-heading-title{font-family:"Fredoka";font-size:16px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-9d8c194 );}.elementor-50267 .elementor-element.elementor-element-661262b{text-align:center;}.elementor-50267 .elementor-element.elementor-element-661262b .elementor-heading-title{font-family:"Poppins";font-size:55px;font-weight:700;color:var( --e-global-color-3e07f53 );}.elementor-50267 .elementor-element.elementor-element-930de3b{padding:1% 1% 1% 1%;text-align:center;font-family:"Poppins";font-size:18px;font-weight:400;color:#4A4C73;}.elementor-50267 .elementor-element.elementor-element-6298ac8{--display:flex;--padding-top:-1px;--padding-bottom:-1px;--padding-left:-1px;--padding-right:-1px;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-a4c40f9{--display:flex;--min-height:100vh;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-a4c40f9:not(.elementor-motion-effects-element-type-background), .elementor-50267 .elementor-element.elementor-element-a4c40f9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EDEFFF;}.elementor-50267 .elementor-element.elementor-element-e2d4c80{--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:60px;--padding-bottom:60px;--padding-left:60px;--padding-right:0px;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-e2d4c80.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-50267 .elementor-element.elementor-element-0c38d2f{text-align:center;}.elementor-50267 .elementor-element.elementor-element-0c38d2f .elementor-heading-title{font-family:"Poppins";font-size:14px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-9d8c194 );}.elementor-50267 .elementor-element.elementor-element-280ddfd{text-align:center;}.elementor-50267 .elementor-element.elementor-element-280ddfd .elementor-heading-title{font-family:"Poppins";font-size:47px;font-weight:700;color:var( --e-global-color-3e07f53 );}.elementor-50267 .elementor-element.elementor-element-9d5759f{padding:0% 15% 0% 15%;text-align:center;font-family:"Poppins";font-size:18px;font-weight:400;color:#4A4C73;}.elementor-50267 .elementor-element.elementor-element-c8b32b4{--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:center;--align-items:stretch;--gap:22px 22px;--row-gap:22px;--column-gap:22px;--flex-wrap:wrap;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-0757bbf{--display:flex;--min-height:83vh;--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;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-0757bbf:not(.elementor-motion-effects-element-type-background), .elementor-50267 .elementor-element.elementor-element-0757bbf > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-c5db278 );}.elementor-50267 .elementor-element.elementor-element-719011c{--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:60px;--padding-bottom:60px;--padding-left:60px;--padding-right:0px;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-719011c.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-50267 .elementor-element.elementor-element-6b36d49 .elementor-heading-title{font-family:"Poppins";font-size:14px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-4b32825 );}.elementor-50267 .elementor-element.elementor-element-1deac61 .elementor-heading-title{font-family:"Poppins";font-size:47px;font-weight:700;color:#FFF8F5;}.elementor-50267 .elementor-element.elementor-element-662b046{padding:0% 45% 0% 0%;font-family:"Poppins";font-size:18px;font-weight:400;color:#FFF8F5;}.elementor-50267 .elementor-element.elementor-element-4ba265c{--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:2px 2px 2px 2px;--border-top-width:2px;--border-right-width:2px;--border-bottom-width:2px;--border-left-width:2px;border-color:#ECE4DE;--border-color:#ECE4DE;--border-radius:14px 14px 14px 14px;--padding-top:84px;--padding-bottom:84px;--padding-left:24px;--padding-right:24px;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-4ba265c:not(.elementor-motion-effects-element-type-background), .elementor-50267 .elementor-element.elementor-element-4ba265c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFF8F5;}.elementor-50267 .elementor-element.elementor-element-a6df905{--display:flex;--padding-top:-1px;--padding-bottom:-1px;--padding-left:-1px;--padding-right:-1px;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-3c6e318{--display:flex;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-f8d4a70{--display:flex;--min-height:100vh;--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:60px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-50267 .elementor-element.elementor-element-79f00f0{text-align:center;}.elementor-50267 .elementor-element.elementor-element-79f00f0 .elementor-heading-title{font-family:"Poppins";font-size:14px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-9d8c194 );}.elementor-50267 .elementor-element.elementor-element-8053006{text-align:center;}.elementor-50267 .elementor-element.elementor-element-8053006 .elementor-heading-title{font-family:"Poppins";font-size:47px;font-weight:700;color:var( --e-global-color-3e07f53 );}.elementor-50267 .elementor-element.elementor-element-291c743{padding:0% 15% 0% 15%;text-align:center;font-family:"Poppins";font-size:18px;font-weight:400;color:#4A4C73;}.elementor-50267 .elementor-element.elementor-element-59baa19{--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:-1px;--padding-bottom:-1px;--padding-left:-1px;--padding-right:-1px;overflow:visible;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-50267 .elementor-element.elementor-element-6b6f7445{--content-width:90%;}.elementor-50267 .elementor-element.elementor-element-4f7c7795{--width:100%;}.elementor-50267 .elementor-element.elementor-element-7c5e2a9b{--width:100%;}.elementor-50267 .elementor-element.elementor-element-56bdf058{--width:44%;}.elementor-50267 .elementor-element.elementor-element-27e877ed{--content-width:1450px;}.elementor-50267 .elementor-element.elementor-element-504216f1{--width:100%;}.elementor-50267 .elementor-element.elementor-element-a4c40f9{--content-width:1450px;}.elementor-50267 .elementor-element.elementor-element-e2d4c80{--width:100%;}.elementor-50267 .elementor-element.elementor-element-0757bbf{--content-width:1425px;}.elementor-50267 .elementor-element.elementor-element-719011c{--width:100%;}.elementor-50267 .elementor-element.elementor-element-4ba265c{--content-width:1328px;}}@media(max-width:1366px) and (min-width:768px){.elementor-50267 .elementor-element.elementor-element-6b6f7445{--content-width:100%;}.elementor-50267 .elementor-element.elementor-element-17336473{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-50267 .elementor-element.elementor-element-56bdf058{--width:100%;}.elementor-50267 .elementor-element.elementor-element-1c9afe64{--width:100%;}.elementor-50267 .elementor-element.elementor-element-504216f1{--width:100%;}.elementor-50267 .elementor-element.elementor-element-e2d4c80{--width:100%;}.elementor-50267 .elementor-element.elementor-element-719011c{--width:100%;}}@media(min-width:2400px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:1366px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-50267 .elementor-element.elementor-element-1f73afe{font-size:16px;}.elementor-50267 .elementor-element.elementor-element-f6c15b9 .elementskit-section-title-wraper .elementskit-section-title{font-size:13px;}.elementor-50267 .elementor-element.elementor-element-f6c15b9 .elementskit-section-title-wraper .elementskit-section-title span:last-child, .elementor-50267 .elementor-element.elementor-element-f6c15b9 .elementskit-section-title-wraper .elementskit-section-title > span{font-size:30px;}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );}.elementor-50267 .elementor-element.elementor-element-5a1a9257 .elementskit-btn{font-size:13px;}}@media(max-width:1024px){.elementor-50267 .elementor-element.elementor-element-4f7c7795{--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-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );}.elementor-50267 .elementor-element.elementor-element-27e877ed{--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:28px 28px;--row-gap:28px;--column-gap:28px;}.elementor-50267 .elementor-element.elementor-element-504216f1{--padding-top:11px;--padding-bottom:11px;--padding-left:11px;--padding-right:11px;}.elementor-50267 .elementor-element.elementor-element-661262b .elementor-heading-title{font-size:50px;}.elementor-50267 .elementor-element.elementor-element-a4c40f9{--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:28px 28px;--row-gap:28px;--column-gap:28px;}.elementor-50267 .elementor-element.elementor-element-e2d4c80{--padding-top:11px;--padding-bottom:11px;--padding-left:11px;--padding-right:11px;}.elementor-50267 .elementor-element.elementor-element-0757bbf{--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:28px 28px;--row-gap:28px;--column-gap:28px;}.elementor-50267 .elementor-element.elementor-element-719011c{--padding-top:11px;--padding-bottom:11px;--padding-left:11px;--padding-right:11px;}.elementor-50267 .elementor-element.elementor-element-662b046{padding:0% 0% 0% 0%;}}@media(max-width:767px){.elementor-50267 .elementor-element.elementor-element-7c5e2a9b{--padding-top:25px;--padding-bottom:25px;--padding-left:25px;--padding-right:25px;}.elementor-50267 .elementor-element.elementor-element-f3b1397 .elementor-heading-title{font-size:23px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-50267 .elementor-element.elementor-element-1f73afe{font-size:14px;}.elementor-50267 .elementor-element.elementor-element-3d2023a0 .elementor-button{font-size:16px;}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );}.elementor-50267 .elementor-element.elementor-element-804e4c1 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-50267 .elementor-element.elementor-element-804e4c1 .elementor-icon-list-item > a{font-size:13px;}.elementor-50267 .elementor-element.elementor-element-4bc4cf8 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-50267 .elementor-element.elementor-element-4bc4cf8 .elementor-icon-list-item > a{font-size:13px;}.elementor-50267 .elementor-element.elementor-element-27e877ed{--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;}.elementor-50267 .elementor-element.elementor-element-504216f1{--padding-top:24px;--padding-bottom:24px;--padding-left:24px;--padding-right:10px;}.elementor-50267 .elementor-element.elementor-element-7313ebf1 .elementor-heading-title{font-size:18px;}.elementor-50267 .elementor-element.elementor-element-661262b .elementor-heading-title{font-size:22px;}.elementor-50267 .elementor-element.elementor-element-930de3b{font-size:16px;}.elementor-50267 .elementor-element.elementor-element-6298ac8{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-50267 .elementor-element.elementor-element-a4c40f9{--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;}.elementor-50267 .elementor-element.elementor-element-e2d4c80{--padding-top:24px;--padding-bottom:24px;--padding-left:24px;--padding-right:10px;}.elementor-50267 .elementor-element.elementor-element-0c38d2f .elementor-heading-title{font-size:12px;}.elementor-50267 .elementor-element.elementor-element-280ddfd .elementor-heading-title{font-size:25px;}.elementor-50267 .elementor-element.elementor-element-9d5759f{padding:0% 0% 0% 0%;font-size:14px;}.elementor-50267 .elementor-element.elementor-element-0757bbf{--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;}.elementor-50267 .elementor-element.elementor-element-719011c{--padding-top:24px;--padding-bottom:24px;--padding-left:24px;--padding-right:10px;}.elementor-50267 .elementor-element.elementor-element-6b36d49 .elementor-heading-title{font-size:12px;}.elementor-50267 .elementor-element.elementor-element-1deac61 .elementor-heading-title{font-size:25px;}.elementor-50267 .elementor-element.elementor-element-662b046{padding:0% 0% 0% 0%;font-size:14px;}.elementor-50267 .elementor-element.elementor-element-79f00f0 .elementor-heading-title{font-size:12px;}.elementor-50267 .elementor-element.elementor-element-8053006 .elementor-heading-title{font-size:28px;}.elementor-50267 .elementor-element.elementor-element-291c743{padding:4% 4% 4% 4%;font-size:14px;}}/* Start custom CSS for breadcrumbs, class: .elementor-element-1f14c156 *//* =====================================================
   FRENCH SUMMER CAMPUS — BREADCRUMBS
   Scoped only to Elementor widget: 1f14c156
===================================================== */

.elementor-element-1f14c156 {
  --breadcrumb-yellow: #F6BC39;
  --breadcrumb-blue: #85ABF4;
  --breadcrumb-cream: #FFF8F5;
  --breadcrumb-navy: #0B315F;
  --breadcrumb-text: #425572;

  width: 100%;
  margin: 0;
  padding: 0 20px;

  font-family: "Poppins", Arial, sans-serif;
}

/* Remove Elementor/widget default spacing */
.elementor-element-1f14c156 .elementor-widget-container {
  width: 100%;
  margin: 0;
  padding: 0;
}

/* Main breadcrumb container */
.elementor-element-1f14c156 #breadcrumbs {
  position: relative;

  width: auto;
  margin: 18px auto;
  padding: 13px 18px;

  overflow: hidden;

  border: 1px solid rgba(11, 49, 95, 0.09);
  border-radius: 16px;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.98),
      rgba(255, 248, 245, 0.96)
    );

  color: var(--breadcrumb-blue);

  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;

  box-shadow:
    0 8px 24px rgba(11, 49, 95, 0.05);
}

/* Small decorative yellow line */
.elementor-element-1f14c156 #breadcrumbs::before {
  position: absolute;
  top: 0;
  left: 18px;

  width: 58px;
  height: 3px;

  border-radius: 0 0 999px 999px;
  background: var(--breadcrumb-yellow);

  content: "";
}

/* Allow all breadcrumb items to wrap properly */
.elementor-element-1f14c156 #breadcrumbs &gt; span {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 8px;
  align-items: center;

  min-width: 0;
}

/* Individual breadcrumb sections */
.elementor-element-1f14c156 #breadcrumbs &gt; span &gt; span {
  display: inline-flex;
  align-items: center;

  min-width: 0;
}

/* Breadcrumb links */
.elementor-element-1f14c156 #breadcrumbs a {
  position: relative;

  display: inline-flex;
  align-items: center;

  color: var(--breadcrumb-text);

  font-size: inherit;
  font-weight: 500;
  line-height: inherit;
  text-decoration: none;

  transition:
    color 180ms ease,
    background-color 180ms ease,
    transform 180ms ease;
}

/* Link hover */
.elementor-element-1f14c156 #breadcrumbs a:hover {
  color: var(--breadcrumb-navy);

  transform: translateY(-1px);
}

/* Accessible keyboard focus */
.elementor-element-1f14c156 #breadcrumbs a:focus-visible {
  border-radius: 5px;
  outline: 3px solid rgba(133, 171, 244, 0.5);
  outline-offset: 3px;
}

/* Current page */
.elementor-element-1f14c156 #breadcrumbs .breadcrumb_last {
  display: inline-flex;
  align-items: center;

  max-width: 100%;
  padding: 5px 10px;

  border-radius: 9px;

  background: rgba(246, 188, 57, 0.18);
  color: var(--breadcrumb-navy);

  font-weight: 600;
  line-height: 1.35;
}

/* =====================================================
   TABLET
===================================================== */

@media (max-width: 900px) {
  .elementor-element-1f14c156 {
    padding-right: 16px;
    padding-left: 16px;
  }

  .elementor-element-1f14c156 #breadcrumbs {
    margin: 15px auto;
  }
}

/* =====================================================
   MOBILE + iPHONE
===================================================== */

@media (max-width: 767px) {
  .elementor-element-1f14c156 {
    padding-right: 11px;
    padding-left: 11px;
  }

  .elementor-element-1f14c156 #breadcrumbs {
    margin: 11px auto;
    padding: 12px 13px;

    border-radius: 14px;

    font-size: 12px;
    line-height: 1.45;
  }

  .elementor-element-1f14c156 #breadcrumbs::before {
    left: 13px;

    width: 46px;
  }

  .elementor-element-1f14c156 #breadcrumbs &gt; span {
    gap: 5px 6px;
  }

  .elementor-element-1f14c156 #breadcrumbs .breadcrumb_last {
    padding: 4px 8px;

    white-space: normal;
  }
}

/* =====================================================
   SMALL PHONES
===================================================== */

@media (max-width: 380px) {
  .elementor-element-1f14c156 {
    padding-right: 9px;
    padding-left: 9px;
  }

  .elementor-element-1f14c156 #breadcrumbs {
    padding: 11px;

    font-size: 11.5px;
  }
}

/* =====================================================
   REDUCED MOTION
===================================================== */

@media (prefers-reduced-motion: reduce) {
  .elementor-element-1f14c156 #breadcrumbs a {
    transition: none;
  }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-f3b1397 */#hero-title-montpellier{
  font-size: 66px;          /* desktop */
  font-weight: 700;
  line-height: 1.02;
  letter-spacing: -0.5px;
  color: #16173F;
  margin-bottom: 22px;
}

/* Tablet */
@media (max-width: 1024px){
  #hero-title-montpellier{ font-size: 54px; }
}

/* Large phone */
@media (max-width: 768px){
  #hero-title-montpellier{ font-size: 44px; }
}

/* Phone */
@media (max-width: 480px){
  #hero-title-montpellier{ font-size: 34px; letter-spacing: -0.3px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-45ae58f */@import url("https://fonts.googleapis.com/css2?family=Fredoka:wght@500;600;700&amp;family=Poppins:wght@400;500;600;700&amp;display=swap");

/* =====================================================
   ELEMENTOR STICKY SUPPORT
===================================================== */

.elementor-widget-html:has(.klf-story),
.elementor-widget-html:has(.klf-story) &gt; .elementor-widget-container,
.elementor-element:has(.klf-story),
.elementor-element:has(.klf-story) &gt; .elementor-widget-container,
.e-con:has(.klf-story),
.e-con-inner:has(.klf-story),
.elementor-section:has(.klf-story),
.elementor-container:has(.klf-story),
.elementor-column:has(.klf-story) {
  overflow: visible !important;
  overflow-y: visible !important;
}

/* =====================================================
   GENERAL
===================================================== */

.klf-story,
.klf-story * {
  box-sizing: border-box;
}

.klf-story {
  --klf-yellow: #F6BC39;
  --klf-blue: #85ABF4;
  --klf-cream: #FFF8F5;
  --klf-navy: #0B315F;
  --klf-text: #425572;
  --klf-white: #FFFFFF;

  position: relative;
  isolation: isolate;

  width: 100%;
  padding: clamp(35px, 5vw, 75px) 22px;

  overflow: visible;

  background:
    radial-gradient(
      circle 210px at -50px 40px,
      rgba(133, 171, 244, 0.24) 0 66%,
      transparent 67%
    ),
    radial-gradient(
      circle 250px at calc(100% + 70px) calc(100% - 40px),
      rgba(246, 188, 57, 0.22) 0 66%,
      transparent 67%
    ),
    var(--klf-cream);

  color: var(--klf-navy);
  font-family: "Poppins", sans-serif;
}

.klf-story__shell {
  position: relative;
  z-index: 1;

  width: min(100%, 1320px);
  margin-inline: auto;
}

.klf-story h3 {
  font-family: "Fredoka", sans-serif !important;
}

/* =====================================================
   DESKTOP STORY LAYOUT
===================================================== */

.klf-story__layout {
  display: grid;
  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(390px, 0.92fr);

  gap: clamp(38px, 6vw, 90px);
  align-items: start;
}

/* =====================================================
   STICKY VISUAL
===================================================== */

.klf-story__visual-column {
  position: -webkit-sticky;
  position: sticky;
  top: clamp(25px, 7vh, 80px);

  z-index: 10;
  align-self: start;

  height: max-content;
}

.klf-story__visual {
  position: relative;

  width: 100%;
  height: min(74vh, 750px);
  min-height: 540px;

  overflow: visible;
}

/* =====================================================
   STORY SLIDES
===================================================== */

.klf-story__slide {
  position: absolute;
  inset: 0;
  z-index: 1;

  opacity: 0;
  visibility: hidden;

  transform: translateZ(0) scale(1.025);
  backface-visibility: hidden;

  transition:
    opacity 520ms ease,
    visibility 520ms ease,
    transform 700ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

.klf-story__slide.is-active {
  z-index: 2;

  opacity: 1;
  visibility: visible;

  transform: translateZ(0) scale(1);
}

/* =====================================================
   INDEPENDENT CARD CAROUSEL
===================================================== */

.klf-carousel {
  position: relative;

  width: 100%;
  height: 100%;

  touch-action: pan-y;
  user-select: none;
  -webkit-user-select: none;
}

.klf-carousel__stack {
  position: absolute;
  inset: 0 38px;

  perspective: 1200px;
}

.klf-carousel__item {
  position: absolute;
  inset: 0;

  margin: 0;
  overflow: hidden;

  border: 7px solid rgba(255, 255, 255, 0.94);
  border-radius: 30px;

  background: var(--klf-white);

  opacity: 0;
  visibility: hidden;

  filter:
    brightness(0.70)
    saturate(0.82);

  transform:
    translateX(0)
    scale(0.82);

  box-shadow:
    0 24px 58px rgba(11, 49, 95, 0.13),
    0 7px 19px rgba(11, 49, 95, 0.06);

  transition:
    transform 520ms cubic-bezier(0.2, 0.7, 0.2, 1),
    opacity 420ms ease,
    visibility 420ms ease,
    filter 420ms ease;
}

.klf-carousel__item img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;
  object-position: center;
}

.klf-carousel__item.is-active {
  z-index: 4;

  opacity: 1;
  visibility: visible;

  filter: none;

  transform:
    translateX(0)
    scale(1);
}

.klf-carousel__item.is-previous {
  z-index: 2;

  opacity: 0.86;
  visibility: visible;

  transform:
    translateX(-11%)
    scale(0.90);
}

.klf-carousel__item.is-next {
  z-index: 3;

  opacity: 0.86;
  visibility: visible;

  transform:
    translateX(11%)
    scale(0.90);
}

/* =====================================================
   IMAGE SHADE
===================================================== */

.klf-carousel__shade {
  position: absolute;
  inset: 0 38px;
  z-index: 5;

  border-radius: 30px;

  background:
    linear-gradient(
      180deg,
      rgba(11, 49, 95, 0) 40%,
      rgba(11, 49, 95, 0.08) 60%,
      rgba(11, 49, 95, 0.72) 100%
    );

  pointer-events: none;
}

/* =====================================================
   CAPTIONS
===================================================== */

.klf-story__image-caption,
.klf-story__mobile-caption {
  position: absolute;
  right: 78px;
  bottom: 34px;
  left: 78px;
  z-index: 8;

  display: flex;
  align-items: center;
  gap: 14px;

  color: var(--klf-white);

  pointer-events: none;
}

.klf-story__image-caption span,
.klf-story__mobile-caption span {
  display: grid;
  flex: 0 0 auto;

  width: 48px;
  height: 48px;
  place-items: center;

  border: 1px solid rgba(255, 255, 255, 0.46);
  border-radius: 15px;

  background: rgba(255, 255, 255, 0.18);

  font-size: 14px;
  font-weight: 600;

  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.klf-story__image-caption strong,
.klf-story__mobile-caption strong {
  max-width: 430px;

  font-family: "Fredoka", sans-serif;
  font-size: clamp(22px, 2vw, 31px);
  font-weight: 600;
  line-height: 1.12;
}

/* =====================================================
   CAROUSEL ARROWS
===================================================== */

.klf-carousel__arrow {
  position: absolute;
  top: 50%;
  z-index: 10;

  display: grid;

  width: 44px;
  height: 44px;
  place-items: center;

  margin: 0;
  padding: 0;

  border: 1px solid rgba(255, 255, 255, 0.60);
  border-radius: 50%;

  background: rgba(11, 49, 95, 0.40);
  color: var(--klf-white);

  font-family: Arial, sans-serif;
  font-size: 29px;
  line-height: 1;

  cursor: pointer;

  transform: translateY(-50%);

  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);

  transition:
    background-color 180ms ease,
    transform 180ms ease;
}

.klf-carousel__arrow:hover {
  background: rgba(11, 49, 95, 0.68);

  transform:
    translateY(-50%)
    scale(1.06);
}

.klf-carousel__arrow:focus-visible {
  outline: 3px solid var(--klf-yellow);
  outline-offset: 3px;
}

.klf-carousel__arrow--previous {
  left: 5px;
}

.klf-carousel__arrow--next {
  right: 5px;
}

/* =====================================================
   CAROUSEL FOOTER
===================================================== */

.klf-carousel__footer {
  position: absolute;
  right: 78px;
  bottom: 14px;
  z-index: 10;

  display: flex;
  align-items: center;
  gap: 10px;
}

.klf-carousel__dots {
  display: flex;
  align-items: center;
  gap: 6px;
}

.klf-carousel__dot {
  display: block;

  width: 7px;
  height: 7px;

  margin: 0;
  padding: 0;

  border: 0;
  border-radius: 999px;

  background: rgba(255, 255, 255, 0.52);

  cursor: pointer;

  transition:
    width 180ms ease,
    background-color 180ms ease;
}

.klf-carousel__dot.is-active {
  width: 23px;

  background: var(--klf-yellow);
}

.klf-carousel__dot:focus-visible {
  outline: 2px solid var(--klf-white);
  outline-offset: 3px;
}

.klf-carousel__counter {
  min-width: 31px;

  color: var(--klf-white);

  font-size: 12px;
  font-weight: 600;
  line-height: 1;
}

/* =====================================================
   STORY PROGRESS DOTS
===================================================== */

.klf-story__progress {
  position: absolute;
  top: 50%;
  right: -2px;
  z-index: 20;

  display: flex;
  flex-direction: column;
  gap: 9px;

  transform: translateY(-50%);
}

.klf-story__dot {
  display: block;

  width: 8px;
  height: 8px;

  margin: 0;
  padding: 0;

  border: 0;
  border-radius: 999px;

  background: rgba(11, 49, 95, 0.25);

  cursor: pointer;

  transition:
    height 220ms ease,
    background-color 220ms ease;
}

.klf-story__dot.is-active {
  height: 30px;

  background: var(--klf-yellow);
}

/* =====================================================
   STORY TEXT STEPS
===================================================== */

.klf-story__mobile-visual {
  display: none;
}

.klf-story__steps {
  position: relative;

  padding: 4vh 0 14vh;
}

.klf-story__step {
  display: flex;

  min-height: 68vh;
  align-items: center;

  scroll-margin-top: 120px;

  opacity: 0.42;

  transform:
    translateY(20px)
    scale(0.975);

  transition:
    opacity 450ms ease,
    transform 500ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

.klf-story__step.is-active {
  opacity: 1;

  transform:
    translateY(0)
    scale(1);
}

/* =====================================================
   TEXT CARDS
===================================================== */

.klf-story__card {
  position: relative;

  width: 100%;
  padding: clamp(28px, 3.2vw, 48px);

  overflow: hidden;

  border: 1px solid rgba(11, 49, 95, 0.08);
  border-radius: 28px;

  background: rgba(255, 255, 255, 0.94);

  box-shadow:
    0 12px 30px rgba(11, 49, 95, 0.05);

  transition:
    border-color 450ms ease,
    box-shadow 450ms ease,
    background-color 450ms ease;
}

.klf-story__card::before {
  position: absolute;
  top: 0;
  left: 0;

  width: 0;
  height: 5px;

  border-radius: 0 999px 999px 0;

  background: var(--klf-yellow);

  content: "";

  transition:
    width 600ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

.klf-story__step.is-active .klf-story__card {
  border-color: rgba(246, 188, 57, 0.62);

  background: var(--klf-white);

  box-shadow:
    0 24px 55px rgba(11, 49, 95, 0.10),
    0 7px 18px rgba(11, 49, 95, 0.05);
}

.klf-story__step.is-active .klf-story__card::before {
  width: 38%;
}

.klf-story__number {
  display: grid;

  width: 58px;
  height: 58px;
  margin-bottom: 32px;
  place-items: center;

  border-radius: 18px;

  background: rgba(133, 171, 244, 0.18);
  color: #4D80E4;

  font-size: 15px;
  font-weight: 700;
  line-height: 1;

  transition:
    background-color 350ms ease,
    color 350ms ease,
    transform 350ms ease;
}

.klf-story__step.is-active .klf-story__number {
  background: var(--klf-yellow);
  color: var(--klf-navy);

  transform:
    rotate(-4deg)
    scale(1.04);
}

.klf-story__card h3 {
  margin: 0 0 18px;

  color: var(--klf-navy);

  font-size: clamp(28px, 3vw, 43px);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.025em;
}

.klf-story__card p {
  margin: 0;

  color: var(--klf-text);

  font-size: clamp(16px, 1.35vw, 19px);
  line-height: 1.75;
}

/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1024px) {
  .klf-story__layout {
    grid-template-columns:
      minmax(0, 1fr)
      minmax(335px, 0.9fr);

    gap: 36px;
  }

  .klf-story__visual {
    height: 68vh;
    min-height: 490px;
  }

  .klf-story__step {
    min-height: 62vh;
  }
}

/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {
  .klf-story {
    padding:
      calc(
        clamp(72px, 10svh, 96px) +
        env(safe-area-inset-top, 0px)
      )
      12px
      calc(
        52px +
        env(safe-area-inset-bottom, 0px)
      );

    overflow: visible;

    touch-action: auto;
    overscroll-behavior: auto;
  }

  .klf-story__layout {
    display: block;
  }

  .klf-story__visual-column {
    display: none !important;

    position: static !important;
    top: auto !important;

    transform: none !important;
  }

  .klf-story__steps {
    display: block;

    padding: 0;
  }

  .klf-story__step {
    display: block;

    min-height: 0;
    height: auto;

    margin: 0 0 42px;
    padding: 0;

    scroll-margin-top: 24px;

    opacity: 0.84;

    transform: translateY(14px);
  }

  .klf-story__step:last-child {
    margin-bottom: 0;
  }

  .klf-story__step.is-active {
    opacity: 1;

    transform: translateY(0);
  }

  .klf-story__mobile-visual {
    position: relative;

    display: block;

    width: 100%;
    height: clamp(220px, 31svh, 290px);

    margin-bottom: 14px;

    overflow: visible;
  }

  .klf-carousel__stack,
  .klf-carousel__shade {
    right: 20px;
    left: 20px;
  }

  .klf-carousel__item {
    border-width: 4px;
    border-radius: 22px;
  }

  .klf-carousel__item.is-previous {
    transform:
      translateX(-8%)
      scale(0.91);
  }

  .klf-carousel__item.is-next {
    transform:
      translateX(8%)
      scale(0.91);
  }

  .klf-carousel__shade {
    border-radius: 22px;
  }

  .klf-story__mobile-caption {
    right: 43px;
    bottom: 17px;
    left: 43px;

    gap: 9px;
  }

  .klf-story__mobile-caption span {
    width: 36px;
    height: 36px;

    border-radius: 11px;

    font-size: 11px;
  }

  .klf-story__mobile-caption strong {
    max-width: calc(100% - 45px);

    font-size: clamp(18px, 5.4vw, 23px);
  }

  .klf-carousel__arrow {
    width: 34px;
    height: 34px;

    font-size: 22px;
  }

  .klf-carousel__arrow--previous {
    left: 0;
  }

  .klf-carousel__arrow--next {
    right: 0;
  }

  .klf-carousel__footer {
    right: 43px;
    bottom: 7px;
  }

  .klf-story__card {
    padding: 22px 21px 24px;

    border-radius: 22px;
  }

  .klf-story__number {
    width: 44px;
    height: 44px;
    margin-bottom: 14px;

    border-radius: 14px;

    font-size: 12px;
  }

  .klf-story__card h3 {
    margin-bottom: 10px;

    font-size: clamp(25px, 7.2vw, 32px);
    line-height: 1.05;
  }

  .klf-story__card p {
    font-size: clamp(15px, 4.1vw, 16px);
    line-height: 1.55;
  }
}

/* =====================================================
   SMALL PHONES
===================================================== */

@media (max-width: 390px) {
  .klf-story {
    padding-right: 10px;
    padding-left: 10px;
  }

  .klf-story__mobile-visual {
    height: clamp(205px, 29svh, 250px);
  }

  .klf-carousel__arrow {
    display: none;
  }

  .klf-carousel__stack,
  .klf-carousel__shade {
    right: 14px;
    left: 14px;
  }

  .klf-story__mobile-caption {
    right: 32px;
    left: 32px;
  }

  .klf-carousel__footer {
    right: 32px;
  }
}

/* =====================================================
   PHONE LANDSCAPE
===================================================== */

@media
  (max-width: 950px)
  and (max-height: 560px)
  and (orientation: landscape) {

  .klf-story {
    padding:
      calc(
        30px +
        env(safe-area-inset-top, 0px)
      )
      calc(
        14px +
        env(safe-area-inset-right, 0px)
      )
      calc(
        34px +
        env(safe-area-inset-bottom, 0px)
      )
      calc(
        14px +
        env(safe-area-inset-left, 0px)
      );
  }

  .klf-story__layout {
    display: block;
  }

  .klf-story__visual-column {
    display: none !important;
  }

  .klf-story__step {
    min-height: 0;
    margin-bottom: 28px;
  }

  .klf-story__mobile-visual {
    display: block;

    height: clamp(210px, 58svh, 300px);
  }
}

/* =====================================================
   REDUCED MOTION
===================================================== */

@media (prefers-reduced-motion: reduce) {
  .klf-story *,
  .klf-story *::before,
  .klf-story *::after {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1b25a4f */@import url('https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&amp;display=swap');

  #montpellier-week-cards{background:#EDEFFF;padding:20px 0;}
  #montpellier-week-cards *{box-sizing:border-box;}

  #montpellier-week-cards .mtp-flow{
    max-width:1180px;margin:0 auto;padding:0 16px;
    display:flex;align-items:stretch;justify-content:center;gap:0;flex-wrap:nowrap;
  }

  /* ---- card ---- */
  #montpellier-week-cards .mtp-card{
    flex:1;min-width:0;border-radius:24px;padding:30px 26px;
    font-family:'Fredoka',sans-serif;display:flex;flex-direction:column;
    transition:.25s ease;box-shadow:0 18px 34px -24px rgba(22,23,63,.45);
  }
  #montpellier-week-cards .mtp-card:hover{transform:translateY(-6px);}

  #montpellier-week-cards .mtp-num{
    width:50px;height:50px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    font-weight:700;font-size:21px;margin-bottom:18px;
  }
  #montpellier-week-cards .mtp-card h3{
    font-weight:700;font-size:20px;line-height:1.2;margin:0 0 10px;
  }
  #montpellier-week-cards .mtp-card p{
    font-weight:400;font-size:14.5px;line-height:1.55;margin:0;opacity:.92;
  }

  /* ---- card colours ---- */
  #montpellier-week-cards .c1{background:#F6BC39;color:#fff;}
  #montpellier-week-cards .c1 .mtp-num{background:#16173F;color:#fff;}
  #montpellier-week-cards .c2{background:#85ABF4;color:#16173F;}
  #montpellier-week-cards .c2 .mtp-num{background:#16173F;color:#fff;}
  #montpellier-week-cards .c3{background:#16173F;color:#ffffff;}
  #montpellier-week-cards .c3 .mtp-num{background:#F6BC39;color:#fff;}
  #montpellier-week-cards .c4{background:#4C7BE0;color:#ffffff;}
  #montpellier-week-cards .c4 .mtp-num{background:#F6BC39;color:#fff;}

  /* ---- arrow between cards ---- */
  #montpellier-week-cards .mtp-arrow{
    flex:0 0 44px;display:flex;align-items:center;justify-content:center;
  }
  #montpellier-week-cards .mtp-arrow svg{
    width:26px;height:26px;stroke:#85ABF4;stroke-width:2.4;fill:none;
    stroke-linecap:round;stroke-linejoin:round;
  }

  /* ---- responsive: stack + turn arrows downward ---- */
  @media(max-width:981px){
    #montpellier-week-cards .mtp-flow{flex-direction:column;align-items:stretch;max-width:460px;}
    #montpellier-week-cards .mtp-card{width:100%;}
    #montpellier-week-cards .mtp-arrow{flex:0 0 40px;}
    #montpellier-week-cards .mtp-arrow svg{transform:rotate(90deg);}
  }
  @media(max-width:520px){
    #montpellier-week-cards .mtp-card{padding:26px 22px;}
  }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-78eb23d */@import url('https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&amp;family=Poppins:wght@400;500;600&amp;display=swap');

  #montpellier-price-boxes{background:transparent;padding:24px 0;}
  #montpellier-price-boxes *{box-sizing:border-box;}

  #montpellier-price-boxes .mtp-cards{
    max-width:100% ;margin:0 auto;padding:14px 16px;
    display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch;
  }

  #montpellier-price-boxes .mtp-plan{
    position:relative;border-radius:24px;padding:34px 28px 30px;
    display:flex;flex-direction:column;text-align:center;
    font-family:'Fredoka',sans-serif;transition:.25s ease;
    background:#ffffff;border:2px solid #EFE7E1;
    box-shadow:0 18px 34px -26px rgba(22,23,63,.4);
  }
  #montpellier-price-boxes .mtp-plan:hover{transform:translateY(-6px);}

  #montpellier-price-boxes .pop{
    background:#16173F;border-color:#16173F;
    box-shadow:0 26px 50px -24px rgba(76,123,224,.7);
  }

  #montpellier-price-boxes .mtp-tag{
    position:absolute;top:-15px;left:50%;transform:translateX(-50%);
    background:#F6BC39;color:#fff;font-weight:700;font-size:12px;
    letter-spacing:.6px;padding:7px 18px;border-radius:22px;white-space:nowrap;
  }

  #montpellier-price-boxes .mtp-dur{font-weight:600;font-size:20px;color:#16173F;margin-bottom:6px;}
  #montpellier-price-boxes .mtp-price{font-weight:700;font-size:46px;line-height:1;color:#16173F;}
  #montpellier-price-boxes .mtp-per{font-family:'Poppins',sans-serif;font-size:13px;color:#4a4c73;margin:10px 0 24px;}

  #montpellier-price-boxes .mtp-cta{
    margin-top:auto;display:block;text-decoration:none;
    background:#F6BC39;color:#fff;font-weight:600;font-size:16px;
    padding:14px;border-radius:14px;transition:.2s ease;
  }
  #montpellier-price-boxes .mtp-cta:hover{background:#E0A420;}

  #montpellier-price-boxes .pop .mtp-dur,
  #montpellier-price-boxes .pop .mtp-price{color:#ffffff;}
  #montpellier-price-boxes .pop .mtp-per{color:rgba(255,255,255,.7);}
  #montpellier-price-boxes .pop .mtp-cta{background:#85ABF4;color:#fff;}
  #montpellier-price-boxes .pop .mtp-cta:hover{background:#ffffff;}

  @media(max-width:820px){
    #montpellier-price-boxes .mtp-cards{grid-template-columns:1fr;max-width:420px;}
    #montpellier-price-boxes .pop{transform:none;}
  }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e9ada30 */@import url('https://fonts.googleapis.com/css2?family=Fredoka:wght@500;600;700&amp;family=Poppins:wght@400;500&amp;display=swap');

  #montpellier-includes{background:transparent;padding:24px 0;}
  #montpellier-includes *{box-sizing:border-box;}

  #montpellier-includes .mtp-box{
    max-width:1040px;margin:0 auto;padding:34px 38px;
    background:#ffffff;border:2px solid #EFE7E1;border-radius:22px;
    box-shadow:0 18px 34px -26px rgba(22,23,63,.4);
  }

  #montpellier-includes .mtp-head{
    font-family:'Fredoka',sans-serif;font-weight:600;font-size:18px;
    color:#16173F;margin:0 0 22px;
  }

  #montpellier-includes .mtp-list{
    display:grid;grid-template-columns:1fr 1fr;gap:16px 40px;
  }

  #montpellier-includes .mtp-item{
    display:flex;align-items:flex-start;gap:13px;
    font-family:'Poppins',sans-serif;font-size:15px;line-height:1.5;color:#4a4c73;
  }
  #montpellier-includes .mtp-item b{color:#16173F;font-weight:600;}

  /* tick badge */
  #montpellier-includes .mtp-tick{
    flex:0 0 26px;width:26px;height:26px;border-radius:50%;
    background:rgba(133,171,244,.18);
    display:flex;align-items:center;justify-content:center;margin-top:1px;
  }
  #montpellier-includes .mtp-tick svg{
    width:15px;height:15px;stroke:#4C7BE0;stroke-width:3;fill:none;
    stroke-linecap:round;stroke-linejoin:round;
  }
  /* alternate tick colour for rhythm */
  #montpellier-includes .mtp-item:nth-child(even) .mtp-tick{background:rgba(246,188,57,.22);}
  #montpellier-includes .mtp-item:nth-child(even) .mtp-tick svg{stroke:#E0A420;}

  @media(max-width:720px){
    #montpellier-includes .mtp-list{grid-template-columns:1fr;gap:14px;}
    #montpellier-includes .mtp-box{padding:28px 24px;}
  }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1320f9a */@import url('https://fonts.googleapis.com/css2?family=Fredoka:wght@500;600;700&amp;family=Poppins:wght@400;500&amp;display=swap');

  #montpellier-photos-titled{background:transparent;padding:24px 0;}
  #montpellier-photos-titled *{box-sizing:border-box;}
  #montpellier-photos-titled .w{max-width:1180px;margin:0 auto;padding:0 24px;}

  #montpellier-photos-titled .big{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
  #montpellier-photos-titled .row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}

  #montpellier-photos-titled .tile{
    position:relative;border-radius:22px;overflow:hidden;display:block;
    box-shadow:0 18px 40px -30px rgba(22,23,63,.45);
  }
  #montpellier-photos-titled .big .tile{aspect-ratio:16/11;}
  #montpellier-photos-titled .row .tile{aspect-ratio:1/1;border-radius:18px;}

  #montpellier-photos-titled .tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease;}
  #montpellier-photos-titled .tile:hover img{transform:scale(1.06);}

  #montpellier-photos-titled .tile::after{content:"";position:absolute;inset:0;
    background:linear-gradient(to top,rgba(12,16,40,.72),rgba(12,16,40,0) 58%);}

  #montpellier-photos-titled .cap{position:absolute;left:0;bottom:0;z-index:2;padding:22px 24px;color:#fff;}
  #montpellier-photos-titled .row .cap{padding:16px 18px;}
  #montpellier-photos-titled .cap h3{font-family:'Fredoka',sans-serif;font-weight:600;margin:0;line-height:1.15;}
  #montpellier-photos-titled .big .cap h3{font-size:22px;}
  #montpellier-photos-titled .row .cap h3{font-size:15px;}
  #montpellier-photos-titled .cap p{font-family:'Poppins',sans-serif;margin:6px 0 0;font-size:13.5px;
    color:rgba(255,255,255,.9);max-width:340px;line-height:1.5;}
  #montpellier-photos-titled .big .cap h3::before{content:"";display:block;width:34px;height:3px;
    background:#F6BC39;border-radius:2px;margin-bottom:10px;}

  /* responsive */
  @media(max-width:820px){
    #montpellier-photos-titled .big{grid-template-columns:1fr;}
    #montpellier-photos-titled .row{grid-template-columns:repeat(2,1fr);}
    #montpellier-photos-titled .big .tile{aspect-ratio:16/9;}
  }
  @media(max-width:480px){
    #montpellier-photos-titled .row{grid-template-columns:1fr;}
    #montpellier-photos-titled .row .tile{aspect-ratio:16/10;}
  }/* End custom CSS */