@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--ink:#082f43;--muted:#4c6571;--paper:#f5f9fb;--line:#d5e4e9;--lime:#75dce7;--green:#004b6b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #048797;outline-offset:5px}.wrap{width:min(1240px,88%);margin:auto}header{border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:5}.nav{height:92px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-family:'Space Grotesk',sans-serif;font-size:29px;letter-spacing:-1.5px;font-weight:700}.brand span{color:#048797}.brand small{font-family:'DM Sans';display:block;font-size:9px;letter-spacing:4px;margin-top:-2px}nav{display:flex;align-items:center;gap:29px;font-size:13px;font-weight:600}.btn{display:inline-flex;align-items:center;gap:30px;padding:17px 23px;border-radius:5px;background:var(--ink);color:white;font-size:13px;font-weight:600}.btn.lime{background:var(--lime);color:var(--ink)}.btn.outline{border:1px solid #93b0bc;background:transparent;color:var(--ink)}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:700;display:flex;align-items:center;gap:10px}.eyebrow:before{content:'';width:7px;height:7px;background:#048797;border-radius:50%}h1,h2,h3{font-family:'Space Grotesk',sans-serif;font-weight:500;letter-spacing:-2px}h1{font-size:clamp(48px,5.5vw,78px);line-height:1.04;margin:30px 0}h1 em{font-style:normal;color:#087f91}h2{font-size:clamp(34px,3.6vw,50px);line-height:1.12;margin:18px 0}h3{font-size:25px;letter-spacing:-.8px;line-height:1.2}p{line-height:1.7;color:var(--muted);font-size:15px}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:55px;align-items:center;padding:80px 0 65px}.hero p{max-width:460px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.technical{height:490px;position:relative;border-radius:12px;overflow:hidden;background:#05384f;color:#cbe5ec;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:35px 35px}.technical svg{width:100%;height:100%}.tech-label{position:absolute;top:25px;left:25px;font-size:10px;letter-spacing:2px}.tech-bottom{position:absolute;bottom:22px;left:25px;right:25px;display:flex;justify-content:space-between;border-top:1px solid #ffffff30;padding-top:17px;font-size:10px;letter-spacing:1px}.strip{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;font-size:11px;letter-spacing:1px;text-transform:uppercase}.strip span:first-child{color:var(--muted)}section{padding:85px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:35px}.section-head p{max-width:350px}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service{padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.number{font-family:monospace;color:#527582;font-size:12px}.service h3{margin-top:40px}.service p{font-size:14px}.feature{background:var(--green);color:white;border-radius:12px;padding:55px;display:grid;grid-template-columns:1fr 1fr;gap:50px}.feature p{color:#d0e5eb}.feature h2{font-size:54px}.fieldword{font-family:'Space Grotesk';font-size:28px;letter-spacing:-1px}.fieldword span{color:var(--lime)}.field-art{min-height:300px;position:relative;display:grid;place-items:center}.field-art .planet{width:180px;height:180px;border:1px solid #71d9e5;border-radius:50%;background:repeating-radial-gradient(ellipse at 40% 20%,transparent 0 19px,#75dce740 20px 21px);box-shadow:0 0 80px #75dce720}.field-art:before,.field-art:after{position:absolute;content:'';width:320px;height:110px;border:1px solid #71d9e580;border-radius:50%;transform:rotate(-25deg)}.field-art:after{transform:rotate(45deg)}.caption{font-size:11px!important;letter-spacing:.5px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.photo-slot{height:270px;background:#e8f1f4;display:flex;align-items:center;justify-content:center;flex-direction:column;border:1px dashed #9bb7c2;border-radius:7px;color:#4d6e7b}.photo-slot span{font-size:44px;font-weight:300;margin-bottom:15px}.photo-slot small{letter-spacing:1px;text-transform:uppercase;font-size:10px}.project h3{margin-bottom:10px}.project p{max-width:460px}.notice{font-size:12px;color:#4d6e7b;border-left:2px solid #38a6b3;padding-left:14px}.news{background:#e8f2f6}.news-row{display:grid;grid-template-columns:200px 1fr 35px;gap:25px;padding:28px 0;border-top:1px solid #c4dce3;align-items:center}.news-row h3{margin:0;font-size:25px}.news-row small{font-size:11px;letter-spacing:1px;text-transform:uppercase}.news-row:hover h3{text-decoration:underline;text-underline-offset:5px}.people{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px}.person{border-top:1px solid var(--line);padding-top:25px}.avatar{width:60px;height:60px;border-radius:50%;background:#e0edf2;display:grid;place-items:center;font-family:'Space Grotesk';font-size:19px}.textlink{display:inline-block;font-size:13px;font-weight:700;border-bottom:1px solid;padding-bottom:5px}.contact{background:var(--ink);color:white}.contact p{color:#c0dbe3}.contact h2{font-size:clamp(38px,5vw,67px)}.contact-layout{display:flex;align-items:center;justify-content:space-between;gap:30px}.contact a.email{display:block;color:var(--lime);margin-top:25px;font-size:17px}footer{padding:35px 0;background:var(--ink);color:#b0ced8;border-top:1px solid #ffffff22;font-size:11px}.footer-row{display:flex;justify-content:space-between;gap:25px}.menu{display:none;border:1px solid var(--line);padding:10px;background:transparent;border-radius:4px}.field-page .hero h1{font-size:clamp(50px,6vw,84px)}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.product{border-top:1px solid var(--line);padding-top:24px}.product-visual{height:220px;background:#e6f0f4;border-radius:8px;display:grid;place-items:center}.product-visual svg{width:80%;height:80%}.badge{font-size:10px;background:#dfedf2;padding:6px 10px;border-radius:20px;display:inline-block}.audiences{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.audiences article{border-top:1px solid var(--line)}@media(max-width:850px){.hero{grid-template-columns:1fr;padding-top:45px;gap:35px}.technical{height:390px}.services{grid-template-columns:repeat(2,1fr)}.feature{padding:35px;gap:15px}.feature h2{font-size:40px}.people{grid-template-columns:1fr 1fr}.people>div:first-child{grid-column:1/-1}.product-grid{grid-template-columns:1fr 1fr}.menu{display:block}nav{display:none;position:absolute;top:92px;left:0;right:0;background:var(--paper);padding:25px 6%;border-bottom:1px solid var(--line);flex-wrap:wrap}nav.open{display:flex}.strip{flex-wrap:wrap}.news-row{grid-template-columns:140px 1fr 20px}}@media(max-width:560px){.wrap{width:88%}.nav{height:78px}nav{top:78px}.hero{padding:38px 0}.hero h1{font-size:48px}.technical{height:340px}.section-head,.contact-layout{display:block}section{padding:55px 0}.services,.project-grid,.feature,.people,.product-grid,.audiences{grid-template-columns:1fr}.feature{padding:28px}.field-art{min-height:260px;overflow:hidden}.feature h2{font-size:40px}.news-row{grid-template-columns:1fr 25px}.news-row small{grid-column:1/-1}.news-row h3{font-size:22px}.footer-row{flex-direction:column}.service h3{margin-top:22px}.contact .btn{margin-top:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Dedicated client testimonials */
.service h3{margin-top:8px}.testimonials{background:#edf5f8}.testimonial-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:35px}.testimonial{margin:0;padding:35px 0;border-top:1px solid #c4dce3;display:flex;flex-direction:column;justify-content:space-between}.testimonial blockquote{margin:0 0 30px;font-family:'Space Grotesk',sans-serif;font-size:clamp(20px,2vw,26px);line-height:1.55;letter-spacing:-.4px}.testimonial figcaption strong,.testimonial figcaption span{display:block}.testimonial figcaption strong{font-size:15px;margin-bottom:7px}.testimonial figcaption span{font-size:13px;color:var(--muted)}@media(max-width:560px){.testimonial-grid{grid-template-columns:1fr;gap:10px}}

.industries{padding-top:0}.industry-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;border-top:1px solid var(--line);padding-top:32px}.industry svg{width:34px;height:34px;color:#087f91;margin-bottom:14px}.industry h3{font-size:21px;letter-spacing:-.5px;line-height:1.3}.industry p{font-size:14px}.nav nav{gap:20px}@media(max-width:1100px){.menu{display:block}nav{display:none;position:absolute;top:92px;left:0;right:0;background:var(--paper);padding:25px 6%;border-bottom:1px solid var(--line);flex-wrap:wrap}nav.open{display:flex}.industry-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.industry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){nav{top:78px}}@media(max-width:400px){.industry-grid{grid-template-columns:1fr}}

.engineering-hero{margin:0;position:relative;overflow:hidden;border-radius:12px;background:#05384f;align-self:center}.engineering-hero img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}.engineering-hero figcaption{padding:17px 20px;color:#d0e5eb;font-size:9px;letter-spacing:1px;line-height:1.6;border-top:1px solid #ffffff22;text-align:center}.btn:hover{background:#075675}.btn.lime:hover{background:#95e5ed}.contact a[href^="tel:"]{font-size:18px;color:#d0e5eb}.brand img{max-height:72px}

/* Product development journey hero: retain full landscape image. */
.engineering-hero img{aspect-ratio:3/2;object-fit:contain}.hero{grid-template-columns:0.9fr 1.2fr;gap:45px}@media(max-width:850px){.hero{grid-template-columns:1fr}}

/* Project gallery: retain complete original design views. */
.project-image{display:flex;align-items:center;justify-content:center;position:relative;background:#fff;border:1px solid var(--line);border-radius:8px;aspect-ratio:16/10;padding:18px 12px 40px;overflow:hidden}.project-image img{display:block;width:100%;height:100%;object-fit:contain}.image-open{position:absolute;right:15px;bottom:12px;font-size:11px;font-weight:600;color:#075675}.project-image:hover{border-color:#087f91;box-shadow:0 5px 20px #004b6b12}.project-category{font-size:10px!important;letter-spacing:1.3px;text-transform:uppercase;color:#087f91!important;margin:24px 0 9px}.project h3{margin-top:0}.project-image:focus-visible{outline:3px solid #048797;outline-offset:4px}

/* Crop only the original logo's exterior white padding in the header. */
.nav .brand{display:block;position:relative;width:134px;height:59px;flex:0 0 134px;overflow:hidden;border-radius:2px;background:#004b6b}.nav .brand img{position:absolute;left:-9px;top:-12px;display:block;width:155px;height:auto;max-width:none;max-height:none;object-fit:initial}
