:root{--navy:#0c2538;--ink:#163348;--orange:#e9a325;--paper:#faf8f3;--muted:#60717a;--border:#dadfdf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;background:var(--paper)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #df9c29;outline-offset:4px}.topbar{padding:11px 5%;background:var(--navy);color:#e3e8ea;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.5px}header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:17px 5%;background:#faf8f3f5;border-bottom:1px solid #dfe2df;backdrop-filter:blur(10px)}.brand{display:flex;gap:13px;align-items:center}.brand img{width:53px;height:53px}.brand span{font-size:17px;font-weight:800;letter-spacing:.5px}.brand b{color:#b87610}.brand small{display:block;font-size:6.5px;letter-spacing:1px;margin-top:7px}nav{display:flex;align-items:center;gap:29px;font-size:12px}nav>a:not(.button):hover{color:#a76b0b}.button{background:var(--orange);color:var(--navy);padding:18px 23px;display:inline-flex;gap:30px;align-items:center;justify-content:space-between;border:1px solid var(--orange);font-size:12px;font-weight:700;border-radius:2px;transition:transform .2s,background .2s}.button:hover{background:#f4b744;transform:translateY(-2px)}.button.small{padding:14px 18px;font-size:11px}.menu{display:none}.hero{display:grid;grid-template-columns:1.1fr 1fr;min-height:650px}.hero-copy{padding:77px 7% 47px 9%}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;display:flex;align-items:center;gap:9px;margin-bottom:25px}.eyebrow i{width:6px;height:6px;background:var(--orange);border-radius:100%}h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(44px,4.7vw,74px);line-height:1.08;letter-spacing:-2.4px;margin-bottom:25px}em{font-weight:400;color:#ad751b}h1 em{display:block}p{font-size:14px;line-height:1.85;color:var(--muted)}.hero-copy>p{max-width:390px;font-size:15px}.actions{display:flex;align-items:center;gap:23px;margin-top:32px}.text-link{font-size:12px;font-weight:700;display:inline-flex;gap:17px;align-items:center;padding:10px 0;border-bottom:1px solid #c5cdce}.hero-note{font-size:10px;line-height:1.7;display:flex;gap:17px;align-items:center;margin-top:59px;color:var(--muted)}.line{height:1px;background:var(--orange);width:45px}.hero-image{position:relative;margin:25px 25px 25px 0;overflow:hidden;min-height:580px;background:var(--navy)}.hero-image>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:50% 40%}.hero-image:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#061a2bba)}.image-tag{position:absolute;bottom:57px;left:38px;z-index:1;color:white}.image-tag>span{font-size:8px;letter-spacing:2px;display:block;color:#ffd486;margin-bottom:16px}.image-tag strong{font-family:Georgia,serif;font-size:26px;font-weight:400;line-height:1.3}.image-caption{position:absolute;top:22px;right:19px;writing-mode:vertical-rl;color:white;font-size:8px;letter-spacing:2px}.principles{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#eeeae0;padding:28px 5%;font-size:12px}.principles>span{font-size:10px;color:var(--muted)}.principles i{color:#b67c1c;font-style:normal}.section{padding:90px 7%;scroll-margin-top:0}.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:39px}.section-head>p,.section-head>div+div{max-width:365px}.section-head p{margin-bottom:5px}h2{font-family:Georgia,serif;font-size:clamp(33px,3.5vw,48px);font-weight:400;letter-spacing:-1.2px;line-height:1.13;margin-bottom:0}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--border);border-left:1px solid var(--border)}.service{padding:28px;border-bottom:1px solid var(--border);border-right:1px solid var(--border);background:transparent;text-align:left;color:var(--ink);position:relative;transition:background .2s}.service:hover{background:#f0eee6}.service .number{font-size:11px;color:#a6711b}.service h3{font-size:19px;font-weight:500;margin:30px 0 14px;max-width:240px;line-height:1.25}.service p{font-size:12px;margin-bottom:28px}.service .arrow{position:absolute;right:25px;top:24px;font-size:22px}.service .more{font-size:10px;font-weight:700}.training{background:var(--navy);color:#fff}.training .eyebrow{color:#e8b256}.training p{color:#b7c6ce}.training .text-link{color:#e8b256;border-bottom-color:#4c5b65}.catalog-controls{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #3e515d;padding-bottom:20px;margin-top:45px;align-items:center}.filters{display:flex;gap:7px;flex-wrap:wrap}.filters button{border:1px solid #49606e;background:transparent;color:#bdcbd3;padding:10px 14px;font-size:11px;border-radius:30px}.filters button.active{background:var(--orange);color:var(--navy);border-color:var(--orange)}.search{display:flex;align-items:center;border-bottom:1px solid #71838f;padding:9px 0}.search input{background:none;border:0;color:white;font-size:12px;width:210px;min-width:0;outline-offset:6px}.search input::placeholder{color:#b1c0ca}.catalog-note{font-size:10px;margin:17px 0 24px}.courses{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.course{background:#173448;padding:27px;display:flex;flex-direction:column;min-height:230px;border-top:2px solid #bc8b38}.course>span{font-size:9px;text-transform:uppercase;letter-spacing:1.6px;color:#e8b256}.course h3{font-family:Georgia,serif;font-weight:400;font-size:23px;line-height:1.25;margin:23px 0 15px}.course p{font-size:12px}.course button{margin-top:auto;background:transparent;color:#fff;border:0;border-top:1px solid #49616f;text-align:left;padding:16px 0 0;font-size:11px;display:flex;justify-content:space-between}.custom-training{margin-top:35px;padding-top:28px;border-top:1px solid #425564;display:flex;justify-content:space-between;align-items:center;gap:20px}.custom-training strong{font-size:15px}.custom-training p{margin:7px 0 0;font-size:12px}.outline{background:transparent;color:#edb657;border-color:#856733;white-space:nowrap}.outline:hover{background:#263f4c}.about{display:grid;grid-template-columns:.85fr 1.3fr;gap:10%;align-items:center}.founder-photo{position:relative;max-width:370px;height:485px;background:#e9e0d3}.founder-photo>img{width:100%;height:100%;object-fit:cover;object-position:50% 35%}.founder-photo>div{position:absolute;left:20px;bottom:20px;right:-25px;background:var(--navy);color:white;padding:22px}.founder-photo strong,.founder-photo span{display:block}.founder-photo strong{font-size:16px;margin-bottom:7px}.founder-photo span{font-size:10px;color:#d2dce1}.about blockquote{font-family:Georgia,serif;font-size:24px;line-height:1.5;margin:27px 0;border-left:3px solid var(--orange);padding-left:23px}.values{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.values span{border:1px solid #d7d7ce;padding:8px;font-size:10px}.method{background:#eeebe3}.method .eyebrow{margin-bottom:19px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:48px}.steps article{border-top:1px solid #abb5b8;padding-top:24px}.steps span{color:#a6711b;font-size:12px}.steps h3{font-size:21px;font-weight:400;margin:25px 0 11px}.steps p{font-size:12px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:9%;background:#fff}.contact-copy>p{max-width:350px;margin-top:25px}address{font-style:normal;display:flex;flex-direction:column;gap:11px;margin-top:28px;font-size:13px}address a:first-child{font-size:17px;font-weight:700}address span{line-height:1.8;color:var(--muted);margin-top:12px}.contact .text-link{margin-top:15px}form{background:var(--paper);padding:33px}form h3{font-family:Georgia,serif;font-size:26px;font-weight:400;margin-bottom:28px}form label{display:flex;flex-direction:column;gap:8px;font-size:11px;margin-bottom:17px;font-weight:700}input,select,textarea{width:100%;border:1px solid #c9d0cf;background:white;color:var(--ink);padding:12px;font-size:12px;border-radius:0}textarea{resize:vertical;min-height:100px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}form .consent{display:flex;flex-direction:row;align-items:start;font-weight:400;font-size:10px;line-height:1.5}.consent input{width:15px;height:15px;margin:0;flex-shrink:0}.form-help{font-size:10px;line-height:1.6;margin:12px 0 0}#form-status{font-size:12px;margin:12px 0 0}footer{padding:40px 7%;background:var(--navy);color:#fff;display:flex;justify-content:space-between;gap:30px}.footer-brand{font-size:19px;font-weight:800}.footer-brand span{color:#e8b256}footer p{font-size:11px;color:#b4c2ca;margin:10px 0 0}footer>div+div{display:flex;gap:16px;align-items:start;flex-direction:column;font-size:10px;color:#c6d1d7}footer button{background:none;color:inherit;border:0;padding:0;font-size:10px}dialog{border:0;max-width:620px;width:calc(100% - 32px);padding:45px;background:var(--paper);color:var(--ink);box-shadow:0 25px 100px #061a2b55;max-height:85vh;overflow:auto}dialog::backdrop{background:#051926bb;backdrop-filter:blur(5px)}dialog h2{font-size:35px;margin:18px 0 23px}dialog li{font-size:14px;line-height:1.8;color:var(--muted)}dialog ul{padding-left:20px;margin-bottom:25px}dialog .close{position:absolute;top:10px;right:17px;border:0;background:none;color:var(--ink);font-size:30px}dialog .eyebrow{color:#a6711b}dialog p{font-size:14px}.empty{grid-column:1/-1;padding:30px}.skip{position:fixed;top:-100px;z-index:100;background:var(--navy);color:white;padding:15px}.skip:focus{top:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0)}
@media(min-width:1550px){body{max-width:1700px;margin:auto}}@media(max-width:1050px){nav{gap:16px}.brand small{display:none}.brand span{font-size:14px}.hero-copy{padding-top:55px}.actions{align-items:start;flex-direction:column;gap:10px}.hero{min-height:600px}.hero-image{min-height:560px}h1{font-size:54px}.section{padding:70px 5%}.catalog-controls{flex-wrap:wrap}.services{grid-template-columns:repeat(2,1fr)}.contact{gap:5%}form{padding:24px}.form-row{grid-template-columns:1fr;gap:0}.about{gap:7%}.principles{font-size:10px}}
@media(max-width:720px){.topbar{font-size:8px;padding:10px 5%}.topbar a{font-size:0}.topbar a:after{content:'ABIDJAN, CÔTE D’IVOIRE';font-size:8px}.brand img{width:43px;height:43px}.brand span{font-size:13px}.menu{display:block;border:1px solid #cbd1ce;background:transparent;font-size:24px;padding:2px 10px;color:var(--ink)}nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:25px;box-shadow:0 15px 20px #0001;align-items:start}nav.open{display:flex;flex-direction:column;gap:24px}header{padding:15px 5%}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 6% 35px}.eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:22px}h1{font-size:49px;letter-spacing:-1.8px}.hero-copy>p{font-size:14px}.actions{flex-direction:row;flex-wrap:wrap;gap:16px}.hero-note{margin-top:30px}.hero-image{margin:0 5% 23px;min-height:400px}.hero-image>img{object-position:50% 40%}.image-tag{left:25px;bottom:30px}.image-tag strong{font-size:23px}.principles{display:grid;grid-template-columns:1fr 1fr;padding:23px 6%;gap:16px}.principles>span{grid-column:1/-1}.principles i{display:none}.principles strong{font-size:10px}.section{padding:55px 6%}.section-head{flex-direction:column;align-items:start;gap:22px;margin-bottom:30px}h2{font-size:37px}.services{grid-template-columns:1fr}.service{padding:25px}.service h3{margin-top:23px;max-width:none}.service p{margin-bottom:20px}.courses{grid-template-columns:1fr}.course{min-height:210px}.course h3{font-size:24px}.catalog-controls{margin-top:30px}.filters{gap:6px}.filters button{font-size:10px;padding:9px 11px}.search{width:100%;justify-content:space-between}.search input{width:90%}.custom-training{flex-direction:column;align-items:start;gap:20px}.about{grid-template-columns:1fr;gap:40px}.founder-photo{height:410px;width:85%;margin-left:2%}.about blockquote{font-size:23px}.steps{grid-template-columns:1fr 1fr;gap:25px}.steps h3{margin-top:18px}.contact{grid-template-columns:1fr;gap:35px}.contact form{padding:25px 20px}footer{padding:35px 6%;flex-direction:column}dialog{padding:38px 25px}dialog h2{font-size:30px}.contact-copy h2{font-size:38px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.recruitment{background:#f2eee5}.job-search{display:block;max-width:460px;margin-bottom:25px}.job{display:flex;gap:25px;justify-content:space-between;align-items:center;padding:28px 0;border-top:1px solid #cad0cc}.job:last-child{border-bottom:1px solid #cad0cc}.job-type{font-size:10px;text-transform:uppercase;letter-spacing:1.3px;color:#a6711b}.job h3{font-family:Georgia,serif;font-size:24px;font-weight:400;line-height:1.3;margin:12px 0}.job p{font-size:12px;margin-bottom:0}.job p span{margin:0 10px}.job button{background:none;border:0;border-bottom:1px solid #c5cdce;color:var(--ink);flex-shrink:0}.application-note,.recruitment-contacts{font-size:11px;margin:22px 0 0}.recruitment-contacts a{text-decoration:underline}.gallery{background:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gallery-item{text-align:left;background:none;border:0;padding:0;color:var(--ink)}.gallery-item img{width:100%;height:240px;object-fit:cover}.gallery-item>span{display:block;font-size:10px;color:#a6711b;margin-top:18px}.gallery-item h3{font-family:Georgia,serif;font-size:23px;font-weight:400;margin:13px 0}.gallery-item p{font-size:12px}.gallery-empty{grid-column:1/-1;border:1px solid #d7dbd5;border-left:4px solid var(--orange);padding:32px;background:var(--paper)}.gallery-empty>span{font-size:10px;letter-spacing:2px;color:#a6711b}.gallery-empty h3{font-family:Georgia,serif;font-weight:400;font-size:26px;margin:18px 0}.gallery-empty p{margin-bottom:0}.lightbox-img{width:100%;max-height:55vh;object-fit:contain}.empty-state{padding:35px 0}.empty-state h3{font-weight:400}@media(max-width:1200px){nav{gap:14px;font-size:11px}.brand small{display:none}nav .small{gap:10px;padding:13px}}@media(max-width:720px){.job{align-items:start;flex-direction:column;gap:12px}.job h3{font-size:23px}.gallery-grid{grid-template-columns:1fr}.gallery-empty{padding:25px}}
