:root{--ink:#42415c;--muted:#626279;--primary:#17449b;--primary-dark:#12367c;--tint:#f3f4f9;--line:#d9dbe3;--accent:#17449b;--paper:#fff;--bg:#ffffff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--bg);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #17449b;outline-offset:5px}button:disabled{cursor:default}.skip{position:absolute;top:-100px;left:20px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}.topline{background:var(--primary-dark);color:white;display:flex;justify-content:space-between;padding:8px max(calc((100% - 1180px)/2),5%);font-size:.8125rem;letter-spacing:.025em}header{max-width:1280px;margin:auto;padding:25px 50px;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line)}.brand{display:flex;gap:11px;text-decoration:none;align-items:center;font-size:1.4rem;font-weight:800;line-height:1.1;white-space:nowrap}.brand-icon{width:44px;height:44px;display:grid;place-items:center;background:var(--primary);color:#fff;border-radius:12px;font-family:Georgia,serif;font-style:italic;font-size:1.8rem;letter-spacing:-3px;padding-right:3px}.brand-light{font-weight:400}.brand small{display:block;letter-spacing:.19em;font-size:.625rem;color:var(--muted);margin-top:7px}nav{display:flex;align-items:center;gap:28px}nav a{text-decoration:none;font-size:.875rem;font-weight:600}nav a:hover,nav a[aria-current=page]{color:var(--primary)}.nav-help{padding:10px 17px;border:1px solid var(--line);border-radius:7px;background:white}.nav-help span{margin-left:14px}main{max-width:1180px;margin:0 auto;padding:0 0 72px}.welcome{padding:44px 0 30px}.eyebrow,.section-label{font-size:.75rem;font-weight:700;letter-spacing:.15em;line-height:1.5}.eyebrow{color:var(--primary);display:flex;align-items:center;gap:9px}.flag{display:inline-block;width:22px;height:13px;border-radius:2px;background:linear-gradient(90deg,#14804a 33.33%,#f8ce43 33.33%,#f8ce43 66.66%,#de5049 66.66%)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.2rem,4vw,3.55rem);letter-spacing:-.045em;line-height:1.13;font-weight:600;margin:17px 0 17px}h1 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.025em;color:var(--primary)}.welcome>p{color:var(--muted);font-size:1.0625rem;margin-bottom:0}.workspace{display:grid;grid-template-columns:1.2fr 1fr;border:1px solid var(--line);border-radius:15px;overflow:hidden;background:white;box-shadow:0 12px 35px #182b5510}.journey{padding:32px 36px}.section-label{color:var(--muted)}.journey h2{font-size:1.5rem;letter-spacing:-.035em;margin:10px 0 4px}.journey>p{font-size:.9375rem;color:var(--muted);margin-bottom:23px}.stage-buttons{display:grid;gap:9px}.stage{display:flex;align-items:center;gap:14px;text-align:left;padding:13px 18px;border:1px solid var(--line);border-radius:7px;background:white;color:var(--ink);font-size:.9375rem;transition:background .15s,border .15s}.stage span:first-child{font-size:.75rem;font-weight:700;color:var(--muted)}.stage span:last-child{margin-left:auto}.stage:hover{background:var(--bg);border-color:var(--primary)}.stage.active{background:var(--tint);border-color:var(--primary);color:var(--primary);font-weight:700}.stage.active span{color:var(--primary)}.trouble{display:block;font-size:.8125rem;color:var(--muted);margin-top:21px}.trouble:hover{color:var(--primary)}.next-step{position:relative;overflow:hidden;background:var(--tint);color:var(--ink);padding:32px 38px;display:flex;flex-direction:column;align-items:flex-start}.next-step .section-label{color:#55566e;z-index:1}.big-number{position:absolute;top:-12px;right:24px;font-size:7.5rem;font-weight:500;line-height:1.2;color:#e1e5f0;letter-spacing:-.06em}.next-step h2{font-size:2rem;line-height:1.15;letter-spacing:-.025em;max-width:320px;margin:38px 0 14px;position:relative}.next-step p{font-size:.9375rem;color:#55566e;max-width:340px;margin-bottom:12px}.next-step ul{list-style:none;padding:0;margin:0 0 23px;font-size:.875rem}.next-step li{margin:7px 0;padding-left:23px;position:relative}.next-step li:before{content:'✓';position:absolute;left:0;color:var(--accent)}.button{border:0;background:var(--accent);color:#ffffff;padding:13px 20px;text-decoration:none;border-radius:7px;display:inline-flex;justify-content:center;align-items:center;gap:32px;font-size:.9375rem;font-weight:700;min-height:48px}.button:hover{filter:brightness(.96)}.next-step .button{margin-top:auto;width:100%}.subtle{font-size:.8125rem;color:var(--muted);line-height:1.6}.next-step .subtle{color:#55566e;align-self:center;margin-top:10px}.trust-strip{display:flex;justify-content:space-between;padding:26px 32px;border-bottom:1px solid var(--line);font-size:.875rem;color:var(--muted);gap:20px}.trust-strip b{font-family:Georgia,serif;font-style:italic;color:var(--primary);font-size:1.2rem;margin-right:10px}.section{margin-top:64px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:25px}.section h2,.bottom-banner h2,.faq h2{font-size:1.9rem;letter-spacing:-.035em;line-height:1.25;margin:10px 0 0}.text-link{font-size:.9375rem;font-weight:600;color:var(--primary)}.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.guide-card{background:white;border:1px solid var(--line);border-radius:10px;padding:25px;text-decoration:none;display:flex;flex-direction:column;align-items:flex-start;transition:transform .15s,box-shadow .15s}.guide-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #182b5510;border-color:#9baed5}.card-top{display:flex;align-items:center;gap:13px;color:var(--muted);font-size:.8125rem}.step-number{display:inline-grid;place-items:center;width:35px;height:35px;border-radius:50%;background:var(--tint);color:var(--primary);font-size:.8125rem;font-weight:700;flex-shrink:0}.guide-card h3{font-size:1.1875rem;line-height:1.35;margin:22px 0 11px;letter-spacing:-.02em}.guide-card p{font-size:.9375rem;line-height:1.65;color:var(--muted);margin-bottom:26px}.card-link{font-size:.875rem;color:var(--primary);font-weight:600;width:100%;display:flex;justify-content:space-between;margin-top:auto}.bottom-banner{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:38px 42px;background:var(--primary-dark);color:white;border-radius:12px;margin-top:54px}.bottom-banner .eyebrow{color:#dce6ff}.bottom-banner h2{font-size:2rem;margin:11px 0 15px}.bottom-banner p{color:#e2e7f2;font-size:.9375rem;max-width:450px;margin:0}.light{background:white;color:var(--ink);flex-shrink:0}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.faq h2{margin-top:14px}details{border-bottom:1px solid var(--line);padding:18px 0}summary{cursor:pointer;font-size:1rem;font-weight:600;padding-right:10px}details p{color:var(--muted);margin:14px 0 0;font-size:.9375rem}footer{background:#f3f4f9;padding:45px max(calc((100% - 1180px)/2),5%) 25px;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:35px;color:var(--muted);font-size:.875rem}.footer-brand{font-size:1.4rem;font-weight:700;color:var(--ink);text-decoration:none}footer p{margin:8px 0 0}footer strong{display:block;color:var(--ink);margin-bottom:12px}footer div>a:not(.footer-brand){display:block;text-decoration:none;margin:8px 0}.footer-note{grid-column:1/-1;border-top:1px solid #d9dbe3;padding-top:20px;font-size:.75rem;max-width:100%}.page-intro{padding:54px 0 20px;max-width:850px}.page-intro p{color:var(--muted);max-width:720px;font-size:1.0625rem}.page-intro+.section{margin-top:15px}.breadcrumb{font-size:.8125rem;color:var(--muted);margin:35px 0}.breadcrumb a{margin-right:5px}.article-layout{display:grid;grid-template-columns:minmax(0,760px) 285px;gap:65px}.article-layout h1{font-size:2.8rem;line-height:1.16;margin-top:15px}.lead{font-size:1.125rem;color:var(--muted);margin:20px 0}.article-meta{font-size:.8125rem;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:24px}.article-section{margin:30px 0}.article-section h2,.sources h2,.simple-article h2{font-size:1.35rem;letter-spacing:-.02em;margin:0 0 10px}.article-section p{color:#4d4e66;font-size:1.0625rem;line-height:1.8}.sources{padding:25px;background:var(--tint);border-radius:9px;margin-top:30px}.sources a{display:block;font-size:.9375rem;margin:10px 0;color:var(--primary)}.notice{font-size:.8125rem;color:var(--muted);margin-top:20px}.article-aside{align-self:start;background:white;border:1px solid var(--line);padding:25px 20px;border-radius:10px;position:sticky;top:20px}.article-aside>a{display:flex;align-items:center;gap:10px;font-size:.875rem;margin:16px 0;text-decoration:none}.article-aside>a>span{color:var(--primary);font-weight:700}.article-aside [aria-current=page]{color:var(--primary);font-weight:700}.article-aside .aside-cta{border-top:1px solid var(--line);padding-top:20px;margin-top:20px;color:var(--primary)}.check-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:35px;margin-top:15px}.check-group{background:white;border:1px solid var(--line);border-radius:10px;padding:25px;margin-bottom:20px}.check-group h2{font-size:1.2rem;margin-bottom:14px}.check-row{display:flex;gap:14px;align-items:flex-start;padding:15px 0;border-top:1px solid var(--line);cursor:pointer;font-size:1rem}.check-row input{width:20px;height:20px;accent-color:var(--primary);flex-shrink:0;margin-top:4px}.check-row:has(input:checked){color:var(--primary)}.check-summary{padding:30px;background:var(--tint);border-radius:12px;align-self:start;position:sticky;top:20px}.check-summary h2{font-size:2.5rem;margin:20px 0 4px}.check-summary small{font-size:.9375rem;font-weight:400}.check-summary progress{width:100%;height:10px;accent-color:var(--primary);border:0;display:block;margin:15px 0 22px;border-radius:5px;overflow:hidden}.check-summary progress::-webkit-progress-bar{background:#dce2f0}.check-summary progress::-webkit-progress-value{background:var(--primary)}.check-summary .button{width:100%}.check-summary .subtle{margin-top:17px}.check-summary>a{font-size:.875rem;color:var(--primary)}.help-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.help-card{border:1px solid var(--line);border-radius:10px;background:white;padding:27px}.help-card h2{font-size:1.4rem;margin:20px 0 15px}.help-card p{color:var(--muted)}.info-box{padding:30px;background:var(--tint);margin-top:35px;border-radius:10px}.info-box h2{font-size:1.3rem}.info-box p{margin:0}.simple-article{max-width:800px}.simple-article h2{margin-top:30px}.simple-article p,.simple-article li{color:var(--muted)}.simple-article li{margin:12px 0}@media(min-width:1500px){.welcome{padding-top:55px}}@media(max-width:1250px){main{padding-left:35px;padding-right:35px}header{padding-left:35px;padding-right:35px}.topline{padding-left:35px;padding-right:35px}}@media(max-width:900px){header{gap:20px}nav{gap:15px}nav a{font-size:.8125rem}.nav-help{padding:8px 10px}.nav-help span{margin-left:5px}.journey,.next-step{padding:25px}.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-layout{grid-template-columns:minmax(0,1fr) 230px;gap:30px}.article-layout h1{font-size:2.2rem}.faq{gap:35px}.trust-strip{padding:23px 5px}.check-layout{grid-template-columns:1.4fr 1fr;gap:20px}}@media(max-width:700px){.topline{padding:7px 20px;font-size:.75rem}.topline span:last-child{display:none}header{padding:18px 20px 15px;flex-wrap:wrap;gap:19px}.brand{font-size:1.3rem}nav{width:100%;gap:18px;justify-content:space-between;overflow-x:auto;padding:0 0 5px}nav a{white-space:nowrap;font-size:.8125rem}.nav-help{border:0;padding:0;background:none}.nav-help span{display:none}main{padding:0 20px 42px}.welcome{padding:30px 0 24px}h1{font-size:2.25rem}.welcome>p{font-size:1rem}.workspace{grid-template-columns:1fr}.journey,.next-step{padding:25px 22px}.journey h2{font-size:1.3rem}.journey>p{font-size:.875rem}.stage{padding:13px 12px;font-size:.875rem}.next-step h2{margin-top:27px;font-size:1.8rem;max-width:250px}.next-step p{max-width:100%}.next-step .button{max-width:100%;margin-top:8px}.trust-strip{flex-wrap:wrap;justify-content:flex-start;gap:12px 25px;padding:20px 4px;font-size:.8125rem}.trust-strip b{font-size:1rem}.section{margin-top:40px}.section-heading{align-items:flex-start;flex-direction:column;gap:10px}.section h2{font-size:1.6rem}.guide-grid{grid-template-columns:1fr}.guide-card{padding:23px}.guide-card h3{margin-top:16px;font-size:1.25rem}.guide-card p{margin-bottom:18px}.bottom-banner{padding:28px;flex-direction:column;align-items:flex-start;margin-top:38px;gap:23px}.bottom-banner h2{font-size:1.85rem}.bottom-banner .button{width:100%}.faq{grid-template-columns:1fr;gap:15px}.faq h2 br{display:none}footer{grid-template-columns:1fr 1fr;gap:25px;padding:30px 20px}footer>div:first-child{grid-column:1/-1}.page-intro{padding-top:32px}.article-layout{grid-template-columns:1fr;gap:25px}.article-aside{position:static;order:2}.article-layout h1{font-size:2.2rem}.breadcrumb{margin-top:25px;font-size:.75rem}.article-section p{font-size:1rem}.check-layout{grid-template-columns:1fr}.check-summary{position:static}.help-grid{grid-template-columns:1fr}.check-group{padding:20px}.eyebrow,.section-label{font-size:.75rem}.simple-article{overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{body{background:white;color:black}header,footer,.topline,.skip,.check-summary .button,nav{display:none}main{max-width:100%;padding:0}.page-intro{padding:0}.check-layout{display:block}.check-summary{position:static;background:white;padding:10px 0}.check-group{break-inside:avoid;margin-bottom:10px;padding:15px}.page-intro h1{font-size:24pt}.check-row{padding:8px 0}a{color:black}.article-aside{display:none}.article-layout{display:block}}
.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:5;display:flex;align-items:center;gap:18px;background:#187542;color:white;border-radius:28px;padding:12px 22px;text-decoration:none;font-size:.9375rem;font-weight:700;box-shadow:0 5px 20px #142c3828}.whatsapp-float:hover,.whatsapp-button:hover{background:#125b33}.contact-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:30px;margin-top:15px}.contact-card{padding:32px;border:1px solid var(--line);background:white;border-radius:12px}.contact-card h2{font-size:1.5rem}.contact-card form{display:flex;flex-direction:column;gap:10px}.contact-card label{font-weight:600;margin-top:10px}.contact-card label span{font-weight:400;font-size:.875rem;color:var(--muted)}.contact-card input,.contact-card select,.contact-card textarea{width:100%;border:1px solid #a9afc2;border-radius:7px;padding:12px;font:inherit;background:#fff;color:var(--ink)}.contact-card textarea{resize:vertical;min-height:145px}.contact-card form .button{align-self:flex-start}.contact-aside{background:var(--tint);padding:32px;border-radius:12px;align-self:start}.contact-aside h2{font-size:1.7rem;line-height:1.2;margin:20px 0}.contact-aside p{color:var(--muted)}.contact-number{display:block;font-size:1.4rem;font-weight:700;color:var(--primary);margin:20px 0}.whatsapp-button{background:#187542;color:white}.contact-aside .subtle{margin-top:20px}.contact-aside>a:last-child{font-size:.875rem}.contact-card #contact-result{border-top:1px solid var(--line);margin-top:25px;padding-top:25px}.contact-card pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.9375rem;padding:18px;background:var(--tint);border-radius:8px}.contact-card #contact-result:focus{outline:2px solid var(--primary);outline-offset:6px}.contact-card .subtle{margin:5px 0 10px}@media(max-width:700px){.contact-layout{grid-template-columns:1fr}.contact-card,.contact-aside{padding:22px}.whatsapp-float{right:14px;bottom:14px;padding:10px 18px;font-size:.875rem}footer{padding-bottom:85px}nav{gap:14px}}@media print{.whatsapp-float{display:none}}
.contact-email-address{display:block;color:var(--primary);font-weight:600;overflow-wrap:anywhere;margin:18px 0}.contact-card #contact-result .button{margin:6px 4px 6px 0}
.senegal-entry{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:24px 28px;margin:0 0 28px;background:var(--tint);border-left:4px solid var(--primary);border-radius:7px}.senegal-entry h2{font-size:1.35rem;line-height:1.3;margin:7px 0}.senegal-entry p{font-size:.9375rem;color:var(--muted);margin:0}.senegal-entry .button{flex-shrink:0}.senegal-intro{padding-top:0}.senegal-help{border-top:1px solid var(--line);margin-top:23px;padding-top:20px}.senegal-help h2{font-size:1.2rem;line-height:1.3}.senegal-help p{font-size:.875rem;color:var(--muted)}.senegal-help .button{font-size:.875rem;padding:12px;gap:8px;width:100%;margin-bottom:15px}.article-section li{margin:10px 0}.article-section ul{padding-left:24px}nav{gap:20px}@media(max-width:900px){header{flex-wrap:wrap}nav{flex-wrap:wrap}.senegal-entry{align-items:flex-start;flex-direction:column}.senegal-entry .button{width:100%}}@media(max-width:700px){nav{gap:10px 18px;justify-content:flex-start;overflow:visible}nav a{font-size:.875rem}.senegal-entry{padding:22px}.senegal-intro h1{font-size:2.1rem}}
.refusal-support{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:30px;border:1px solid var(--line);border-radius:12px;background:white;margin-top:28px;padding:28px 32px}.refusal-support h2{font-size:1.6rem;line-height:1.2;margin:10px 0}.refusal-support p{font-size:.9375rem;color:var(--muted);margin:0}.refusal-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px}.refusal-note{padding:16px;background:var(--tint);border-left:3px solid var(--primary);border-radius:5px;font-size:.875rem}.refusal-note p{margin:6px 0 0}.info-box .refusal-actions{margin-top:22px}@media(max-width:700px){.refusal-support{grid-template-columns:1fr;padding:22px;gap:20px}.refusal-actions .button{width:100%;gap:12px}}
.welcome-photos{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:38px}.welcome-copy>p{color:var(--muted);font-size:1.0625rem;margin:0;max-width:650px}.family-photo,.dakar-photo,.contact-photo{margin:0;min-width:0}.family-photo img{display:block;width:100%;height:auto;border-radius:12px;aspect-ratio:3/2;object-fit:cover}.family-photo figcaption,.dakar-photo figcaption,.contact-photo figcaption{font-size:.75rem;color:var(--muted);margin-top:6px}.dakar-photo{margin:5px 0 32px}.dakar-photo img{width:100%;height:300px;object-fit:cover;object-position:50% 70%;border-radius:12px;display:block}.photo-credits{margin-top:35px;padding-top:12px;border-top:1px solid var(--line)}@media(max-width:900px){.welcome-photos{gap:25px;grid-template-columns:1.15fr 1fr}.welcome-photos h1{font-size:2.4rem}}@media(max-width:700px){.welcome-photos{grid-template-columns:1fr;gap:23px}.welcome-photos h1{font-size:2.25rem}.family-photo img{max-height:245px;object-position:50% 40%}.dakar-photo img{height:220px}}
.contact-photo{margin:0 0 25px}.contact-photo img{width:100%;height:230px;object-fit:cover;object-position:center 45%;display:block;border-radius:8px}
.related-guides{margin:32px 0;padding:23px;border:1px solid var(--line);border-radius:9px}.related-guides h2{font-size:1.2rem;margin-bottom:12px}.related-guides ul{padding-left:22px;margin:0}.related-guides li{margin:9px 0}.related-guides a{color:var(--primary)}.breadcrumb{overflow-wrap:anywhere}

/* Important additions: orientation and extended journey. */
.orientation-banner{display:flex;gap:28px;align-items:center;justify-content:space-between;padding:28px 32px;border-radius:12px;background:#edf3ff;border:1px solid #cedbf1;margin:0 0 24px}.orientation-banner h2{font-size:1.5rem;margin:9px 0}.orientation-banner p{margin:0;max-width:660px}.orientation-banner .button{flex-shrink:0}.next-step{align-self:stretch}.next-step .text-link{display:block;margin-top:18px}.stage-buttons{max-height:450px;overflow-y:auto;padding:3px 5px 3px 3px;scrollbar-color:#17449b #edf3ff}.stage{min-height:52px;flex-shrink:0}.contact-card input[type=date]{font:inherit;width:100%}.contact-card select{max-width:100%}select:focus-visible,textarea:focus-visible{outline:3px solid #17449b;outline-offset:3px}@media(max-width:760px){.orientation-banner{flex-direction:column;align-items:stretch;padding:24px}.orientation-banner .button{white-space:normal}.stage-buttons{max-height:none}.next-step{padding:26px}.nav-help{white-space:normal}}
