/* Base du site : règles du thème d'origine réellement utilisées (générée par tools/vendor_css.py) */
.owl-carousel .animated{animation-duration: 1000ms; animation-fill-mode: both;}
.owl-carousel .owl-animated-in{z-index: 0;}
.owl-carousel .owl-animated-out{z-index: 1;}
html{line-height: 1.15; text-size-adjust: 100%;}
*,::after,::before{box-sizing: border-box;}
body{background-color: rgb(255, 255, 255); color: rgb(51, 51, 51); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 1rem; font-weight: 400; line-height: 1.5; margin: 0px; -webkit-font-smoothing: antialiased;}
h1,h2{color: inherit; font-family: inherit; font-weight: 500; line-height: 1.2; margin-block: 0.5rem 1rem;}
h1{font-size: 2.5rem;}
h2{font-size: 2rem;}
p{margin-block: 0px 0.9rem;}
a{background-color: transparent; color: rgb(204, 51, 102); text-decoration: none;}
a:active,a:hover{color: rgb(51, 51, 102);}
b,strong{font-weight: bolder;}
small{font-size: 80%;}
img{border-style: none; height: auto; max-width: 100%;}
@media print{*,::after,::before{background: transparent !important; box-shadow: none !important; color: rgb(0, 0, 0) !important; text-shadow: none !important;}a,a:visited{text-decoration: underline;}a[href]::after{content: " (" attr(href) ")";}a[href^="#"]::after{content: "";}img{break-inside: avoid;}h2,p{orphans: 3; widows: 3;}h2{break-after: avoid;}}
button{font-family: inherit; font-size: 1rem; line-height: 1.5; margin: 0px;}
button{overflow: visible;}
button{text-transform: none;}
[type="button"],button{appearance: button; width: auto;}
[type="button"],button{background-color: transparent; border: 1px solid rgb(204, 51, 102); border-radius: 3px; color: rgb(204, 51, 102); display: inline-block; font-size: 1rem; font-weight: 400; padding: 0.5rem 1rem; text-align: center; transition: 0.3s; user-select: none; white-space: nowrap;}
[type="button"]:focus,[type="button"]:hover,button:focus,button:hover{background-color: rgb(204, 51, 102); color: rgb(255, 255, 255); text-decoration: none;}
::-webkit-file-upload-button{appearance: button; font: inherit;}
li,ol,ul{background: transparent; border: 0px; font-size: 100%; margin-block: 0px; outline: 0px; vertical-align: baseline;}
.screen-reader-text{clip: rect(1px, 1px, 1px, 1px); height: 1px; overflow: hidden; width: 1px; position: absolute !important; overflow-wrap: normal !important;}
.screen-reader-text:focus{background-color: rgb(238, 238, 238); clip-path: none; color: rgb(51, 51, 51); display: block; font-size: 1rem; height: auto; left: 5px; line-height: normal; padding: 12px 24px; text-decoration: none; top: 5px; width: auto; z-index: 100000; clip: auto !important;}
body:not([class*="elementor-page-"]) .site-main{margin-inline: auto; width: 100%;}
@media (max-width: 575px){body:not([class*="elementor-page-"]) .site-main{padding-inline: 10px;}}
@media (min-width: 576px){body:not([class*="elementor-page-"]) .site-main{max-width: 500px;}}
@media (min-width: 768px){body:not([class*="elementor-page-"]) .site-main{max-width: 600px;}}
@media (min-width: 992px){body:not([class*="elementor-page-"]) .site-main{max-width: 800px;}}
@media (min-width: 1200px){body:not([class*="elementor-page-"]) .site-main{max-width: 1140px;}}
:root{--direction-multiplier: 1;}
.screen-reader-text{height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; top: -10000em; width: 1px; clip: rect(0px, 0px, 0px, 0px); border: 0px;}
.elementor *,.elementor ::after,.elementor ::before{box-sizing: border-box;}
.elementor a{box-shadow: none; text-decoration: none;}
.elementor img{border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 0px; box-shadow: none; height: auto; max-width: 100%;}
.elementor-element{--flex-direction: initial; --flex-wrap: initial; --justify-content: initial; --align-items: initial; --align-content: initial; --gap: initial; --flex-basis: initial; --flex-grow: initial; --flex-shrink: initial; --order: initial; --align-self: initial; align-self: var(--align-self); flex-basis: var(--flex-basis); flex-grow: var(--flex-grow); flex-shrink: var(--flex-shrink); order: var(--order);}
.elementor-element:where(.e-con-full, .elementor-widget){align-content: var(--align-content); align-items: var(--align-items); flex-direction: var(--flex-direction); flex-wrap: var(--flex-wrap); gap: var(--row-gap) var(--column-gap); justify-content: var(--justify-content);}
.elementor-invisible{visibility: hidden;}
:root{--page-title-display: block;}
.elementor-section{position: relative;}
.elementor-section .elementor-container{display: flex; margin-inline: auto; position: relative;}
@media (max-width: 1024px){.elementor-section .elementor-container{flex-wrap: wrap;}}
.elementor-widget-wrap{align-content: flex-start; flex-wrap: wrap; position: relative; width: 100%;}
.elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap{display: flex;}
.elementor-widget-wrap > .elementor-element{width: 100%;}
.elementor-widget{position: relative;}
.elementor-column{display: flex; min-height: 1px; position: relative;}
@media (min-width: 768px){.elementor-column.elementor-col-100{width: 100%;}}
@media (max-width: 767px){.elementor-column{width: 100%;}}
@media (prefers-reduced-motion: no-preference){html{scroll-behavior: smooth;}}
.elementor-error .elementor-field{border-color: rgb(217, 83, 79);}
.elementor-error .help-inline{color: rgb(217, 83, 79); font-size: 0.9em;}
.elementor-message{font-size: 1em; line-height: 1; margin: 10px 0px;}
.elementor-message::before{content: ""; display: inline-block; font-family: eicons; font-style: normal; font-weight: 400; margin-inline-end: 5px; vertical-align: middle;}
.elementor-message.elementor-message-danger{color: rgb(217, 83, 79);}
.elementor-message.elementor-message-danger::before{content: "";}
.elementor-message.form-message-success{color: rgb(92, 184, 92);}
.elementor-element:where(:not(.e-con)):where(:not(.e-div-block-base)) .elementor-widget-container{transition: background .3s,border .3s,border-radius .3s,box-shadow .3s,transform var(--e-transform-transition-duration,.4s);}
.animated{animation-duration: 1.25s;}
.animated.animated-slow{animation-duration: 2s;}
.animated.animated-fast{animation-duration: 0.75s;}
.animated.infinite{animation-iteration-count: infinite;}
.animated.reverse{animation-direction: reverse; animation-fill-mode: forwards;}
@media (prefers-reduced-motion: reduce){.animated{animation: auto ease 0s 1 normal none running none !important;}html *{transition-delay: 0s !important; transition-duration: 0s !important;}}
.elementor-message-svg::before{background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNCIgaGVpZ2h0PSIxMSIgZmlsbD0ibm9uZSIgdmlld0JveD0iMCAwIDE0IDExIj48cGF0aCBmaWxsPSIjMDA4YTIwIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00Ljc1IDguMTUgMS42IDUgLjU1IDYuMDVsNC4yIDQuMiA5LTlMMTIuNy4yeiIgY2xpcC1ydWxlPSJldmVub2RkIi8+PC9zdmc+"); background-position: 50% center; background-repeat: no-repeat; content: ""; height: 1em; width: 1em;}
.elementor-widget-form .elementor-message{font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-weight: var( --e-global-typography-text-font-weight );}
:root{--page-title-display: none;}
.elementor-919 .elementor-element.elementor-element-825689f{margin-top: 0px; margin-bottom: 0px; padding: 0px;}
.elementor-location-header::before,.elementor-location-footer::before{content: ""; display: table; clear: both;}
.elementor-149 .elementor-element.elementor-element-dd1b19d:not(.elementor-motion-effects-element-type-background){background-color: rgb(0, 0, 0);}
.elementor-149 .elementor-element.elementor-element-dd1b19d{transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s; margin-top: 0px; margin-bottom: 0px; padding: 0px;}
.elementor-149 .elementor-element.elementor-element-adfc22d > .elementor-element-populated{padding: 0px;}
.elementor-149 .elementor-element.elementor-element-6a779ec{padding: 0px;}
.elementor-widget-global .elementor-message{font-family: var( --e-global-typography-text-font-family ), Sans-serif; font-weight: var( --e-global-typography-text-font-weight );}
h1,h2,h3{color: inherit; font-family: inherit; font-weight: 500; line-height: 1.2; margin-block: 0.5rem 1rem;}
h3{font-size: 1.75rem;}
figcaption{color: rgb(51, 51, 51); font-size: 16px; font-style: italic; font-weight: 400; line-height: 1.4;}
@media print{*,::after,::before{background: transparent !important; box-shadow: none !important; color: rgb(0, 0, 0) !important; text-shadow: none !important;}a,a:visited{text-decoration: underline;}a[href]::after{content: " (" attr(href) ")";}a[href^="#"]::after{content: "";}img{break-inside: avoid;}h2,h3,p{orphans: 3; widows: 3;}h2,h3{break-after: avoid;}}
label{display: inline-block; line-height: 1; vertical-align: middle;}
button,input,textarea{font-family: inherit; font-size: 1rem; line-height: 1.5; margin: 0px;}
input[type="email"],input[type="text"],textarea{border: 1px solid rgb(102, 102, 102); border-radius: 3px; padding: 0.5rem 1rem; transition: 0.3s; width: 100%;}
input[type="email"]:focus,input[type="text"]:focus,textarea:focus{border-color: rgb(51, 51, 51);}
button,input{overflow: visible;}
[type="button"],[type="submit"],button{appearance: button; width: auto;}
[type="button"],[type="submit"],button{background-color: transparent; border: 1px solid rgb(204, 51, 102); border-radius: 3px; color: rgb(204, 51, 102); display: inline-block; font-size: 1rem; font-weight: 400; padding: 0.5rem 1rem; text-align: center; transition: 0.3s; user-select: none; white-space: nowrap;}
[type="button"]:focus,[type="button"]:hover,[type="submit"]:focus,[type="submit"]:hover,button:focus,button:hover{background-color: rgb(204, 51, 102); color: rgb(255, 255, 255); text-decoration: none;}
fieldset{padding: 0.35em 0.75em 0.625em;}
legend{box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0px; white-space: normal;}
textarea{overflow: auto; resize: vertical;}
[type="radio"]{box-sizing: border-box; padding: 0px;}
h1{color: inherit; font-family: inherit; font-weight: 500; line-height: 1.2; margin-block: 0.5rem 1rem;}
@media print{*,::after,::before{background: transparent !important; box-shadow: none !important; color: rgb(0, 0, 0) !important; text-shadow: none !important;}a,a:visited{text-decoration: underline;}a[href]::after{content: " (" attr(href) ")";}a[href^="#"]::after{content: "";}img{break-inside: avoid;}p{orphans: 3; widows: 3;}}
[hidden]{display: none;}
dd,dl,dt,li,ol,ul{background: transparent; border: 0px; font-size: 100%; margin-block: 0px; outline: 0px; vertical-align: baseline;}
@media print{*,::after,::before{background: transparent !important; box-shadow: none !important; color: rgb(0, 0, 0) !important; text-shadow: none !important;}a,a:visited{text-decoration: underline;}a[href]::after{content: " (" attr(href) ")";}a[href^="#"]::after{content: "";}blockquote{border: 1px solid rgb(204, 204, 204); break-inside: avoid;}img{break-inside: avoid;}h2,p{orphans: 3; widows: 3;}h2{break-after: avoid;}}
@media print{*,::after,::before{background: transparent !important; box-shadow: none !important; color: rgb(0, 0, 0) !important; text-shadow: none !important;}a,a:visited{text-decoration: underline;}a[href]::after{content: " (" attr(href) ")";}a[href^="#"]::after{content: "";}blockquote{border: 1px solid rgb(204, 204, 204); break-inside: avoid;}img{break-inside: avoid;}h2,h3,p{orphans: 3; widows: 3;}h2,h3{break-after: avoid;}}
[type="checkbox"],[type="radio"]{box-sizing: border-box; padding: 0px;}

/* --- Compléments propres au site statique --- */
.elementor-background-video-container{container-type:size}
.elementor-background-video-embed{width:max(100cqw,177.78cqh);height:max(100cqh,56.25cqw)}
.elementor-background-video-embed iframe{width:100%;height:100%;border:0;display:block}
.elementor-form-waiting{opacity:.6;pointer-events:none}
.elementor-message{margin-top:18px}
