@import "https://api.fontshare.com/v2/css?f[]=clash-display@400,500,600,700&f[]=satoshi@400,500,700&display=swap";:root{--bg:#080e1a;--bg-2:#0d1629;--bg-3:#111d35;--bg-4:#162040;--border:#ffffff12;--border-2:#ffffff1f;--navy:#1e3a5f;--navy-light:#2a5298;--accent:#f97316;--accent-2:#fb923c;--accent-glow:#f9731640;--gold:#fbbf24;--text:#e8eef7;--text-2:#a0aec0;--text-3:#64748b;--white:#fff;--max:80rem;--radius-sm:.5rem;--radius-md:1rem;--radius-lg:1.5rem;--radius-xl:2rem;--shadow-card:0 8px 32px #0006;--shadow-glow:0 0 60px #f9731626;--glass:#ffffff0a;--glass-border:#ffffff14;--font-display:"Clash Display", "Segoe UI", sans-serif;--font-body:"Satoshi", "Inter", sans-serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-size:100%}@media (width>=48rem){html{font-size:106.25%}}html,body{max-width:100vw;overflow-x:hidden}body{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;line-height:1.6;display:flex}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.wrap{width:min(var(--max), calc(100% - 2.5rem));margin:0 auto}.muted{color:var(--text-2)}.center{justify-content:center;margin-top:2.5rem;display:flex}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em;font-weight:700;line-height:1.1}h1{font-size:clamp(2rem,6.5vw,4rem)}h2{font-size:clamp(1.7rem,4vw,2.75rem)}h3{font-size:clamp(1.1rem,2.5vw,1.35rem);font-weight:600}h4{letter-spacing:.06em;text-transform:uppercase;font-size:.9rem;font-weight:600}.lead{color:var(--text-2);max-width:38rem;margin-top:1.25rem;font-size:clamp(.95rem,1.8vw,1.1rem);line-height:1.8}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--accent);align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.72rem;font-weight:700;display:inline-flex}.eyebrow:before{content:"";background:var(--accent);border-radius:99px;width:1.5rem;height:2px;display:block}.site-header{z-index:100;-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);background:#080e1ad9;position:sticky;top:0}.site-header-bar{grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:1rem 0;display:grid}@media (width>=64rem){.site-header-bar{grid-template-columns:auto 1fr auto}}.brand{font-family:var(--font-display);color:var(--white);letter-spacing:-.01em;align-items:center;gap:.75rem;font-size:1rem;font-weight:700;display:inline-flex}.brand img{object-fit:contain;width:auto;height:2rem}.brand-dot{background:var(--accent);width:.5rem;height:.5rem;box-shadow:0 0 8px var(--accent);border-radius:99px;display:inline-block}.nav-desktop{justify-content:center;align-items:center;gap:.25rem;display:none}@media (width>=64rem){.nav-desktop{display:flex}}.nav-desktop>a{color:var(--text-2);border-radius:var(--radius-sm);padding:.5rem .875rem;font-size:.85rem;font-weight:500;transition:color .2s,background .2s}.nav-desktop>a:hover,.nav-desktop>a.is-active{color:var(--white);background:#ffffff0f}.header-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.btn-cta{background:var(--accent);color:#fff;white-space:nowrap;border-radius:var(--radius-sm);font-size:.82rem;font-weight:700;font-family:var(--font-display);box-shadow:0 0 20px var(--accent-glow);justify-content:center;align-items:center;padding:.55rem 1rem;transition:all .3s cubic-bezier(.16,1,.3,1);display:inline-flex}.btn-cta:hover{background:var(--accent-2);box-shadow:0 8px 24px var(--accent-glow);transform:translateY(-2px)}.btn-cta__full{display:none}@media (width>=64rem){.btn-cta{padding:.6rem 1.25rem}.btn-cta__short{display:none}.btn-cta__full{display:inline}}.menu-trigger{color:var(--text);background:var(--glass);border:1px solid var(--border-2);border-radius:var(--radius-sm);align-items:center;gap:.35rem;min-width:2.25rem;min-height:2.25rem;padding:.5rem .75rem;font-size:.8rem;font-weight:600;transition:border-color .2s,background .2s;display:inline-flex}.menu-trigger:hover{border-color:var(--accent);background:#f9731614}.menu-trigger__bars{flex-direction:column;gap:.2rem;width:.9rem;display:inline-flex}.menu-trigger__bars span{background:var(--text);border-radius:99px;height:2px;display:block}.menu-trigger__bars span:nth-child(2){width:70%}@media (width>=64rem){.menu-trigger{display:none!important}}.mobile-nav{border-top:1px solid var(--border);background:var(--bg-2);padding:.75rem 0 1.25rem;display:none}.mobile-nav.is-open{gap:.2rem;display:grid}.mobile-nav a{color:var(--text-2);border-radius:var(--radius-sm);padding:.9rem .5rem;font-weight:500}.mobile-nav a:hover{color:var(--accent);background:#f973160f}.btn{border-radius:var(--radius-sm);font-size:.875rem;font-weight:700;font-family:var(--font-display);letter-spacing:.01em;border:2px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.875rem 1.75rem;transition:all .3s cubic-bezier(.16,1,.3,1);display:inline-flex}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 0 24px var(--accent-glow)}.btn-primary:hover{background:var(--accent-2);box-shadow:0 12px 32px var(--accent-glow);transform:translateY(-3px)}.btn-secondary{color:var(--text);border-color:var(--border-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:0 0}.btn-secondary:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}.btn-navy{background:var(--navy);color:#fff;border-color:var(--navy-light)}.btn-navy:hover{background:var(--navy-light);transform:translateY(-2px)}.btn-row{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.btn-row .btn{width:100%}@media (width>=40rem){.btn-row .btn{width:auto}}.hero{align-items:center;min-height:90vh;padding:5rem 0 4rem;display:flex;position:relative;overflow:hidden}@media (width>=48rem){.hero{padding:7rem 0 5rem}}.hero:before{content:"";z-index:0;background:radial-gradient(80% 60% at 70% 40%,#1e3a5f80 0%,#0000 70%),radial-gradient(50% 40% at 20% 80%,#f973161f 0%,#0000 60%),radial-gradient(40% 50% at 80% 90%,#1e3a5f4d 0%,#0000 60%);position:absolute;inset:0}.hero:after{display:none}.hero-grid{z-index:1;align-items:center;gap:3rem;display:grid;position:relative}@media (width>=64rem){.hero-grid{grid-template-columns:1.1fr .9fr;gap:2rem}}.hero-badge{color:var(--accent);background:#f973161a;border:1px solid #f973164d;border-radius:99px;align-items:center;gap:.5rem;width:fit-content;margin-bottom:1.25rem;padding:.35rem .85rem;font-size:.75rem;font-weight:600;display:inline-flex}.hero-badge-dot{background:var(--accent);border-radius:99px;width:.4rem;height:.4rem;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.4)}}.hero h1{color:var(--white);margin-bottom:.5rem}.hero-name-accent{background:linear-gradient(135deg, var(--accent), var(--gold));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero-role{color:var(--text-2);letter-spacing:.01em;margin-top:.5rem;font-size:clamp(.9rem,1.8vw,1.05rem);font-weight:500}.hero .lead{color:var(--text-2);margin-top:1.25rem}.hero-visual{width:100%;max-width:24rem;margin:0 auto;position:relative}@media (width>=64rem){.hero-visual{max-width:28rem}}.hero-visual-frame{border-radius:var(--radius-xl);border:1px solid var(--border-2);background:linear-gradient(135deg, var(--bg-3), var(--bg-2));box-shadow:var(--shadow-card), 0 0 80px #1e3a5f66;padding:1.5rem 1.5rem 0;position:relative;overflow:hidden}.hero-photo{border-radius:var(--radius-md) var(--radius-md) 0 0;object-fit:contain;object-position:center bottom;filter:contrast(1.05);width:100%}.float-card{z-index:10;-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-2);border-radius:var(--radius-md);pointer-events:none;background:#0d1629e6;padding:.65rem .85rem;position:absolute;box-shadow:0 8px 32px #00000080}.float-card b{color:var(--white);font-size:.9rem;line-height:1.2;font-family:var(--font-display);display:block}.float-card small{color:var(--text-2);margin-top:.15rem;font-size:.7rem;display:block}.float-card--l{top:20%;left:-1rem}.float-card--r{bottom:18%;right:-1rem}@media (width>=48rem){.float-card--l{left:-1.5rem}.float-card--r{right:-1.5rem}}.hero-float{animation:5s ease-in-out infinite float-y}@keyframes float-y{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.float-ico{border-radius:var(--radius-sm);flex-shrink:0;place-items:center;width:2rem;height:2rem;font-size:.75rem;font-weight:700;display:grid}.float-ico.eu{color:#60a5fa;background:#1e3a5fcc;border:1px solid #60a5fa4d}.float-ico.cm{color:var(--accent);background:#f9731633;border:1px solid #f973164d}.stats{background:var(--bg-2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:3rem 0}.stats-grid{text-align:center;grid-template-columns:1fr;gap:1rem;max-width:56rem;margin:0 auto;display:grid}@media (width>=36rem){.stats-grid{grid-template-columns:repeat(3,1fr)}}.stats b{font-family:var(--font-display);background:linear-gradient(135deg, var(--white), var(--accent-2));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:clamp(2.5rem,6vw,4rem);font-weight:700;line-height:1;display:block}.stats-grid>div{border-radius:var(--radius-md);background:var(--glass);border:1px solid var(--border);padding:1.5rem 1rem;transition:border-color .3s}.stats-grid>div:hover{border-color:var(--accent)}.stats span{color:var(--text-2);margin-top:.75rem;font-size:.82rem;line-height:1.4;display:block}.section{padding:5rem 0}@media (width>=48rem){.section{padding:7rem 0}}.section--dark{background:var(--bg)}.section--dark-2{background:var(--bg-2)}.section-head{text-align:center;flex-direction:column;align-items:center;margin-bottom:3.5rem;display:flex}.section-head .eyebrow{margin-bottom:1rem}.section-head .lead{text-align:center;max-width:44rem}.split{align-items:center;gap:3rem;display:grid}@media (width>=64rem){.split{grid-template-columns:1fr 1fr;gap:5rem}}.media-frame{aspect-ratio:4/5;border-radius:var(--radius-xl);border:1px solid var(--border-2);background:var(--bg-3);box-shadow:var(--shadow-card);position:relative;overflow:hidden}.media-frame img{object-fit:cover;object-position:center top;width:100%;height:100%;transition:transform .4s}.media-frame:hover img{transform:scale(1.03)}.cards{gap:1.25rem;display:grid}@media (width>=48rem){.cards{grid-template-columns:1fr 1fr}}@media (width>=80rem){.cards-3{grid-template-columns:repeat(3,1fr)}}.card{background:var(--bg-3);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden}.card:hover{border-color:var(--border-2);box-shadow:var(--shadow-card), 0 0 40px #f9731614;transform:translateY(-4px)}.card-media{aspect-ratio:16/10;background:#0d1525;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.card-media img{object-fit:cover;filter:brightness(.85);width:100%;height:100%;transition:transform .5s}.card:hover .card-media img{filter:brightness(.95);transform:scale(1.04)}.card-media img[src*=logo-]{object-fit:contain;filter:none;padding:1.25rem}.card:hover .card-media img[src*=logo-]{filter:brightness(1.05);transform:scale(1.04)}.pill{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--accent);letter-spacing:.12em;text-transform:uppercase;background:#080e1ad9;border:1px solid #f973164d;border-radius:99px;padding:.25rem .75rem;font-size:.68rem;font-weight:700;position:absolute;top:1rem;left:1rem}.card-body{flex-direction:column;flex:1;padding:1.5rem;display:flex}.card-body h3{color:var(--white);margin-bottom:.5rem}.card-body p{color:var(--text-2);flex:1;font-size:.9rem;line-height:1.65}.link-cta{color:var(--accent);align-items:center;gap:.3rem;margin-top:1.25rem;font-size:.85rem;font-weight:600;display:flex}.expertise{position:relative}.expertise-slide{align-items:center;gap:3rem;display:none}.expertise-slide.is-on{display:grid}@media (width>=64rem){.expertise-slide.is-on{grid-template-columns:1fr 1fr}}.blob-photo{background:#0d1525;border:3px solid #f973164d;border-radius:30% 70% 70% 30%/30% 30% 70% 70%;justify-content:center;align-items:center;height:16rem;display:flex;position:relative;overflow:hidden;box-shadow:0 0 60px #f973161a}@media (width>=40rem){.blob-photo{height:22rem}}.blob-photo img{object-fit:cover;filter:brightness(.8);width:100%;height:100%}:is(.blob-photo--logo,.blob-photo:has(img[src*=logo-])){background:radial-gradient(circle,#152238 0%,#0d1525 100%)}.blob-photo--logo img,.blob-photo img[src*=logo-]{object-fit:contain;filter:none;width:auto;max-width:65%;height:auto;max-height:65%}.exp-nav{z-index:2;border:1px solid var(--border-2);background:var(--bg-3);width:2.75rem;height:2.75rem;box-shadow:var(--shadow-card);cursor:pointer;color:var(--text);border-radius:99px;place-items:center;font-size:1.1rem;transition:border-color .2s,color .2s;display:none;position:absolute;top:40%}@media (width>=48rem){.exp-nav{display:grid}}.exp-nav:hover{border-color:var(--accent);color:var(--accent)}.exp-nav.prev{left:-1.5rem}.exp-nav.next{right:-1.5rem}.dots{justify-content:center;gap:.5rem;margin-top:2rem;display:flex}.dots button{background:var(--border-2);cursor:pointer;border:0;border-radius:99px;width:.6rem;height:.6rem;transition:all .3s}.dots button.is-on{background:var(--accent);width:2rem}.tiles{grid-template-columns:repeat(2,1fr);gap:.75rem;margin-top:2rem;display:grid}@media (width>=48rem){.tiles{grid-template-columns:repeat(4,1fr)}}.tile{aspect-ratio:1;border-radius:var(--radius-md);border:1px solid var(--border);color:#fff;background:#0d1525;justify-content:center;align-items:center;transition:border-color .3s;display:flex;position:relative;overflow:hidden}.tile:hover{border-color:var(--accent)}.tile img{object-fit:cover;filter:brightness(.6);width:100%;height:100%;transition:all .5s;transform:scale(1.1)}.tile:hover img{transform:scale(1.2)}:is(.tile--logo,.tile:has(img[src*=logo-])){background:radial-gradient(circle,#152238 0%,#0d1525 100%)}.tile--logo img,.tile img[src*=logo-]{object-fit:contain;filter:none;width:auto;max-width:65%;height:auto;max-height:65%;margin-bottom:1.25rem;transform:none}.tile:hover .tile--logo img,.tile:hover img[src*=logo-]{filter:brightness(1.05);transform:scale(1.06)}.tile span{font-family:var(--font-display);background:linear-gradient(#0000,#080e1ae6);padding:.75rem;font-size:.9rem;font-weight:700;position:absolute;inset:auto 0 0}.products{gap:1.5rem;display:grid}@media (width>=64rem){.products{grid-template-columns:repeat(2,1fr)}}.product{background:var(--bg-3);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;transition:all .3s;display:flex;overflow:hidden}.product:hover{border-color:#f973164d;transform:translateY(-4px);box-shadow:0 0 40px #f973160f}.product-media{aspect-ratio:16/9;background:#0d1525;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.product-media img{object-fit:cover;filter:brightness(.85);width:100%;height:100%;transition:transform .5s,filter .5s}.product:hover .product-media img{filter:brightness(.95);transform:scale(1.03)}:is(.product-media--logo,.product-media:has(img[src*=logo-])){background:radial-gradient(circle,#152238 0%,#0a1120 100%);padding:1.25rem}.product-media--logo img,.product-media img[src*=logo-]{object-fit:contain;filter:none;width:100%;max-width:100%;height:100%;max-height:100%;padding:.5rem;transform:none}.product:hover .product-media--logo img,.product:hover .product-media img[src*=logo-]{filter:brightness(1.05);transform:scale(1.04)}.product-body{padding:1.75rem}.product-body .eyebrow{margin-bottom:.5rem}.product-body h3{color:var(--white);margin-bottom:.75rem}.product-body p{color:var(--text-2);margin-top:.5rem;font-size:.9rem;line-height:1.65}.badges{flex-wrap:wrap;gap:.4rem;margin-top:1.25rem;display:flex}.badge{font-size:.68rem;font-weight:700;font-family:var(--font-display);letter-spacing:.06em;border-radius:99px;padding:.25rem .65rem;display:inline-block}.b-live{color:#10b981;background:#10b98126;border:1px solid #10b9814d}.b-dev{color:var(--accent);background:#f9731626;border:1px solid #f973164d}.b-rd{color:#818cf8;background:#6366f126;border:1px solid #6366f14d}.b-pilot{color:var(--gold);background:#fbbf2426;border:1px solid #fbbf244d}.b-concept{color:#94a3b8;background:#64748b26;border:1px solid #64748b4d}.timeline{margin-top:2.5rem;position:relative}.timeline:before{content:"";background:linear-gradient(to bottom, var(--accent), transparent);border-radius:99px;width:2px;position:absolute;top:0;bottom:0;left:6.5rem}.tl{grid-template-columns:7rem 1fr;gap:1.5rem;padding:1.25rem 0;display:grid;position:relative}.tl:after{content:"";background:var(--accent);border:2px solid var(--bg);width:.6rem;height:.6rem;box-shadow:0 0 8px var(--accent);border-radius:99px;position:absolute;top:1.6rem;left:7.45rem}.tl time{color:var(--accent);padding-top:.2rem;font-size:.8rem;font-weight:700}.tl strong{color:var(--white);font-family:var(--font-display);font-weight:600;display:block}.tl em{color:var(--text-2);margin-top:.2rem;font-size:.85rem;font-style:normal;display:block}@media (width<=40rem){.timeline:before{left:0}.tl{grid-template-columns:1fr;padding-left:1.5rem}.tl:after{left:-.2rem}}.exp-controls{margin:2rem 0 1.5rem}.exp-filters{flex-wrap:wrap;gap:.6rem;display:flex}.exp-filter-btn{border:1px solid var(--border);color:var(--text-2);cursor:pointer;background:#ffffff08;border-radius:99px;padding:.55rem 1.15rem;font-family:inherit;font-size:.85rem;font-weight:600;transition:all .25s cubic-bezier(.16,1,.3,1)}.exp-filter-btn:hover{border-color:var(--border-2);color:var(--white);background:#ffffff0f}.exp-filter-btn.is-active{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 4px 16px #f9731659}.exp-list{flex-direction:column;gap:1.15rem;display:flex}.exp-card{background:var(--bg-3);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem 1.75rem;transition:transform .25s,box-shadow .25s,border-color .25s;position:relative;overflow:hidden}.exp-card[data-category=europe]{border-left:3px solid #3b82f6}.exp-card[data-category=africa]{border-left:3px solid var(--accent)}.exp-card:hover{border-color:#60a5fa59;transform:translateY(-2px);box-shadow:0 12px 28px #00000059}.exp-card--featured{background:linear-gradient(#142036f2 0%,#0c1424f2 100%);box-shadow:0 4px 20px #00000040}.exp-card-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.65rem;display:flex}.exp-head-main{flex-direction:column;gap:.25rem;display:flex}.exp-meta-row{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.exp-company-name{color:var(--white);font-size:1.25rem;font-weight:700;font-family:var(--font-display)}.exp-loc-label{color:var(--text-3);background:var(--bg-2);border:1px solid var(--border);border-radius:6px;padding:.2rem .55rem;font-size:.8rem;font-weight:500}.exp-role-title{color:#93c5fd;margin:.15rem 0 0;font-size:1.05rem;font-weight:600;line-height:1.35}.exp-badges-col{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.exp-period-pill{color:var(--text);background:var(--bg-2);border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:.3rem .75rem;font-size:.82rem;font-weight:700}.exp-highlight-pill{color:var(--accent);white-space:nowrap;background:#f973161a;border:1px solid #f9731640;border-radius:999px;padding:.25rem .65rem;font-size:.76rem;font-weight:700}.exp-card-content{margin:.5rem 0 0}.exp-para{color:var(--text-2);margin:0;font-size:.92rem;line-height:1.6}.exp-tags-row{border-top:1px solid #ffffff0d;flex-wrap:wrap;gap:.4rem;padding-top:.75rem;display:flex}.exp-tag{color:var(--text-3);border:1px solid var(--border);background:#ffffff08;border-radius:5px;padding:.2rem .55rem;font-size:.76rem;font-weight:500}.case-wrapper{margin-top:2rem}.case-tabs-nav{border-bottom:1px solid var(--border);scrollbar-width:thin;gap:.75rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.case-tab-btn{color:var(--text-3);font-family:var(--font-display);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:.65rem;margin-bottom:-1px;padding:.85rem 1.25rem;font-size:.95rem;font-weight:600;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex}.case-tab-btn:hover{color:var(--white)}.case-tab-btn.is-active{color:var(--accent);border-bottom-color:var(--accent)}.case-tab-num{color:var(--accent);background:#f973161f;border:1px solid #f9731640;border-radius:6px;padding:.15rem .45rem;font-size:.72rem;font-weight:700}.case-panels-container{margin-top:2rem}.case-panel{opacity:0;display:none}.case-panel.is-active{opacity:1;animation:.4s forwards fadeCase;display:block}@keyframes fadeCase{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.case-showcase{border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(#0e182ae6 0%,#0a111ee6 100%);gap:2.25rem;padding:2.25rem;display:grid;box-shadow:0 16px 40px #00000040}@media (width>=64rem){.case-showcase{grid-template-columns:360px 1fr}}.case-meta-col{flex-direction:column;gap:1.25rem;display:flex}.case-media-frame{border-radius:var(--radius-md);aspect-ratio:16/10;border:1px solid var(--border);background:var(--bg-2);position:relative;overflow:hidden}.case-media-frame img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.16,1,.3,1);display:block}.case-media-frame:hover img{transform:scale(1.04)}.case-category-pill{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--accent);background:#080e1ae0;border:1px solid #f973164d;border-radius:99px;padding:.25rem .65rem;font-size:.75rem;font-weight:600;position:absolute;bottom:.75rem;left:.75rem}.case-metrics-grid{gap:.75rem;display:grid}.case-metric-card{border:1px solid var(--border);border-radius:var(--radius-md);background:#ffffff08;padding:.85rem 1rem;transition:border-color .25s}.case-metric-card:hover{border-color:#f973164d}.case-metric-val{font-family:var(--font-display);color:var(--accent);font-size:1.35rem;font-weight:700;line-height:1.1}.case-metric-lbl{color:var(--text-3);margin-top:.25rem;font-size:.78rem;line-height:1.4}.case-link-row{margin-top:.25rem}.case-header-content{margin-bottom:2rem}.case-eyebrow-row{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.6rem;display:flex}.case-badge-pill{color:var(--accent);background:#f973161f;border:1px solid #f9731640;border-radius:99px;padding:.2rem .65rem;font-size:.75rem;font-weight:700}.case-category-label{color:var(--text-3);font-size:.82rem;font-weight:500}.case-main-title{font-family:var(--font-display);color:var(--white);margin:.25rem 0;font-size:clamp(1.4rem,2.5vw,1.85rem);line-height:1.25}.case-subtitle{color:var(--accent);letter-spacing:.01em;margin:0 0 .85rem;font-size:.98rem;font-weight:600}.case-lead-desc{color:var(--text-2);max-width:48rem;margin:0 0 1.25rem;font-size:.95rem;line-height:1.7}.case-tags-row{flex-wrap:wrap;gap:.5rem;display:flex}.case-phases-grid{gap:1rem;display:grid}@media (width>=48rem){.case-phases-grid{grid-template-columns:1fr 1fr}}.case-phase-card{border-radius:var(--radius-md);background:#ffffff06;border:1px solid #ffffff12;flex-direction:column;padding:1.35rem;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex}.case-phase-card:hover{background:#f9731608;border-color:#f9731659;transform:translateY(-2px)}.case-phase-top{align-items:flex-start;gap:.65rem;margin-bottom:.65rem;display:flex}.case-phase-badge{color:var(--accent);background:#f973161a;border:1px solid #f9731640;border-radius:4px;flex-shrink:0;margin-top:.15rem;padding:.15rem .5rem;font-size:.7rem;font-weight:700}.case-phase-heading{color:var(--white);margin:0;font-size:.95rem;font-weight:600;line-height:1.4}.case-phase-text{color:var(--text-2);margin:0;font-size:.88rem;line-height:1.65}table{border-collapse:collapse;background:var(--bg-3);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;font-size:.9rem;overflow:hidden}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.9rem 1.1rem}th{background:var(--navy);color:#fff;letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-family:var(--font-display)}td{color:var(--text-2)}tr:last-child td{border-bottom:0}tr:hover td{background:var(--bg-4)}.map{gap:1.25rem;margin-top:2rem;display:grid}@media (width>=48rem){.map{grid-template-columns:1.1fr 1fr}}.map-pane{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-3);padding:1.75rem}.map-pane h3{color:var(--white);margin-bottom:1rem;font-size:1rem}.map-eu{border-left:3px solid #60a5fa}.map-af{border-left:3px solid var(--accent)}.pin{color:var(--text-2);align-items:center;gap:.65rem;margin:.65rem 0;font-size:.9rem;display:flex}.dot{border-radius:99px;flex:none;width:.5rem;height:.5rem}.map-eu .dot{background:#60a5fa;box-shadow:0 0 6px #60a5fa}.map-af .dot{background:var(--accent);box-shadow:0 0 6px var(--accent)}.skill-tags{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.skill-tag{border:1px solid var(--border);color:var(--text-2);background:#ffffff0d;border-radius:99px;padding:.3rem .7rem;font-size:.78rem;font-weight:500;transition:all .2s;display:inline-block}.skill-tag:hover{border-color:var(--accent);color:var(--accent);background:#f973160f}.contact-band{background:var(--bg-3);border:1px solid var(--border);border-radius:var(--radius-xl);gap:2rem;padding:2.5rem;display:grid;position:relative;overflow:hidden}.contact-band:before{content:"";pointer-events:none;background:radial-gradient(circle,#f9731614,#0000 70%);width:20rem;height:20rem;position:absolute;top:-50%;right:-20%}@media (width>=48rem){.contact-band{grid-template-columns:1.4fr .6fr;align-items:center;padding:3rem}}.contact-band h2{color:var(--white)}.contact-band .lead{max-width:32rem}.contact-link{color:var(--accent);font-weight:600;transition:opacity .2s}.contact-link:hover{opacity:.8}.contact-photo{aspect-ratio:4/5;border-radius:var(--radius-lg);border:2px solid var(--border-2);background:var(--bg-2);overflow:hidden}.contact-photo img{object-fit:cover;object-position:center top;filter:contrast(1.05);width:100%;height:100%}.site-foot{background:var(--bg-2);border-top:1px solid var(--border);margin-top:auto;padding:3.5rem 0 1.5rem}.foot-grid{gap:2rem;display:grid}@media (width>=48rem){.foot-grid{grid-template-columns:1.5fr 1fr 1fr}}.site-foot .brand{color:var(--white)}.foot-desc{color:var(--text-2);max-width:22rem;margin-top:.75rem;font-size:.88rem;line-height:1.6}.site-foot h3{letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);font-size:.72rem;font-family:var(--font-display);margin-bottom:.75rem}.site-foot nav{gap:.1rem;display:grid}.site-foot nav a{color:var(--text-2);padding:.4rem 0;font-size:.88rem;transition:color .2s}.site-foot nav a:hover{color:var(--accent)}.foot-copy{border-top:1px solid var(--border);color:var(--text-3);flex-wrap:wrap;justify-content:space-between;gap:.5rem;margin-top:2.5rem;padding-top:1.5rem;font-size:.8rem;display:flex}.quick-contact-widget{right:max(1.25rem, env(safe-area-inset-right));bottom:max(1.25rem, env(safe-area-inset-bottom));z-index:95;flex-direction:column;align-items:flex-end;display:flex;position:fixed}.quick-contact-popover{color:#0f172a;opacity:0;visibility:hidden;transform-origin:100% 100%;pointer-events:none;background:#fff;border-radius:1.25rem;width:min(320px,100vw - 2.5rem);padding:1.5rem 1.25rem;transition:opacity .25s cubic-bezier(.16,1,.3,1),transform .25s cubic-bezier(.16,1,.3,1),visibility .25s;position:absolute;bottom:calc(100% + 1rem);right:0;transform:translateY(14px)scale(.96);box-shadow:0 20px 48px #00000047,0 4px 16px #0000001f,0 0 0 1px #0000000d}.quick-contact-widget.is-open .quick-contact-popover{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)scale(1)}.quick-contact-header{margin-bottom:1.15rem}.quick-contact-title{color:#0f172a;margin:0 0 .4rem;font-size:1.25rem;font-weight:700;line-height:1.25}.quick-contact-sub{color:#64748b;margin:0;font-size:.86rem;line-height:1.45}.quick-contact-actions{flex-direction:column;gap:.65rem;display:flex}.qc-btn{cursor:pointer;box-sizing:border-box;border:none;border-radius:.75rem;justify-content:center;align-items:center;gap:.5rem;width:100%;height:46px;font-family:inherit;font-size:.95rem;text-decoration:none;transition:transform .18s,box-shadow .18s,background .18s,border-color .18s;display:flex}.qc-btn:active{transform:scale(.98)}.qc-btn-whatsapp{background:#25d366;font-weight:700;box-shadow:0 4px 12px #25d3664d;color:#fff!important}.qc-btn-whatsapp:hover{background:#22c35e;transform:translateY(-1px);box-shadow:0 6px 16px #25d36666}.qc-btn-whatsapp svg{flex-shrink:0}.qc-btn-outline{background:#fff;border:1.5px solid #e2e8f0;font-weight:600;color:#0f172a!important}.qc-btn-outline:hover{background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px)}.qc-btn-primary{background:linear-gradient(135deg,#f97316 0%,#ea580c 100%);font-weight:700;box-shadow:0 4px 14px #f9731659;color:#fff!important}.qc-btn-primary:hover{filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 6px 18px #f9731673}.quick-contact-trigger{color:#fff;cursor:pointer;background:#25d366;border:none;border-radius:999px;outline:none;place-items:center;width:3.5rem;height:3.5rem;transition:transform .25s cubic-bezier(.16,1,.3,1),background .25s cubic-bezier(.16,1,.3,1),box-shadow .25s cubic-bezier(.16,1,.3,1);display:grid;position:relative;box-shadow:0 8px 24px #25d36673}.quick-contact-trigger:before,.quick-contact-trigger:after{content:"";pointer-events:none;z-index:-1;background:#25d3668c;border-radius:999px;animation:2.6s cubic-bezier(.1,.7,.1,1) infinite wa-emission-wave;position:absolute;inset:0;box-shadow:0 0 16px #25d36699}.quick-contact-trigger:after{animation-delay:1.3s}@keyframes wa-emission-wave{0%{opacity:.85;transform:scale(1)}60%{opacity:.35}to{opacity:0;transform:scale(1.9)}}.quick-contact-trigger:hover{transform:scale(1.06);box-shadow:0 12px 28px #25d3668c}.quick-contact-trigger:active{transform:scale(.96)}.quick-contact-widget.is-open .quick-contact-trigger{background:#f97316;box-shadow:0 8px 24px #f9731673}.quick-contact-widget.is-open .quick-contact-trigger:before,.quick-contact-widget.is-open .quick-contact-trigger:after{opacity:0;animation:none;display:none}.qc-icon-wa,.qc-icon-close{place-items:center;transition:transform .25s cubic-bezier(.16,1,.3,1),opacity .25s cubic-bezier(.16,1,.3,1);display:grid;position:absolute}.qc-icon-wa{opacity:1;animation:4.2s ease-in-out infinite wa-icon-wobble;transform:rotate(0)scale(1)}@keyframes wa-icon-wobble{0%,72%,to{transform:rotate(0)scale(1)}76%{transform:rotate(-10deg)scale(1.12)}80%{transform:rotate(10deg)scale(1.12)}84%{transform:rotate(-7deg)scale(1.08)}88%{transform:rotate(7deg)scale(1.05)}92%{transform:rotate(0)scale(1)}}.qc-icon-close{opacity:0;color:#fff;transform:rotate(-90deg)scale(.6)}.quick-contact-widget.is-open .qc-icon-wa{opacity:0;animation:none;transform:rotate(90deg)scale(.6)}.quick-contact-widget.is-open .qc-icon-close{opacity:1;transform:rotate(0)scale(1)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--navy-light);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}.trajectory-wrapper{margin-top:2rem}.trajectory-bridge-banner{border:1px solid var(--border-2);border-radius:var(--radius-xl);background:linear-gradient(135deg,#0e182af2 0%,#080e1afa 100%);margin-bottom:2.5rem;padding:2.25rem 2rem;position:relative;overflow:hidden;box-shadow:0 16px 40px #00000059}.trajectory-bridge-banner:before{content:"";pointer-events:none;background:radial-gradient(circle,#f9731614,#0000 70%);width:40%;height:100%;position:absolute;top:-50%;left:30%}.bridge-nodes{grid-template-columns:1fr;gap:1.5rem;display:grid}@media (width>=64rem){.bridge-nodes{grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem}}.bridge-node{border:1px solid var(--border);border-radius:var(--radius-lg);background:#ffffff06;padding:1.5rem;transition:all .3s cubic-bezier(.16,1,.3,1)}.bridge-node:hover{background:#ffffff0a;box-shadow:0 8px 24px #00000040}.bridge-europe{border-left:3px solid #38bdf8}.bridge-africa{border-left:3px solid var(--accent)}.bridge-node-top{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.bridge-flag{font-size:1.85rem;line-height:1}.bridge-pole-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:.2rem .65rem;font-size:.72rem;font-weight:700}.bridge-europe .bridge-pole-badge{color:#38bdf8;background:#38bdf81f;border:1px solid #38bdf840}.bridge-africa .bridge-pole-badge{color:var(--accent);background:#f973161f;border:1px solid #f9731640}.bridge-node-title{font-family:var(--font-display);color:var(--white);margin:0 0 .35rem;font-size:1.15rem;line-height:1.3}.bridge-node-sub{color:var(--text-3);margin:0;font-size:.82rem;line-height:1.45}.bridge-connector{justify-content:center;align-items:center;padding:.75rem 0;display:flex;position:relative}@media (width>=64rem){.bridge-connector{min-width:130px}}.bridge-connector-badge{border:1px solid var(--border-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff08;border-radius:999px;align-items:center;gap:.55rem;padding:.5rem 1.15rem;transition:all .25s;display:flex;box-shadow:0 4px 16px #00000040}.bridge-connector-badge:hover{background:#f973160d;border-color:#f9731666}.bridge-connector-icon{color:var(--accent);font-size:1.05rem;font-weight:700}.bridge-connector-text{color:var(--text-2);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;font-size:.72rem;font-weight:700}.trajectory-stats-strip{border-top:1px solid var(--border);grid-template-columns:repeat(2,1fr);gap:.85rem;margin-top:1.75rem;padding-top:1.75rem;display:grid}@media (width>=48rem){.trajectory-stats-strip{grid-template-columns:repeat(4,1fr)}}.traj-stat-item{text-align:center;border-radius:var(--radius-md);background:#ffffff05;border:1px solid #ffffff0d;padding:.85rem .5rem;transition:all .2s}.traj-stat-item:hover{background:#f9731608;border-color:#f973164d}.traj-stat-num{font-family:var(--font-display);color:var(--accent);font-size:1.6rem;line-height:1.1;display:block}.traj-stat-lbl{color:var(--text-3);margin-top:.25rem;font-size:.74rem;display:block}.trajectory-filter-nav{scrollbar-width:thin;gap:.65rem;margin-bottom:2rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.traj-filter-btn{background:var(--bg-3);border:1px solid var(--border);color:var(--text-3);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:.65rem;padding:.65rem 1.15rem;font-size:.85rem;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.traj-filter-btn:hover{color:var(--white);border-color:var(--border-2)}.traj-filter-btn.is-active{background:var(--accent);color:#080e1a;border-color:var(--accent);box-shadow:0 4px 14px var(--accent-glow)}.traj-count-badge{background:#ffffff14;border-radius:999px;padding:.15rem .45rem;font-size:.7rem;font-weight:700}.traj-filter-btn.is-active .traj-count-badge{color:#080e1a;background:#080e1a40}.trajectory-timeline{gap:1.5rem;display:grid;position:relative}.traj-timeline-item{grid-template-columns:2.25rem 1fr;gap:1.25rem;transition:opacity .3s,transform .3s;display:grid;position:relative}@media (width>=48rem){.traj-timeline-item{grid-template-columns:2.75rem 1fr;gap:1.75rem}}.traj-marker-track{flex-direction:column;align-items:center;display:flex;position:relative}.traj-step-pill{border-radius:var(--radius-sm);background:var(--bg-3);border:1.5px solid var(--border-2);width:2.25rem;height:2.25rem;color:var(--text-2);font-family:var(--font-display);z-index:2;flex-shrink:0;justify-content:center;align-items:center;margin-top:1.25rem;font-size:.78rem;font-weight:700;transition:all .25s;display:flex;box-shadow:0 4px 12px #0000004d}.traj-europe .traj-step-pill{color:#38bdf8;background:#0e1c30f2;border-color:#38bdf866}.traj-africa .traj-step-pill{color:var(--accent);background:#1e140ef2;border-color:#f9731666}.traj-timeline-item.is-featured .traj-step-pill{border-color:var(--accent);color:#080e1a;background:var(--accent);box-shadow:0 4px 14px var(--accent-glow)}.traj-track-line{background:linear-gradient(180deg, var(--border-2) 0%, #ffffff0a 100%);flex:1;width:1px;margin-top:.5rem}.traj-card{background:var(--bg-3);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.75rem 1.85rem;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 8px 24px #0003}.traj-timeline-item.is-featured .traj-card{background:linear-gradient(#0e182af2 0%,#0a111ef2 100%);border-color:#f9731666;box-shadow:0 12px 32px #f9731614}.traj-card:hover{border-color:#f9731673;transform:translateY(-2px);box-shadow:0 14px 36px #00000059}.traj-card-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.85rem;display:flex}.traj-period-wrap{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.traj-period-pill{font-family:var(--font-display);color:var(--white);border:1px solid var(--border);background:#ffffff0f;border-radius:6px;padding:.2rem .65rem;font-size:.78rem;font-weight:700}.traj-highlight-pill{color:var(--accent);background:#f973161f;border:1px solid #f973164d;border-radius:999px;padding:.2rem .6rem;font-size:.72rem;font-weight:700}.traj-meta-badges{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.traj-type-pill{color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:600}.traj-location-tag{color:var(--text-2);font-size:.78rem;font-weight:500}.traj-company{font-family:var(--font-display);color:var(--white);margin:0 0 .25rem;font-size:1.35rem;line-height:1.25}.traj-role{color:var(--accent);margin:0 0 .85rem;font-size:.92rem;font-weight:600;line-height:1.4}.traj-desc{color:var(--text-2);margin:0;font-size:.9rem;line-height:1.65}.traj-achievements{border-radius:var(--radius-sm);background:#ffffff05;border:1px solid #ffffff0a;gap:.45rem;margin-bottom:1.15rem;padding:.85rem 1rem;display:grid}.traj-achieve-item{color:var(--text-2);align-items:flex-start;gap:.55rem;font-size:.84rem;line-height:1.5;display:flex}.achieve-chevron{color:var(--accent);flex-shrink:0;margin-top:.05rem;font-weight:700}.traj-tags-row{flex-wrap:wrap;gap:.45rem;display:flex}.traj-tag{border:1px solid var(--border);color:var(--text-3);background:#ffffff0a;border-radius:999px;padding:.2rem .55rem;font-size:.74rem;font-weight:500;transition:all .2s}.traj-tag:hover{color:var(--accent);background:#f973160d;border-color:#f973164d}::selection{color:var(--white);background:#f973164d}@media (width<=40rem){.stats-grid{grid-template-columns:1fr 1fr 1fr;gap:.75rem}.stats-grid>div{padding:1rem .5rem}.stats b{font-size:2rem}.stats span{font-size:.72rem}}#reading-progress,.reading-progress,.reading-progress-bar{background:linear-gradient(90deg, var(--accent) 0%, #fb923c 50%, #38bdf8 100%);z-index:9999;pointer-events:none;width:0%;height:3px;transition:width 80ms ease-out;position:fixed;top:0;left:0;box-shadow:0 0 10px #f97316b3}#back-to-top,.back-to-top,.back-to-top-btn{right:max(1.25rem, env(safe-area-inset-right));bottom:calc(max(1.5rem, env(safe-area-inset-bottom)) + 4.25rem);border:1px solid var(--border-2);width:3rem;height:3rem;color:var(--accent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;z-index:55;opacity:0;pointer-events:none;background:#0e182ae0;border-radius:999px;place-items:center;transition:all .3s cubic-bezier(.16,1,.3,1);display:grid;position:fixed;transform:translateY(14px);box-shadow:0 8px 24px #00000059}#back-to-top.visible,.back-to-top.visible,.back-to-top-btn.visible{opacity:1;pointer-events:auto;transform:translateY(0)}#back-to-top:hover,.back-to-top:hover,.back-to-top-btn:hover{background:var(--accent);color:#080e1a;border-color:var(--accent);box-shadow:0 10px 28px var(--accent-glow);transform:translateY(-3px)}.product-modal-btn{color:var(--accent);cursor:pointer;background:#f9731614;border:1px solid #f9731640;border-radius:6px;align-items:center;gap:.45rem;margin-top:.65rem;padding:.4rem .85rem;font-size:.78rem;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.product-modal-btn:hover{background:var(--accent);color:#080e1a;border-color:var(--accent);box-shadow:0 4px 14px var(--accent-glow);transform:translateY(-1px)}.modal-backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10000;opacity:0;pointer-events:none;background:#040810c7;justify-content:flex-end;transition:opacity .3s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;inset:0}.modal-backdrop.is-open{opacity:1;pointer-events:auto}.modal-drawer{border-left:1px solid var(--border-2);background:linear-gradient(#0d1726 0%,#080e1a 100%);width:100%;max-width:580px;height:100%;padding:2.5rem 2rem 3rem;transition:transform .35s cubic-bezier(.16,1,.3,1);position:relative;overflow-y:auto;transform:translate(100%);box-shadow:-16px 0 40px #0009}.modal-backdrop.is-open .modal-drawer{transform:translate(0)}.modal-close-btn{border:1px solid var(--border);width:2.25rem;height:2.25rem;color:var(--text-2);cursor:pointer;background:#ffffff0d;border-radius:999px;place-items:center;font-size:1rem;transition:all .2s;display:grid;position:absolute;top:1.5rem;right:1.5rem}.modal-close-btn:hover{color:var(--white);border-color:var(--border-2);background:#ffffff1f}.modal-header-meta{flex-wrap:wrap;align-items:center;gap:.65rem;margin-bottom:.85rem;display:flex}.modal-badge{color:var(--accent);background:#f973161f;border:1px solid #f973164d;border-radius:999px;padding:.2rem .6rem;font-size:.72rem;font-weight:700}.modal-role{color:var(--text-3);font-size:.8rem;font-weight:500}.modal-product-title{font-family:var(--font-display);color:var(--white);margin:0 0 .4rem;font-size:1.85rem;line-height:1.2}.modal-tagline{color:var(--accent);margin:0 0 1.5rem;font-size:.95rem;font-weight:500;line-height:1.5}.modal-section{border-top:1px solid var(--border);padding:1.35rem 0}.modal-section-title{font-family:var(--font-display);color:var(--white);letter-spacing:.02em;margin:0 0 .65rem;font-size:.95rem;font-weight:700}.modal-section-text{color:var(--text-2);margin:0;font-size:.88rem;line-height:1.65}.modal-tech-chips{flex-wrap:wrap;gap:.5rem;display:flex}.modal-chip{border:1px solid var(--border);color:#cbd5e1;background:#ffffff0a;border-radius:6px;padding:.25rem .65rem;font-size:.78rem;font-weight:500}.modal-feature-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.modal-feature-list li{color:var(--text-2);align-items:flex-start;gap:.65rem;font-size:.86rem;line-height:1.55;display:flex}.check-icon{color:var(--accent);flex-shrink:0;font-weight:700}.modal-footer-cta{border-top:1px solid var(--border-2);gap:.75rem;margin-top:2rem;padding-top:1.5rem;display:flex}.hub-explorer{background:var(--bg-3);border:1px solid var(--border);border-radius:var(--radius-xl);margin-top:2.25rem;overflow:hidden;box-shadow:0 16px 36px #0000004d}.hub-nav{border-bottom:1px solid var(--border);scrollbar-width:thin;background:#080e1ab3;display:flex;overflow-x:auto}.hub-tab-btn{color:var(--text-3);font-family:var(--font-display);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:.6rem;margin-bottom:-1px;padding:1rem 1.35rem;font-size:.9rem;font-weight:600;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex}.hub-tab-btn:hover{color:var(--white);background:#ffffff05}.hub-tab-btn.is-active{color:var(--accent);border-bottom-color:var(--accent);background:#f973160a}.hub-tab-flag{font-size:1.25rem;line-height:1}.hub-tab-code{color:var(--text-3);background:#ffffff0f;border-radius:4px;padding:.1rem .4rem;font-size:.7rem;font-weight:700}.hub-tab-btn.is-active .hub-tab-code{color:var(--accent);background:#f9731626}.hub-panel{opacity:0;display:none}.hub-panel.is-active{opacity:1;animation:.35s forwards fadeHub;display:block}@keyframes fadeHub{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.hub-card{padding:2.25rem}.hub-identity{align-items:flex-start;gap:1.5rem;margin-bottom:1.5rem;display:flex}.hub-large-flag{filter:drop-shadow(0 4px 10px #00000080);font-size:3rem;line-height:1}.hub-location-row{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.hub-city{font-family:var(--font-display);color:var(--white);margin:0;font-size:1.5rem}.hub-country{color:var(--text-3);font-size:.95rem;font-weight:500}.hub-code-pill{color:var(--accent);background:#f973161f;border:1px solid #f973164d;border-radius:999px;padding:.15rem .55rem;font-size:.72rem;font-weight:700}.hub-role{color:var(--accent);margin:.35rem 0 .15rem;font-size:.98rem;font-weight:600}.hub-org{color:var(--text-3);margin:0;font-size:.85rem}.hub-org strong{color:var(--white)}.hub-context{color:var(--text-2);max-width:52rem;margin:0 0 1.75rem;font-size:.95rem;line-height:1.7}.hub-metrics-grid{gap:1rem;margin-bottom:1.75rem;display:grid}@media (width>=48rem){.hub-metrics-grid{grid-template-columns:repeat(3,1fr)}}.hub-metric-card{border:1px solid var(--border);border-radius:var(--radius-md);background:#ffffff06;flex-direction:column;padding:1rem 1.25rem;display:flex}.hub-metric-val{font-family:var(--font-display);color:var(--accent);font-size:1.25rem;font-weight:700;line-height:1.2}.hub-metric-lbl{color:var(--text-3);margin-top:.35rem;font-size:.78rem}.hub-tags-row{flex-wrap:wrap;gap:.5rem;display:flex}.hub-tag{border:1px solid var(--border);color:var(--text-2);background:#ffffff0a;border-radius:999px;padding:.25rem .65rem;font-size:.76rem;font-weight:500}.skill-matrix-component{margin-top:2rem}.skill-filter-bar{flex-direction:column;gap:1rem;margin-bottom:2rem;display:flex}@media (width>=48rem){.skill-filter-bar{flex-direction:row;justify-content:space-between;align-items:center}}.skill-search-wrap{flex:1;max-width:32rem;position:relative}.skill-search-wrap .search-icon{color:var(--text-3);pointer-events:none;position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.skill-search-input{background:var(--bg-3);border:1px solid var(--border-2);width:100%;color:var(--white);font-size:.88rem;font-family:var(--font-sans);border-radius:999px;padding:.75rem 2.5rem .75rem 2.65rem;transition:all .25s}.skill-search-input:focus{border-color:var(--accent);background:var(--bg-4);outline:none;box-shadow:0 0 0 3px #f9731626}.skill-clear-btn{color:var(--text-3);cursor:pointer;background:0 0;border:none;padding:.2rem .4rem;font-size:1.25rem;line-height:1;position:absolute;top:50%;right:.85rem;transform:translateY(-50%)}.skill-clear-btn:hover{color:var(--white)}.skill-category-tabs{scrollbar-width:thin;gap:.5rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.skill-tab-btn{background:var(--bg-3);border:1px solid var(--border);color:var(--text-3);cursor:pointer;white-space:nowrap;border-radius:999px;padding:.55rem .95rem;font-size:.82rem;font-weight:600;transition:all .2s}.skill-tab-btn:hover{color:var(--white);border-color:var(--border-2)}.skill-tab-btn.is-active{background:var(--accent);color:#080e1a;border-color:var(--accent);box-shadow:0 4px 14px var(--accent-glow)}.skill-categories-grid{gap:1.5rem;display:grid}@media (width>=64rem){.skill-categories-grid{grid-template-columns:1fr 1fr}}.skill-category-card{background:var(--bg-3);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.75rem;transition:all .3s cubic-bezier(.16,1,.3,1)}.skill-category-card:hover{border-color:#f9731659;box-shadow:0 12px 30px #0000004d}.skill-cat-head{border-bottom:1px solid var(--border);margin-bottom:1.25rem;padding-bottom:.85rem;display:block}.skill-cat-title{font-family:var(--font-display);color:var(--white);margin:0 0 .2rem;font-size:1.15rem}.skill-cat-desc{color:var(--text-3);margin:0;font-size:.82rem;line-height:1.45}.skill-items-list{gap:.65rem;display:grid}.skill-item-row{border-radius:var(--radius-sm);background:#ffffff05;border:1px solid #ffffff0d;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem .9rem;transition:all .2s;display:flex}.skill-item-row:hover{background:#ffffff0d;border-color:#f9731640;transform:translate(3px)}.skill-item-info{flex-direction:column;display:flex}.skill-item-name{color:var(--white);font-size:.9rem;font-weight:600}.skill-item-context{color:var(--text-3);margin-top:.15rem;font-size:.76rem}.skill-level-badge{border-radius:999px;flex-shrink:0;padding:.2rem .55rem;font-size:.7rem;font-weight:700}.skill-level-badge.level-expert{color:#10b981;background:#10b9811f;border:1px solid #10b9814d}.skill-level-badge.level-avance{color:var(--accent);background:#f973161f;border:1px solid #f973164d}.skill-level-badge.level-intermediaire{color:#60a5fa;background:#60a5fa1f;border:1px solid #60a5fa4d}.skill-empty-state{text-align:center;background:var(--bg-3);border:1px dashed var(--border-2);border-radius:var(--radius-lg);margin-top:1.5rem;padding:3rem 1.5rem}.skill-empty-state p{color:var(--text-2);margin-bottom:1rem}.contact-interactive-grid{gap:2rem;margin-top:2rem;display:grid}@media (width>=64rem){.contact-interactive-grid{grid-template-columns:1fr 1.25fr}}.contact-info-card,.contact-form-card{background:var(--bg-3);border:1px solid var(--border);border-radius:var(--radius-xl);padding:2.25rem;position:relative}.contact-quick-actions{gap:1rem;display:grid}.contact-copy-item{border:1px solid var(--border);border-radius:var(--radius-md);background:#ffffff06;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.15rem;transition:all .25s;display:flex}.contact-copy-item:hover{background:#f9731608;border-color:#f9731659}.contact-copy-left{align-items:center;gap:.85rem;display:flex}.contact-copy-icon{font-size:1.35rem;line-height:1}.contact-copy-label{color:var(--text-3);font-size:.75rem;display:block}.contact-copy-value{color:var(--white);margin-top:.15rem;font-size:.9rem;font-weight:600;display:block}.copy-btn{border:1px solid var(--border-2);color:var(--text-2);cursor:pointer;background:#ffffff0d;border-radius:6px;flex-shrink:0;padding:.45rem .85rem;font-size:.78rem;font-weight:600;transition:all .2s}.copy-btn:hover{background:var(--accent);color:#080e1a;border-color:var(--accent)}.copy-btn.copied{border-color:var(--accent);background:#f9731626}.portfolio-form{gap:1.15rem;margin-top:1.25rem;display:grid}.form-row{gap:1rem;display:grid}@media (width>=36rem){.form-row{grid-template-columns:1fr 1fr}}.form-group{flex-direction:column;gap:.45rem;display:flex}.form-group label{color:var(--text-2);font-size:.82rem;font-weight:600}.form-group label .required{color:var(--accent)}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--border-2);border-radius:var(--radius-sm);color:var(--white);font-size:.88rem;font-family:var(--font-sans);background:#080e1ab3;padding:.75rem .95rem;transition:all .25s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #f9731626}.form-group textarea{resize:vertical;min-height:90px}.form-submit-btn{justify-content:center;align-items:center;gap:.65rem;width:100%;margin-top:.5rem;padding:.9rem;font-size:.95rem;font-weight:700;display:flex}.form-feedback{border-radius:var(--radius-sm);margin-top:.75rem;padding:.85rem 1rem;font-size:.85rem;line-height:1.5;animation:.3s feedbackIn}@keyframes feedbackIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.form-feedback.is-success{color:#34d399;background:#10b9811f;border:1px solid #10b98159}.form-feedback.is-error{color:#f87171;background:#ef44441f;border:1px solid #ef444459}.formation-section-block{margin-top:2rem}.formation-subhead{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding-bottom:.75rem;display:flex}.formation-subhead-title{align-items:center;gap:.65rem;display:flex}.formation-subhead-icon{font-size:1.35rem;line-height:1}.formation-subhead-title h3{color:var(--white);letter-spacing:-.01em;margin:0;font-size:1.25rem;font-weight:700}.formation-subhead-inst{color:var(--text-2);background:var(--bg-3);border:1px solid var(--border);border-radius:999px;padding:.35rem .85rem;font-size:.84rem;font-weight:500}.acad-showcase-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem;display:grid}.acad-card{background:var(--bg-3);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;padding:1.5rem;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;position:relative;overflow:hidden}.acad-card:before{content:"";opacity:.8;background:linear-gradient(90deg,#3b82f6 0%,#60a5fa 100%);height:3px;position:absolute;top:0;left:0;right:0}.acad-card:hover{border-color:#60a5fa73;transform:translateY(-3px);box-shadow:0 12px 28px #00000059}.acad-card-top{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.85rem;display:flex}.acad-level-tag{color:#60a5fa;background:#3b82f61a;border:1px solid #3b82f640;border-radius:999px;padding:.25rem .65rem;font-size:.78rem;font-weight:600}.acad-year-pill{font-size:.9rem;font-weight:800;font-family:var(--font-display);color:var(--accent);background:#f973161a;border:1px solid #f973164d;border-radius:999px;padding:.2rem .65rem}.acad-major-title{color:var(--white);margin:0 0 .4rem;font-size:1.2rem;font-weight:700;line-height:1.3}.acad-inst-line{color:var(--text-2);margin:0;font-size:.86rem}.cert-showcase-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.15rem;display:grid}.cert-card{background:var(--bg-3);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;padding:1.25rem;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex}.cert-card:hover{border-color:#f9731666;transform:translateY(-2px);box-shadow:0 10px 24px #0000004d}.cert-card-top{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.65rem;display:flex}.cert-category-tag{color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;font-size:.74rem;font-weight:600}.cert-year-tag{color:var(--text-3);background:var(--bg-2);border:1px solid var(--border);border-radius:6px;padding:.15rem .45rem;font-size:.74rem;font-weight:600}.cert-title{color:var(--white);margin:0;font-size:1.1rem;font-weight:700;line-height:1.35}.cert-issuer-line{color:#60a5fa;margin:.45rem 0 0;font-size:.84rem;font-weight:500}input,select,textarea,.skill-search-input{font-size:16px!important}.acad-showcase-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.cert-showcase-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}.case-tabs-nav,.hub-nav,.skill-category-tabs,.trajectory-filter-nav{-webkit-overflow-scrolling:touch;scrollbar-width:none}.case-tabs-nav::-webkit-scrollbar{display:none}.hub-nav::-webkit-scrollbar{display:none}.skill-category-tabs::-webkit-scrollbar{display:none}.trajectory-filter-nav::-webkit-scrollbar{display:none}@media (width<=48rem){.site-header-bar{padding:.75rem 0}.brand{font-size:1.1rem}.menu-trigger{touch-action:manipulation;min-width:2.75rem;min-height:2.75rem;padding:.5rem .85rem;font-size:.85rem}.mobile-nav{-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border-2);background:#0d1629fa;padding:.75rem 1rem 1.5rem;box-shadow:0 16px 36px #00000080}.mobile-nav a{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:.95rem 1rem;font-size:1rem;font-weight:600;display:flex}.mobile-nav a:last-child{border-bottom:none}.hero{min-height:auto;padding:3.5rem 0 3rem}.hero-badge{margin-bottom:.85rem;font-size:.72rem}.hero-visual{max-width:19rem;margin-top:1rem}.hero-visual-frame{padding:1rem 1rem 0}.float-card--l{top:15%;left:.25rem}.float-card--r{bottom:12%;right:.25rem}.float-card{padding:.5rem .75rem}.float-card b{font-size:.82rem}.float-card small{font-size:.65rem}.section{padding:3.75rem 0}.section-head{margin-bottom:2.25rem}.acad-card,.cert-card,.exp-card,.hub-card,.product-body,.case-showcase,.traj-card,.bridge-node{padding:1.25rem 1.1rem}.contact-info-card,.contact-form-card,.trajectory-bridge-banner{padding:1.35rem 1.15rem}.modal-drawer{padding:1.5rem 1.15rem 2.5rem}.modal-close-btn{width:2.75rem;height:2.75rem;top:1rem;right:1rem}.traj-timeline-item{grid-template-columns:2rem 1fr;gap:.75rem}.traj-step-pill{width:2rem;height:2rem;margin-top:1rem;font-size:.72rem}.traj-card-top{flex-direction:column;align-items:flex-start;gap:.45rem}.hub-identity{flex-direction:column;gap:.85rem}.hub-large-flag{font-size:2.25rem}.exp-card-head{flex-direction:column;align-items:flex-start;gap:.5rem}.exp-filters{gap:.4rem}.exp-filter-btn{touch-action:manipulation;justify-content:center;align-items:center;min-height:42px;padding:.55rem .85rem;font-size:.8rem;display:inline-flex}.contact-copy-item{flex-direction:column;align-items:flex-start;gap:.65rem}.contact-copy-item .copy-btn{align-self:flex-start;min-height:38px;padding:.45rem 1rem}.contact-copy-value{word-break:break-all}.quick-contact-trigger{width:3.25rem;height:3.25rem}#back-to-top{width:2.75rem;height:2.75rem;bottom:calc(max(1.25rem, env(safe-area-inset-bottom)) + 3.85rem)}}@media (width<=24rem){.wrap{width:calc(100% - 1.5rem)}.btn{padding:.75rem 1.15rem;font-size:.82rem}.hero h1{font-size:1.85rem}}
