*{margin:0;padding:0;box-sizing:border-box}
:root{--clr-primary:#BF87B5;--clr-secondary:#97C19D;--clr-tertiary:#EAF0EC;--clr-dark:#2a2d34;--clr-text:#343a40;--clr-light-bg:#fafbfc;--clr-white:#fff;--clr-border:#e1e4e8;--spacing-xs:clamp(0.5rem,1vw,0.75rem);--spacing-sm:clamp(0.75rem,1.5vw,1rem);--spacing-md:clamp(1rem,2vw,1.5rem);--spacing-lg:clamp(1.5rem,3vw,2.5rem);--spacing-xl:clamp(2rem,4vw,3.5rem)}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;line-height:1.6;color:var(--clr-text);background:var(--clr-light-bg);font-size:clamp(0.9375rem,1vw,1.0625rem)}
.site9header__wrapper{background:linear-gradient(135deg,var(--clr-white) 0%,var(--clr-tertiary) 100%);border-bottom:2px solid var(--clr-border);padding:var(--spacing-md) max(5%,1.5rem)}
.header3row__container{max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:35px}
.toprow8brand{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}
.logo4container__left{display:flex;align-items:center;gap:var(--spacing-sm);position:relative;z-index:10}
.brand7logo__image{height:120px;width:120px;object-fit:contain;display:block}
.tagline2content__right{max-width:520px;text-align:right}
.tagline2content__right p{font-size:clamp(0.875rem,0.95vw,1rem);color:var(--clr-text);line-height:1.5;opacity:.88}
.bottomrow5nav{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}
.nav6menu__left{display:flex;gap:clamp(1.25rem,2.5vw,2rem);flex-wrap:wrap;align-items:center}
.nav6menu__left a{color:var(--clr-text);text-decoration:none;font-weight:500;font-size:clamp(0.9375rem,1vw,1.0625rem);padding:var(--spacing-xs) 0;position:relative;transition:color .25s ease}
.nav6menu__left a:hover{color:var(--clr-primary)}
.nav6menu__left a:focus{outline:2px solid var(--clr-primary);outline-offset:4px;border-radius:3px}
.nav6menu__left a::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:linear-gradient(90deg,var(--clr-primary),var(--clr-secondary));transition:width .3s ease}
.nav6menu__left a:hover::after{width:100%}
.cta8button__right{display:flex;gap:var(--spacing-sm)}
.btn1primary__cta{background:linear-gradient(135deg,var(--clr-primary) 0%,var(--clr-secondary) 100%);color:var(--clr-white);padding:clamp(0.625rem,1vw,0.875rem) clamp(1.25rem,2vw,1.875rem);border:none;border-radius:6px;font-weight:600;font-size:clamp(0.9375rem,1vw,1rem);text-decoration:none;display:inline-block;transition:opacity .25s ease,transform .2s ease;box-shadow:0 4px 12px #bf87b540}
.btn1primary__cta:hover{opacity:.9;transform:translateY(-1px)}
.btn1primary__cta:focus{outline:3px solid var(--clr-primary);outline-offset:3px}
.footer7studio__design{background:linear-gradient(165deg,var(--clr-dark) 0%,#1f2127 100%);color:#ffffffde;padding:var(--spacing-xl) max(5%,1.5rem) var(--spacing-lg);margin-top:var(--spacing-xl)}
.footer3grid__container{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid #ffffff26}
.footer8column__block{display:flex;flex-direction:column;gap:var(--spacing-sm)}
.footer8column__block h3{font-size:clamp(1rem,1.1vw,1.125rem);font-weight:600;color:var(--clr-white);margin-bottom:var(--spacing-xs)}
.footer8column__block a{color:#ffffffbf;text-decoration:none;font-size:clamp(0.875rem,0.95vw,0.9375rem);transition:color .25s ease;width:fit-content}
.footer8column__block a:hover{color:var(--clr-secondary)}
.footer8column__block a:focus{outline:2px solid var(--clr-secondary);outline-offset:3px;border-radius:2px}
.footer2logo__area{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}
.footer5logo__img{height:85px;width:85px;object-fit:contain}
.footer9brand__name{font-size:clamp(1.125rem,1.25vw,1.375rem);font-weight:700;color:var(--clr-white)}
.footer6contact__info{display:flex;flex-direction:column;gap:var(--spacing-xs)}
.footer6contact__info p{font-size:clamp(0.875rem,0.95vw,0.9375rem);color:#ffffffbf}
.footer6contact__info a{color:var(--clr-secondary);text-decoration:none;transition:opacity .25s ease}
.footer6contact__info a:hover{opacity:.8}
.footer4bottom__bar{max-width:1400px;margin:0 auto;padding-top:var(--spacing-md);text-align:center}
.footer4bottom__bar p{font-size:clamp(0.8125rem,0.9vw,0.875rem);color:#fff9}
.consent3overlay__backdrop{position:fixed;bottom:0;left:0;right:0;background:var(--clr-white);border-top:3px solid var(--clr-primary);box-shadow:0 -8px 32px #00000026;padding:clamp(1.25rem,2vw,1.75rem) max(5%,1.5rem);z-index:9999;transform:translateY(100%);transition:transform .4s ease}
.consent3overlay__backdrop.show7active{transform:translateY(0)}
.consent2inner__wrap{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-md)}
.consent8text__area{display:flex;flex-direction:column;gap:var(--spacing-xs)}
.consent8text__area h2{font-size:clamp(1.125rem,1.25vw,1.375rem);color:var(--clr-dark);font-weight:600}
.consent8text__area p{font-size:clamp(0.875rem,0.95vw,0.9375rem);color:var(--clr-text);line-height:1.5}
.consent8text__area a{color:var(--clr-primary);text-decoration:underline;transition:opacity .25s ease}
.consent8text__area a:hover{opacity:.8}
.consent5actions__row{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}
.consent5actions__row button{padding:clamp(0.625rem,1vw,0.75rem) clamp(1.25rem,2vw,1.75rem);border:none;border-radius:5px;font-weight:600;font-size:clamp(0.875rem,0.95vw,0.9375rem);cursor:pointer;transition:opacity .25s ease,transform .2s ease;min-height:44px;min-width:120px}
.btn4accept__all{background:linear-gradient(135deg,var(--clr-primary),var(--clr-secondary));color:var(--clr-white)}
.btn6reject__all{background:transparent;color:var(--clr-text);border:2px solid var(--clr-border)}
.consent5actions__row button:hover{opacity:.88;transform:translateY(-1px)}
.consent5actions__row button:focus{outline:3px solid var(--clr-primary);outline-offset:2px}
@media (max-width: 768px) {
.header3row__container{gap:20px}
.toprow8brand{flex-direction:column;text-align:center}
.tagline2content__right{text-align:center;max-width:100%}
.bottomrow5nav{flex-direction:column;align-items:stretch}
.nav6menu__left{flex-direction:column;gap:var(--spacing-sm);align-items:center}
.cta8button__right{width:100%}
.btn1primary__cta{width:100%;text-align:center}
.footer3grid__container{grid-template-columns:1fr;text-align:center}
.footer2logo__area{justify-content:center}
.footer8column__block a{margin:0 auto}
.consent5actions__row{flex-direction:column}
.consent5actions__row button{width:100%}
}
@media (min-width: 769px) and (max-width: 1024px) {
.toprow8brand{gap:var(--spacing-sm)}
.nav6menu__left{gap:clamp(1rem,1.8vw,1.5rem)}
}
.index-accueil-hero{position:relative;width:100%;height:100vh;min-height:600px;display:flex;align-items:center;overflow:hidden;background:linear-gradient(135deg,#EAF0EC 0%,#f8f9fa 100%)}
.index-accueil-hero::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(./category_images/7342650819.jpg);background-size:cover;background-position:center;opacity:.15;z-index:1}
.index-hero-contenu{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:0 20px;text-align:center}
.index-hero-titre{font-size:3.5rem;font-weight:700;color:#212529;margin-bottom:1.5rem;line-height:1.2;letter-spacing:-.5px}
.index-hero-soustitre{font-size:1.35rem;color:#495057;margin-bottom:2.5rem;max-width:720px;margin-left:auto;margin-right:auto;line-height:1.6}
.index-hero-cta{display:inline-block;padding:18px 45px;background:linear-gradient(135deg,#BF87B5 0%,#97C19D 100%);color:#fff;text-decoration:none;border-radius:8px;font-weight:600;font-size:1.1rem;transition:transform .3s ease,box-shadow .3s ease;box-shadow:0 4px 15px #bf87b540}
.index-hero-cta:hover{transform:translateY(-3px);box-shadow:0 8px 25px #bf87b559}
.index-section-approche{padding:90px 20px;background:#fff;position:relative}
.index-approche-grille{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.index-approche-texte h2{font-size:2.6rem;color:#212529;margin-bottom:1.8rem;font-weight:700;line-height:1.25}
.index-approche-texte p{font-size:1.1rem;color:#495057;line-height:1.75;margin-bottom:1.4rem}
.index-approche-image{position:relative;border-radius:12px;overflow:hidden;box-shadow:0 10px 40px #00000014}
.index-approche-image img{width:100%;height:420px;object-fit:cover;display:block;transition:transform .5s ease}
.index-approche-image:hover img{transform:scale(1.05)}
.index-section-modules{padding:85px 20px;background:linear-gradient(180deg,#f8f9fa 0%,#EAF0EC 100%)}
.index-modules-conteneur{max-width:1150px;margin:0 auto}
.index-modules-entete{text-align:center;margin-bottom:65px}
.index-modules-entete h2{font-size:2.5rem;color:#212529;margin-bottom:1.2rem;font-weight:700}
.index-modules-entete p{font-size:1.15rem;color:#495057;max-width:680px;margin:0 auto;line-height:1.7}
.index-modules-grille{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}
.index-module-carte{background:#fff;padding:40px 30px;border-radius:10px;box-shadow:0 5px 20px #0000000f;transition:transform .3s ease,box-shadow .3s ease;border-left:4px solid #97C19D}
.index-module-carte:nth-child(2){border-left-color:#BF87B5}
.index-module-carte:nth-child(3){border-left-color:#97C19D}
.index-module-carte:hover{transform:translateY(-5px);box-shadow:0 12px 35px #0000001f}
.index-module-numero{display:inline-block;width:45px;height:45px;background:linear-gradient(135deg,#BF87B5 0%,#97C19D 100%);color:#fff;border-radius:50%;text-align:center;line-height:45px;font-weight:700;font-size:1.25rem;margin-bottom:1.5rem}
.index-module-carte h3{font-size:1.5rem;color:#212529;margin-bottom:1rem;font-weight:600}
.index-module-carte p{font-size:1.05rem;color:#495057;line-height:1.65;margin:0}
.index-section-methode{padding:90px 20px;background:#fff}
.index-methode-disposition{max-width:1150px;margin:0 auto;display:grid;grid-template-columns:45% 55%;gap:70px;align-items:start}
.index-methode-visuel{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:20px}
.index-methode-img-principale{grid-column:1 / 3;border-radius:12px;overflow:hidden;box-shadow:0 8px 30px #0000001a}
.index-methode-img-principale img{width:100%;height:340px;object-fit:cover;display:block}
.index-methode-contenu h2{font-size:2.7rem;color:#212529;margin-bottom:2rem;font-weight:700;line-height:1.2}
.index-methode-liste{list-style:none;padding:0;margin:0 0 2rem}
.index-methode-liste li{padding:20px 0;border-bottom:1px solid #EAF0EC;color:#495057;font-size:1.1rem;line-height:1.7;position:relative;padding-left:35px}
.index-methode-liste li::before{content:'';position:absolute;left:0;top:20px;color:#97C19D;font-weight:700;font-size:1.3rem}
.index-methode-liste li:last-child{border-bottom:none}
.index-section-parcours{padding:85px 20px;background:linear-gradient(135deg,#EAF0EC 0%,#f8f9fa 100%);position:relative}
.index-parcours-wrapper{max-width:950px;margin:0 auto;text-align:center}
.index-parcours-wrapper h2{font-size:2.6rem;color:#212529;margin-bottom:1.5rem;font-weight:700}
.index-parcours-intro{font-size:1.15rem;color:#495057;margin-bottom:3rem;line-height:1.7;max-width:720px;margin-left:auto;margin-right:auto}
.index-parcours-etapes{display:flex;justify-content:space-between;gap:25px;margin-bottom:3rem}
.index-etape-bloc{flex:1;background:#fff;padding:35px 25px;border-radius:10px;box-shadow:0 6px 25px #00000012;position:relative}
.index-etape-icone{width:65px;height:65px;background:linear-gradient(135deg,#97C19D 0%,#BF87B5 100%);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.8rem;font-weight:700;margin:0 auto 1.5rem}
.index-etape-bloc h3{font-size:1.35rem;color:#212529;margin-bottom:.9rem;font-weight:600}
.index-etape-bloc p{font-size:1.05rem;color:#495057;line-height:1.6;margin:0}
.index-parcours-cta{display:inline-block;padding:16px 40px;background:#BF87B5;color:#fff;text-decoration:none;border-radius:8px;font-weight:600;font-size:1.05rem;transition:background .3s ease,transform .3s ease}
.index-parcours-cta:hover{background:#a8779e;transform:translateY(-2px)}
.index-section-engagement{padding:90px 20px;background:#fff}
.index-engagement-conteneur{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:55% 45%;gap:65px;align-items:center}
.index-engagement-texte h2{font-size:2.6rem;color:#212529;margin-bottom:1.8rem;font-weight:700;line-height:1.25}
.index-engagement-description{font-size:1.1rem;color:#495057;line-height:1.75;margin-bottom:2rem}
.index-engagement-points{list-style:none;padding:0;margin:0 0 2.5rem}
.index-engagement-points li{padding:15px 0;color:#495057;font-size:1.05rem;line-height:1.6;position:relative;padding-left:40px}
.index-engagement-points li::before{content:'→';position:absolute;left:0;color:#BF87B5;font-weight:700;font-size:1.4rem}
.index-engagement-lien{display:inline-block;padding:15px 38px;background:transparent;color:#BF87B5;text-decoration:none;border:2px solid #BF87B5;border-radius:8px;font-weight:600;font-size:1.05rem;transition:all .3s ease}
.index-engagement-lien:hover{background:#BF87B5;color:#fff}
.index-engagement-visuel{position:relative;border-radius:12px;overflow:hidden;box-shadow:0 12px 45px #0000001a}
.index-engagement-visuel img{width:100%;height:450px;object-fit:cover;display:block}
@media (max-width: 992px) {
.index-hero-titre{font-size:2.8rem}
.index-hero-soustitre{font-size:1.2rem}
.index-approche-grille{grid-template-columns:1fr;gap:45px}
.index-approche-texte{text-align:center}
.index-modules-grille{grid-template-columns:1fr;gap:30px}
.index-methode-disposition{grid-template-columns:1fr;gap:50px}
.index-parcours-etapes{flex-direction:column}
.index-engagement-conteneur{grid-template-columns:1fr;gap:45px}
.index-engagement-texte{text-align:center}
}
@media (max-width: 768px) {
.index-accueil-hero{height:auto;min-height:550px;padding:60px 20px}
.index-hero-titre{font-size:2.2rem}
.index-hero-soustitre{font-size:1.1rem}
.index-hero-cta{padding:15px 35px;font-size:1rem}
.index-section-approche,.index-section-modules,.index-section-methode,.index-section-parcours,.index-section-engagement{padding:60px 20px}
.index-approche-texte h2,.index-modules-entete h2,.index-methode-contenu h2,.index-parcours-wrapper h2,.index-engagement-texte h2{font-size:2rem}
.index-methode-visuel{grid-template-columns:1fr}
.index-methode-img-principale{grid-column:1}
}
.contact-wrapper{background:linear-gradient(135deg,#fafbfc 0%,#EAF0EC 100%);min-height:100vh;padding:0}
.contact-intro-section{padding:80px 20px 60px;max-width:900px;margin:0 auto;text-align:center}
.contact-intro-section h1{font-size:2.8rem;color:#212529;margin-bottom:20px;font-weight:700;line-height:1.2}
.contact-intro-section .intro-text{font-size:1.15rem;color:#495057;line-height:1.7;margin-bottom:15px}
.contact-intro-section .intro-subtext{font-size:1rem;color:#6c757d;line-height:1.6}
.contact-main-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:50px;max-width:1200px;margin:0 auto;padding:40px 20px 80px}
.contact-info-block{background:#fff;padding:40px;border-radius:12px;box-shadow:0 4px 20px #0000000f;height:fit-content;position:sticky;top:20px}
.contact-info-block h2{font-size:1.6rem;color:#212529;margin-bottom:30px;font-weight:600;border-bottom:3px solid #BF87B5;padding-bottom:15px}
.info-item{margin-bottom:30px;padding-left:35px;position:relative}
.info-item:last-child{margin-bottom:0}
.info-item::before{content:'';position:absolute;left:0;top:3px;width:20px;height:20px;background:#97C19D;border-radius:50%}
.info-item h3{font-size:.95rem;color:#BF87B5;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-weight:600}
.info-item p{font-size:1.05rem;color:#343a40;line-height:1.6;margin:0}
.info-item a{color:#343a40;text-decoration:none;transition:color .3s ease}
.info-item a:hover{color:#BF87B5}
.contact-form-container{background:#fff;padding:50px;border-radius:12px;box-shadow:0 4px 20px #0000000f;border-left:6px solid #97C19D}
.contact-form-container h2{font-size:1.8rem;color:#212529;margin-bottom:15px;font-weight:600}
.contact-form-container .form-description{font-size:1rem;color:#6c757d;line-height:1.6;margin-bottom:35px}
.form-group-custom{margin-bottom:25px}
.form-group-custom label{display:block;font-size:.95rem;color:#343a40;margin-bottom:8px;font-weight:500}
.form-group-custom input,.form-group-custom textarea,.form-group-custom select{width:100%;padding:14px 18px;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;color:#212529;transition:all .3s ease;background:#fafbfc;font-family:inherit}
.form-group-custom input:focus,.form-group-custom textarea:focus,.form-group-custom select:focus{outline:none;border-color:#BF87B5;background:#fff;box-shadow:0 0 0 3px #bf87b51a}
.form-group-custom textarea{min-height:150px;resize:vertical}
.form-row-split{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.privacy-consent-box{margin:30px 0;padding:20px;background:#EAF0EC;border-radius:8px;border:2px solid #97C19D}
.privacy-consent-box label{display:flex;align-items:flex-start;font-size:.95rem;color:#343a40;line-height:1.6;cursor:pointer}
.privacy-consent-box input[type="checkbox"]{margin-right:12px;margin-top:3px;width:20px;height:20px;cursor:pointer;flex-shrink:0}
.privacy-consent-box a{color:#BF87B5;text-decoration:underline;font-weight:500}
.privacy-consent-box a:hover{color:#97366e}
.submit-button-custom{width:100%;padding:16px 30px;background:linear-gradient(135deg,#BF87B5 0%,#97C19D 100%);color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #bf87b54d;position:relative;z-index:10}
.submit-button-custom:hover{transform:translateY(-2px);box-shadow:0 6px 20px #bf87b566}
.submit-button-custom:active{transform:translateY(0)}
.hours-availability-section{background:#fff;padding:60px 20px;margin-top:50px}
.hours-content{max-width:800px;margin:0 auto;text-align:center}
.hours-content h2{font-size:1.9rem;color:#212529;margin-bottom:20px;font-weight:600}
.hours-content p{font-size:1.05rem;color:#495057;line-height:1.7;margin-bottom:35px}
.hours-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:40px}
.hour-card{background:linear-gradient(135deg,#fafbfc 0%,#EAF0EC 100%);padding:30px 20px;border-radius:10px;border:2px solid #e9ecef;transition:all .3s ease}
.hour-card:hover{border-color:#97C19D;transform:translateY(-3px);box-shadow:0 6px 20px #97c19d33}
.hour-card h3{font-size:1.1rem;color:#BF87B5;margin-bottom:12px;font-weight:600}
.hour-card p{font-size:1rem;color:#343a40;margin:0;line-height:1.5}
.faq-contact-section{padding:70px 20px;background:linear-gradient(180deg,#EAF0EC 0%,#fff 100%)}
.faq-container{max-width:900px;margin:0 auto}
.faq-container h2{font-size:2rem;color:#212529;margin-bottom:45px;text-align:center;font-weight:600}
.faq-item{background:#fff;padding:30px;margin-bottom:20px;border-radius:10px;border-left:5px solid #BF87B5;box-shadow:0 3px 12px #0000000d}
.faq-item h3{font-size:1.2rem;color:#212529;margin-bottom:12px;font-weight:600}
.faq-item p{font-size:1rem;color:#495057;line-height:1.7;margin:0}
.location-highlight-section{padding:70px 20px;background:#fff}
.location-wrapper{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.location-text-area h2{font-size:2.1rem;color:#212529;margin-bottom:20px;font-weight:600;line-height:1.3}
.location-text-area p{font-size:1.05rem;color:#495057;line-height:1.7;margin-bottom:18px}
.location-visual-area{background:linear-gradient(135deg,#BF87B5 0%,#97C19D 100%);padding:50px;border-radius:15px;box-shadow:0 8px 30px #bf87b540;position:relative}
.location-visual-area::before{content:'';position:absolute;top:20px;right:20px;width:100px;height:100px;background:#ffffff1a;border-radius:50%}
.location-visual-area::after{content:'';position:absolute;bottom:30px;left:30px;width:70px;height:70px;background:#ffffff26;border-radius:50%}
.location-details{background:#fff;padding:35px;border-radius:10px;position:relative;z-index:5}
.location-details h3{font-size:1.4rem;color:#BF87B5;margin-bottom:20px;font-weight:600}
.location-details .detail-line{font-size:1rem;color:#343a40;line-height:1.8;margin-bottom:10px}
@media (max-width: 992px) {
.contact-main-grid{grid-template-columns:1fr;gap:40px}
.contact-info-block{position:static}
.location-wrapper{grid-template-columns:1fr;gap:40px}
.hours-grid{grid-template-columns:1fr}
}
@media (max-width: 768px) {
.contact-intro-section h1{font-size:2.2rem}
.contact-intro-section{padding:50px 20px 40px}
.contact-form-container{padding:30px 20px}
.contact-info-block{padding:30px 20px}
.form-row-split{grid-template-columns:1fr;gap:0}
.location-visual-area{padding:30px 20px}
.faq-item{padding:20px}
}
@media (max-width: 576px) {
.contact-intro-section h1{font-size:1.8rem}
.contact-form-container h2{font-size:1.5rem}
.hours-content h2{font-size:1.6rem}
.location-text-area h2{font-size:1.7rem}
}
.programme-apprentissage-container{background:linear-gradient(135deg,#fafbfc 0%,#EAF0EC 100%);min-height:100vh}
.hero-intro-section{padding:5rem 1.5rem 4rem;background:#fff;position:relative;overflow:hidden}
.hero-intro-section::before{content:'';position:absolute;top:-50%;right:-20%;width:600px;height:600px;background:radial-gradient(circle,#bf87b514 0%,transparent 70%);border-radius:50%}
.hero-intro-content{max-width:820px;margin:0 auto;position:relative;z-index:2}
.hero-intro-content h1{font-size:2.8rem;color:#212529;margin-bottom:1.5rem;font-weight:700;line-height:1.2}
.hero-intro-content .intro-texte{font-size:1.15rem;color:#495057;line-height:1.7;margin-bottom:1.2rem}
.hero-intro-content .intro-focus{font-size:1.05rem;color:#343a40;line-height:1.6;padding-left:1.5rem;border-left:4px solid #97C19D;margin-top:2rem}
@media (max-width: 768px) {
.hero-intro-content h1{font-size:2rem}
.hero-intro-section{padding:3rem 1.2rem 2.5rem}
}
.parcours-structure-bloc{padding:4.5rem 1.5rem;background:#f8f9fa}
.parcours-structure-wrapper{max-width:1200px;margin:0 auto}
.parcours-structure-wrapper h2{font-size:2.3rem;color:#212529;margin-bottom:3rem;text-align:center;font-weight:700}
.parcours-grille{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.parcours-etape-carte{background:#fff;padding:2.5rem 2rem;border-radius:8px;box-shadow:0 2px 12px #0000000f;transition:transform .3s ease,box-shadow .3s ease;position:relative}
.parcours-etape-carte:hover{transform:translateY(-5px);box-shadow:0 8px 20px #97c19d26}
.etape-numero{width:50px;height:50px;background:linear-gradient(135deg,#BF87B5 0%,#97C19D 100%);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:700;margin-bottom:1.5rem}
.parcours-etape-carte h3{font-size:1.35rem;color:#212529;margin-bottom:1rem;font-weight:600}
.parcours-etape-carte p{font-size:.98rem;color:#495057;line-height:1.6;margin-bottom:.8rem}
.etape-duree{font-size:.9rem;color:#97C19D;font-weight:600;margin-top:1.2rem}
@media (max-width: 968px) {
.parcours-grille{grid-template-columns:repeat(2,1fr);gap:1.5rem}
}
@media (max-width: 600px) {
.parcours-grille{grid-template-columns:1fr}
.parcours-structure-bloc{padding:3rem 1.2rem}
}
.competences-pratiques-section{padding:5rem 1.5rem;background:#fff;position:relative}
.competences-pratiques-conteneur{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.competences-image-zone{position:relative}
.competences-image-zone img{width:100%;height:450px;object-fit:cover;border-radius:12px;box-shadow:0 10px 30px #0000001a}
.competences-image-zone::after{content:'';position:absolute;bottom:-20px;right:-20px;width:100%;height:100%;border:3px solid #BF87B5;border-radius:12px;z-index:-1}
.competences-contenu-zone h2{font-size:2.2rem;color:#212529;margin-bottom:2rem;font-weight:700;line-height:1.3}
.competence-item{margin-bottom:2rem}
.competence-item h3{font-size:1.2rem;color:#343a40;margin-bottom:.7rem;font-weight:600;display:flex;align-items:center}
.competence-item h3::before{content:'→';color:#97C19D;font-size:1.5rem;margin-right:.8rem;font-weight:700}
.competence-item p{font-size:.98rem;color:#495057;line-height:1.6;padding-left:2.3rem}
@media (max-width: 968px) {
.competences-pratiques-conteneur{grid-template-columns:1fr;gap:2.5rem}
.competences-image-zone::after{display:none}
}
@media (max-width: 600px) {
.competences-pratiques-section{padding:3rem 1.2rem}
.competences-image-zone img{height:300px}
}
.methode-accompagnement-zone{padding:4.5rem 1.5rem;background:linear-gradient(180deg,#EAF0EC 0%,#fff 100%)}
.methode-accompagnement-wrapper{max-width:950px;margin:0 auto}
.methode-accompagnement-wrapper h2{font-size:2.3rem;color:#212529;margin-bottom:1.5rem;text-align:center;font-weight:700}
.methode-intro-texte{font-size:1.08rem;color:#495057;line-height:1.7;text-align:center;margin-bottom:3.5rem;max-width:750px;margin-left:auto;margin-right:auto}
.methode-liste-principale{display:flex;flex-direction:column;gap:1.8rem}
.methode-element{background:#fff;padding:2rem 2.5rem;border-radius:10px;border-left:5px solid #BF87B5;box-shadow:0 3px 15px #0000000d;transition:all .3s ease}
.methode-element:hover{border-left-color:#97C19D;box-shadow:0 6px 20px #97c19d1f;transform:translateX(5px)}
.methode-element h3{font-size:1.3rem;color:#212529;margin-bottom:.9rem;font-weight:600}
.methode-element p{font-size:1rem;color:#495057;line-height:1.65}
@media (max-width: 600px) {
.methode-accompagnement-zone{padding:3rem 1.2rem}
.methode-element{padding:1.5rem}
}
.inscription-action-finale{padding:5rem 1.5rem;background:#fff;text-align:center}
.inscription-action-conteneur{max-width:750px;margin:0 auto;background:linear-gradient(135deg,#f8f9fa 0%,#EAF0EC 100%);padding:4rem 3rem;border-radius:15px;box-shadow:0 8px 25px #00000014}
.inscription-action-conteneur h2{font-size:2.2rem;color:#212529;margin-bottom:1.5rem;font-weight:700}
.inscription-action-conteneur .texte-principal{font-size:1.1rem;color:#343a40;line-height:1.7;margin-bottom:2rem}
.info-demarrage{background:#fff;padding:1.8rem;border-radius:8px;margin-bottom:2.5rem;border:2px solid #97C19D}
.info-demarrage p{font-size:1.05rem;color:#212529;margin-bottom:.5rem;font-weight:600}
.info-demarrage .date-session{font-size:1.15rem;color:#BF87B5;font-weight:700}
.bouton-contact-principal{display:inline-block;background:linear-gradient(135deg,#BF87B5 0%,#97C19D 100%);color:#fff;padding:1rem 3rem;border-radius:8px;font-size:1.1rem;font-weight:600;text-decoration:none;transition:all .3s ease;box-shadow:0 4px 15px #bf87b54d}
.bouton-contact-principal:hover{transform:translateY(-3px);box-shadow:0 8px 25px #97c19d66;color:#fff}
.coordonnees-contact-rapide{margin-top:2.5rem;padding-top:2rem;border-top:2px solid #bf87b533}
.coordonnees-contact-rapide p{font-size:.95rem;color:#495057;margin-bottom:.8rem;line-height:1.6}
.coordonnees-contact-rapide a{color:#BF87B5;text-decoration:none;font-weight:600;transition:color .3s ease}
.coordonnees-contact-rapide a:hover{color:#97C19D}
@media (max-width: 600px) {
.inscription-action-finale{padding:3rem 1.2rem}
.inscription-action-conteneur{padding:2.5rem 1.8rem}
.bouton-contact-principal{padding:.9rem 2rem;font-size:1rem}
}
.avant-demarrage-wrapper{background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:#212529;line-height:1.7;overflow-x:hidden}
.avant-demarrage-wrapper *{box-sizing:border-box}
.intro-hero-avant{background:linear-gradient(135deg,#EAF0EC 0%,#fff 100%);padding:80px 20px;position:relative;margin-bottom:0}
.intro-hero-avant::before{content:'';position:absolute;top:0;right:0;width:300px;height:300px;background:radial-gradient(circle,#bf87b51f 0%,transparent 70%);border-radius:50%}
.intro-hero-avant .container-custom-avant{max-width:1140px;margin:0 auto;position:relative;z-index:2}
.intro-hero-avant h1.titre-principal-avant{font-size:2.8rem;color:#343a40;margin:0 0 24px;font-weight:700;line-height:1.2}
.intro-hero-avant .sous-titre-avant{font-size:1.3rem;color:#495057;margin:0 0 32px;max-width:680px;font-weight:400}
.intro-hero-avant .texte-intro-avant{font-size:1.05rem;color:#495057;max-width:720px;margin:0 0 40px;line-height:1.8}
.btn-principal-avant{display:inline-block;background:#BF87B5;color:#fff;padding:16px 38px;text-decoration:none;border-radius:8px;font-weight:600;font-size:1.05rem;transition:all .3s ease;border:none;box-shadow:0 4px 12px #bf87b540}
.btn-principal-avant:hover{background:#a76b9f;transform:translateY(-2px);box-shadow:0 6px 18px #bf87b559;color:#fff}
.bloc-preparation-avant{background:#f8f9fa;padding:90px 20px;position:relative}
.bloc-preparation-avant::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:80%;height:1px;background:linear-gradient(90deg,transparent 0%,#97C19D 50%,transparent 100%)}
.bloc-preparation-avant .container-custom-avant{max-width:1140px;margin:0 auto}
.bloc-preparation-avant h2.section-titre-avant{font-size:2.3rem;color:#212529;margin:0 0 20px;font-weight:700;text-align:center}
.bloc-preparation-avant .section-desc-avant{text-align:center;font-size:1.15rem;color:#495057;max-width:760px;margin:0 auto 60px;line-height:1.7}
.grille-etapes-avant{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px;margin-top:50px}
.carte-etape-avant{background:#fff;padding:36px 28px;border-radius:12px;border-left:4px solid #BF87B5;box-shadow:0 2px 8px #0000000f;transition:all .3s ease;position:relative}
.carte-etape-avant:hover{transform:translateY(-4px);box-shadow:0 8px 20px #0000001f}
.carte-etape-avant .numero-etape-avant{display:inline-block;width:48px;height:48px;background:linear-gradient(135deg,#97C19D 0%,#BF87B5 100%);color:#fff;border-radius:50%;text-align:center;line-height:48px;font-weight:700;font-size:1.3rem;margin-bottom:20px}
.carte-etape-avant h3.titre-etape-avant{font-size:1.4rem;color:#212529;margin:0 0 14px;font-weight:600}
.carte-etape-avant .desc-etape-avant{font-size:1rem;color:#495057;line-height:1.7;margin:0}
.bloc-ressources-avant{background:#fff;padding:90px 20px;position:relative;overflow:hidden}
.bloc-ressources-avant::before{content:'';position:absolute;top:-100px;left:-100px;width:400px;height:400px;background:radial-gradient(circle,#97c19d14 0%,transparent 70%);border-radius:50%}
.bloc-ressources-avant .container-custom-avant{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.bloc-ressources-avant .contenu-texte-avant h2{font-size:2.2rem;color:#212529;margin:0 0 24px;font-weight:700;line-height:1.3}
.bloc-ressources-avant .contenu-texte-avant .paragraphe-avant{font-size:1.05rem;color:#495057;line-height:1.8;margin:0 0 20px}
.liste-ressources-avant{list-style:none;padding:0;margin:28px 0 0}
.liste-ressources-avant li{padding:14px 0 14px 36px;position:relative;font-size:1.05rem;color:#343a40;line-height:1.6}
.liste-ressources-avant li::before{content:'';position:absolute;left:0;top:14px;width:24px;height:24px;background:#97C19D;color:#fff;border-radius:50%;text-align:center;line-height:24px;font-weight:700;font-size:.9rem}
.bloc-ressources-avant .image-conteneur-avant{position:relative}
.bloc-ressources-avant .image-conteneur-avant img{width:100%;height:auto;border-radius:16px;box-shadow:0 12px 32px #00000026;display:block}
.bloc-mentalite-avant{background:linear-gradient(180deg,#EAF0EC 0%,#f8f9fa 100%);padding:90px 20px}
.bloc-mentalite-avant .container-custom-avant{max-width:980px;margin:0 auto;text-align:center}
.bloc-mentalite-avant h2{font-size:2.3rem;color:#212529;margin:0 0 28px;font-weight:700}
.bloc-mentalite-avant .intro-mentalite-avant{font-size:1.15rem;color:#495057;line-height:1.8;margin:0 0 50px;max-width:820px;margin-left:auto;margin-right:auto}
.grille-principes-avant{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin-top:40px}
.carte-principe-avant{background:#fff;padding:32px 26px;border-radius:12px;text-align:left;box-shadow:0 3px 12px #00000014;border-top:3px solid #BF87B5;transition:all .3s ease}
.carte-principe-avant:hover{box-shadow:0 8px 24px #00000024}
.carte-principe-avant h3{font-size:1.35rem;color:#212529;margin:0 0 14px;font-weight:600}
.carte-principe-avant p{font-size:1rem;color:#495057;line-height:1.7;margin:0}
.bloc-action-finale-avant{background:#fff;padding:90px 20px;position:relative}
.bloc-action-finale-avant::before{content:'';position:absolute;top:50%;right:0;transform:translateY(-50%);width:280px;height:280px;background:radial-gradient(circle,#bf87b51a 0%,transparent 70%);border-radius:50%}
.bloc-action-finale-avant .container-custom-avant{max-width:880px;margin:0 auto;text-align:center;position:relative;z-index:2}
.boite-action-avant{background:linear-gradient(135deg,#BF87B5 0%,#97C19D 100%);padding:60px 40px;border-radius:16px;box-shadow:0 12px 32px #bf87b54d}
.boite-action-avant h2{font-size:2.1rem;color:#fff;margin:0 0 20px;font-weight:700}
.boite-action-avant .texte-action-avant{font-size:1.1rem;color:#fff;line-height:1.8;margin:0 0 36px;opacity:.95}
.btn-action-final-avant{display:inline-block;background:#fff;color:#BF87B5;padding:18px 42px;text-decoration:none;border-radius:8px;font-weight:700;font-size:1.1rem;transition:all .3s ease;box-shadow:0 4px 16px #00000026}
.btn-action-final-avant:hover{transform:translateY(-3px);box-shadow:0 8px 24px #00000040;color:#a76b9f}
@media (max-width: 768px) {
.intro-hero-avant{padding:60px 20px}
.intro-hero-avant h1.titre-principal-avant{font-size:2rem}
.intro-hero-avant .sous-titre-avant{font-size:1.15rem}
.bloc-preparation-avant,.bloc-ressources-avant,.bloc-mentalite-avant,.bloc-action-finale-avant{padding:60px 20px}
.bloc-preparation-avant h2.section-titre-avant,.bloc-mentalite-avant h2{font-size:1.8rem}
.grille-etapes-avant{grid-template-columns:1fr;gap:24px}
.bloc-ressources-avant .container-custom-avant{grid-template-columns:1fr;gap:40px}
.grille-principes-avant{grid-template-columns:1fr;gap:20px}
.boite-action-avant{padding:40px 24px}
.boite-action-avant h2{font-size:1.7rem}
}
@media (min-width: 769px) and (max-width: 1024px) {
.intro-hero-avant h1.titre-principal-avant{font-size:2.4rem}
.bloc-ressources-avant .container-custom-avant{gap:40px}
}
.carrieres-hero-principal{background:linear-gradient(135deg,#EAF0EC 0%,#fff 100%);padding:5rem 1rem 4rem;position:relative;overflow:hidden}
.carrieres-hero-principal::before{content:'';position:absolute;top:-50%;right:-10%;width:60%;height:200%;background:linear-gradient(45deg,#bf87b514 0%,#97c19d14 100%);transform:rotate(15deg);z-index:1}
.carrieres-hero-contenu{max-width:1200px;margin:0 auto;position:relative;z-index:2}
.carrieres-hero-titre{font-size:2.8rem;font-weight:700;color:#212529;margin-bottom:1.5rem;line-height:1.2}
.carrieres-hero-sous-titre{font-size:1.3rem;color:#495057;margin-bottom:2rem;line-height:1.6;max-width:700px}
.carrieres-hero-descriptif{font-size:1.05rem;color:#6c757d;line-height:1.7;max-width:650px;margin-bottom:2.5rem}
.carrieres-valeurs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-top:3rem}
.carrieres-valeur-item{background:#fff;padding:1.5rem;border-radius:8px;border-left:4px solid #BF87B5;box-shadow:0 2px 8px #0000000d}
.carrieres-valeur-titre{font-size:1.1rem;font-weight:600;color:#343a40;margin-bottom:.5rem}
.carrieres-valeur-texte{font-size:.95rem;color:#6c757d;line-height:1.5}
.carrieres-postes-section{padding:5rem 1rem;background:#fff}
.carrieres-postes-conteneur{max-width:1200px;margin:0 auto}
.carrieres-section-entete{text-align:center;margin-bottom:3.5rem}
.carrieres-section-titre{font-size:2.4rem;font-weight:700;color:#212529;margin-bottom:1rem}
.carrieres-section-intro{font-size:1.1rem;color:#6c757d;line-height:1.6;max-width:750px;margin:0 auto}
.carrieres-postes-liste{display:flex;flex-direction:column;gap:2rem}
.carrieres-poste-carte{background:#f8f9fa;border-radius:12px;padding:2rem;position:relative;border:2px solid transparent;transition:all .3s ease}
.carrieres-poste-carte:hover{border-color:#97C19D;box-shadow:0 8px 24px #97c19d26;transform:translateY(-2px)}
.carrieres-poste-entete{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}
.carrieres-poste-titre-zone{flex:1;min-width:250px}
.carrieres-poste-titre{font-size:1.6rem;font-weight:700;color:#212529;margin-bottom:.5rem}
.carrieres-poste-departement{font-size:.95rem;color:#BF87B5;font-weight:600}
.carrieres-poste-badge{background:#97C19D;color:#fff;padding:.4rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600;white-space:nowrap}
.carrieres-poste-meta{display:flex;gap:2rem;margin-bottom:1.5rem;flex-wrap:wrap}
.carrieres-poste-meta-item{display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:#495057}
.carrieres-poste-meta-icon{width:18px;height:18px;background:#BF87B5;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.7rem;font-weight:700}
.carrieres-poste-description{font-size:1rem;color:#6c757d;line-height:1.7;margin-bottom:1.5rem}
.carrieres-poste-competences{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1.5rem}
.carrieres-competence-tag{background:#EAF0EC;color:#495057;padding:.4rem .9rem;border-radius:6px;font-size:.85rem;font-weight:500}
.carrieres-poste-action{text-align:right}
.carrieres-postuler-btn{background:#BF87B5;color:#fff;padding:.8rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;text-decoration:none;display:inline-block;transition:all .3s ease;border:none;cursor:pointer}
.carrieres-postuler-btn:hover{background:#a76f9d;transform:translateY(-2px);box-shadow:0 4px 12px #bf87b54d}
.carrieres-processus-section{padding:5rem 1rem;background:linear-gradient(180deg,#EAF0EC 0%,#f8f9fa 100%);position:relative}
.carrieres-processus-conteneur{max-width:1100px;margin:0 auto}
.carrieres-processus-grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2.5rem;margin-top:3rem;position:relative}
.carrieres-etape-carte{background:#fff;padding:2rem;border-radius:12px;position:relative;box-shadow:0 4px 16px #00000014}
.carrieres-etape-numero{position:absolute;top:-20px;left:30px;width:50px;height:50px;background:linear-gradient(135deg,#BF87B5 0%,#97C19D 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;color:#fff;box-shadow:0 4px 12px #bf87b54d;z-index:5}
.carrieres-etape-titre{font-size:1.3rem;font-weight:700;color:#212529;margin-bottom:1rem;margin-top:1.5rem}
.carrieres-etape-description{font-size:.95rem;color:#6c757d;line-height:1.7;margin-bottom:1rem}
.carrieres-etape-duree{font-size:.85rem;color:#97C19D;font-weight:600;display:inline-block;padding:.3rem .8rem;background:#97c19d1a;border-radius:4px}
.carrieres-image-section{margin-top:3rem;text-align:center}
.carrieres-image-environnement{width:100%;max-width:800px;height:auto;border-radius:12px;box-shadow:0 8px 24px #0000001f}
@media (max-width: 768px) {
.carrieres-hero-titre{font-size:2rem}
.carrieres-hero-sous-titre{font-size:1.1rem}
.carrieres-valeurs-grid{grid-template-columns:1fr}
.carrieres-section-titre{font-size:1.8rem}
.carrieres-poste-entete{flex-direction:column}
.carrieres-poste-action{text-align:left}
.carrieres-processus-grille{grid-template-columns:1fr}
.carrieres-etape-numero{left:20px}
}
@media (max-width: 480px) {
.carrieres-hero-principal{padding:3rem 1rem 2.5rem}
.carrieres-hero-titre{font-size:1.7rem}
.carrieres-postes-section,.carrieres-processus-section{padding:3rem 1rem}
}
.cookie-policy-wrapper{background:linear-gradient(135deg,#fff 0%,#fafbfc 50%,#EAF0EC 100%);min-height:100vh;padding:0}
.cookie-policy-header-section{background:linear-gradient(to right,#BF87B5,#97C19D);padding:4rem 2rem 3rem;text-align:center;position:relative;overflow:hidden}
.cookie-policy-header-section::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 30% 50%,#eaf0ec33 0%,transparent 50%);pointer-events:none}
.cookie-policy-header-section h1{color:#fff;font-size:2.8rem;font-weight:700;margin:0 0 1rem;position:relative;z-index:1;text-shadow:2px 2px 4px #0000001a}
.cookie-policy-date-info{color:#fff;font-size:1rem;opacity:.95;position:relative;z-index:1}
.cookie-policy-content-container{max-width:920px;margin:0 auto;padding:3rem 2rem 4rem}
.cookie-policy-intro-block{background:#fff;border-left:5px solid #97C19D;padding:2rem 2.5rem;margin-bottom:3rem;box-shadow:0 3px 12px #00000014;border-radius:4px}
.cookie-policy-intro-block p{color:#343a40;font-size:1.05rem;line-height:1.8;margin:0 0 1.2rem}
.cookie-policy-intro-block p:last-child{margin-bottom:0}
.cookie-policy-section-wrapper{background:#fff;padding:2.5rem 2.5rem 2rem;margin-bottom:2rem;border-radius:6px;box-shadow:0 2px 10px #0000000f;transition:box-shadow .3s ease}
.cookie-policy-section-wrapper:hover{box-shadow:0 4px 16px #bf87b526}
.cookie-policy-section-wrapper h2{color:#BF87B5;font-size:1.75rem;font-weight:600;margin:0 0 1.5rem;padding-bottom:.8rem;border-bottom:2px solid #EAF0EC}
.cookie-policy-section-wrapper h3{color:#343a40;font-size:1.3rem;font-weight:600;margin:2rem 0 1rem}
.cookie-policy-section-wrapper p{color:#495057;font-size:1rem;line-height:1.75;margin:0 0 1.3rem}
.cookie-policy-section-wrapper ul{list-style:none;padding:0;margin:1.5rem 0}
.cookie-policy-section-wrapper ul li{color:#495057;font-size:1rem;line-height:1.7;padding:.6rem 0 .6rem 2.2rem;position:relative}
.cookie-policy-section-wrapper ul li::before{content:'→';position:absolute;left:0;color:#97C19D;font-weight:700;font-size:1.2rem}
.cookie-policy-tech-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin:2rem 0}
.cookie-policy-tech-item{background:linear-gradient(135deg,#fafbfc 0%,#EAF0EC 100%);padding:1.5rem;border-radius:8px;border:2px solid transparent;transition:all .3s ease}
.cookie-policy-tech-item:hover{border-color:#BF87B5;transform:translateY(-2px);box-shadow:0 6px 18px #bf87b533}
.cookie-policy-tech-item h4{color:#BF87B5;font-size:1.15rem;font-weight:600;margin:0 0 .8rem}
.cookie-policy-tech-item p{color:#495057;font-size:.95rem;line-height:1.6;margin:0}
.cookie-policy-highlight-box{background:linear-gradient(to right,#bf87b514,#97c19d14);border-left:4px solid #97C19D;padding:1.5rem 2rem;margin:2rem 0;border-radius:4px}
.cookie-policy-highlight-box p{color:#343a40;font-size:1rem;line-height:1.75;margin:0;font-weight:500}
.cookie-policy-control-section{background:#f8f9fa;padding:2rem;border-radius:8px;margin:2rem 0;border:1px solid #EAF0EC}
.cookie-policy-control-section h3{color:#97C19D;font-size:1.4rem;margin:0 0 1.2rem}
.cookie-policy-control-section p{color:#495057;line-height:1.7;margin-bottom:1rem}
.cookie-policy-contact-wrapper{background:linear-gradient(135deg,#BF87B5 0%,#97C19D 100%);padding:3rem 2.5rem;margin-top:3rem;border-radius:8px;text-align:center;box-shadow:0 4px 16px #0000001f}
.cookie-policy-contact-wrapper h2{color:#fff;font-size:1.8rem;font-weight:600;margin:0 0 1.5rem}
.cookie-policy-contact-details{background:#fffffff2;padding:2rem;border-radius:6px;display:inline-block;text-align:left;box-shadow:0 2px 8px #0000001a}
.cookie-policy-contact-details p{color:#343a40;font-size:1rem;line-height:1.9;margin:.5rem 0}
.cookie-policy-contact-details strong{color:#BF87B5;font-weight:600}
@media (max-width: 768px) {
.cookie-policy-header-section{padding:3rem 1.5rem 2rem}
.cookie-policy-header-section h1{font-size:2rem}
.cookie-policy-content-container{padding:2rem 1.5rem 3rem}
.cookie-policy-intro-block{padding:1.5rem}
.cookie-policy-section-wrapper{padding:1.8rem 1.5rem 1.5rem}
.cookie-policy-section-wrapper h2{font-size:1.5rem}
.cookie-policy-tech-grid{grid-template-columns:1fr;gap:1rem}
.cookie-policy-contact-wrapper{padding:2rem 1.5rem}
.cookie-policy-contact-details{width:100%}
}
.politique-confidentialite-page{background:linear-gradient(135deg,#fafbfc 0%,#EAF0EC 100%);min-height:100vh;padding:0;margin:0}
.politique-confidentialite-page .conteneur-principal{max-width:920px;margin:0 auto;padding:80px 30px 100px}
.politique-confidentialite-page .entete-politique{background:#fff;border-left:6px solid #97C19D;padding:45px 50px;margin-bottom:60px;box-shadow:0 4px 20px #bf87b514;border-radius:2px}
.politique-confidentialite-page .titre-principal-politique{font-size:2.8rem;color:#212529;margin:0 0 20px;font-weight:700;letter-spacing:-.5px}
.politique-confidentialite-page .intro-date{color:#495057;font-size:.95rem;margin:0 0 25px;font-style:italic}
.politique-confidentialite-page .intro-texte{color:#343a40;font-size:1.05rem;line-height:1.75;margin:0}
.politique-confidentialite-page .corps-document{background:#fff;padding:55px 50px;border-radius:3px;box-shadow:0 2px 15px #97c19d0f}
.politique-confidentialite-page .section-politique{margin-bottom:55px;border-bottom:1px solid #EAF0EC;padding-bottom:45px}
.politique-confidentialite-page .section-politique:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.politique-confidentialite-page .titre-section{font-size:1.75rem;color:#BF87B5;margin:0 0 25px;font-weight:600;position:relative;padding-left:20px}
.politique-confidentialite-page .titre-section::before{content:'';position:absolute;left:0;top:8px;width:5px;height:22px;background:#97C19D;border-radius:2px}
.politique-confidentialite-page .paragraphe-contenu{color:#343a40;font-size:1rem;line-height:1.8;margin:0 0 20px}
.politique-confidentialite-page .paragraphe-contenu:last-child{margin-bottom:0}
.politique-confidentialite-page .liste-points{margin:25px 0;padding-left:0;list-style:none}
.politique-confidentialite-page .liste-points li{color:#343a40;font-size:1rem;line-height:1.7;margin-bottom:15px;padding-left:35px;position:relative}
.politique-confidentialite-page .liste-points li::before{content:'◆';position:absolute;left:8px;color:#97C19D;font-size:.85rem}
.politique-confidentialite-page .encadre-important{background:linear-gradient(to right,#EAF0EC 0%,#fafbfc 100%);border-left:4px solid #BF87B5;padding:30px 35px;margin:35px 0;border-radius:2px}
.politique-confidentialite-page .encadre-important .texte-encadre{color:#212529;font-size:1.02rem;line-height:1.75;margin:0;font-weight:500}
.politique-confidentialite-page .sous-titre-section{font-size:1.3rem;color:#495057;margin:35px 0 20px;font-weight:600}
.politique-confidentialite-page .info-contact-finale{background:#f8f9fa;padding:40px 45px;margin-top:50px;border-radius:3px;border:2px solid #EAF0EC}
.politique-confidentialite-page .titre-contact{font-size:1.5rem;color:#BF87B5;margin:0 0 20px;font-weight:600}
.politique-confidentialite-page .details-contact{color:#343a40;font-size:1rem;line-height:1.9;margin:0}
.politique-confidentialite-page .lien-contact{color:#97C19D;text-decoration:none;font-weight:500;border-bottom:1px solid transparent;transition:border-bottom .2s ease}
.politique-confidentialite-page .lien-contact:hover{border-bottom:1px solid #97C19D}
.politique-confidentialite-page .tableau-donnees{width:100%;margin:30px 0;border-collapse:separate;border-spacing:0;border:1px solid #EAF0EC;border-radius:3px;overflow:hidden}
.politique-confidentialite-page .tableau-donnees th{background:linear-gradient(135deg,#BF87B5 0%,#97C19D 100%);color:#fff;padding:18px 20px;text-align:left;font-weight:600;font-size:.95rem}
.politique-confidentialite-page .tableau-donnees td{padding:16px 20px;border-bottom:1px solid #EAF0EC;color:#343a40;font-size:.95rem;line-height:1.6}
.politique-confidentialite-page .tableau-donnees tr:last-child td{border-bottom:none}
.politique-confidentialite-page .tableau-donnees tr:nth-child(even){background:#fafbfc}
@media (max-width: 768px) {
.politique-confidentialite-page .conteneur-principal{padding:50px 20px 70px}
.politique-confidentialite-page .entete-politique{padding:30px 25px;margin-bottom:40px}
.politique-confidentialite-page .titre-principal-politique{font-size:2rem}
.politique-confidentialite-page .corps-document{padding:35px 25px}
.politique-confidentialite-page .section-politique{margin-bottom:40px;padding-bottom:35px}
.politique-confidentialite-page .titre-section{font-size:1.4rem;padding-left:18px}
.politique-confidentialite-page .encadre-important{padding:25px 20px;margin:25px 0}
.politique-confidentialite-page .info-contact-finale{padding:30px 25px}
.politique-confidentialite-page .tableau-donnees{font-size:.85rem}
.politique-confidentialite-page .tableau-donnees th,.politique-confidentialite-page .tableau-donnees td{padding:12px 15px}
}
@media (max-width: 480px) {
.politique-confidentialite-page .titre-principal-politique{font-size:1.7rem}
.politique-confidentialite-page .titre-section{font-size:1.25rem}
.politique-confidentialite-page .tableau-donnees{display:block;overflow-x:auto}
}
.success-wrapper{background:linear-gradient(135deg,#fafbfc 0%,#EAF0EC 100%);min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}
.success-content-box{background:#fff;max-width:680px;width:100%;border-radius:16px;box-shadow:0 8px 32px #bf87b51f;overflow:hidden}
.success-visual-header{background:linear-gradient(165deg,#97C19D 0%,#BF87B5 100%);padding:3.5rem 2rem 2.5rem;position:relative;text-align:center}
.success-visual-header::before{content:'';position:absolute;top:-40px;right:-40px;width:180px;height:180px;background:#eaf0ec26;border-radius:50%}
.success-visual-header::after{content:'';position:absolute;bottom:-30px;left:-30px;width:140px;height:140px;background:#ffffff1a;border-radius:50%}
.success-icon-mark{width:85px;height:85px;background:#fff;border-radius:50%;margin:0 auto 1.5rem;display:flex;align-items:center;justify-content:center;position:relative;z-index:2;box-shadow:0 6px 20px #00000014}
.success-icon-mark svg{width:48px;height:48px}
.success-main-title{font-size:2rem;font-weight:700;color:#fff;margin:0 0 .75rem;position:relative;z-index:2;line-height:1.3}
.success-subtitle-text{font-size:1.1rem;color:#fffffff2;margin:0;position:relative;z-index:2;line-height:1.5}
.success-body-content{padding:2.5rem 2rem}
.confirmation-details{background:#f8f9fa;border-left:4px solid #97C19D;padding:1.5rem;margin:0 0 2rem;border-radius:4px}
.confirmation-details p{margin:0 0 .8rem;color:#495057;font-size:.95rem;line-height:1.6}
.confirmation-details p:last-child{margin-bottom:0}
.confirmation-details strong{color:#212529;font-weight:600}
.next-actions-block{margin:2rem 0 0}
.next-actions-block h2{font-size:1.3rem;color:#212529;margin:0 0 1.25rem;font-weight:600}
.action-step-item{display:flex;gap:1rem;margin:0 0 1.5rem;align-items:flex-start}
.action-step-item:last-child{margin-bottom:0}
.step-number-circle{width:36px;height:36px;background:linear-gradient(135deg,#BF87B5,#97C19D);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;font-weight:700;font-size:.9rem;margin-top:2px}
.step-description-text{flex:1}
.step-description-text h3{font-size:1.05rem;color:#212529;margin:0 0 .4rem;font-weight:600}
.step-description-text p{margin:0;color:#495057;font-size:.95rem;line-height:1.6}
.contact-info-box{background:#EAF0EC;padding:1.5rem;border-radius:8px;margin:2rem 0 0;text-align:center}
.contact-info-box p{margin:0 0 1rem;color:#495057;font-size:.95rem;line-height:1.6}
.contact-info-box p:last-child{margin-bottom:0}
.contact-link-styled{color:#BF87B5;text-decoration:none;font-weight:600;transition:color .3s ease}
.contact-link-styled:hover{color:#97C19D}
.button-group-actions{display:flex;gap:1rem;margin:2.5rem 0 0;flex-wrap:wrap}
.btn-primary-action{flex:1;min-width:200px;background:linear-gradient(135deg,#BF87B5,#97C19D);color:#fff;padding:.95rem 1.75rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 12px #bf87b540}
.btn-primary-action:hover{transform:translateY(-2px);box-shadow:0 6px 20px #bf87b559}
.btn-secondary-action{flex:1;min-width:200px;background:#fff;color:#BF87B5;padding:.95rem 1.75rem;border:2px solid #BF87B5;border-radius:8px;font-size:1rem;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}
.btn-secondary-action:hover{background:#BF87B5;color:#fff}
@media (max-width: 768px) {
.success-wrapper{padding:1rem}
.success-visual-header{padding:2.5rem 1.5rem 2rem}
.success-main-title{font-size:1.6rem}
.success-subtitle-text{font-size:1rem}
.success-body-content{padding:2rem 1.5rem}
.button-group-actions{flex-direction:column}
.btn-primary-action,.btn-secondary-action{width:100%;min-width:auto}
.action-step-item{gap:.75rem}
.step-number-circle{width:32px;height:32px;font-size:.85rem}
}
@media (max-width: 480px) {
.success-visual-header::before,.success-visual-header::after{display:none}
.success-icon-mark{width:70px;height:70px}
.success-icon-mark svg{width:40px;height:40px}
.success-main-title{font-size:1.4rem}
.confirmation-details,.contact-info-box{padding:1.25rem}
}