
/* SOCIMEX — final QA: shared header/footer and safe, legible layouts. */
*,*::before,*::after{box-sizing:border-box}
html{overflow-x:clip;scroll-padding-top:92px}
body{overflow-x:clip}
img,video,svg{max-width:100%}
img{height:auto}img.object-cover{height:100%}
[id]{scroll-margin-top:100px}
.socimex-site-header{isolation:isolate}
.socimex-site-header .socimex-language-badge{cursor:default;user-select:none}
.socimex-language-badge .socimex-country-flag{color:#4338ca}
.socimex-unified-footer{background:#0c2340!important;color:#fff!important;position:relative;overflow:hidden;border-top:1px solid rgba(148,163,184,.22);font-family:inherit}
.socimex-unified-footer:before{content:"";position:absolute;pointer-events:none;right:-10%;top:-80px;width:430px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(74,74,225,.12),transparent 68%)}
.socimex-unified-footer>div{position:relative}
.socimex-footer-brand{display:flex;align-items:center;gap:12px;color:white!important;text-decoration:none}
.socimex-footer-brand img{width:58px;height:58px;object-fit:contain;border-radius:12px;background:white;padding:3px}
.socimex-footer-brand strong{display:block;font-size:21px;letter-spacing:-.03em;font-weight:850;line-height:1.1}
.socimex-footer-brand small{display:block;font-size:11px;letter-spacing:.04em;color:#c4b5fd;margin-top:4px}
.socimex-footer-blurb{font-size:13px;color:#cbd5e1;line-height:1.85;margin:18px 0 12px;max-width:360px}
.socimex-footer-address{font-size:12px;color:#cbd5e1;line-height:1.8;max-width:380px}
.socimex-footer-address i{color:#a5b4fc;margin-right:7px}
.socimex-footer-title{text-transform:uppercase;letter-spacing:.09em;font-size:11px!important;font-weight:850;color:white!important;margin-bottom:22px}
.socimex-footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:11px}
.socimex-footer-links a{color:#cbd5e1!important;text-decoration:none;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.socimex-footer-links a:hover{color:#fff!important}
.socimex-footer-small,.socimex-footer-hours{font-size:12px;line-height:1.75;color:#cbd5e1;margin:0 0 14px}
.socimex-footer-phone{display:flex;align-items:center;gap:8px;color:#fff!important;font-size:12px;font-weight:750;text-decoration:none;line-height:1.5;margin-bottom:10px}
.socimex-footer-phone i{color:#86efac;font-size:17px}
.socimex-footer-cta{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(115deg,#2563eb,#7c3aed);border-radius:12px;padding:12px 15px;color:white!important;font-size:11px;font-weight:800;text-decoration:none}
.socimex-footer-bottom{border-top:1px solid rgba(148,163,184,.25);padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;color:#94a3b8;font-size:11px}
.socimex-footer-bottom a{color:#e2e8f0!important;text-decoration:none;font-weight:700}
.socimex-location-card{min-height:295px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);background:#f8fafc}
.socimex-location-art{min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:radial-gradient(ellipse at 20% 20%,#c7d2fe,#ede9fe 55%,#dbeafe);color:#4338ca}
.socimex-location-art i{font-size:54px;filter:drop-shadow(0 12px 18px rgba(67,56,202,.25))}
.socimex-location-art span{font-size:12px;letter-spacing:.12em;font-weight:850}
.socimex-location-body{display:flex;flex-direction:column;justify-content:center;padding:36px;min-width:0}
.socimex-location-eyebrow{font-size:10px;color:#4338ca;font-weight:850;letter-spacing:.13em}
.socimex-location-body h3{font-size:25px;color:#0f172a;font-weight:850;line-height:1.2;margin:10px 0}
.socimex-location-body p:not(.socimex-location-eyebrow){font-size:13px;line-height:1.85;color:#475569;margin-bottom:18px}
.socimex-location-body a{color:#1d4ed8;font-size:13px;font-weight:800;text-decoration:none}
/* Avoid giant imported-template headings and overlaid text being cropped. */
h1,h2,h3,h4,p,a,li{overflow-wrap:break-word}
.huge-watermark{pointer-events:none;user-select:none}
section{min-width:0}section .grid>*{min-width:0}
[data-purpose="hero"] .relative.z-10{isolation:isolate}
.socimex-site-header .socimex-header-inner{min-width:0}
@media(max-width:1023px){.socimex-unified-footer .grid{row-gap:30px}.socimex-site-header{z-index:200}.socimex-footer-bottom{align-items:flex-start}}
@media(max-width:650px){.socimex-location-card{grid-template-columns:1fr}.socimex-location-art{min-height:160px}.socimex-location-body{padding:25px}.socimex-location-body h3{font-size:21px}.socimex-footer-bottom{flex-direction:column;align-items:flex-start}.socimex-unified-footer{padding-top:44px;padding-bottom:22px}.socimex-footer-blurb{max-width:unset}}
@media(prefers-reduced-motion:reduce){.socimex-unified-footer a:hover{transform:none}}

/* A visible hamburger even when icon fonts load slowly. */
.socimex-mobile-glyph{width:19px;height:18px;display:block;position:relative}
.socimex-mobile-glyph span,.socimex-mobile-glyph::before,.socimex-mobile-glyph::after{content:"";position:absolute;left:0;display:block;width:19px;height:2px;border-radius:9px;background:#14213b;transition:transform .22s ease,top .22s ease,opacity .15s ease}
.socimex-mobile-glyph::before{top:2px}.socimex-mobile-glyph span{top:8px}.socimex-mobile-glyph::after{top:14px}
.socimex-mobile-toggle.is-open .socimex-mobile-glyph::before{top:8px;transform:rotate(45deg)}
.socimex-mobile-toggle.is-open .socimex-mobile-glyph span{opacity:0}
.socimex-mobile-toggle.is-open .socimex-mobile-glyph::after{top:8px;transform:rotate(-45deg)}
@media(max-width:767px){
 .socimex-whatsapp-float{height:42px!important;width:42px!important;bottom:9px!important;right:9px!important;font-size:18px!important;z-index:80!important;box-shadow:0 5px 18px rgba(0,0,0,.15)!important}
 /* The home hero trust line should not run behind the persistent WA shortcut. */
 [data-purpose="hero"] .pt-6.border-t .ml-auto{margin-left:0!important;max-width:calc(100% - 54px);font-size:11px}
 [data-purpose="hero"] .pt-6.border-t{padding-bottom:10px}
}

.socimex-notfound{background:linear-gradient(130deg,#101b38,#0c2340);color:white;min-height:56vh;display:flex;align-items:center;justify-content:center;padding:72px 24px;text-align:center}
.socimex-notfound-box{max-width:690px}.socimex-notfound-code{font-size:110px;font-weight:900;line-height:1;color:#a5b4fc;letter-spacing:-.07em}
.socimex-notfound h1{font-size:clamp(28px,4vw,46px);font-weight:850;margin:16px 0}.socimex-notfound p{font-size:15px;line-height:1.8;color:#cbd5e1;margin:0 auto 25px}
.socimex-notfound-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px}.socimex-notfound-actions a{border-radius:12px;padding:13px 22px;background:#fff;color:#1e3a8a;text-decoration:none;font-size:13px;font-weight:800}.socimex-notfound-actions a+ a{background:#7c3aed;color:white}
@media(max-width:500px){.socimex-notfound-code{font-size:80px}.socimex-notfound{padding:60px 20px;min-height:50vh}}

/* SOCIMEX — correctifs identité / coordonnées */
.socimex-footer-brand .socimex-footer-logo-mark{width:64px;height:64px;display:grid;place-items:center;flex:0 0 64px;background:#fff;border-radius:16px;padding:5px;box-shadow:0 10px 30px rgba(0,0,0,.16)}
.socimex-footer-brand .socimex-footer-logo-mark img{width:100%;height:100%;object-fit:contain;display:block;background:transparent;padding:0;border-radius:0}
.socimex-footer-address{display:flex;align-items:flex-start;gap:10px}
.socimex-footer-address i{margin-top:4px;margin-right:0;flex:0 0 auto}
.socimex-footer-address strong{color:#fff;font-weight:800}
.socimex-footer-email{display:flex;align-items:center;gap:8px;margin:2px 0 10px;color:#dbeafe!important;text-decoration:none;font-size:12px;font-weight:750;line-height:1.5;overflow-wrap:anywhere}
.socimex-footer-email i{color:#c4b5fd;font-size:15px}
.socimex-footer-email:hover{color:#fff!important}
@media(max-width:480px){.socimex-footer-brand .socimex-footer-logo-mark{width:58px;height:58px;flex-basis:58px}}
