:root{--ink:#0b1425;--navy:#07101e;--navy2:#101c30;--blue:#2ca9ee;--cyan:#67dcfa;--lime:#b9f49a;--muted:#66738a;--line:#e5eaf0;--paper:#f7f9fc;--white:#fff;--radius:20px;--shadow:0 22px 60px rgba(12,29,52,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:#fff;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}button{font:inherit}img{max-width:100%;height:auto}::selection{background:#9be6fa;color:#081322}.container{width:min(1160px,calc(100% - 44px));margin-inline:auto}.skip-link{position:absolute;z-index:20;top:-60px;left:16px;background:#fff;color:#111;padding:12px}.skip-link:focus{top:12px}a:focus-visible,button:focus-visible{outline:3px solid #50c9ff;outline-offset:4px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:#278ab9}.eyebrow:before{content:"";width:23px;height:2px;background:currentColor}.section-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:34px}.section-head h2{font-size:clamp(31px,4vw,51px);line-height:1.11;letter-spacing:-.045em;margin:16px 0 0;max-width:750px}.section-head p{line-height:1.75;max-width:365px;color:var(--muted);margin:0}.section{padding:105px 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:49px;padding:14px 22px;border-radius:11px;font-size:14px;font-weight:750;border:1px solid transparent;transition:.18s transform,.18s background,.18s border-color;cursor:pointer}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--cyan);color:#041522}.button-primary:hover{background:#a9efff}.button-outline{border-color:rgba(216,237,250,.3);color:#fff;background:rgba(255,255,255,.04)}.button-outline:hover{background:rgba(255,255,255,.12)}.button-dark{background:var(--navy);color:#fff}.button-dark:hover{background:#1a3452}.arrow{font-size:20px;line-height:1}
.site-header{position:sticky;z-index:100;top:0;background:rgba(7,16,30,.96);border-bottom:1px solid rgba(177,215,240,.13);backdrop-filter:blur(17px)}.nav-row{display:flex;align-items:center;gap:25px;min-height:82px}.site-brand{display:flex;align-items:center;gap:12px;min-width:200px}.brand-image{width:141px;height:39px;object-fit:contain;background:#fff;border-radius:5px;padding:4px 7px}.brand-rule{height:26px;width:1px;background:#3d5168}.brand-descriptor{font-size:10px;letter-spacing:.12em;color:#9baabd;line-height:1.5;font-weight:700}.nav-links{margin-left:auto;display:flex;align-items:center;gap:28px}.nav-links a{font-weight:650;font-size:13px;color:#c9d4e2;transition:color .2s}.nav-links a:hover{color:#7ee5ff}.nav-cta{padding:11px 16px;border:1px solid #4f7488;border-radius:9px;color:#f8fcff!important}.nav-cta:hover{border-color:#7ee5ff}.mobile-toggle{display:none;border:1px solid #405064;border-radius:9px;background:transparent;color:#fff;padding:10px 12px;cursor:pointer}
.hero{color:#fff;position:relative;overflow:hidden;background:radial-gradient(circle at 75% 18%,rgba(31,115,159,.27),transparent 33%),linear-gradient(125deg,#07101e 16%,#0b1b2d 60%,#07111f)}.hero:before{position:absolute;inset:0;content:"";opacity:.36;background-image:linear-gradient(rgba(79,139,176,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(79,139,176,.09) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(90deg,transparent 6%,#000 100%)}.hero .container{position:relative}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:58px;min-height:575px;padding:85px 0 90px}.hero .eyebrow{color:#7cdbfa}.hero h1{font-size:clamp(43px,5.3vw,73px);line-height:1.07;letter-spacing:-.059em;margin:23px 0 25px;max-width:650px;font-weight:800}.hero h1 em{font-style:normal;color:#70dcfa}.hero-text{color:#b4c5d5;font-size:17px;line-height:1.8;max-width:575px;margin:0}.hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:32px}.hero-foot{display:flex;flex-wrap:wrap;align-items:center;gap:11px;margin-top:43px;color:#8ea6b9;font-size:12px}.hero-foot span{padding:9px 12px;border:1px solid #30465c;border-radius:50px;background:#102239}
.engineering-graphic{position:relative;padding:28px;border:1px solid rgba(141,202,238,.23);border-radius:22px;background:linear-gradient(160deg,rgba(27,53,76,.88),rgba(8,21,37,.92));box-shadow:0 38px 110px rgba(0,0,0,.25);isolation:isolate}.engineering-graphic:before{content:"";position:absolute;inset:10px;border:1px dashed #2c5471;border-radius:16px;opacity:.38;pointer-events:none}.graphic-top{display:flex;justify-content:space-between;align-items:center;color:#80acd0;font-size:10px;font-weight:800;letter-spacing:.15em}.status-dot{width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:8px;background:var(--lime);box-shadow:0 0 12px var(--lime)}.graphic-title{font-size:26px;font-weight:800;letter-spacing:-.04em;margin:35px 0 8px}.graphic-desc{color:#9eb0c0;font-size:13px;line-height:1.6;margin:0 0 27px}.system-flow{display:grid;grid-template-columns:1fr 24px 1.25fr 24px 1fr;align-items:stretch;gap:5px}.flow-node{background:#122c42;border:1px solid #315876;border-radius:12px;min-height:105px;padding:13px 9px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:7px}.flow-node.primary{background:linear-gradient(160deg,#1c607e,#133b5e);border-color:#48c9ea}.node-icon{font-size:21px;line-height:1}.flow-node strong{font-size:13px;letter-spacing:.015em}.flow-node small{font-size:10px;color:#a9cadc}.flow-arrow{color:#62d9ee;display:flex;align-items:center;justify-content:center;font-size:20px}.graphic-bottom{border-top:1px solid #284055;margin-top:24px;padding-top:17px;display:flex;justify-content:space-between;gap:12px;font-size:11px;color:#9fb3c5}.mini-code{font-family:"SFMono-Regular",Consolas,monospace;color:#78dbf6}.float-tag{position:absolute;right:-15px;top:-19px;background:#dbfaff;color:#113248;font-weight:800;font-size:11px;padding:12px 15px;border-radius:8px;box-shadow:0 12px 35px rgba(0,0,0,.15)}
.trust-strip{border-bottom:1px solid var(--line);background:#f8fafc}.trust-row{min-height:105px;display:grid;grid-template-columns:repeat(4,1fr);align-items:center}.trust-item{display:flex;align-items:center;gap:15px;padding:20px 25px;border-right:1px solid #e1e8ef}.trust-item:first-child{padding-left:0}.trust-item:last-child{border-right:0}.trust-index{font-family:Consolas,monospace;color:#50a5c6;font-size:13px}.trust-item strong{font-size:13px;line-height:1.5}.services{background:var(--paper)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.service-card{padding:30px 28px;border-radius:17px;background:white;border:1px solid #e7ecf2;box-shadow:0 6px 21px rgba(9,28,51,.025);transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.service-icon{height:47px;width:47px;border-radius:13px;display:grid;place-items:center;font-size:22px;background:#e8f8ff;color:#086c9a;margin-bottom:27px}.service-card h3{font-size:19px;letter-spacing:-.02em;margin:0 0 12px}.service-card p{font-size:14px;line-height:1.75;color:#627187;margin:0}.service-card .service-tags{margin-top:20px;color:#3183a4;font-weight:750;font-size:11px;letter-spacing:.03em;line-height:1.65}
.projects{background:#fff}.project-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.filter-group{display:flex;gap:8px;flex-wrap:wrap}.filter{font-size:12px;font-weight:750;color:#637489;background:#f2f6f9;border:1px solid #e2eaf0;padding:10px 16px;border-radius:40px;cursor:pointer}.filter:hover{color:#125173}.filter[aria-pressed="true"]{color:#fff;border-color:#102a42;background:#102a42}.project-count{color:#8490a0;font-size:12px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.project-card{display:flex;flex-direction:column;border:1px solid #e1e8ee;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 10px 28px rgba(10,25,46,.04);min-width:0}.project-card[hidden]{display:none}.project-art{height:175px;position:relative;overflow:hidden;padding:22px 24px;display:flex;justify-content:space-between;align-items:flex-start;background:radial-gradient(circle at 84% 0,rgba(95,205,254,.32),transparent 50%),linear-gradient(135deg,#122a44,#071321)}.project-art:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:27px 27px;opacity:.55}.project-number,.art-symbol,.circuit{position:relative;z-index:1}.project-number{font:700 12px Consolas,monospace;color:#9bc5d9;letter-spacing:.1em}.art-symbol{align-self:center;font-size:47px;color:#b6ecff;font-weight:700;font-family:Consolas,monospace;letter-spacing:-.1em;text-shadow:0 4px 29px #48bcdf}.circuit{align-self:flex-end;font:700 10px Consolas,monospace;color:#78e4db;border:1px solid #456780;border-radius:6px;padding:7px 9px}.project-art.violet{background:radial-gradient(circle at 95% 2%,rgba(164,129,248,.29),transparent 48%),linear-gradient(135deg,#20284d,#0a1527)}.project-art.teal{background:radial-gradient(circle at 95% 2%,rgba(92,222,204,.25),transparent 48%),linear-gradient(135deg,#103c45,#0b1d2a)}.project-art.orange{background:radial-gradient(circle at 95% 2%,rgba(255,172,109,.24),transparent 48%),linear-gradient(135deg,#3d2930,#111a2b)}.project-body{padding:24px 24px 26px;display:flex;flex-direction:column;flex:1}.project-meta{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:15px}.stage{font-size:10px;font-weight:800;letter-spacing:.04em;background:#e8f4ff;color:#24618d;border-radius:40px;padding:7px 10px}.stage.prototype{background:#e8f7e6;color:#2e753e}.project-cat{font-size:11px;color:#7e8a9a}.project-body h3{font-size:20px;line-height:1.3;letter-spacing:-.025em;margin:0 0 12px}.project-body p{font-size:13px;line-height:1.75;color:#657286;margin:0 0 22px}.chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto}.chips span{font-size:10px;padding:7px 9px;border:1px solid #e3e9ed;background:#f8fafc;color:#4f6077;border-radius:5px;font-weight:700}.project-note{margin-top:24px;color:#718095;font-size:12px;line-height:1.8;border-left:3px solid #84cceb;padding-left:16px}
.references{background:#0c1b2d;color:#fff}.references .eyebrow{color:#72d9f4}.references .section-head p{color:#a8b9cc}.reference-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.reference-card{padding:27px;background:#122940;border:1px solid #29445c;border-radius:15px}.reference-card .reference-code{font:700 11px Consolas,monospace;color:#73d7eb}.reference-card h3{font-size:20px;letter-spacing:-.02em;margin:26px 0 11px}.reference-card p{font-size:13px;color:#aebfd0;line-height:1.8;margin:0}.tech-stack{display:flex;flex-wrap:wrap;gap:9px;margin-top:33px}.tech-stack span{border:1px solid #31516a;background:#10253b;color:#d3e5ef;padding:9px 14px;font:700 11px Consolas,monospace;border-radius:7px}.reference-note{margin:20px 0 0;color:#91abc0;font-size:12px;line-height:1.8}
.approach{background:#f7f9fb}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.step{position:relative;padding-top:22px;border-top:2px solid #b9dbe9}.step:before{content:"";position:absolute;top:-5px;left:0;width:8px;height:8px;background:#198fc1;border-radius:100%}.step-num{font:700 13px Consolas,monospace;color:#3685aa}.step h3{font-size:18px;line-height:1.35;margin:19px 0 9px}.step p{font-size:13px;color:#68778b;line-height:1.8;margin:0}
.about{background:#fff}.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:center}.about-visual{min-height:325px;background:radial-gradient(circle at 15% 5%,rgba(60,210,235,.32),transparent 50%),linear-gradient(140deg,#102a41,#0a1727);border-radius:21px;color:#fff;padding:38px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.about-visual:after{content:"";position:absolute;width:220px;height:220px;border:1px solid #365b72;right:-64px;bottom:-92px;border-radius:50%;box-shadow:0 0 0 30px rgba(58,128,159,.06),0 0 0 60px rgba(58,128,159,.06)}.about-visual small{font-family:Consolas,monospace;color:#8fbcce;letter-spacing:.1em}.about-visual strong{display:block;max-width:330px;font-size:35px;letter-spacing:-.035em;line-height:1.13}.about-visual strong span{color:#71dff8}.about-content h2{font-size:clamp(33px,4vw,49px);line-height:1.14;letter-spacing:-.04em;margin:19px 0 23px}.about-content p{color:#627184;line-height:1.9;font-size:15px;margin:0 0 17px}.about-points{display:flex;gap:12px;flex-wrap:wrap;margin-top:23px}.about-points span{border-radius:8px;padding:10px 13px;background:#f0f8fb;color:#1e6888;font-size:12px;font-weight:800}
.contact{padding:90px 0;background:#eaf5f9}.contact-panel{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}.contact h2{font-size:clamp(36px,5vw,59px);letter-spacing:-.045em;line-height:1.08;margin:16px 0 19px}.contact p{color:#556a7b;line-height:1.8;font-size:15px;max-width:555px}.contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.contact-details{background:#fff;border-radius:18px;padding:27px;box-shadow:0 17px 45px rgba(25,67,89,.07)}.contact-row{display:block;padding:17px 0;border-bottom:1px solid #e6edf2}.contact-row:first-child{padding-top:0}.contact-row:last-child{border:0;padding-bottom:0}.contact-row small{display:block;color:#8190a0;font-weight:800;font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}.contact-row strong{font-size:16px;overflow-wrap:anywhere}.contact-row a:hover{color:#08789c}
.footer{background:#07101e;color:#9daec1;padding:31px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px}.footer-links{display:flex;gap:20px}.footer a:hover{color:#fff}
@media(max-width:1050px){.site-brand{min-width:unset}.nav-links{gap:16px}.hero-grid{gap:28px}.hero h1{font-size:clamp(39px,5vw,58px)}.trust-item{padding-inline:15px}.project-grid{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}.about-grid{gap:40px}}
@media(max-width:760px){.container{width:min(100% - 34px,1160px)}.section{padding:73px 0}.section-head{display:block;margin-bottom:28px}.section-head p{margin-top:18px}.site-header .nav-row{min-height:69px}.brand-image{width:122px;height:35px}.brand-rule,.brand-descriptor{display:none}.mobile-toggle{display:block;margin-left:auto}.nav-links{position:absolute;display:none;top:69px;left:0;right:0;margin:0;background:#0b1c2d;border-bottom:1px solid #28425a;padding:18px 21px 25px;flex-direction:column;align-items:stretch;gap:4px}.nav-links.open{display:flex}.nav-links a{padding:12px 8px;font-size:15px}.nav-links .nav-cta{text-align:center;margin-top:10px}.hero-grid{grid-template-columns:1fr;padding:64px 0 67px;min-height:unset;gap:53px}.hero h1{font-size:clamp(43px,8.3vw,62px)}.hero-text{font-size:15px}.hero-foot{margin-top:28px}.engineering-graphic{max-width:530px;margin-inline:auto;width:100%;padding:22px}.float-tag{right:-4px}.trust-row{grid-template-columns:repeat(2,1fr)}.trust-item:nth-child(2){border-right:0}.trust-item:nth-child(-n+2){border-bottom:1px solid #e1e8ef}.trust-item:nth-child(3){padding-left:0}.reference-grid,.steps{grid-template-columns:repeat(2,1fr)}.about-grid,.contact-panel{grid-template-columns:1fr;gap:35px}.about-visual{min-height:255px}.contact{padding:70px 0}}
@media(max-width:520px){.section-head h2{font-size:34px}.service-grid,.project-grid,.reference-grid,.steps{grid-template-columns:1fr}.project-toolbar{display:block}.project-count{margin:13px 0 0}.service-card{padding:24px}.trust-row{grid-template-columns:1fr 1fr}.trust-item{gap:7px;padding:16px 9px!important}.trust-item strong{font-size:11px}.trust-index{font-size:11px}.hero h1{font-size:42px}.graphic-title{font-size:22px}.system-flow{grid-template-columns:1fr 12px 1fr 12px 1fr;gap:2px}.flow-node{padding:8px 3px;min-height:96px}.flow-node strong{font-size:10px}.flow-node small{font-size:9px}.flow-arrow{font-size:15px}.node-icon{font-size:16px}.graphic-bottom{flex-direction:column}.footer-inner{display:block}.footer-links{margin-top:16px}.contact-details{padding:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* DROBUST featured case study / verified reference */
.featured-project{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);border:1px solid #e0e9ef;background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 15px 50px rgba(9,31,51,.07)}
.featured-project-image{display:block;min-height:380px;overflow:hidden;background:#0d2330}
.featured-project-image img{display:block;width:100%;height:100%;min-height:380px;object-fit:cover;transition:transform .3s}
.featured-project-image:hover img{transform:scale(1.025)}
.featured-project-text{padding:clamp(25px,4vw,48px);display:flex;flex-direction:column;align-items:flex-start}
.featured-project-type{margin-top:24px;font-size:10px;letter-spacing:.11em;font-weight:800;color:#3682a5}
.featured-project-text h3{font-size:clamp(25px,3vw,35px);line-height:1.17;letter-spacing:-.035em;margin:13px 0 16px}
.featured-project-text p{font-size:14px;line-height:1.85;color:#64778a;margin:0 0 20px}
.featured-project-link{margin-top:27px}
.verified-reference{display:grid;grid-template-columns:minmax(180px,.55fr) minmax(0,1fr);gap:32px;align-items:center;background:#122940;border:1px solid #29445c;border-radius:17px;padding:29px}
.verified-reference-logo{background:#fff;min-height:160px;display:flex;align-items:center;justify-content:center;border-radius:12px;padding:28px}
.verified-reference-logo img{max-width:100%;max-height:120px;object-fit:contain}
.verified-reference h3{font-size:25px;letter-spacing:-.02em;margin:10px 0}
.verified-reference p{font-size:14px;color:#bdcddd;line-height:1.8;margin:0 0 14px}
.verified-reference .reference-code{font:700 11px Consolas,monospace;color:#75dff2}
.verified-reference a{font-size:13px;color:#86e7fa;font-weight:800}
.verified-reference a:hover{text-decoration:underline}
@media(max-width:760px){.featured-project{grid-template-columns:1fr}.featured-project-image,.featured-project-image img{min-height:265px;max-height:340px}.featured-project-text{padding:28px}.verified-reference{grid-template-columns:1fr;gap:22px}.verified-reference-logo{min-height:110px}}

/* DROBUST official contact and social channels */
.button-whatsapp{background:#25d366;color:#07371b;border-color:#25d366}.button-whatsapp:hover{background:#66e597;border-color:#66e597}.footer-links{flex-wrap:wrap;row-gap:10px}.contact-row a{overflow-wrap:anywhere}

/* DROBUST office address and interactive location */
.business-address{font-style:normal;font-size:15px;font-weight:650;line-height:1.65;overflow-wrap:anywhere}.business-address span,.location-copy address span{display:block}.location-section{margin-top:36px;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:24px;align-items:stretch;background:#fff;padding:24px;border:1px solid #dbe8ef;border-radius:20px;box-shadow:0 15px 40px rgba(25,67,89,.06)}.location-copy{padding:20px 16px}.location-copy h3{font-size:clamp(24px,3vw,34px);letter-spacing:-.035em;margin:17px 0}.location-copy address{font-style:normal;font-size:16px;line-height:1.8;font-weight:700;color:#25445c}.location-copy p{font-size:13px;margin:18px 0 22px}.location-map{overflow:hidden;min-width:0;border-radius:13px;background:#edf4f8;border:1px solid #d7e7ed}.location-map iframe{display:block;border:0;width:100%;height:300px}.location-map>a{display:block;padding:11px 16px;font-size:12px;font-weight:750;text-align:right;color:#22627b}.location-map>a:hover{text-decoration:underline}.footer-address{padding-top:15px;border-top:1px solid #1b3346;margin-top:17px;font-size:12px;line-height:1.7}.footer-address a:hover{color:#fff}@media(max-width:760px){.location-section{grid-template-columns:1fr;padding:15px;gap:12px}.location-copy{padding:17px 10px}.location-map iframe{height:270px}}

/* Client reference logos — add future clients as .client-logo links */
.client-logos{display:flex;flex-wrap:wrap;justify-content:center;gap:22px;margin-top:36px}
.client-logo{flex:0 1 330px;min-height:178px;display:flex;align-items:center;justify-content:center;padding:30px;border:1px solid #dce6ee;border-radius:17px;background:#fff;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.client-logo img{display:block;width:100%;max-width:250px;max-height:112px;height:auto;object-fit:contain}
.client-logo:hover,.client-logo:focus-visible{transform:translateY(-3px);border-color:#7eddf2;box-shadow:0 15px 40px rgba(0,0,0,.14)}
@media(max-width:650px){.client-logos{gap:13px;margin-top:20px}.client-logo{flex-basis:100%;min-height:130px;padding:20px}.client-logo img{max-width:215px;max-height:92px}}
@media(prefers-reduced-motion:reduce){.client-logo{transition:none}}

/* Crane LMI project listed separately from completed work */
.ongoing-projects{background:#f2f7fb}
.stage.ongoing{background:#fff0c7;color:#7a4c00;border-color:#f4d78e}
.client-logo-dark{background:#0a2533;border-color:#23485a}
.client-logo-dark:hover,.client-logo-dark:focus-visible{background:#103246;border-color:#6adcf1}
