/*
Theme Name: Ambassade Sénégal Mali Premium V4.10
Theme URI: https://www.ambasenmali.org/
Author: Visual Informatique
Description: Thème institutionnel premium pour l'Ambassade du Sénégal au Mali. Version V4.3 : contenus enrichis des menus et sous-menus, pages consulaires complètes, photo officielle de l’Ambassadeur et pages administrables.
Version: 4.11.0
Requires at least: 5.8
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: asm-premium
*/
:root{--green:#004d26;--green2:#0b6a3a;--gold:#e3b23c;--red:#e31b23;--dark:#123023;--light:#f6f8f5;--muted:#66756d;--white:#fff;--shadow:0 18px 40px rgba(0,0,0,.12);--radius:18px}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;color:#233;background:#fff;line-height:1.6}.asm-container{width:min(1180px,92%);margin:auto}a{text-decoration:none;color:inherit}.top-building{width:100%;background:#fff}.top-building img{display:block;width:100%;height:auto}.site-nav{background:var(--green);position:sticky;top:0;z-index:1000;box-shadow:0 6px 20px rgba(0,0,0,.18)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:58px}.brand-mini{color:#fff;font-weight:800;letter-spacing:.3px}.menu-toggle{display:none;background:var(--gold);border:0;padding:10px 14px;border-radius:8px;font-weight:700}.primary-menu,.primary-menu ul{margin:0;padding:0;list-style:none}.primary-menu{display:flex;gap:2px}.primary-menu li{position:relative}.primary-menu a{display:block;padding:18px 14px;color:#fff;font-size:14px;font-weight:700}.primary-menu li:hover>a,.primary-menu .current-menu-item>a{background:rgba(255,255,255,.12);color:#fff}.primary-menu ul{display:none;position:absolute;left:0;top:100%;background:#fff;min-width:250px;box-shadow:var(--shadow);border-top:4px solid var(--gold)}.primary-menu li:hover>ul{display:block}.primary-menu ul a{color:#183828;padding:12px 16px;border-bottom:1px solid #edf0ee}.primary-menu ul li:hover>a{background:#f7faf7;color:var(--green)}.primary-menu ul ul{left:100%;top:0}.asm-slider{position:relative;height:520px;overflow:hidden;background:#111}.asm-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.1s ease-in-out}.asm-slide.active{opacity:1;z-index:2}.asm-slide img{width:100%;height:100%;object-fit:cover}.asm-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.2),rgba(0,0,0,.1))}.slide-caption{position:absolute;z-index:5;left:8%;bottom:70px;max-width:720px;color:white}.slide-caption .kicker{display:inline-block;background:var(--gold);color:#102b1b;padding:7px 12px;border-radius:40px;font-weight:800;margin-bottom:14px}.slide-caption h1{font-size:42px;line-height:1.12;margin:0 0 12px}.slide-caption p{font-size:18px;margin:0 0 22px}.slider-arrows button{position:absolute;top:50%;transform:translateY(-50%);z-index:8;border:0;border-radius:50%;width:46px;height:46px;background:rgba(255,255,255,.88);font-size:26px;cursor:pointer}.prev{left:20px}.next{right:20px}.dots{position:absolute;bottom:24px;left:0;right:0;text-align:center;z-index:8}.dots button{width:11px;height:11px;border-radius:50%;border:0;margin:0 5px;background:rgba(255,255,255,.55);cursor:pointer}.dots button.active{background:var(--gold);width:28px;border-radius:20px}.btn{display:inline-block;background:var(--gold);color:#16331f;padding:12px 20px;border-radius:40px;font-weight:800}.section{padding:70px 0}.section-title{text-align:center;margin-bottom:35px}.section-title span{color:var(--gold);font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:13px}.section-title h2{font-size:34px;margin:8px 0;color:var(--green)}.page-hero{background:linear-gradient(135deg,var(--green),#0d7340);color:#fff;padding:70px 0}.page-hero h1{margin:0;font-size:42px}.breadcrumbs{font-size:14px;opacity:.85}.content-card{background:#fff;margin-top:-35px;border-radius:var(--radius);box-shadow:var(--shadow);padding:35px}.print-btn{border:0;background:var(--green);color:#fff;padding:11px 18px;border-radius:8px;cursor:pointer;font-weight:700}.service-grid,.page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid #edf0ee;border-radius:var(--radius);box-shadow:0 10px 26px rgba(0,0,0,.06);overflow:hidden}.card-body{padding:24px}.card h3{margin-top:0;color:var(--green)}.footer{background:#092b19;color:#e8f4ed;padding:45px 0 18px;margin-top:60px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.footer a{color:#e8f4ed}.copyright{border-top:1px solid rgba(255,255,255,.15);margin-top:25px;padding-top:18px;text-align:center;color:#bfd1c6}@media(max-width:900px){.menu-toggle{display:block}.primary-menu{display:none;position:absolute;left:0;right:0;top:58px;background:var(--green);flex-direction:column}.primary-menu.open{display:flex}.primary-menu ul{position:static;display:block;background:#0a5b32;box-shadow:none;border:0}.primary-menu ul a{color:#fff;border-color:rgba(255,255,255,.1)}.asm-slider{height:420px}.slide-caption{left:5%;right:5%;bottom:55px}.slide-caption h1{font-size:28px}.service-grid,.page-grid,.footer-grid{grid-template-columns:1fr}.content-card{padding:24px}}@media print{.site-nav,.footer,.print-btn,.slider-arrows,.dots{display:none!important}.content-card{box-shadow:none;margin:0}.page-hero{color:#000;background:#fff;padding:20px 0}}

/* V4.2 - Pages intérieures et menus améliorés */
.asm-page-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center;margin-bottom:30px}.page-photo{width:100%;border-radius:18px;box-shadow:var(--shadow);display:block}.info-box{background:#f7faf7;border-left:5px solid var(--gold);padding:18px 20px;border-radius:12px;margin:20px 0;color:#203b2b}.download-box{background:#fff8e6;border:1px solid #f0dfaa;padding:22px;border-radius:16px;margin:24px 0}.quick-links{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0}.quick-links a{background:var(--green);color:#fff;padding:12px 18px;border-radius:40px;font-weight:800;box-shadow:0 8px 18px rgba(0,77,38,.16)}.quick-links a:hover{background:var(--gold);color:#14301f}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:25px 0}.steps>div{background:#f8fbf9;border:1px solid #e8efea;border-radius:16px;padding:20px}.steps strong{display:inline-flex;width:38px;height:38px;align-items:center;justify-content:center;background:var(--green);color:#fff;border-radius:50%;margin-bottom:10px}.content-card h2{color:var(--green);font-size:30px;margin-top:0}.content-card h3{color:var(--green)}.content-card p{font-size:16px}.menu-note{font-size:13px;color:var(--muted);margin-top:15px}@media(max-width:900px){.asm-page-layout,.steps{grid-template-columns:1fr}}


/* V4.3 - Enrichissement des contenus menus et sous-menus */
.ambassador-card{display:grid;grid-template-columns:.82fr 1.18fr;gap:32px;align-items:center;background:linear-gradient(135deg,#f8fbf9,#fff);border:1px solid #e8efea;border-radius:22px;padding:26px;box-shadow:0 14px 34px rgba(0,0,0,.07);margin-bottom:30px}.ambassador-card img{width:100%;border-radius:20px;box-shadow:var(--shadow)}.badge-line{display:inline-block;background:var(--gold);color:#16331f;font-weight:900;border-radius:40px;padding:7px 13px;margin-bottom:12px}.mission-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:22px 0}.mission-list div{background:#f7faf7;border:1px solid #e7efe9;border-radius:16px;padding:18px}.mission-list h4{margin:0 0 7px;color:var(--green)}.doc-list{display:grid;gap:12px;margin:22px 0}.doc-item{display:flex;justify-content:space-between;gap:16px;align-items:center;background:#fff;border:1px solid #e8efea;border-left:5px solid var(--gold);border-radius:14px;padding:15px 18px}.doc-item span{font-weight:800;color:var(--green)}.doc-item em{font-style:normal;color:var(--muted);font-size:14px}.premium-banner{background:linear-gradient(135deg,var(--green),#0b6a3a);color:white;border-radius:22px;padding:28px;margin:26px 0}.premium-banner h3{color:white;margin-top:0}.icon-card:before{content:attr(data-icon);display:inline-flex;width:46px;height:46px;align-items:center;justify-content:center;background:#fff6dc;color:#654800;border-radius:14px;margin-bottom:10px;font-size:24px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px}.alert-soft{background:#fff8e6;border:1px solid #efd987;border-radius:16px;padding:18px;margin:20px 0}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:24px 0}.contact-grid div{background:#f8fbf9;border:1px solid #e8efea;border-radius:16px;padding:20px}.admin-note{background:#eef8f1;border:1px dashed var(--green);border-radius:16px;padding:18px;margin-top:24px;color:#244430}.page-photo-small{max-height:420px;object-fit:cover}@media(max-width:900px){.ambassador-card,.mission-list,.two-col,.contact-grid{grid-template-columns:1fr}.doc-item{align-items:flex-start;flex-direction:column}}


/* V4.4 - Page interne L’Ambassadeur enrichie */
.lead-text{font-size:18px;color:var(--green)}.ambassador-message{position:relative;background:#fbfdfb;border:1px solid #e5eee8;border-radius:22px;padding:34px;margin:32px 0;box-shadow:0 10px 28px rgba(0,0,0,.05)}.ambassador-message:before{content:"“";position:absolute;right:28px;top:-12px;font-family:Georgia,serif;font-size:110px;line-height:1;color:rgba(227,178,60,.22)}.section-kicker{display:inline-block;color:var(--gold);text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:900;margin-bottom:6px}.section-kicker.light{color:#ffe19a}.signature-block{border-top:1px solid #dfe9e2;margin-top:24px;padding-top:18px;display:flex;flex-direction:column;color:var(--green)}.signature-block span{font-size:14px;color:var(--muted);margin-top:4px}.priority-grid{grid-template-columns:repeat(2,1fr);margin-bottom:30px}.bilateral-banner{position:relative;overflow:hidden}.bilateral-banner:after{content:"🇸🇳  🇲🇱";position:absolute;right:28px;bottom:8px;font-size:42px;opacity:.25}.activity-placeholder{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:24px 0}.activity-placeholder>div{position:relative;background:#f8fbf9;border:1px solid #e5eee8;border-radius:18px;padding:22px}.activity-placeholder span{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:50%;background:var(--gold);color:#153521;font-weight:900}.activity-placeholder h4{color:var(--green);font-size:18px;margin:14px 0 6px}.doc-action{background:var(--green);color:#fff;padding:9px 15px;border-radius:30px;font-weight:800;white-space:nowrap}.ambassador-gallery{display:flex;gap:18px;overflow-x:auto;padding:4px 2px 18px;scroll-snap-type:x mandatory}.ambassador-gallery figure{margin:0;min-width:300px;scroll-snap-align:start;background:#fff;border:1px solid #e5eee8;border-radius:18px;overflow:hidden;box-shadow:0 10px 24px rgba(0,0,0,.06)}.ambassador-gallery img{width:100%;height:200px;object-fit:cover;display:block}.ambassador-gallery figcaption{padding:14px 16px;font-weight:800;color:var(--green)}.orientation-panel{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;background:linear-gradient(135deg,#073d22,var(--green2));color:#fff;border-radius:24px;padding:30px;margin-top:34px}.orientation-panel h3{color:#fff;margin:4px 0}.orientation-panel p{margin-bottom:0}.orientation-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.orientation-actions a{background:#fff;color:var(--green);padding:11px 16px;border-radius:30px;font-weight:900}.orientation-actions a:first-child{background:var(--gold);color:#16331f}@media(max-width:900px){.priority-grid,.activity-placeholder,.orientation-panel{grid-template-columns:1fr}.orientation-actions{justify-content:flex-start}.ambassador-message{padding:24px}.ambassador-gallery figure{min-width:260px}}


/* V4.5 - Page interne État civil */
.civil-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:30px;align-items:center;background:linear-gradient(135deg,#f7fbf8,#fff);border:1px solid #e5eee8;border-radius:22px;padding:26px;margin-bottom:24px}.civil-steps h4{color:var(--green);margin:2px 0 6px}.civil-services{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:24px 0 32px}.civil-services details{border:1px solid #e3ece6;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 8px 20px rgba(0,0,0,.04)}.civil-services summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:12px;padding:17px 18px;font-weight:900;color:var(--green)}.civil-services summary::-webkit-details-marker{display:none}.civil-services summary:after{content:"+";margin-left:auto;width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#eef7f1;color:var(--green);font-size:20px}.civil-services details[open] summary:after{content:"−";background:var(--gold);color:#17331f}.civil-services summary span{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;background:var(--green);color:#fff;border-radius:50%;font-size:12px}.civil-services details>div{padding:0 18px 18px;border-top:1px solid #eef2ef}.procedure-note{background:#f8fbf9;border-left:4px solid var(--gold);padding:12px 14px;border-radius:10px;color:#385143}.civil-documents{background:#fbfdfb;border:1px solid #e5eee8;border-radius:22px;padding:28px;margin:28px 0}.civil-orientation{margin-top:28px}@media(max-width:900px){.civil-hero,.civil-services{grid-template-columns:1fr}.civil-hero{padding:20px}.civil-documents{padding:20px}}

/* V4.6 - État civil conforme au site officiel, avec sous-pages détaillées */
.civil-index-intro{display:flex;justify-content:space-between;gap:30px;align-items:center;background:linear-gradient(135deg,#f4faf6,#fff);border:1px solid #dfece3;border-radius:24px;padding:30px;margin-bottom:28px}.civil-index-intro h2{margin:4px 0 10px}.civil-index-badge{min-width:150px;text-align:center;background:var(--green);color:#fff;border-radius:20px;padding:20px}.civil-index-badge strong{display:block;font-size:42px;color:var(--gold);line-height:1}.civil-index-badge span{font-size:13px}.civil-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.civil-service-card{display:flex;gap:18px;padding:22px;border:1px solid #e0ebe3;border-radius:20px;background:#fff;text-decoration:none;color:inherit;box-shadow:0 10px 28px rgba(0,0,0,.045);transition:.25s}.civil-service-card:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 18px 36px rgba(0,0,0,.08)}.civil-service-card h3{margin:0 0 7px;color:var(--green);font-size:19px}.civil-service-card p{margin:0 0 10px;color:#52645a}.civil-service-card strong{color:#a37400;font-size:13px}.civil-number{flex:0 0 46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--green);color:#fff;font-weight:900}.civil-detail-hero{background:linear-gradient(135deg,var(--green),#0b6941);color:#fff;border-radius:24px;padding:32px;margin-bottom:26px}.civil-detail-hero h2{color:#fff;margin:5px 0 8px}.civil-detail-hero p{margin:0;max-width:760px;color:#eef8f1}.civil-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start}.requirements-list{list-style:none;padding:0;margin:18px 0}.requirements-list li{position:relative;padding:15px 18px 15px 48px;margin-bottom:10px;background:#f8fbf9;border:1px solid #e4ece7;border-radius:14px}.requirements-list li:before{content:'✓';position:absolute;left:16px;top:14px;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--green);color:#fff;font-weight:900}.requirement-group{border:1px solid #e3ece6;border-radius:18px;padding:18px;margin:16px 0}.requirement-group h4{margin:0;color:var(--green)}.official-notice{background:#fff8e3;border-left:5px solid var(--gold);border-radius:14px;padding:17px 18px;margin:22px 0}.official-notice p{margin:7px 0 0}.civil-side-card{position:sticky;top:110px;background:#f7fbf8;border:1px solid #dfeae2;border-radius:20px;padding:22px}.civil-side-card h3{margin-top:0}.civil-primary-btn,.civil-secondary-btn{display:block;text-align:center;text-decoration:none;border-radius:12px;padding:12px 14px;margin-top:10px;font-weight:800}.civil-primary-btn{background:var(--green);color:#fff}.civil-secondary-btn{background:#fff;color:var(--green);border:1px solid #cfded3}@media(max-width:900px){.civil-index-intro{align-items:flex-start}.civil-service-grid,.civil-detail-layout{grid-template-columns:1fr}.civil-side-card{position:static}}@media(max-width:620px){.civil-index-intro{flex-direction:column}.civil-index-badge{width:100%}.civil-service-card{padding:17px}.civil-number{flex-basis:40px;height:40px}}

/* V4.7 - Correctif d’affichage forcé de la rubrique État civil */
.civil-content-card{padding:34px}.civil-content-card>.print-btn{float:right;margin-bottom:12px}.civil-content-card .page-content{clear:both}@media(max-width:620px){.civil-content-card{padding:20px}.civil-content-card>.print-btn{float:none}}

/* V4.8 - Immatriculation consulaire complète */
.immatriculation-hero{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:30px;align-items:center;background:linear-gradient(135deg,#f4faf6,#fff);border:1px solid #dfece3;border-radius:24px;padding:32px;margin-bottom:28px}.immatriculation-hero h2{margin:4px 0 10px}.immatriculation-badge{text-align:center;background:var(--green);color:#fff;border-radius:22px;padding:24px 18px}.immatriculation-badge strong{display:block;font-size:48px;color:var(--gold);line-height:1}.immatriculation-badge span{font-size:13px}.immatriculation-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.immatriculation-actions a{display:inline-block;margin:0}.immatriculation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:26px 0}.immatriculation-card{display:flex;gap:18px;padding:24px;border:1px solid #e0ebe3;border-radius:20px;background:#fff;text-decoration:none;color:inherit;box-shadow:0 10px 28px rgba(0,0,0,.045);transition:.25s}.immatriculation-card:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 18px 36px rgba(0,0,0,.08)}.immatriculation-card h3{margin:0 0 8px;color:var(--green)}.immatriculation-card p{margin:0 0 10px;color:#52645a}.immatriculation-card strong{color:#a37400;font-size:13px}.immatriculation-icon{flex:0 0 48px;height:48px;border-radius:15px;display:flex;align-items:center;justify-content:center;background:#eef7f1;font-size:24px}.loss-card{grid-column:1/-1;background:#fffaf0;border-color:#eedca2}.loss-card ul{margin:8px 0 0;padding-left:20px}.immatriculation-process{background:#f8fbf9;border:1px solid #e3ece6;border-radius:22px;padding:28px;margin:28px 0}.immatriculation-process .steps{grid-template-columns:repeat(4,1fr)}@media(max-width:900px){.immatriculation-hero,.immatriculation-grid{grid-template-columns:1fr}.immatriculation-badge{width:100%}.loss-card{grid-column:auto}.immatriculation-process .steps{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.immatriculation-hero{padding:22px}.immatriculation-card{padding:18px}.immatriculation-process .steps{grid-template-columns:1fr}}


/* V4.9 - Légalisation complète et conforme au site officiel */
.legalisation-hero{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:30px;align-items:center;background:linear-gradient(135deg,#f4faf6,#fff);border:1px solid #dfece3;border-radius:24px;padding:32px;margin-bottom:22px}.legalisation-hero h2{margin:4px 0 10px}.legalisation-badge{text-align:center;background:var(--green);color:#fff;border-radius:22px;padding:24px 18px}.legalisation-badge strong{display:block;font-size:48px;color:var(--gold);line-height:1}.legalisation-badge span{font-size:13px}.legalisation-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.legalisation-actions a{display:inline-block;margin:0}.legalisation-alert{margin-bottom:26px}.legalisation-sections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:26px 0}.legalisation-card{background:#fff;border:1px solid #e0ebe3;border-radius:22px;padding:24px;box-shadow:0 10px 28px rgba(0,0,0,.045)}.legalisation-card-head{display:flex;gap:14px;align-items:flex-start;padding-bottom:16px;border-bottom:1px solid #edf2ef}.legalisation-card-head>span{flex:0 0 44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--green);color:#fff;font-weight:900}.legalisation-card-head h3{margin:0 0 5px;color:var(--green);font-size:20px}.legalisation-card-head p{margin:0;color:#5b6d62;font-size:14px}.legalisation-card h4{margin:20px 0 8px;color:var(--green)}.legalisation-card .requirements-list li{padding-top:13px;padding-bottom:13px}.legalisation-warning{background:#fff0ef;border-left:5px solid #c82f2a;border-radius:12px;padding:15px 16px;color:#73302d;margin-top:18px}.legalisation-process{background:#f8fbf9;border:1px solid #e3ece6;border-radius:22px;padding:28px;margin:30px 0}.legalisation-process .steps{grid-template-columns:repeat(4,1fr)}@media(max-width:1050px){.legalisation-sections{grid-template-columns:1fr 1fr}.legalisation-card:last-child{grid-column:1/-1}}@media(max-width:900px){.legalisation-hero,.legalisation-sections{grid-template-columns:1fr}.legalisation-badge{width:100%}.legalisation-card:last-child{grid-column:auto}.legalisation-process .steps{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.legalisation-hero{padding:22px}.legalisation-card{padding:18px}.legalisation-process .steps{grid-template-columns:1fr}}

/* V4.10 - Carte d’identité nationale et Passeport */
.identity-hero{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:30px;align-items:center;background:linear-gradient(135deg,#f4faf6,#fff);border:1px solid #dfece3;border-radius:24px;padding:32px;margin-bottom:26px}.identity-hero h2{margin:4px 0 10px}.identity-symbol{height:150px;border-radius:24px;background:linear-gradient(135deg,var(--green),#0b6f42);display:flex;align-items:center;justify-content:center;font-size:70px;box-shadow:0 16px 32px rgba(0,77,38,.18)}.passport-hero .identity-symbol{background:linear-gradient(135deg,#0b5732,#09391f)}.identity-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.identity-actions a{display:inline-block;margin:0}.identity-info-card,.passport-official{background:#fff;border:1px solid #e0ebe3;border-radius:22px;padding:28px;box-shadow:0 10px 28px rgba(0,0,0,.045);margin:24px 0}.identity-info-card h3,.passport-official h3{margin:6px 0 12px;color:var(--green);font-size:26px}.passport-official{background:linear-gradient(135deg,#f7fbf8,#fff);border-left:6px solid var(--gold)}.passport-official p{font-size:18px}.identity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0}.identity-grid article{background:#fff;border:1px solid #e0ebe3;border-radius:20px;padding:22px;box-shadow:0 10px 28px rgba(0,0,0,.045)}.identity-grid article>span{display:flex;width:44px;height:44px;border-radius:14px;background:var(--green);color:#fff;align-items:center;justify-content:center;font-weight:900;margin-bottom:15px}.identity-grid h3{margin:0 0 8px;color:var(--green)}.identity-grid p{margin:0;color:#52645a}.identity-related{display:flex;justify-content:space-between;gap:24px;align-items:center;background:linear-gradient(135deg,var(--green),#0b6a3a);color:#fff;border-radius:22px;padding:28px;margin:28px 0}.identity-related h3{margin:4px 0 5px;color:#fff}.identity-related p{margin:0;color:#eaf7ef}.identity-related>a{background:var(--gold);color:#16331f;padding:13px 18px;border-radius:12px;font-weight:900;white-space:nowrap}.passport-notice{margin:24px 0}@media(max-width:900px){.identity-hero{grid-template-columns:1fr}.identity-symbol{height:120px}.identity-grid{grid-template-columns:1fr}.identity-related{align-items:flex-start;flex-direction:column}.identity-related>a{white-space:normal}}@media(max-width:620px){.identity-hero,.identity-info-card,.passport-official{padding:21px}.identity-symbol{font-size:56px}}


/* V4.11 - Visa d’entrée au Sénégal */
.visa-hero{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:30px;align-items:center;background:linear-gradient(135deg,#f4faf6,#fff);border:1px solid #dfece3;border-radius:24px;padding:32px;margin-bottom:22px}.visa-hero h2{margin:4px 0 10px}.visa-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.visa-actions a{display:inline-block;margin:0}.visa-delay{text-align:center;background:linear-gradient(135deg,var(--green),#0a673b);color:#fff;border-radius:22px;padding:24px 14px}.visa-delay strong{display:block;color:var(--gold);font-size:54px;line-height:1}.visa-delay span{font-size:13px}.visa-important{background:#fff1ef;border-left:6px solid #c9362f;border-radius:15px;padding:18px 20px;margin:22px 0;color:#6e302d}.visa-important p{margin:6px 0 0}.visa-procedure{background:#f8fbf9;border:1px solid #e3ece6;border-radius:22px;padding:28px;margin:28px 0}.visa-procedure h3{margin:5px 0 20px;color:var(--green)}.visa-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.visa-steps article{display:flex;gap:14px;background:#fff;border:1px solid #e1ebe4;border-radius:16px;padding:18px}.visa-steps article>span{flex:0 0 42px;height:42px;border-radius:13px;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900}.visa-steps h4{margin:0 0 5px;color:var(--green)}.visa-steps p{margin:0;color:#53655a}.visa-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:26px;align-items:start;margin:30px 0}.visa-documents,.visa-download{background:#fff;border:1px solid #e0ebe3;border-radius:22px;padding:28px;box-shadow:0 10px 28px rgba(0,0,0,.045)}.visa-documents h3,.visa-download h3{margin:5px 0 14px;color:var(--green)}.visa-download{position:sticky;top:110px;background:linear-gradient(135deg,#f7fbf8,#fff)}.visa-file-icon{display:flex;width:64px;height:64px;border-radius:18px;background:#b82d28;color:#fff;align-items:center;justify-content:center;font-weight:900;letter-spacing:.5px;margin-bottom:18px}.visa-download a{margin-top:10px}@media(max-width:900px){.visa-hero,.visa-layout{grid-template-columns:1fr}.visa-delay{width:100%}.visa-download{position:static}.visa-steps{grid-template-columns:1fr}}@media(max-width:620px){.visa-hero,.visa-procedure,.visa-documents,.visa-download{padding:21px}.visa-steps article{padding:15px}}
