/* Mamba's dark and electric-lime direction, inspired by the supplied reference. */
:root{--ink:#0a0c08;--deep:#0c100c;--green:#d1ff3f;--lime:#d1ff3f;--cream:#0f130e;--paper:#0e110d;--coral:#d1ff3f;--muted:#b7c0b0;--line:#ffffff1b;--section-space:92px}
body{background:#0e110d;color:#f4f7ed}
::selection{background:#d1ff3f;color:#0a0c08}
.home header,.interior .top{background:#090b08;color:#fff;border-bottom:1px solid #ffffff16}
.home header{position:relative;z-index:20;padding:0}
.home .nav,.interior .nav{min-height:82px;gap:24px}
.home .brand,.interior .brand{white-space:nowrap;color:#fff;font-size:1.08rem;line-height:1.03;font-weight:800;letter-spacing:-.045em}
.home .brand-secondary{display:block;font-size:.54rem;letter-spacing:.13em;font-weight:600;color:#bfc9b7;margin-top:4px}
.home .mark{width:32px;height:32px;flex:none;background:var(--green)}
.home .navlinks,.interior .nav nav{gap:clamp(10px,2vw,26px);font-size:.825rem;font-weight:700;color:#ebf1e5}
.home .navlinks a:not(.btn):hover,.interior .nav nav a:hover{color:var(--green)}
.home .nav-cta,.interior .nav-cta{white-space:nowrap;min-height:43px;padding:10px 17px;border:1px solid var(--green);border-radius:999px;background:transparent;color:#f3ffe0;font-size:.8rem}
.home .nav-cta:hover,.interior .nav-cta:hover{background:var(--green);color:#0a0c08}
.home .nav-cta span,.interior .nav-cta span{border-radius:50%;background:var(--green);color:#09100a;display:inline-grid;place-items:center;width:25px;height:25px;font-size:.94rem}
.home .nav-cta:hover span,.interior .nav-cta:hover span{background:#0a0c08;color:var(--green)}
.home .hero{min-height:780px;padding:0;background:#080b07;isolation:isolate;overflow:hidden}
.home .hero:after{display:none}
.home .hero-media{position:absolute;inset:0;z-index:-2;overflow:hidden}
.home .hero-media img{width:100%;height:100%;object-fit:cover;object-position:right center;display:block}
.home .hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#080b07 0%,#080b07ee 29%,#080b07a6 49%,#080b0720 78%),linear-gradient(0deg,#080b07 0%,transparent 30%)}
.home .hero .grid{z-index:-1;opacity:.12;mask-image:linear-gradient(90deg,black,transparent 60%)}
.home .hero-content{display:block;min-height:620px;padding-top:106px;padding-bottom:40px}
.home .hero-copy{max-width:710px}
.home .hero-badge{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;background:#1a1f15b8;border:1px solid #d1ff3f3a;border-radius:100px;color:var(--green);font-size:.7rem}
.home .hero-badge span{font-size:1rem}
.home .hero h1{font-size:clamp(3.65rem,6.2vw,7rem);line-height:1.02;letter-spacing:-.064em;font-weight:800;max-width:740px;margin:24px 0 24px;color:#fff;text-wrap:initial}
.home .hero h1 em{color:var(--green)}
.home .hero p{max-width:530px;font-size:1.12rem;line-height:1.65;color:#e0e7d8;margin:0 0 28px}
.home .hero .actions{gap:12px}
.home .hero .btn{min-height:50px;border-radius:100px;padding:13px 21px}
.home .hero .btn-ghost{background:#1319129c;border-color:#f6ffee79}
.home .hero-signature{display:flex;align-items:center;gap:12px;margin-top:47px;font:.75rem/1.5 "DM Mono",monospace;color:#c4d0b8;letter-spacing:.03em}
.home .signature-line{height:1px;width:29px;background:var(--green)}
.home .hero-capabilities{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-bottom:31px}
.home .hero-capabilities a{display:flex;flex-direction:column;gap:2px;min-height:108px;padding:18px;background:#151a14d9;border:1px solid #ffffff24;border-radius:14px;backdrop-filter:blur(12px);transition:transform .2s,border-color .2s}
.home .hero-capabilities a:hover{transform:translateY(-4px);border-color:var(--green)}
.home .hero-capabilities a>span{font:.72rem "DM Mono",monospace;color:var(--green);margin-bottom:4px}
.home .hero-capabilities strong{font-size:.95rem;line-height:1.3;color:#fff}
.home .hero-capabilities small{font-size:.77rem;color:#b8c7af;line-height:1.5}
.home .ticker{background:#d1ff3f;color:#080c07}
.home .intro,.home .heritage{background:#10150f;color:#f6f8ef}
.home .intro .section-head p,.home .heritage .section-head p{color:#bfcbbb}
.home .intro .eyebrow,.home .heritage .eyebrow{color:var(--green)!important}
.home .services{gap:13px;border:0}
.home .service{background:#191f18;color:#fff;border:1px solid #ffffff20;border-radius:16px;min-height:253px;padding:26px;cursor:pointer}
.home .service:hover{background:#222c1b;border-color:#d1ff3f8c}
.home .service .icon{display:grid;place-items:center;width:42px;height:42px;background:#d1ff3f14;border:1px solid #d1ff3f34;border-radius:11px;color:var(--green);font-size:1.4rem}
.home .service h3{margin:32px 0 12px;letter-spacing:-.035em}
.home .service p{color:#bfcbb9}
.home .service .arrow{color:var(--green)}
.home .systems{background:#0a0e0a}
.home .systems:before{background:radial-gradient(circle,#d1ff3f1e,transparent 64%)}
.home .systems .lead{color:#c4d0c1;font-size:1.08rem}
.home .solution-map{background:#111711;border-color:#d1ff3f48;border-radius:17px;padding:24px}
.home .map-card{background:#1c231b;border:1px solid #ffffff1b;border-radius:12px}
.home .map-card p{color:#bbcab6}
.home .map-card.primary{background:var(--green);color:#0d120b}
.home .map-card.primary p{color:#27351e}
.home .timeline{border-top-color:#d1ff3f69}
.home .moment{border-left-color:#ffffff2c}
.home .moment .year{color:var(--green)}
.home .moment p{color:#bfcbb9}
.home .cta{background:#d1ff3f;color:#101409}
.home .cta:after{color:#ffffff45}
.home .cta .eyebrow{color:#243815!important}
.home .cta .btn{background:#0b0e09;color:#fff;border-radius:100px}
.home footer,.interior footer{background:#080b08;color:#cad4c5}
.home a:focus-visible,.interior a:focus-visible,.interior summary:focus-visible{outline:3px solid var(--green);outline-offset:4px}

/* Interior pages use the same palette, without losing their content hierarchy. */
.interior{background:#0f130e;color:#eaf0e4}
.interior .top{padding:0}
.interior .brand i{background:var(--green)}
.interior .nav nav{display:flex;flex-wrap:wrap;align-items:center}
.interior .hero,.interior .it-hero,.interior .services-hero{background:radial-gradient(circle at 80% 5%,#263e17 0,transparent 35%),#0b100a;color:#fff;border-bottom:1px solid #d1ff3f37}
.interior .hero p,.interior .it-hero p,.interior .services-hero p{color:#cbd7c3}
.interior .kicker{color:var(--green)!important}
.interior .content,.interior .section,.interior .catalogue{background:#10150f;color:#eef4e9}
.interior main>section:nth-of-type(even):not(.cta):not(.hero):not(.it-hero):not(.services-hero){background:#151b14}
.interior .content p,.interior .section p,.interior .catalogue p{color:#c5d2c0}
.interior .lead{color:#e5eddf!important}
.interior .card,.interior .grid4 article{background:#1e251c;border:1px solid #ffffff24;border-radius:13px;color:#fff}
.interior .card h3,.interior .grid4 article h3{color:#fff}
.interior .card p,.interior .grid4 article p{color:#c2d0bd}
.interior a.card:hover,.interior .service-grid .card:hover{background:#293325;border-color:var(--green);color:#fff}
.interior .panel,.interior .outcome{background:#e5ffba;border-color:#d1ff3f;color:#10160a;border-radius:12px}
.interior .panel h3,.interior .outcome h3{color:#10160a}
.interior .panel p,.interior .outcome p,.interior .dark-section .panel p{color:#314025}
.interior .dark-section{background:#090d09;color:#fff}
.interior .dark-section .panel{background:#e5ffba;color:#10160a}
.interior .dark-section .panel h3{color:#10160a}
.interior .steps article{background:#1d2919;border-color:var(--green);border-radius:12px}
.interior .steps article h3{color:#fff}
.interior .steps article p{color:#d6e6cc}
.interior .faq details{border-bottom-color:#ffffff30}
.interior .faq summary{color:#f2f7eb}
.interior .faq summary:after{color:var(--green)}
.interior .faq details p{color:#c0ceb9}
.interior .button{background:var(--green);color:#091008;border-radius:100px}
.interior .button.dark,.interior .dark-section .panel .button{background:#0a1108;color:#fff}
.interior .cta{background:#d1ff3f;color:#0e150a}
.interior .cta h2,.interior .cta p{color:#0e150a}
.interior .cta .kicker{color:#24371a!important}
.interior .cta .button{background:#0b0e09;color:#fff}
.interior .form .field{color:#f2f7ec}
.interior .form input,.interior .form select,.interior .form textarea{background:#1c2518;color:#fff;border-color:#667b5c}
.interior .form input::placeholder,.interior .form textarea::placeholder{color:#b1c2ac}
.interior .breadcrumbs{color:#c2d3b9}
.interior .expansion-summary{background:#1b2417;border-top-color:#d1ff3f49}
.interior .guide-intro .lead{color:#eaf3e4}
.interior .guide-nav{background:#252e20;border-color:var(--green);border-radius:13px}
.interior .guide-nav h2{color:#fff}
.interior .guide-nav a:not(.button){color:#e4f4d3}
.interior .guide-copy p{color:#c8d4c3}
.interior .guide-copy article+article{border-color:#ffffff30}
.interior .expansion-faq{background:#171e15;border-color:#ffffff28}
.interior .expansion-faq .kicker,.interior .expansion-related .kicker,.interior .service-grid .go,.interior .expansion-related .go{color:var(--green)}
.interior .source-note a{color:var(--green)}
.interior .catalogue-head p{color:#c5d2c0}
.interior .pills span{background:#1a2517;color:#e5f8d5;border-color:#a6c46966}
@media(max-width:1120px){.home .navlinks,.interior .nav nav{gap:12px}.home .nav-cta,.interior .nav-cta{padding:9px 12px}}
@media(max-width:950px){.home .nav,.interior .nav{flex-wrap:wrap;justify-content:space-between;padding-block:16px}.home .navlinks,.interior .nav nav{order:3;width:100%;display:flex;justify-content:center;flex-wrap:wrap;gap:12px 18px}.home .hero-content{min-height:590px}.home .hero h1{font-size:clamp(3.15rem,8vw,5.4rem)}.home .hero-capabilities{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){:root{--section-space:62px}.home .brand,.interior .brand{font-size:.94rem}.home .nav,.interior .nav{min-height:0;gap:14px}.home .navlinks,.interior .nav nav{justify-content:flex-start;white-space:nowrap;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding-bottom:4px;font-size:.78rem}.home .nav-cta,.interior .nav-cta{margin-left:auto}.home .hero{min-height:0}.home .hero-content{min-height:650px;padding-top:80px;padding-bottom:38px}.home .hero-media img{object-position:70% center;opacity:.66}.home .hero-media:after{background:linear-gradient(90deg,#080b07de,#080b0770),linear-gradient(0deg,#080b07 2%,transparent 55%)}.home .hero h1{font-size:clamp(2.9rem,11vw,4.5rem);line-height:1.03}.home .hero p{font-size:1rem}.home .hero-signature{margin-top:36px}.home .hero-capabilities{gap:8px;padding-bottom:20px}.home .hero-capabilities a{min-height:124px;padding:14px}.home .hero-capabilities strong{font-size:.87rem}.home .hero-capabilities small{font-size:.7rem}.home .services{grid-template-columns:1fr}.interior .nav nav{gap:18px}.interior .hero,.interior .it-hero,.interior .services-hero{padding:74px 0}}
@media(max-width:400px){.home .hero h1{font-size:2.75rem}.home .hero .actions{flex-direction:column;align-items:flex-start}.home .hero-content{min-height:700px}.home .hero-capabilities{grid-template-columns:1fr 1fr}.home .hero-capabilities a{min-height:140px}}
/* The supplied Mamba identity replaces the temporary CSS symbol throughout the site. */
.home .brand-logo,.interior .brand-logo{display:block;flex:none;width:42px;height:42px;object-fit:cover;border-radius:9px;background:#004b39;box-shadow:0 0 0 1px #d1ff3f4d}
.home footer .brand-logo{width:96px;height:96px;border-radius:14px}
.interior .brand{display:inline-flex;align-items:center;gap:10px}
.interior .brand-portrait{margin:24px 0 0;max-width:360px}
.interior .brand-portrait img{display:block;width:100%;height:auto;border:1px solid #d1ff3f45;border-radius:16px}
@media(max-width:650px){.home header .brand-logo,.interior header .brand-logo{width:38px;height:38px}}
/* A slim contact strip sits above a floating, persistent navigation bar. */
.home{overflow-x:clip}
.utility-bar{background:#070b07;color:#d3e1cd;border-bottom:1px solid #d1ff3f1e;font-family:Manrope,Arial,sans-serif;font-size:.78rem;line-height:1.45}
.utility-bar .utility-inner{display:flex;align-items:center;justify-content:space-between;gap:12px 24px;min-height:39px;padding-block:7px}
.utility-contacts,.utility-social{display:flex;align-items:center;gap:clamp(9px,1.5vw,20px);flex-wrap:wrap}
.utility-bar a{color:inherit;text-decoration:none;white-space:nowrap}
.utility-bar a:hover,.utility-bar a:focus-visible{color:#d1ff3f}
.utility-contacts a{display:inline-flex;align-items:center;gap:6px}
.utility-social>span{color:#d1ff3f;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;font-weight:800}
.home header,.interior .top{position:sticky;top:10px;z-index:80;width:100%;margin:10px 0 0;padding:0;background:transparent;border:0}
.home header .nav,.interior .top .nav{min-height:100px;padding:12px 20px;border:1px solid #d1ff3f54;border-radius:20px;background:rgba(13,19,12,.94);box-shadow:0 16px 42px #0008,0 1px 0 #ffffff19 inset;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.home header .brand-logo,.interior header .brand-logo{width:68px;height:68px;border-radius:12px}
.home footer .brand-logo{width:140px;height:140px}
@media(max-width:900px){.utility-bar .utility-inner{justify-content:center}.utility-contacts,.utility-social{justify-content:center}.home header .nav,.interior .top .nav{min-height:0}}
@media(max-width:650px){.utility-bar .utility-inner{flex-direction:column;gap:7px}.utility-social{gap:7px 13px}.utility-social>span{display:none}.home header,.interior .top{top:6px;margin-top:7px}.home header .nav,.interior .top .nav{padding:12px 14px;border-radius:16px;gap:10px}.home header .brand-logo,.interior header .brand-logo{width:56px;height:56px}.home footer .brand-logo{width:112px;height:112px}}
@media(max-width:450px){.utility-bar{font-size:.72rem}.utility-social{font-size:.72rem}.home header .brand,.interior header .brand{font-size:.84rem;letter-spacing:-.04em}.home header .nav-cta,.interior header .nav-cta{padding:7px 9px;font-size:.72rem}}
/* Keep the headline at exactly three lines: TECHNOLOGY / THAT MOVES YOU / FORWARD. */
.home .hero-copy,.home .hero h1{max-width:980px}
.home .hero h1{white-space:nowrap}
@media(max-width:650px){.home .hero h1{font-size:clamp(1.95rem,8.2vw,3.25rem)}}
@media(max-width:400px){.home .hero h1{font-size:clamp(1.8rem,8vw,2.1rem)}}
/* Use the open area between the copy and photograph for Mamba's service story. */
.home .hero-content{position:relative;min-height:0;padding-bottom:100px}
.home .hero-signature{position:absolute;left:64%;top:49%;display:flex;flex-direction:column;align-items:flex-start;gap:9px;width:250px;min-height:155px;margin:0;padding:21px 23px;background:#161c15d9;border:1px solid #d1ff3f70;border-radius:14px;backdrop-filter:blur(14px);box-shadow:0 24px 50px #0008;z-index:2}
.home .hero-signature .signature-kicker{font:.66rem/1.5 "DM Mono",monospace;letter-spacing:.1em;color:var(--green)}
.home .hero-signature strong{font-size:1.04rem;line-height:1.32;letter-spacing:-.025em;color:#fff}
.home .hero-signature small{font-size:.72rem;line-height:1.5;color:#c9d8bd}
@media(max-width:1100px){.home .hero-signature{left:auto;right:0;top:53%;width:222px}}
@media(max-width:750px){.home .hero-content{padding-bottom:38px}.home .hero-signature{position:static;width:min(100%,330px);min-height:0;margin-top:28px;padding:18px 20px;box-shadow:none}.home .hero-signature strong br{display:none}}
