*{margin:0;padding:0;box-sizing:border-box}
:root{--primary-hue:#BC77A7;--secondary-hue:#CCB1C7;--tertiary-hue:#E5DDE4;--background-light:#fafbfc;--background-white:#fff;--text-dark:#2a2d34;--text-medium:#4e5463;--text-light:#6b7280}
body{color:var(--text-dark);background-color:var(--background-light);font:16px/1.7 Georgia,'Times New Roman',serif}
a{text-decoration:none;color:inherit;transition:opacity .25s ease}
a:hover{opacity:.75}
a:focus{outline:2px solid var(--primary-hue);outline-offset:3px}
header{background:linear-gradient(165deg,#bc77a714 0%,#e5dde426 100%);padding:0;position:relative}
.header_row_alpha{display:flex;justify-content:center;align-items:center;padding:28px 5%;gap:18px;border-bottom:1px solid #bc77a71f}
.brand_nucleus{display:flex;flex-direction:column;align-items:center;gap:12px;position:relative;z-index:10}
.logo_vessel img{height:130px;width:130px;object-fit:contain;aspect-ratio:1/1}
.company_designation{font-size:1.35rem;font-weight:600;color:var(--text-dark);letter-spacing:.5px;text-align:center}
.header_row_beta{display:flex;justify-content:center;align-items:center;padding:22px 5%;background-color:#fff9}
.main_navigation_unit{display:flex;gap:48px;align-items:center;flex-wrap:wrap;justify-content:center}
.nav_link_item{font-size:1.05rem;color:var(--text-medium);font-weight:500;padding:8px 14px;border-radius:6px;transition:background-color .3s ease,color .3s ease;white-space:nowrap;position:relative}
.nav_link_item:hover{background-color:#bc77a714;color:var(--primary-hue);opacity:1}
.nav_link_item:focus{background-color:#bc77a71f}
main{min-height:60vh}
footer{background:linear-gradient(180deg,#bc77a7f2 0%,#ccb1c7e0 100%);color:var(--background-white);padding:58px 5% 32px;margin-top:80px}
.footer_grid_container{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:48px;max-width:1400px;margin:0 auto 42px}
.footer_section_block{display:flex;flex-direction:column;gap:18px}
.footer_heading_label{font-size:1.2rem;font-weight:600;margin-bottom:8px;color:var(--background-white);letter-spacing:.3px}
.footer_links_cluster{display:flex;flex-direction:column;gap:12px}
.footer_link_element{color:#ffffffe0;font-size:.98rem;transition:color .25s ease}
.footer_link_element:hover{color:var(--background-white);opacity:1}
.contact_info_wrapper{display:flex;flex-direction:column;gap:14px}
.contact_detail_line{display:flex;align-items:center;gap:10px;font-size:.98rem;color:#ffffffe6}
.copyright_notice_bar{text-align:center;padding-top:32px;border-top:1px solid #fff3;font-size:.92rem;color:#ffffffd1;max-width:1400px;margin:0 auto}
@media (max-width: 768px) {
.header_row_alpha{padding:20px 4%}
.logo_vessel img{height:95px;width:95px}
.company_designation{font-size:1.1rem}
.header_row_beta{padding:18px 4%}
.main_navigation_unit{gap:28px;flex-direction:column}
.nav_link_item{font-size:1rem;padding:10px 16px}
.footer_grid_container{grid-template-columns:1fr;gap:36px}
footer{padding:42px 4% 28px}
}
@media (max-width: 480px) {
.logo_vessel img{height:80px;width:80px}
.company_designation{font-size:1rem}
.nav_link_item{width:100%;text-align:center}
}
.consent_interface_wrapper{position:fixed;bottom:0;left:0;right:0;background:linear-gradient(175deg,#2a2d34f7 0%,#4e5463f5 100%);color:var(--background-white);padding:32px 5%;box-shadow:0 -4px 24px #0000002e;z-index:9999;transform:translateY(100%);transition:transform .4s cubic-bezier(0.4,0,0.2,1);border-top:3px solid var(--primary-hue)}
.consent_interface_wrapper.visible_state{transform:translateY(0)}
.consent_content_container{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:24px}
.consent_message_text{font-size:1rem;line-height:1.65;color:#ffffffeb}
.consent_message_text a{color:var(--secondary-hue);text-decoration:underline}
.consent_actions_row{display:flex;gap:16px;flex-wrap:wrap;align-items:center}
.consent_button_base{padding:12px 28px;font-size:.98rem;font-weight:600;border:none;border-radius:6px;cursor:pointer;transition:background-color .25s ease,transform .15s ease;font-family:inherit;min-width:140px}
.consent_button_base:hover{transform:translateY(-1px)}
.consent_button_base:focus{outline:2px solid var(--background-white);outline-offset:2px}
.accept_all_action{background-color:var(--primary-hue);color:var(--background-white)}
.accept_all_action:hover{background-color:#bc77a7d9}
.reject_all_action{background-color:transparent;color:var(--background-white);border:2px solid #fff6}
.reject_all_action:hover{background-color:#ffffff14;border-color:#fff9}
@media (max-width: 768px) {
.consent_interface_wrapper{padding:24px 4%}
.consent_actions_row{flex-direction:column;width:100%}
.consent_button_base{width:100%}
}
.partenaires-hero-zone{background:linear-gradient(165deg,#fafbfc 0%,#f8f9fa 50%,#E5DDE4 100%);padding:5rem 1.5rem 3rem;position:relative;overflow:hidden}
.partenaires-hero-zone::before{content:'';position:absolute;top:-10%;right:-5%;width:40%;height:60%;background:radial-gradient(circle,#bc77a726 0%,transparent 70%);border-radius:50%}
.partenaires-hero-conteneur{max-width:1200px;margin:0 auto;position:relative;z-index:2}
.partenaires-hero-titre{font-size:2.8rem;font-weight:700;color:#212529;margin-bottom:1.5rem;line-height:1.2}
.partenaires-hero-soustitre{font-size:1.25rem;color:#495057;line-height:1.6;max-width:720px;margin-bottom:2rem}
.partenaires-hero-details{display:flex;gap:2.5rem;flex-wrap:wrap;margin-top:2rem}
.partenaires-hero-point{display:flex;align-items:flex-start;gap:1rem;flex:1 1 280px}
.partenaires-hero-icone{width:48px;height:48px;background:linear-gradient(135deg,#BC77A7 0%,#CCB1C7 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px #bc77a740}
.partenaires-hero-icone svg{width:24px;height:24px;fill:#fff}
.partenaires-hero-texte h3{font-size:1.1rem;color:#212529;margin-bottom:.4rem;font-weight:600}
.partenaires-hero-texte p{font-size:.95rem;color:#495057;line-height:1.5;margin:0}
.partenaires-reseau-section{background:#fff;padding:4rem 1.5rem;position:relative}
.partenaires-reseau-wrapper{max-width:1300px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.partenaires-reseau-contenu h2{font-size:2.4rem;color:#212529;margin-bottom:1.5rem;font-weight:700;line-height:1.3}
.partenaires-reseau-intro{font-size:1.1rem;color:#495057;line-height:1.7;margin-bottom:2rem}
.partenaires-reseau-liste{display:flex;flex-direction:column;gap:1.8rem;margin-bottom:2.5rem}
.partenaires-reseau-item{display:flex;gap:1.2rem;align-items:flex-start}
.partenaires-reseau-marqueur{width:38px;height:38px;background:#BC77A7;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:3px}
.partenaires-reseau-marqueur svg{width:20px;height:20px;fill:#fff}
.partenaires-reseau-item-texte h4{font-size:1.1rem;color:#212529;margin-bottom:.5rem;font-weight:600}
.partenaires-reseau-item-texte p{font-size:.95rem;color:#495057;line-height:1.6;margin:0}
.partenaires-reseau-visuel{position:relative}
.partenaires-reseau-visuel img{width:100%;height:480px;object-fit:cover;border-radius:16px;box-shadow:0 12px 35px #0000001f}
.partenaires-reseau-cta{display:inline-flex;align-items:center;gap:.8rem;background:linear-gradient(135deg,#BC77A7 0%,#CCB1C7 100%);color:#fff;padding:.95rem 2rem;border-radius:10px;text-decoration:none;font-weight:600;font-size:1rem;transition:all .3s ease;box-shadow:0 4px 15px #bc77a74d}
.partenaires-reseau-cta:hover{transform:translateY(-2px);box-shadow:0 6px 20px #bc77a766;color:#fff}
.partenaires-temoignages-section{background:linear-gradient(180deg,#f8f9fa 0%,#fff 100%);padding:4.5rem 1.5rem}
.partenaires-temoignages-conteneur{max-width:1200px;margin:0 auto}
.partenaires-temoignages-entete{text-align:center;margin-bottom:3.5rem}
.partenaires-temoignages-entete h2{font-size:2.4rem;color:#212529;margin-bottom:1rem;font-weight:700}
.partenaires-temoignages-entete p{font-size:1.1rem;color:#495057;max-width:680px;margin:0 auto;line-height:1.6}
.partenaires-temoignages-grille{display:grid;grid-template-columns:repeat(2,1fr);gap:2.5rem}
.partenaires-temoignage-carte{background:#fff;border-radius:16px;padding:2.5rem;box-shadow:0 4px 20px #00000014;display:flex;flex-direction:column;gap:1.5rem;border-left:4px solid #BC77A7;transition:all .3s ease}
.partenaires-temoignage-carte:hover{transform:translateY(-4px);box-shadow:0 8px 28px #0000001f}
.partenaires-temoignage-contenu{font-size:1rem;color:#343a40;line-height:1.7;font-style:italic}
.partenaires-temoignage-auteur{display:flex;align-items:center;gap:1.2rem;padding-top:1rem;border-top:1px solid #E5DDE4}
.partenaires-temoignage-photo{width:58px;height:58px;border-radius:50%;object-fit:cover;border:3px solid #E5DDE4}
.partenaires-temoignage-info h4{font-size:1.05rem;color:#212529;margin-bottom:.3rem;font-weight:600}
.partenaires-temoignage-info p{font-size:.9rem;color:#495057;margin:0}
.partenaires-collaboration-section{background:#fff;padding:4.5rem 1.5rem;position:relative;overflow:hidden}
.partenaires-collaboration-section::after{content:'';position:absolute;bottom:-15%;left:-8%;width:35%;height:50%;background:radial-gradient(circle,#ccb1c733 0%,transparent 70%);border-radius:50%}
.partenaires-collaboration-wrapper{max-width:1300px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center;position:relative;z-index:2}
.partenaires-collaboration-visuel{order:2}
.partenaires-collaboration-visuel img{width:100%;height:520px;object-fit:cover;border-radius:16px;box-shadow:0 12px 35px #0000001f}
.partenaires-collaboration-contenu{order:1}
.partenaires-collaboration-contenu h2{font-size:2.4rem;color:#212529;margin-bottom:1.5rem;font-weight:700;line-height:1.3}
.partenaires-collaboration-texte{font-size:1.05rem;color:#495057;line-height:1.7;margin-bottom:2.5rem}
.partenaires-collaboration-processus{display:flex;flex-direction:column;gap:1.8rem;margin-bottom:2.5rem}
.partenaires-collaboration-etape{display:flex;gap:1.2rem;align-items:flex-start;padding:1.5rem;background:#fafbfc;border-radius:12px;border:1px solid #E5DDE4;transition:all .3s ease}
.partenaires-collaboration-etape:hover{background:#fff;border-color:#CCB1C7;box-shadow:0 4px 16px #bc77a726}
.partenaires-collaboration-numero{width:42px;height:42px;background:linear-gradient(135deg,#BC77A7 0%,#CCB1C7 100%);border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem;color:#fff;flex-shrink:0}
.partenaires-collaboration-etape-info h4{font-size:1.1rem;color:#212529;margin-bottom:.5rem;font-weight:600}
.partenaires-collaboration-etape-info p{font-size:.95rem;color:#495057;line-height:1.6;margin:0}
.partenaires-collaboration-action{display:inline-flex;align-items:center;gap:.8rem;background:#fff;color:#BC77A7;padding:.95rem 2rem;border-radius:10px;text-decoration:none;font-weight:600;font-size:1rem;border:2px solid #BC77A7;transition:all .3s ease}
.partenaires-collaboration-action:hover{background:#BC77A7;color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px #bc77a74d}
@media (max-width: 992px) {
.partenaires-hero-titre{font-size:2.2rem}
.partenaires-reseau-wrapper,.partenaires-collaboration-wrapper{grid-template-columns:1fr;gap:2.5rem}
.partenaires-collaboration-visuel{order:1}
.partenaires-collaboration-contenu{order:2}
.partenaires-reseau-visuel img,.partenaires-collaboration-visuel img{height:380px}
.partenaires-temoignages-grille{grid-template-columns:1fr}
}
@media (max-width: 768px) {
.partenaires-hero-zone{padding:3.5rem 1.5rem 2.5rem}
.partenaires-hero-titre{font-size:1.9rem}
.partenaires-hero-soustitre{font-size:1.1rem}
.partenaires-hero-details{gap:1.5rem}
.partenaires-reseau-section,.partenaires-collaboration-section{padding:3rem 1.5rem}
.partenaires-reseau-contenu h2,.partenaires-collaboration-contenu h2,.partenaires-temoignages-entete h2{font-size:1.9rem}
.partenaires-reseau-visuel img,.partenaires-collaboration-visuel img{height:320px}
.partenaires-temoignages-section{padding:3.5rem 1.5rem}
.partenaires-temoignage-carte{padding:1.8rem}
}
@media (max-width: 480px) {
.partenaires-hero-titre{font-size:1.6rem}
.partenaires-hero-icone{width:42px;height:42px}
.partenaires-reseau-contenu h2,.partenaires-collaboration-contenu h2{font-size:1.7rem}
.partenaires-collaboration-etape{padding:1.2rem}
}
.intro-hero-section{position:relative;width:100%;height:100vh;min-height:600px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(135deg,#E5DDE4 0%,#CCB1C7 100%)}
.intro-hero-section::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background-image:url(./gallery/lCwb.jpg);background-size:cover;background-position:center;opacity:.4;z-index:1}
.intro-hero-content{position:relative;z-index:2;max-width:800px;padding:40px;text-align:center;background:#ffffffeb;border-radius:12px;box-shadow:0 20px 60px #00000026}
.intro-hero-content h1{font-size:3.2rem;font-weight:700;color:#212529;margin:0 0 24px;line-height:1.2;letter-spacing:-.02em}
.intro-hero-content .hero-subtitle{font-size:1.35rem;color:#495057;margin:0 0 32px;line-height:1.6}
.intro-hero-content .hero-cta-btn{display:inline-block;padding:16px 40px;background:#BC77A7;color:#fff;text-decoration:none;border-radius:8px;font-size:1.1rem;font-weight:600;transition:all .3s ease;box-shadow:0 4px 12px #bc77a74d}
.intro-hero-content .hero-cta-btn:hover{background:#a56592;transform:translateY(-2px);box-shadow:0 6px 20px #bc77a766}
.program-intro-section{background:#fff;padding:90px 20px}
.program-intro-wrapper{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.program-intro-text h2{font-size:2.4rem;color:#212529;margin:0 0 20px;font-weight:700;line-height:1.3}
.program-intro-text p{font-size:1.05rem;color:#495057;line-height:1.8;margin:0 0 16px}
.program-intro-image{width:100%;height:450px;border-radius:16px;overflow:hidden;box-shadow:0 12px 40px #0000001a}
.program-intro-image img{width:100%;height:100%;object-fit:cover;display:block}
.learning-paths-section{background:linear-gradient(165deg,#f8f9fa 0%,#E5DDE4 100%);padding:80px 20px}
.learning-paths-container{max-width:1100px;margin:0 auto}
.learning-paths-header{text-align:center;margin-bottom:60px}
.learning-paths-header h2{font-size:2.6rem;color:#212529;margin:0 0 16px;font-weight:700}
.learning-paths-header p{font-size:1.15rem;color:#495057;max-width:700px;margin:0 auto;line-height:1.7}
.paths-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.path-card{background:#fff;padding:36px 28px;border-radius:12px;box-shadow:0 6px 24px #00000014;transition:all .3s ease;border-top:4px solid #BC77A7}
.path-card:hover{transform:translateY(-8px);box-shadow:0 12px 36px #0000001f}
.path-card h3{font-size:1.5rem;color:#212529;margin:0 0 16px;font-weight:600}
.path-card p{font-size:.98rem;color:#495057;line-height:1.7;margin:0 0 20px}
.path-duration{display:inline-block;padding:6px 14px;background:#E5DDE4;color:#212529;border-radius:20px;font-size:.85rem;font-weight:600}
.curriculum-detail-section{background:#fff;padding:85px 20px}
.curriculum-detail-wrapper{max-width:1150px;margin:0 auto;display:grid;grid-template-columns:45% 55%;gap:70px;align-items:start}
.curriculum-visual{position:sticky;top:40px}
.curriculum-visual img{width:100%;height:520px;object-fit:cover;border-radius:16px;box-shadow:0 16px 48px #0000001f}
.curriculum-content h2{font-size:2.5rem;color:#212529;margin:0 0 28px;font-weight:700;line-height:1.25}
.curriculum-modules{display:flex;flex-direction:column;gap:24px}
.module-item{background:#f8f9fa;padding:24px 28px;border-radius:10px;border-left:5px solid #CCB1C7;transition:all .3s ease}
.module-item:hover{border-left-color:#BC77A7;background:#fafbfc;transform:translateX(8px)}
.module-item h3{font-size:1.3rem;color:#212529;margin:0 0 10px;font-weight:600}
.module-item p{font-size:.96rem;color:#495057;line-height:1.7;margin:0}
.student-journey-section{background:linear-gradient(to right,#BC77A7,#CCB1C7);padding:90px 20px;position:relative;overflow:hidden}
.student-journey-section::after{content:'';position:absolute;top:-50px;right:-50px;width:300px;height:300px;background:#ffffff1a;border-radius:50%;z-index:1}
.journey-container{max-width:1000px;margin:0 auto;position:relative;z-index:2}
.journey-header{text-align:center;margin-bottom:60px}
.journey-header h2{font-size:2.7rem;color:#fff;margin:0 0 18px;font-weight:700}
.journey-header p{font-size:1.15rem;color:#fffffff2;line-height:1.7}
.journey-steps{display:flex;flex-direction:column;gap:50px}
.journey-step{display:grid;grid-template-columns:80px 1fr;gap:30px;align-items:start}
.step-number{width:80px;height:80px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;color:#BC77A7;box-shadow:0 8px 24px #00000026;flex-shrink:0}
.step-content{background:#ffffff26;padding:32px 36px;border-radius:12px;backdrop-filter:blur(10px)}
.step-content h3{font-size:1.6rem;color:#fff;margin:0 0 14px;font-weight:600}
.step-content p{font-size:1.02rem;color:#fffffff2;line-height:1.8;margin:0}
.pricing-section{background:#fff;padding:85px 20px}
.pricing-wrapper{max-width:1100px;margin:0 auto}
.pricing-header{text-align:center;margin-bottom:55px}
.pricing-header h2{font-size:2.6rem;color:#212529;margin:0 0 18px;font-weight:700}
.pricing-header p{font-size:1.1rem;color:#495057;line-height:1.7}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.pricing-card{background:#f8f9fa;padding:42px 32px;border-radius:14px;text-align:center;position:relative;transition:all .3s ease;border:3px solid transparent}
.pricing-card:hover{border-color:#BC77A7;transform:scale(1.03);box-shadow:0 16px 48px #bc77a733}
.pricing-card.featured{background:linear-gradient(135deg,#BC77A7,#CCB1C7);color:#fff;transform:scale(1.05)}
.pricing-card.featured h3,.pricing-card.featured p,.pricing-card.featured li{color:#fff}
.pricing-card h3{font-size:1.6rem;color:#212529;margin:0 0 12px;font-weight:600}
.pricing-amount{font-size:3rem;font-weight:700;margin:20px 0;display:block}
.pricing-currency{font-size:1.4rem;font-weight:500;margin-left:4px}
.pricing-card p{font-size:.95rem;color:#495057;margin:0 0 24px;line-height:1.6}
.pricing-features{list-style:none;padding:0;margin:0 0 32px;text-align:left}
.pricing-features li{padding:10px 0;font-size:.96rem;color:#495057;border-bottom:1px solid #0000000f}
.pricing-features li:before{content:'';color:#BC77A7;font-weight:700;margin-right:10px}
.pricing-card.featured .pricing-features li:before{color:#fff}
.pricing-btn{display:inline-block;padding:14px 36px;background:#BC77A7;color:#fff;text-decoration:none;border-radius:8px;font-size:1rem;font-weight:600;transition:all .3s ease}
.pricing-card.featured .pricing-btn{background:#fff;color:#BC77A7}
.pricing-btn:hover{transform:translateY(-3px);box-shadow:0 8px 20px #0003}
.instructor-section{background:linear-gradient(to bottom,#f8f9fa 0%,#E5DDE4 100%);padding:85px 20px}
.instructor-container{max-width:950px;margin:0 auto;display:grid;grid-template-columns:300px 1fr;gap:55px;align-items:start}
.instructor-photo{width:300px;height:380px;border-radius:16px;overflow:hidden;box-shadow:0 16px 48px #00000026;position:sticky;top:40px}
.instructor-photo img{width:100%;height:100%;object-fit:cover;display:block}
.instructor-info h2{font-size:2.4rem;color:#212529;margin:0 0 12px;font-weight:700}
.instructor-title{font-size:1.2rem;color:#BC77A7;font-weight:600;margin:0 0 28px}
.instructor-info p{font-size:1.05rem;color:#495057;line-height:1.8;margin:0 0 18px}
.instructor-achievements{background:#fff;padding:28px 32px;border-radius:12px;margin-top:32px;border-left:5px solid #BC77A7}
.instructor-achievements h3{font-size:1.4rem;color:#212529;margin:0 0 18px;font-weight:600}
.instructor-achievements ul{list-style:none;padding:0;margin:0}
.instructor-achievements li{padding:10px 0;font-size:.98rem;color:#495057;line-height:1.6;border-bottom:1px solid #f8f9fa}
.instructor-achievements li:last-child{border-bottom:none}
.cta-final-section{background:#fff;padding:95px 20px;text-align:center}
.cta-final-container{max-width:850px;margin:0 auto;background:linear-gradient(135deg,#BC77A7,#CCB1C7);padding:60px 50px;border-radius:20px;box-shadow:0 20px 60px #bc77a740}
.cta-final-container h2{font-size:2.8rem;color:#fff;margin:0 0 20px;font-weight:700;line-height:1.3}
.cta-final-container p{font-size:1.2rem;color:#fffffff2;margin:0 0 40px;line-height:1.7}
.cta-buttons{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}
.cta-primary-btn,.cta-secondary-btn{display:inline-block;padding:18px 42px;text-decoration:none;border-radius:10px;font-size:1.1rem;font-weight:600;transition:all .3s ease}
.cta-primary-btn{background:#fff;color:#BC77A7;box-shadow:0 6px 20px #ffffff4d}
.cta-primary-btn:hover{transform:translateY(-4px);box-shadow:0 10px 28px #fff6}
.cta-secondary-btn{background:transparent;color:#fff;border:2px solid #fff}
.cta-secondary-btn:hover{background:#ffffff26;transform:translateY(-4px)}
@media (max-width: 1024px) {
.program-intro-wrapper{grid-template-columns:1fr;gap:40px}
.curriculum-detail-wrapper{grid-template-columns:1fr;gap:50px}
.curriculum-visual{position:static}
.paths-grid{grid-template-columns:1fr;gap:24px}
.pricing-grid{grid-template-columns:1fr;gap:24px}
.pricing-card.featured{transform:scale(1)}
.instructor-container{grid-template-columns:1fr;gap:40px}
.instructor-photo{position:static;margin:0 auto}
}
@media (max-width: 768px) {
.intro-hero-content h1{font-size:2.2rem}
.intro-hero-content .hero-subtitle{font-size:1.1rem}
.intro-hero-section{min-height:500px}
.program-intro-section,.learning-paths-section,.curriculum-detail-section,.student-journey-section,.pricing-section,.instructor-section,.cta-final-section{padding:60px 20px}
.program-intro-text h2,.learning-paths-header h2,.curriculum-content h2,.pricing-header h2,.instructor-info h2,.journey-header h2{font-size:2rem}
.program-intro-image{height:320px}
.curriculum-visual img{height:360px}
.journey-step{grid-template-columns:60px 1fr;gap:20px}
.step-number{width:60px;height:60px;font-size:1.5rem}
.instructor-photo{width:100%;height:360px}
.cta-final-container{padding:40px 30px}
.cta-final-container h2{font-size:2rem}
.cta-buttons{flex-direction:column}
.cta-primary-btn,.cta-secondary-btn{width:100%;text-align:center}
}
.contact-hero-wrapper{background:linear-gradient(135deg,#fafbfc 0%,#f8f9fa 100%);padding:80px 20px 60px;position:relative;overflow:hidden}
.contact-hero-wrapper::before{content:'';position:absolute;top:-50%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,#bc77a714 0%,transparent 70%);border-radius:50%}
.contact-hero-content{max-width:800px;margin:0 auto;text-align:center;position:relative;z-index:2}
.contact-hero-content h1{font-size:2.8rem;color:#212529;margin-bottom:20px;font-weight:700;line-height:1.2}
.contact-hero-content .subheading-text{font-size:1.15rem;color:#495057;line-height:1.7;margin-bottom:0}
.info-cards-section{padding:70px 20px;background:#fff}
.info-cards-container{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px}
.single-info-card{background:#fafbfc;border:2px solid #E5DDE4;border-radius:12px;padding:35px 25px;transition:all .3s ease;position:relative}
.single-info-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #bc77a726;border-color:#BC77A7}
.info-card-icon{width:60px;height:60px;background:linear-gradient(135deg,#BC77A7 0%,#CCB1C7 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:20px;font-size:1.6rem;color:#fff}
.single-info-card h3{font-size:1.3rem;color:#212529;margin-bottom:15px;font-weight:600}
.single-info-card p{color:#495057;line-height:1.7;margin-bottom:8px;font-size:.98rem}
.single-info-card a{color:#BC77A7;text-decoration:none;transition:color .3s ease}
.single-info-card a:hover{color:#a05887;text-decoration:underline}
.form-visual-section{padding:80px 20px;background:linear-gradient(180deg,#f8f9fa 0%,#fff 100%);position:relative}
.form-visual-wrapper{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.visual-content-block{position:relative}
.visual-content-block img{width:100%;height:450px;object-fit:cover;border-radius:16px;box-shadow:0 15px 40px #0000001a}
.visual-overlay-text{position:absolute;bottom:30px;left:30px;right:30px;background:#fffffff2;padding:25px;border-radius:10px;box-shadow:0 5px 20px #00000026}
.visual-overlay-text h3{font-size:1.4rem;color:#212529;margin-bottom:10px;font-weight:600}
.visual-overlay-text p{color:#495057;margin:0;font-size:.95rem;line-height:1.6}
.form-content-block h2{font-size:2.2rem;color:#212529;margin-bottom:25px;font-weight:700;line-height:1.3}
.form-intro-text{font-size:1.05rem;color:#495057;line-height:1.7;margin-bottom:35px}
.contact-form-custom{background:#fff;padding:40px;border-radius:12px;box-shadow:0 5px 25px #00000014;border:1px solid #E5DDE4}
.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 16px;border:2px solid #E5DDE4;border-radius:8px;font-size:.98rem;color:#212529;transition:all .3s ease;background:#fafbfc}
.form-group-custom input:focus,.form-group-custom textarea:focus,.form-group-custom select:focus{outline:none;border-color:#BC77A7;background:#fff;box-shadow:0 0 0 3px #bc77a71a}
.form-group-custom textarea{resize:vertical;min-height:130px}
.privacy-consent-wrapper{margin-bottom:25px;display:flex;align-items:flex-start;gap:10px}
.privacy-consent-wrapper input[type="checkbox"]{width:auto;margin-top:4px;cursor:pointer;min-width:18px;height:18px;accent-color:#BC77A7}
.privacy-consent-wrapper label{font-size:.9rem;color:#495057;line-height:1.6;cursor:pointer}
.privacy-consent-wrapper a{color:#BC77A7;text-decoration:none;font-weight:500}
.privacy-consent-wrapper a:hover{text-decoration:underline}
.submit-btn-custom{background:linear-gradient(135deg,#BC77A7 0%,#CCB1C7 100%);color:#fff;border:none;padding:16px 45px;font-size:1.05rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .3s ease;width:100%;position:relative;z-index:10}
.submit-btn-custom:hover{transform:translateY(-2px);box-shadow:0 8px 20px #bc77a74d}
.submit-btn-custom:active{transform:translateY(0)}
.map-alternative-section{padding:70px 20px;background:#fff}
.map-alt-container{max-width:900px;margin:0 auto;text-align:center}
.map-alt-container h2{font-size:2rem;color:#212529;margin-bottom:30px;font-weight:700}
.location-visual-box{background:linear-gradient(135deg,#fafbfc 0%,#f8f9fa 100%);border:2px solid #E5DDE4;border-radius:12px;padding:50px 40px;position:relative;overflow:hidden}
.location-visual-box::before{content:'';position:absolute;top:-30px;right:-30px;width:200px;height:200px;background:radial-gradient(circle,#bc77a71f 0%,transparent 70%);border-radius:50%}
.location-icon-large{width:80px;height:80px;background:#BC77A7;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 25px;font-size:2rem;color:#fff;box-shadow:0 5px 20px #bc77a740}
.location-details-text{font-size:1.2rem;color:#212529;font-weight:600;margin-bottom:12px}
.location-address-text{font-size:1.05rem;color:#495057;line-height:1.8}
.faq-quick-section{padding:70px 20px;background:linear-gradient(180deg,#f8f9fa 0%,#fafbfc 100%)}
.faq-container-custom{max-width:800px;margin:0 auto}
.faq-container-custom h2{font-size:2.2rem;color:#212529;margin-bottom:40px;text-align:center;font-weight:700}
.faq-item-wrapper{background:#fff;border:2px solid #E5DDE4;border-radius:10px;padding:30px;margin-bottom:20px;transition:all .3s ease}
.faq-item-wrapper:hover{border-color:#BC77A7;box-shadow:0 5px 20px #bc77a71f}
.faq-item-wrapper h3{font-size:1.2rem;color:#212529;margin-bottom:15px;font-weight:600;display:flex;align-items:center;gap:12px}
.faq-item-wrapper h3::before{content:'?';width:30px;height:30px;background:#BC77A7;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700;flex-shrink:0}
.faq-item-wrapper p{color:#495057;line-height:1.7;margin:0;font-size:.98rem}
@media (max-width: 768px) {
.contact-hero-content h1{font-size:2rem}
.contact-hero-content .subheading-text{font-size:1rem}
.info-cards-container{grid-template-columns:1fr}
.form-visual-wrapper{grid-template-columns:1fr;gap:40px}
.visual-content-block{order:2}
.form-content-block{order:1}
.form-content-block h2{font-size:1.8rem}
.contact-form-custom{padding:30px 20px}
.visual-content-block img{height:350px}
.map-alt-container h2{font-size:1.7rem}
.faq-container-custom h2{font-size:1.8rem}
}
@media (max-width: 480px) {
.contact-hero-wrapper{padding:60px 15px 40px}
.contact-hero-content h1{font-size:1.7rem}
.single-info-card{padding:25px 20px}
.info-card-icon{width:50px;height:50px;font-size:1.4rem}
.visual-content-block img{height:280px}
.visual-overlay-text{bottom:20px;left:20px;right:20px;padding:20px}
.location-visual-box{padding:40px 25px}
.faq-item-wrapper{padding:25px 20px}
}
.apropos-hero-section{background:linear-gradient(135deg,#fafbfc 0%,#E5DDE4 100%);padding:120px 20px 80px;position:relative;overflow:hidden}
.apropos-hero-section::before{content:'';position:absolute;top:-50%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,#bc77a726 0%,transparent 70%);border-radius:50%}
.apropos-hero-content{max-width:900px;margin:0 auto;position:relative;z-index:2}
.apropos-hero-content h1{font-size:3.2rem;line-height:1.2;color:#212529;margin-bottom:24px;font-weight:700}
.apropos-hero-content .sous-titre-hero{font-size:1.3rem;line-height:1.6;color:#495057;margin-bottom:0}
.apropos-valeurs-block{background:#fff;padding:90px 20px;position:relative}
.apropos-valeurs-container{max-width:1200px;margin:0 auto}
.apropos-valeurs-intro{max-width:700px;margin-bottom:60px}
.apropos-valeurs-intro h2{font-size:2.4rem;color:#212529;margin-bottom:20px;font-weight:600}
.apropos-valeurs-intro p{font-size:1.1rem;line-height:1.7;color:#495057}
.apropos-grille-valeurs{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:40px;margin-bottom:70px}
.apropos-carte-valeur{background:#f8f9fa;padding:35px 30px;border-radius:8px;border-left:4px solid #BC77A7;transition:transform .3s ease,box-shadow .3s ease}
.apropos-carte-valeur:hover{transform:translateY(-5px);box-shadow:0 8px 20px #bc77a726}
.apropos-carte-valeur h3{font-size:1.5rem;color:#BC77A7;margin-bottom:15px;font-weight:600}
.apropos-carte-valeur p{font-size:1rem;line-height:1.6;color:#343a40;margin:0}
.apropos-image-valeurs{border-radius:12px;overflow:hidden;box-shadow:0 10px 30px #0000001a}
.apropos-image-valeurs img{width:100%;height:400px;object-fit:cover;display:block}
.apropos-equipe-section{background:linear-gradient(180deg,#f8f9fa 0%,#fff 100%);padding:90px 20px}
.apropos-equipe-conteneur{max-width:1100px;margin:0 auto}
.apropos-equipe-header{text-align:center;margin-bottom:70px}
.apropos-equipe-header h2{font-size:2.6rem;color:#212529;margin-bottom:18px;font-weight:600}
.apropos-equipe-header p{font-size:1.15rem;line-height:1.7;color:#495057;max-width:650px;margin:0 auto}
.apropos-grille-equipe{display:grid;grid-template-columns:repeat(2,1fr);gap:50px;margin-bottom:60px}
.apropos-membre-equipe{display:flex;gap:25px;background:#fff;padding:30px;border-radius:10px;box-shadow:0 4px 15px #00000014;transition:box-shadow .3s ease}
.apropos-membre-equipe:hover{box-shadow:0 8px 25px #bc77a733}
.apropos-photo-membre{flex-shrink:0}
.apropos-photo-membre img{width:120px;height:120px;object-fit:cover;border-radius:50%;border:3px solid #E5DDE4}
.apropos-info-membre h3{font-size:1.4rem;color:#212529;margin-bottom:6px;font-weight:600}
.apropos-info-membre .role-membre{font-size:1rem;color:#BC77A7;margin-bottom:15px;font-weight:500;display:block}
.apropos-info-membre p{font-size:.95rem;line-height:1.6;color:#495057;margin:0}
.apropos-image-equipe-complete{border-radius:12px;overflow:hidden;box-shadow:0 10px 30px #0000001a}
.apropos-image-equipe-complete img{width:100%;height:450px;object-fit:cover;display:block}
.apropos-approche-section{background:#fff;padding:90px 20px;position:relative}
.apropos-approche-wrapper{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.apropos-approche-contenu h2{font-size:2.5rem;color:#212529;margin-bottom:25px;font-weight:600}
.apropos-approche-contenu > p{font-size:1.1rem;line-height:1.7;color:#495057;margin-bottom:35px}
.apropos-liste-avantages{list-style:none;padding:0;margin:0 0 40px}
.apropos-liste-avantages li{font-size:1.05rem;line-height:1.6;color:#343a40;margin-bottom:18px;padding-left:35px;position:relative}
.apropos-liste-avantages li::before{content:'';position:absolute;left:0;color:#BC77A7;font-weight:700;font-size:1.3rem}
.apropos-cta-principal{display:inline-block;background:linear-gradient(135deg,#BC77A7 0%,#CCB1C7 100%);color:#fff;padding:16px 40px;border-radius:6px;text-decoration:none;font-size:1.05rem;font-weight:600;transition:transform .3s ease,box-shadow .3s ease;box-shadow:0 4px 12px #bc77a74d}
.apropos-cta-principal:hover{transform:translateY(-3px);box-shadow:0 6px 20px #bc77a766;color:#fff}
.apropos-image-approche{border-radius:12px;overflow:hidden;box-shadow:0 10px 30px #0000001f}
.apropos-image-approche img{width:100%;height:500px;object-fit:cover;display:block}
@media (max-width: 768px) {
.apropos-hero-section{padding:80px 20px 60px}
.apropos-hero-content h1{font-size:2.2rem}
.apropos-hero-content .sous-titre-hero{font-size:1.1rem}
.apropos-valeurs-block{padding:60px 20px}
.apropos-valeurs-intro h2{font-size:1.9rem}
.apropos-grille-valeurs{grid-template-columns:1fr;gap:30px}
.apropos-image-valeurs img{height:300px}
.apropos-equipe-section{padding:60px 20px}
.apropos-equipe-header h2{font-size:2rem}
.apropos-grille-equipe{grid-template-columns:1fr;gap:30px}
.apropos-membre-equipe{flex-direction:column;align-items:center;text-align:center}
.apropos-image-equipe-complete img{height:300px}
.apropos-approche-section{padding:60px 20px}
.apropos-approche-wrapper{grid-template-columns:1fr;gap:40px}
.apropos-approche-contenu h2{font-size:2rem}
.apropos-image-approche img{height:350px}
}
.programmes-hero-wrapper{background:linear-gradient(135deg,#fafbfc 0%,#E5DDE4 100%);padding:80px 20px 60px;position:relative;overflow:hidden}
.programmes-hero-wrapper::before{content:'';position:absolute;top:-50%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,#bc77a726 0%,transparent 70%);border-radius:50%}
.programmes-hero-content{max-width:1200px;margin:0 auto;position:relative;z-index:2}
.programmes-hero-content h1{font-size:3rem;color:#212529;margin-bottom:20px;font-weight:700;line-height:1.2}
.programmes-hero-intro{font-size:1.25rem;color:#495057;max-width:800px;line-height:1.7;margin-bottom:30px}
.programmes-hero-tagline{font-size:1.1rem;color:#343a40;max-width:700px;line-height:1.6}
.parcours-structure-section{background:#fff;padding:100px 20px;position:relative}
.parcours-structure-container{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.parcours-left-content h2{font-size:2.5rem;color:#212529;margin-bottom:30px;font-weight:700;line-height:1.3}
.parcours-description-text{font-size:1.1rem;color:#495057;line-height:1.8;margin-bottom:25px}
.parcours-visual-area{position:relative}
.parcours-main-image{width:100%;height:450px;object-fit:cover;border-radius:12px;box-shadow:0 8px 30px #0000001f}
.parcours-phases-overlay{position:absolute;bottom:-30px;left:30px;background:#fff;padding:30px;border-radius:10px;box-shadow:0 10px 40px #00000026;max-width:350px}
.parcours-phases-overlay h3{font-size:1.3rem;color:#BC77A7;margin-bottom:18px;font-weight:600}
.phase-item-quick{display:flex;align-items:center;margin-bottom:12px;font-size:.95rem;color:#343a40}
.phase-item-quick::before{content:'→';color:#BC77A7;margin-right:10px;font-weight:700;font-size:1.2rem}
.methodologie-split-section{background:linear-gradient(180deg,#f8f9fa 0%,#fff 100%);padding:90px 20px}
.methodologie-wrapper-grid{max-width:1200px;margin:0 auto}
.methodologie-header-center{text-align:center;margin-bottom:70px}
.methodologie-header-center h2{font-size:2.6rem;color:#212529;margin-bottom:20px;font-weight:700}
.methodologie-header-center p{font-size:1.15rem;color:#495057;max-width:750px;margin:0 auto;line-height:1.7}
.methodologie-comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border-radius:12px;overflow:hidden;box-shadow:0 6px 25px #0000001a}
.methodo-column-left{background:#fff;padding:50px 40px;border-right:3px solid #E5DDE4}
.methodo-column-right{background:#fafbfc;padding:50px 40px}
.methodo-column-left h3,.methodo-column-right h3{font-size:1.8rem;color:#BC77A7;margin-bottom:30px;font-weight:600}
.methodo-approach-list{list-style:none;padding:0;margin:0}
.methodo-approach-list li{padding:18px 0;border-bottom:1px solid #E5DDE4;font-size:1.05rem;color:#343a40;line-height:1.6;position:relative;padding-left:30px}
.methodo-approach-list li:last-child{border-bottom:none}
.methodo-approach-list li::before{content:'';position:absolute;left:0;color:#BC77A7;font-weight:700;font-size:1.3rem}
.temoignages-experiences-section{background:#fff;padding:90px 20px;position:relative}
.temoignages-experiences-section::before{content:'';position:absolute;bottom:0;left:0;width:100%;height:40%;background:linear-gradient(180deg,transparent 0%,#f8f9fa 100%);z-index:1}
.temoignages-container-main{max-width:1300px;margin:0 auto;position:relative;z-index:2}
.temoignages-header-intro{text-align:center;margin-bottom:60px}
.temoignages-header-intro h2{font-size:2.5rem;color:#212529;margin-bottom:18px;font-weight:700}
.temoignages-header-intro p{font-size:1.1rem;color:#495057;max-width:700px;margin:0 auto;line-height:1.6}
.temoignages-cards-layout{display:grid;grid-template-columns:repeat(2,1fr);gap:40px}
.temoignage-card-individual{background:#fff;border:2px solid #E5DDE4;border-radius:10px;padding:40px;position:relative;transition:transform .3s ease,box-shadow .3s ease}
.temoignage-card-individual:hover{transform:translateY(-5px);box-shadow:0 12px 35px #bc77a733}
.temoignage-person-header{display:flex;align-items:center;margin-bottom:25px;gap:20px}
.temoignage-person-photo{width:70px;height:70px;border-radius:50%;object-fit:cover;border:3px solid #CCB1C7}
.temoignage-person-info h4{font-size:1.3rem;color:#212529;margin-bottom:5px;font-weight:600}
.temoignage-person-info p{font-size:.95rem;color:#BC77A7;margin:0;font-weight:500}
.temoignage-quote-text{font-size:1.05rem;color:#343a40;line-height:1.7;font-style:italic;position:relative;padding-left:20px;border-left:4px solid #CCB1C7}
.modalites-inscription-section{background:linear-gradient(135deg,#E5DDE4 0%,#fafbfc 100%);padding:90px 20px}
.modalites-content-wrapper{max-width:1100px;margin:0 auto}
.modalites-header-block{text-align:center;margin-bottom:50px}
.modalites-header-block h2{font-size:2.6rem;color:#212529;margin-bottom:20px;font-weight:700}
.modalites-header-block p{font-size:1.15rem;color:#495057;max-width:650px;margin:0 auto;line-height:1.7}
.modalites-details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-bottom:50px}
.modalite-info-card{background:#fff;padding:35px 30px;border-radius:10px;text-align:center;box-shadow:0 4px 20px #00000014;transition:transform .3s ease}
.modalite-info-card:hover{transform:translateY(-3px)}
.modalite-info-card h3{font-size:1.4rem;color:#BC77A7;margin-bottom:15px;font-weight:600}
.modalite-info-card p{font-size:1rem;color:#343a40;line-height:1.6;margin:0}
.modalites-cta-area{text-align:center;background:#fff;padding:45px;border-radius:12px;box-shadow:0 6px 25px #0000001a}
.modalites-cta-area h3{font-size:1.9rem;color:#212529;margin-bottom:20px;font-weight:600}
.modalites-cta-area p{font-size:1.1rem;color:#495057;margin-bottom:30px;line-height:1.6}
.modalites-action-button{display:inline-block;background:linear-gradient(135deg,#BC77A7 0%,#CCB1C7 100%);color:#fff;padding:16px 45px;border-radius:8px;text-decoration:none;font-size:1.1rem;font-weight:600;transition:transform .3s ease,box-shadow .3s ease;box-shadow:0 4px 15px #bc77a74d}
.modalites-action-button:hover{transform:translateY(-2px);box-shadow:0 6px 25px #bc77a766;color:#fff}
@media (max-width: 992px) {
.programmes-hero-content h1{font-size:2.3rem}
.parcours-structure-container{grid-template-columns:1fr;gap:40px}
.parcours-phases-overlay{position:static;margin-top:30px;max-width:100%}
.methodologie-comparison-grid{grid-template-columns:1fr}
.methodo-column-left{border-right:none;border-bottom:3px solid #E5DDE4}
.temoignages-cards-layout{grid-template-columns:1fr}
.modalites-details-grid{grid-template-columns:1fr}
}
@media (max-width: 768px) {
.programmes-hero-wrapper{padding:60px 15px 40px}
.programmes-hero-content h1{font-size:1.9rem}
.programmes-hero-intro{font-size:1.1rem}
.parcours-structure-section{padding:60px 15px}
.parcours-left-content h2{font-size:2rem}
.parcours-main-image{height:300px}
.methodologie-split-section{padding:60px 15px}
.methodologie-header-center h2{font-size:2rem}
.methodo-column-left,.methodo-column-right{padding:35px 25px}
.temoignages-experiences-section{padding:60px 15px}
.temoignages-header-intro h2{font-size:2rem}
.modalites-inscription-section{padding:60px 15px}
.modalites-header-block h2{font-size:2rem}
.modalites-cta-area{padding:30px 20px}
}
.politique-cookies-main{background:#fff;min-height:100vh;padding:0;margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,sans-serif}
.politique-cookies-main .conteneur-principal-politique{max-width:920px;margin:0 auto;padding:70px 30px 90px;background:linear-gradient(to bottom,#fafbfc 0%,#fff 100%)}
.politique-cookies-main .titre-document-politique{font-size:2.8rem;font-weight:700;color:#212529;margin:0 0 25px;line-height:1.2;letter-spacing:-.02em}
.politique-cookies-main .sous-titre-intro{font-size:1.15rem;color:#495057;margin:0 0 50px;line-height:1.6;border-left:4px solid #BC77A7;padding-left:20px}
.politique-cookies-main .bloc-section-contenu{margin-bottom:55px;padding:35px;background:#f8f9fa;border-radius:8px;border-top:3px solid #CCB1C7}
.politique-cookies-main .bloc-section-contenu:nth-child(even){background:#fff;border-top:3px solid #E5DDE4;box-shadow:0 2px 8px #bc77a714}
.politique-cookies-main .titre-section-politique{font-size:1.75rem;font-weight:600;color:#343a40;margin:0 0 20px;line-height:1.3}
.politique-cookies-main .texte-corps-politique{font-size:1.05rem;color:#495057;line-height:1.75;margin:0 0 18px}
.politique-cookies-main .texte-corps-politique:last-child{margin-bottom:0}
.politique-cookies-main .liste-technologies-detectees{list-style:none;padding:0;margin:25px 0}
.politique-cookies-main .liste-technologies-detectees li{padding:18px 22px;margin-bottom:12px;background:#fff;border-left:4px solid #BC77A7;border-radius:4px;font-size:1.02rem;color:#343a40;box-shadow:0 1px 4px #0000000f}
.politique-cookies-main .liste-technologies-detectees li strong{color:#212529;font-weight:600}
.politique-cookies-main .encadre-important{background:linear-gradient(135deg,#E5DDE4 0%,#f8f9fa 100%);padding:28px 30px;margin:30px 0;border-radius:6px;border:2px solid #CCB1C7}
.politique-cookies-main .encadre-important .texte-corps-politique{margin-bottom:0;font-weight:500;color:#343a40}
.politique-cookies-main .grille-categories{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px;margin:30px 0}
.politique-cookies-main .carte-categorie{background:#fff;padding:25px;border-radius:8px;border:2px solid #E5DDE4;transition:all .3s ease}
.politique-cookies-main .carte-categorie:hover{border-color:#BC77A7;box-shadow:0 4px 12px #bc77a726;transform:translateY(-2px)}
.politique-cookies-main .carte-categorie h3{font-size:1.3rem;font-weight:600;color:#BC77A7;margin:0 0 15px}
.politique-cookies-main .carte-categorie p{font-size:.98rem;color:#495057;line-height:1.6;margin:0}
.politique-cookies-main .bloc-controle-utilisateur{background:#f8f9fa;padding:40px;margin:40px 0;border-radius:10px;border:1px solid #CCB1C7}
.politique-cookies-main .bloc-controle-utilisateur .titre-section-politique{margin-bottom:25px}
.politique-cookies-main .liste-actions-controle{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:15px}
.politique-cookies-main .liste-actions-controle li{padding:20px 24px;background:#fff;border-radius:6px;border-left:5px solid #BC77A7;font-size:1.05rem;color:#343a40;line-height:1.6;box-shadow:0 2px 6px #0000000d}
.politique-cookies-main .separateur-section{height:2px;background:linear-gradient(to right,transparent 0%,#CCB1C7 50%,transparent 100%);margin:50px 0;border:none}
.politique-cookies-main .bloc-question-specifique{background:#fff;padding:30px 35px;margin:35px 0;border-radius:8px;box-shadow:0 3px 10px #00000014;border-top:4px solid #BC77A7}
.politique-cookies-main .bloc-question-specifique h4{font-size:1.4rem;font-weight:600;color:#212529;margin:0 0 18px}
.politique-cookies-main .bloc-question-specifique p{font-size:1.02rem;color:#495057;line-height:1.7;margin:0}
.politique-cookies-main .section-finale-contact{margin-top:60px;padding:45px 40px;background:linear-gradient(135deg,#f8f9fa 0%,#E5DDE4 100%);border-radius:10px;border:2px solid #CCB1C7}
.politique-cookies-main .section-finale-contact .titre-section-politique{margin-bottom:22px}
.politique-cookies-main .info-contact-ligne{display:flex;align-items:baseline;margin-bottom:15px;font-size:1.05rem;color:#343a40}
.politique-cookies-main .info-contact-ligne strong{min-width:140px;color:#212529;font-weight:600}
.politique-cookies-main .lien-contact-mail{color:#BC77A7;text-decoration:none;font-weight:500;transition:color .2s ease}
.politique-cookies-main .lien-contact-mail:hover{color:#9a5f8a;text-decoration:underline}
.politique-cookies-main .mention-date-maj{margin-top:50px;padding-top:25px;border-top:1px solid #CCB1C7;font-size:.95rem;color:#6c757d;text-align:center}
@media (max-width: 768px) {
.politique-cookies-main .conteneur-principal-politique{padding:40px 20px 60px}
.politique-cookies-main .titre-document-politique{font-size:2.1rem;margin-bottom:20px}
.politique-cookies-main .sous-titre-intro{font-size:1.05rem;margin-bottom:35px}
.politique-cookies-main .bloc-section-contenu{padding:25px 20px;margin-bottom:35px}
.politique-cookies-main .titre-section-politique{font-size:1.5rem}
.politique-cookies-main .grille-categories{grid-template-columns:1fr;gap:20px}
.politique-cookies-main .bloc-controle-utilisateur{padding:25px 20px}
.politique-cookies-main .section-finale-contact{padding:30px 25px}
.politique-cookies-main .info-contact-ligne{flex-direction:column;margin-bottom:20px}
.politique-cookies-main .info-contact-ligne strong{margin-bottom:5px}
}
@media (max-width: 480px) {
.politique-cookies-main .titre-document-politique{font-size:1.8rem}
.politique-cookies-main .texte-corps-politique{font-size:1rem}
.politique-cookies-main .liste-technologies-detectees li{padding:15px 18px;font-size:.98rem}
.politique-cookies-main .carte-categorie{padding:20px}
}
.privacy-policy-wrapper{background:linear-gradient(135deg,#fafbfc 0%,#fff 50%,#f8f9fa 100%);min-height:100vh;padding:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.privacy-hero-section{background:linear-gradient(165deg,#E5DDE4 0%,#CCB1C7 60%,#BC77A7 100%);padding:90px 20px 70px;text-align:center;position:relative;overflow:hidden}
.privacy-hero-section::before{content:'';position:absolute;top:-50%;right:-10%;width:500px;height:500px;background:#ffffff1a;border-radius:50%;z-index:1}
.privacy-hero-section::after{content:'';position:absolute;bottom:-30%;left:-5%;width:400px;height:400px;background:#bc77a726;border-radius:50%;z-index:1}
.privacy-main-title{font-size:3.2rem;font-weight:800;color:#fff;margin:0 0 25px;position:relative;z-index:2;letter-spacing:-.5px;text-shadow:2px 2px 8px #0000001a}
.privacy-intro-text{font-size:1.15rem;color:#fff;max-width:720px;margin:0 auto;line-height:1.7;position:relative;z-index:2;font-weight:500}
.privacy-content-container{max-width:960px;margin:-40px auto 0;padding:0 20px 80px;position:relative;z-index:3}
.privacy-card-wrapper{background:#fff;border-radius:16px;box-shadow:0 10px 40px #bc77a71f;padding:60px 55px;margin-bottom:35px}
.privacy-section-heading{font-size:1.95rem;font-weight:700;color:#BC77A7;margin:0 0 28px;padding-bottom:18px;border-bottom:3px solid #E5DDE4;letter-spacing:-.3px}
.privacy-text-block{font-size:1.05rem;line-height:1.85;color:#343a40;margin-bottom:24px}
.privacy-text-block:last-child{margin-bottom:0}
.privacy-subsection-title{font-size:1.45rem;font-weight:650;color:#495057;margin:38px 0 20px}
.privacy-emphasis-box{background:linear-gradient(135deg,#fafbfc 0%,#f8f9fa 100%);border-left:5px solid #BC77A7;padding:28px 32px;margin:32px 0;border-radius:8px}
.privacy-list-container{margin:22px 0 22px 25px}
.privacy-list-container li{font-size:1.05rem;line-height:1.8;color:#343a40;margin-bottom:14px;position:relative;padding-left:8px}
.privacy-contact-section{background:linear-gradient(135deg,#E5DDE4 0%,#CCB1C7 100%);border-radius:16px;padding:45px 50px;text-align:center;margin-top:50px}
.privacy-contact-heading{font-size:1.85rem;font-weight:700;color:#fff;margin:0 0 25px}
.privacy-contact-details{font-size:1.1rem;color:#fff;line-height:1.9;font-weight:500}
.privacy-contact-link{color:#fff;text-decoration:underline;transition:opacity .3s ease}
.privacy-contact-link:hover{opacity:.8}
.privacy-data-category{background:#fff;border:2px solid #E5DDE4;border-radius:10px;padding:24px 28px;margin:18px 0;transition:all .3s ease}
.privacy-data-category:hover{border-color:#BC77A7;box-shadow:0 4px 15px #bc77a71a}
.privacy-category-label{font-size:1.2rem;font-weight:650;color:#BC77A7;margin-bottom:12px}
.privacy-inline-highlight{font-weight:600;color:#BC77A7}
.privacy-separator-line{height:2px;background:linear-gradient(90deg,transparent 0%,#E5DDE4 50%,transparent 100%);margin:45px 0;border:none}
@media (max-width: 768px) {
.privacy-main-title{font-size:2.3rem}
.privacy-intro-text{font-size:1.05rem}
.privacy-card-wrapper{padding:40px 28px}
.privacy-section-heading{font-size:1.65rem}
.privacy-text-block{font-size:1rem}
.privacy-contact-section{padding:35px 25px}
}
.success-wrapper{background:linear-gradient(135deg,#fafbfc 0%,#f8f9fa 50%,#fff 100%);min-height:100vh;padding:0;margin:0}
.success-main-container{max-width:900px;margin:0 auto;padding:60px 20px}
.success-header-block{text-align:center;margin-bottom:50px;padding-top:40px}
.success-icon-circle{width:120px;height:120px;margin:0 auto 35px;background:linear-gradient(135deg,#BC77A7 0%,#CCB1C7 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;animation:pulse-success 2s ease-in-out infinite}
@keyframes pulse-success {
0%,100%{transform:scale(1);box-shadow:0 0 0 0 #bc77a766}
50%{transform:scale(1.05);box-shadow:0 0 0 20px #bc77a700}
}
.success-icon-circle::after{content:'';font-size:64px;color:#fff;font-weight:300;line-height:1}
.success-main-title{font-size:42px;color:#212529;margin:0 0 20px;font-weight:600;letter-spacing:-.5px}
.success-subtitle-text{font-size:20px;color:#495057;margin:0;line-height:1.6;max-width:650px;margin-left:auto;margin-right:auto}
.success-content-area{background:#fff;border-radius:16px;padding:50px 45px;margin-bottom:40px;box-shadow:0 4px 20px #0000000f;border:1px solid #E5DDE4}
.success-info-grid{display:grid;grid-template-columns:1fr;gap:35px;margin-bottom:45px}
.success-info-item{padding:25px;background:linear-gradient(120deg,#fafbfc 0%,#f8f9fa 100%);border-radius:12px;border-left:4px solid #BC77A7;transition:all .3s ease}
.success-info-item:hover{transform:translateX(8px);border-left-color:#CCB1C7;box-shadow:0 6px 16px #bc77a71f}
.success-item-label{font-size:14px;color:#6c757d;text-transform:uppercase;letter-spacing:1px;margin:0 0 10px;font-weight:500}
.success-item-value{font-size:18px;color:#212529;margin:0;line-height:1.5}
.success-next-steps{margin-top:50px}
.success-steps-title{font-size:28px;color:#212529;margin:0 0 30px;font-weight:600;position:relative;padding-left:20px}
.success-steps-title::before{content:'';position:absolute;left:0;top:8px;width:5px;height:28px;background:linear-gradient(180deg,#BC77A7 0%,#CCB1C7 100%);border-radius:3px}
.success-step-list{display:flex;flex-direction:column;gap:25px;margin:0 0 40px;padding:0;list-style:none}
.success-step-item{display:flex;align-items:flex-start;gap:20px;padding:20px;background:#fafbfc;border-radius:10px;transition:all .3s ease}
.success-step-item:hover{background:#f5f6fa;transform:translateY(-3px)}
.success-step-number{min-width:45px;height:45px;background:linear-gradient(135deg,#BC77A7 0%,#CCB1C7 100%);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:600;color:#fff;flex-shrink:0}
.success-step-content{flex:1;padding-top:3px}
.success-step-heading{font-size:18px;color:#212529;margin:0 0 8px;font-weight:600}
.success-step-description{font-size:16px;color:#495057;margin:0;line-height:1.6}
.success-contact-box{background:linear-gradient(135deg,#BC77A7 0%,#CCB1C7 100%);padding:35px;border-radius:12px;text-align:center;margin-top:45px}
.success-contact-heading{font-size:22px;color:#fff;margin:0 0 15px;font-weight:600}
.success-contact-text{font-size:16px;color:#fff;margin:0 0 25px;line-height:1.6;opacity:.95}
.success-contact-details{display:flex;flex-direction:column;gap:12px;align-items:center}
.success-contact-link{color:#fff;text-decoration:none;font-size:16px;padding:10px 20px;background:#ffffff26;border-radius:8px;transition:all .3s ease;display:inline-block}
.success-contact-link:hover{background:#ffffff40;transform:translateY(-2px)}
.success-button-group{display:flex;gap:20px;justify-content:center;margin-top:50px;flex-wrap:wrap}
.success-btn-primary{background:linear-gradient(135deg,#BC77A7 0%,#CCB1C7 100%);color:#fff;padding:16px 40px;border-radius:10px;text-decoration:none;font-size:17px;font-weight:600;transition:all .3s ease;display:inline-block;border:none;box-shadow:0 4px 12px #bc77a74d;position:relative;z-index:10}
.success-btn-primary:hover{transform:translateY(-3px);box-shadow:0 6px 20px #bc77a766}
.success-btn-secondary{background:#fff;color:#BC77A7;padding:16px 40px;border-radius:10px;text-decoration:none;font-size:17px;font-weight:600;transition:all .3s ease;display:inline-block;border:2px solid #BC77A7;position:relative;z-index:10}
.success-btn-secondary:hover{background:#fafbfc;transform:translateY(-3px);box-shadow:0 4px 12px #bc77a726}
.success-footer-note{text-align:center;margin-top:50px;padding-top:30px;border-top:1px solid #E5DDE4}
.success-footer-text{font-size:15px;color:#6c757d;margin:0;line-height:1.7}
@media (max-width: 768px) {
.success-main-container{padding:40px 15px}
.success-main-title{font-size:32px}
.success-subtitle-text{font-size:18px}
.success-content-area{padding:35px 25px}
.success-icon-circle{width:100px;height:100px;margin-bottom:30px}
.success-icon-circle::after{font-size:52px}
.success-steps-title{font-size:24px}
.success-step-item{flex-direction:column;gap:15px}
.success-button-group{flex-direction:column;gap:15px}
.success-btn-primary,.success-btn-secondary{width:100%;text-align:center}
.success-contact-box{padding:25px 20px}
}
.error-page-wrapper{min-height:100vh;background:linear-gradient(135deg,#fafbfc 0%,#f8f9fa 50%,#fff 100%);display:flex;align-items:center;justify-content:center;padding:2rem 1rem;position:relative;overflow:hidden}
.error-page-wrapper::before{content:'';position:absolute;top:-10%;right:-5%;width:500px;height:500px;background:radial-gradient(circle,#E5DDE4 0%,transparent 70%);opacity:.4;border-radius:50%}
.error-page-wrapper::after{content:'';position:absolute;bottom:-15%;left:-8%;width:600px;height:600px;background:radial-gradient(circle,#CCB1C7 0%,transparent 65%);opacity:.3;border-radius:50%}
.error-content-container{max-width:720px;width:100%;background:#fff;border-radius:16px;padding:3.5rem 2.5rem;box-shadow:0 8px 32px #bc77a71f;position:relative;z-index:2;border:1px solid #E5DDE4}
.error-visual-element{text-align:center;margin-bottom:2.5rem;position:relative}
.error-number-display{font-size:8rem;font-weight:800;line-height:1;background:linear-gradient(135deg,#BC77A7 0%,#CCB1C7 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;letter-spacing:-.02em}
.error-decorative-line{width:120px;height:4px;background:linear-gradient(90deg,transparent 0%,#BC77A7 50%,transparent 100%);margin:1.5rem auto;border-radius:2px}
.error-main-heading{font-size:2rem;font-weight:700;color:#212529;margin:0 0 1.25rem;text-align:center;line-height:1.3}
.error-description-text{font-size:1.1rem;line-height:1.7;color:#495057;margin:0 0 2rem;text-align:center}
.possible-reasons-section{background:#f8f9fa;border-left:4px solid #BC77A7;padding:1.75rem 2rem;margin:2rem 0;border-radius:0 8px 8px 0}
.reasons-heading{font-size:1.15rem;font-weight:600;color:#343a40;margin:0 0 1rem}
.reasons-list{list-style:none;padding:0;margin:0}
.reasons-list li{padding:.6rem 0 .6rem 2rem;color:#495057;font-size:1rem;line-height:1.6;position:relative}
.reasons-list li::before{content:'';position:absolute;left:0;top:1rem;width:8px;height:8px;background:#BC77A7;border-radius:50%}
.helpful-actions-wrapper{margin:2.5rem 0 2rem;padding:2rem;background:linear-gradient(135deg,#fafbfc 0%,#fff 100%);border-radius:12px;border:1px solid #E5DDE4}
.actions-subheading{font-size:1.1rem;font-weight:600;color:#343a40;margin:0 0 1.5rem;text-align:center}
.quick-links-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:2rem}
.quick-link-item{padding:1.25rem 1.5rem;background:#fff;border:2px solid #E5DDE4;border-radius:10px;text-decoration:none;color:#343a40;transition:all .3s ease;display:flex;align-items:center;justify-content:space-between}
.quick-link-item:hover{border-color:#BC77A7;background:#fafbfc;transform:translateX(4px)}
.link-text-content{font-size:1rem;font-weight:500;color:#343a40}
.link-arrow-symbol{font-size:1.25rem;color:#BC77A7;transition:transform .3s ease}
.quick-link-item:hover .link-arrow-symbol{transform:translateX(4px)}
.primary-action-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:2rem}
.action-btn-primary{padding:1rem 2.5rem;background:linear-gradient(135deg,#BC77A7 0%,#CCB1C7 100%);color:#fff;text-decoration:none;border-radius:8px;font-weight:600;font-size:1rem;transition:all .3s ease;display:inline-block;border:none;box-shadow:0 4px 12px #bc77a740}
.action-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #bc77a759;background:linear-gradient(135deg,#a8698f 0%,#b89fad 100%)}
.action-btn-secondary{padding:1rem 2.5rem;background:#fff;color:#BC77A7;text-decoration:none;border-radius:8px;font-weight:600;font-size:1rem;transition:all .3s ease;display:inline-block;border:2px solid #BC77A7}
.action-btn-secondary:hover{background:#BC77A7;color:#fff;transform:translateY(-2px)}
.support-contact-info{text-align:center;margin-top:2.5rem;padding-top:2rem;border-top:1px solid #E5DDE4}
.support-intro-text{font-size:.95rem;color:#495057;margin:0 0 1rem;line-height:1.6}
.contact-details-line{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;margin-top:1rem}
.contact-info-item{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;color:#343a40}
.contact-info-item a{color:#BC77A7;text-decoration:none;font-weight:500;transition:color .3s ease}
.contact-info-item a:hover{color:#a8698f;text-decoration:underline}
@media (min-width: 768px) {
.quick-links-grid{grid-template-columns:repeat(2,1fr)}
.error-number-display{font-size:10rem}
.error-main-heading{font-size:2.5rem}
}
@media (max-width: 767px) {
.error-content-container{padding:2.5rem 1.5rem}
.error-number-display{font-size:6rem}
.error-main-heading{font-size:1.75rem}
.error-description-text{font-size:1rem}
.possible-reasons-section{padding:1.5rem 1.25rem}
.primary-action-buttons{flex-direction:column;align-items:stretch}
.action-btn-primary,.action-btn-secondary{width:100%;text-align:center}
.contact-details-line{flex-direction:column;gap:.75rem}
}