*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:#071426;color:#f5f8ff;font-family:"DM Sans",sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}.container{width:min(1160px,calc(100% - 48px));margin:auto}.site-header{height:82px;position:sticky;top:0;z-index:20;background:rgba(5,17,33,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:39px;height:39px;border-radius:12px;background:linear-gradient(145deg,#22d3ee,#1264d9);display:grid;place-items:center;box-shadow:0 7px 24px #0878d744}.brand-mark span{font:800 17px Manrope;color:#06152b}.brand-name{display:grid;line-height:1.05}.brand-name b{font:800 13px Manrope;letter-spacing:2px}.brand-name strong{font:800 18px Manrope}.brand-name strong span{color:#20bde9}.nav-links{display:flex;align-items:center;gap:32px;font-size:13px;color:#c2ccdc}.nav-links a:hover,.text-link:hover{color:#42d2f4}.nav-cta{border:1px solid #2b83b9;border-radius:8px;padding:10px 15px;color:white}.nav-cta span,.button span{margin-left:9px}.menu-toggle{display:none;background:none;border:0}.hero{position:relative;overflow:hidden;padding:100px 0 30px;background:radial-gradient(ellipse at 76% 37%,#0c3762 0,transparent 42%),linear-gradient(130deg,#071426,#081a30 60%,#071426)}.hero-glow{position:absolute;width:500px;height:500px;border-radius:50%;border:1px solid #1b6b9a33;right:5%;top:4%;box-shadow:0 0 0 55px #1b6b9a0d,0 0 0 110px #1b6b9a09}.hero-grid{position:relative;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:45px;min-height:490px}.eyebrow{font-size:10px;letter-spacing:2.3px;font-weight:700;color:#64d7f2;display:flex;align-items:center;gap:10px}.eyebrow i{width:24px;height:2px;background:#21c4ed;display:inline-block}.eyebrow.dark{color:#167ba9}.hero h1,h2{font:800 clamp(38px,5vw,61px)/1.12 Manrope;letter-spacing:-2.7px;margin:24px 0}.hero h1 em,h2 em{font-style:normal;color:#37c9ee}.hero-lead{max-width:555px;color:#b4c1d2;font-size:16px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;padding:14px 20px;font:700 13px "DM Sans";cursor:pointer}.button-primary{background:linear-gradient(100deg,#16bde4,#2378df);color:#031629;box-shadow:0 10px 30px #078bc933}.text-link{font-weight:700;font-size:13px;color:#dbe7f5}.hero-proof{display:flex;align-items:center;gap:10px;margin-top:38px;color:#8496ac;font-size:11px}.proof-dot{width:7px;height:7px;border-radius:50%;background:#2ad6a0;box-shadow:0 0 12px #2ad6a0}.hero-visual{height:430px;position:relative;display:grid;place-items:center}.orbit{position:absolute;border:1px solid #3b9ac333;border-radius:50%;transform:rotate(-23deg)}.orbit-one{width:440px;height:280px}.orbit-two{width:520px;height:350px}.visual-card{position:relative;width:min(370px,90%);padding:19px 22px 17px;border:1px solid #75c7e54a;border-radius:15px;background:linear-gradient(145deg,#142c47,#0b1c32);box-shadow:0 30px 80px #0008;transform:rotate(-4deg)}.window-top{display:flex;align-items:center;gap:5px;border-bottom:1px solid #ffffff17;padding-bottom:14px}.window-top span{width:6px;height:6px;border-radius:50%;background:#4c6b85}.window-top small{margin-left:auto;font-size:8px;letter-spacing:1.4px;color:#7e9bb8}.visual-title{font:700 16px Manrope;margin:20px 0}.metric-row{display:flex;justify-content:space-between;align-items:center}.metric-row small{display:block;color:#7994ad;font-size:8px;letter-spacing:1.2px}.metric-row b{font:800 30px Manrope;display:inline-block;margin-right:9px}.up{font-size:9px;color:#3fe0ad;font-style:normal}.metric-icon{width:35px;height:35px;border-radius:10px;background:#0b91bb33;color:#41d4f3;display:grid;place-items:center}.bars{height:115px;display:flex;align-items:end;gap:12px;margin-top:20px;border-bottom:1px solid #ffffff20;background:repeating-linear-gradient(to bottom,transparent 0 27px,#ffffff0b 28px)}.bars i{flex:1;border-radius:4px 4px 0 0;background:linear-gradient(#36d2ee,#1766c9);opacity:.85}.visual-foot{display:flex;justify-content:space-between;color:#7890a8;font-size:8px;margin-top:8px}.float-chip{position:absolute;display:flex;align-items:center;gap:10px;padding:12px 15px;border:1px solid #69b8db55;background:#0c2945;border-radius:10px;box-shadow:0 15px 35px #0006;font-size:10px;color:#b7cce0;line-height:1.3}.float-chip b{font-size:22px;color:#35c9ee}.chip-code{top:65px;left:0}.chip-mobile{bottom:50px;right:0}.visual-spark{position:absolute;right:14%;top:25px;color:#28c7ed;font-size:28px}.hero-bottom{border-top:1px solid #ffffff18;margin-top:30px;padding-top:22px;display:flex;gap:42px;align-items:center;color:#91a3b9;font-size:9px;letter-spacing:1.6px}.hero-bottom div{display:flex;align-items:center;gap:20px;color:#d1dbea;font-size:11px;letter-spacing:0}.hero-bottom i{width:4px;height:4px;border-radius:50%;background:#28bde5}.section{padding:105px 0}.services,.approach,.contact{background:#f5f8fc;color:#102239}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:48px}.section-heading h2,.approach h2,.contact h2{font-size:clamp(34px,4vw,48px);margin:18px 0 0;letter-spacing:-2px}.section-heading>p{max-width:390px;color:#65758a;font-size:14px;margin:0 0 5px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-card{background:white;border:1px solid #e4eaf1;border-radius:12px;padding:25px 22px;min-height:245px;transition:.25s}.service-card:hover{transform:translateY(-5px);box-shadow:0 18px 35px #183d6312}.service-icon{width:43px;height:43px;border-radius:11px;background:#e7f7fc;color:#078bb7;display:grid;place-items:center;font-size:24px}.service-card h3,.work-info h3,.step h3{font:700 17px Manrope;margin:22px 0 9px}.service-card p,.work-info p,.step p{font-size:12px;color:#6d7b8e;line-height:1.75;margin:0}.service-card small{display:block;margin-top:18px;color:#1684ac;font-size:9px;letter-spacing:.8px;font-weight:700}.work-section{background:#08182c}.work-section .section-heading>p{color:#a1b0c3}.work-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px}.work-card{border:1px solid #ffffff18;border-radius:12px;overflow:hidden;background:#10233a}.work-art{height:220px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 50%,#174d75,#0b1c31 70%)}.art-erp{display:flex;align-items:center;justify-content:center;gap:10px;padding:25px}.mock-sidebar{height:145px;width:65px;background:#102f4b;border:1px solid #3b7a9a44;border-radius:6px;padding:13px 8px;display:flex;flex-direction:column;gap:13px}.mock-sidebar b{font-size:6px;color:#50d4ef}.mock-sidebar i{height:4px;background:#52728d;border-radius:4px}.mock-content{width:220px;height:145px;padding:14px;background:#122c46;border:1px solid #4a91b055;border-radius:6px}.mock-top{height:9px;width:70%;background:#5e819b;border-radius:4px}.mock-kpis{display:flex;gap:8px;margin:13px 0}.mock-kpis i{height:25px;flex:1;background:#1a5270;border-radius:3px}.mock-chart{height:57px;display:flex;align-items:end;gap:7px;border-bottom:1px solid #45637b}.mock-chart i{flex:1;background:linear-gradient(#35c9e9,#1763b5);border-radius:3px 3px 0 0}.mock-chart i:nth-child(1){height:30%}.mock-chart i:nth-child(2){height:60%}.mock-chart i:nth-child(3){height:43%}.mock-chart i:nth-child(4){height:80%}.mock-chart i:nth-child(5){height:58%}.mock-chart i:nth-child(6){height:95%}.mock-chart i:nth-child(7){height:72%}.art-mobile{display:grid;place-items:center}.phone{width:91px;height:170px;border:4px solid #7599b5;border-radius:17px;background:#0d2035;position:absolute;z-index:2;padding:25px 10px 10px;box-shadow:0 15px 35px #0007}.phone-back{transform:translate(42px,-10px) rotate(12deg);opacity:.45;z-index:1}.phone-notch{position:absolute;top:5px;left:30px;width:24px;height:5px;border-radius:5px;background:#66839c}.phone-label{height:7px;width:70%;background:#48c8e9;border-radius:4px}.phone-total{height:35px;background:#173f5d;border-radius:5px;margin:12px 0}.phone-line{height:5px;background:#54718b;border-radius:4px;margin:8px 0}.phone-line.short{width:65%}.phone-button{height:18px;background:#1b9ac6;border-radius:5px;margin-top:13px}.art-automation{display:grid;place-items:center}.sheet{width:180px;height:150px;background:#f2f7fb;border-radius:7px;padding:18px;transform:rotate(-7deg);box-shadow:0 15px 30px #0007}.sheet-head{height:12px;background:#167eae;border-radius:3px;margin-bottom:13px}.sheet-row{height:12px;border-bottom:1px solid #cbd7e2;margin:7px 0;background:linear-gradient(90deg,#dce6ee 35%,transparent 35%)}.automation-arrow{position:absolute;right:22%;top:25%;font-size:60px;color:#42d4ed}.automation-node{position:absolute;bottom:25px;right:15%;padding:9px 14px;background:#0a2842;border:1px solid #2eb9dd;border-radius:7px;font-size:9px;letter-spacing:1px;color:#5cdbf5}.work-info{padding:20px;display:flex;justify-content:space-between;gap:10px}.tag{font-size:8px;letter-spacing:1.6px;color:#48c9e9;font-weight:700}.work-info h3{margin:8px 0}.work-info p{color:#9aabc0}.work-number{font:700 22px Manrope;color:#3b607d}.portfolio-note{font-size:10px;color:#758ba3;margin-top:18px}.approach-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.approach h2 em,.contact h2 em{color:#078ab7}.approach-lead{max-width:340px;color:#6c7c8f;margin-top:25px}.steps{border-top:1px solid #dce4ec}.step{display:grid;grid-template-columns:55px 1fr;gap:18px;padding:22px 0;border-bottom:1px solid #dce4ec}.step>b{font:800 13px Manrope;color:#1297c1;padding-top:4px}.step h3{margin:0 0 5px}.about{background:linear-gradient(120deg,#0a1b30,#0b2947);}.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:center}.about-mark{height:290px;border:1px solid #3d8ab055;border-radius:16px;background:radial-gradient(circle at 50% 40%,#164c70,#0b1c31 75%);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 25px 60px #0004}.about-logo{display:flex;flex-direction:column;align-items:center}.about-logo>span{font:800 34px Manrope;color:#2ac8ee}.about-logo b{font:800 60px Manrope;letter-spacing:5px}.about-logo strong{font:800 28px Manrope}.about-logo strong span{color:#26c6ed}.about-caption{font-size:8px;letter-spacing:2px;color:#91a9c2;margin-top:18px}.about h2{font-size:44px}.about p{color:#b0bfd0;font-size:13px;line-height:1.9}.light-link{display:inline-block;margin-top:15px}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.contact>p{color:#65758a}.contact-grid>div>p{max-width:400px;color:#66768a;font-size:14px;margin-top:25px}.contact-detail{margin-top:27px;display:grid;gap:3px}.contact-detail span{font-size:9px;letter-spacing:1.6px;color:#1285ad;font-weight:700}.contact-detail b{font:600 13px Manrope}.contact-form{background:white;border:1px solid #e2e9f0;border-radius:13px;padding:28px;box-shadow:0 15px 45px #183d630c}.contact-form label{display:block;font-size:11px;font-weight:700;color:#34465c;margin-bottom:16px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;display:block;margin-top:7px;border:1px solid #dce5ed;border-radius:7px;padding:12px 13px;font:400 12px "DM Sans";color:#172b42;background:#fbfdff;outline:none}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#149ac6;box-shadow:0 0 0 3px #149ac61a}.contact-form textarea{resize:vertical}.submit-button{width:100%}.form-note{display:block;color:#8a98a8;font-size:9px;margin-top:12px}.form-status{font-size:11px;color:#147eaa}.footer{background:#061222;padding:25px 0;color:#9aabc0}.footer-wrap{display:flex;align-items:center;justify-content:space-between;font-size:10px}.footer-brand{color:#fff}.footer-bottom{border-top:1px solid #ffffff16;margin-top:20px;padding-top:15px;font-size:9px;letter-spacing:1.5px;color:#60768e}
@media(max-width:900px){.nav-links{gap:17px}.hero-grid{gap:10px}.hero h1{font-size:48px}.service-grid{grid-template-columns:repeat(2,1fr)}.approach-grid,.about-grid,.contact-grid{gap:45px}.work-grid{grid-template-columns:1fr 1fr}.work-large{grid-column:span 2}}
@media(max-width:650px){.container{width:min(100% - 34px,540px)}.site-header{height:70px}.menu-toggle{display:flex;flex-direction:column;gap:5px;padding:10px}.menu-toggle span{width:22px;height:2px;background:#dce9f7}.nav-links{display:none;position:absolute;top:69px;left:0;right:0;background:#081a2e;padding:20px 24px 25px;flex-direction:column;align-items:stretch;border-bottom:1px solid #ffffff18}.nav-links.open{display:flex}.nav-cta{text-align:center}.hero{padding:65px 0 25px}.hero-grid{grid-template-columns:1fr;gap:5px}.hero h1{font-size:43px;letter-spacing:-2px}.hero-lead{font-size:14px}.hero-visual{height:340px;margin-top:10px}.visual-card{width:80%}.orbit-one{width:330px;height:220px}.orbit-two{width:390px;height:280px}.chip-code{left:0;top:35px}.chip-mobile{right:0;bottom:25px}.hero-bottom{display:block;line-height:2.2}.hero-bottom div{flex-wrap:wrap;gap:8px 13px;margin-top:8px}.section{padding:75px 0}.section-heading{display:block}.section-heading>p{margin-top:20px}.section-heading h2,.approach h2,.contact h2{font-size:37px}.service-grid{gap:10px}.service-card{padding:19px 15px;min-height:250px}.service-card h3{font-size:15px}.work-grid{grid-template-columns:1fr}.work-large{grid-column:auto}.work-art{height:205px}.approach-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:38px}.about-mark{height:230px}.about h2{font-size:38px}.contact-form{padding:20px}.footer-wrap{flex-wrap:wrap;gap:16px}.footer-wrap>span{order:3;width:100%}}

/* Evidence-led project portfolio */
.portfolio-intro{max-width:760px;margin:-10px 0 28px;color:#9aabc0;font-size:13px;line-height:1.8}.portfolio-intro .tag{display:inline-block;margin-bottom:8px}.project-showcase{display:grid;gap:22px}.project-feature{display:grid;grid-template-columns:.82fr 1.18fr;gap:26px;align-items:center;padding:25px;background:linear-gradient(135deg,#0d2138,#102b49);border:1px solid #294662;border-radius:15px;overflow:hidden}.project-feature.reverse{grid-template-columns:1.18fr .82fr}.project-feature.reverse .project-copy{order:2}.project-feature.reverse .project-gallery{order:1}.project-copy h3{font:800 23px Manrope;color:#f3f7fc;line-height:1.25;margin:12px 0}.project-copy p,.project-copy li{font-size:12px;line-height:1.8;color:#b0bfd0}.project-copy ul{padding-left:18px;margin:12px 0}.project-copy li{margin:3px 0}.project-status{display:inline-block;margin-top:8px;padding:7px 10px;border-radius:6px;background:#123c55;color:#70d7ef;font-size:10px;font-weight:700}.project-gallery{display:grid;gap:10px;align-items:center}.desktop-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.desktop-gallery img{width:100%;height:auto;max-height:270px;object-fit:contain;background:#f4f7fb;border:1px solid #45627d;border-radius:7px}.phone-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.phone-gallery img{width:100%;height:290px;object-fit:contain;background:#f6f3fa;border:1px solid #45627d;border-radius:9px}.portfolio-note{line-height:1.7}
@media(max-width:900px){.project-feature,.project-feature.reverse{grid-template-columns:1fr}.project-feature.reverse .project-copy,.project-feature.reverse .project-gallery{order:initial}.phone-gallery img{height:250px}}
@media(max-width:650px){.project-feature{padding:18px}.project-copy h3{font-size:20px}.desktop-gallery{grid-template-columns:1fr}.desktop-gallery img{max-height:none}.phone-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.phone-gallery img{height:270px}}

/* Visible contact details and a no-handler fallback for email links */
.contact-email{color:#087fae;text-decoration:underline;text-decoration-color:#a9d8e8;text-underline-offset:3px;font-weight:700;overflow-wrap:anywhere}
.contact-email:hover,.direct-email-note a:hover,.footer-email:hover{color:#13a9d2}
.direct-email-note{display:block;margin-top:13px;padding-top:13px;border-top:1px solid #e5ebf1;color:#65758a;font-size:10px;line-height:1.7}
.direct-email-note a{color:#087fae;font-weight:700;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}
.footer-email{color:#b7d8ec;font-weight:700;overflow-wrap:anywhere}
@media(max-width:650px){.footer-email{width:100%;order:4}}


/* Direct email contact card (replaces the email-app-dependent enquiry form). */
.contact-grid-email-only { align-items: center; }
.email-contact-card {
  background: #fff;
  border: 1px solid #e2e9f0;
  border-radius: 14px;
  padding: 34px;
  box-shadow: 0 15px 45px #183d630c;
}
.email-card-icon {
  width: 48px;
  height: 48px;
  border-radius: 13px;
  display: grid;
  place-items: center;
  background: #e7f7fc;
  color: #087fae;
  font-size: 25px;
  margin-bottom: 20px;
}
.email-card-kicker {
  color: #1285ad;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1.8px;
}
.email-contact-card h3 {
  color: #102239;
  font: 800 25px/1.25 Manrope, sans-serif;
  letter-spacing: -.6px;
  margin: 9px 0 10px;
}
.email-contact-card > p:not(.copy-status) {
  color: #65758a;
  font-size: 13px;
  line-height: 1.8;
  margin: 0 0 23px;
  max-width: 470px;
}
.email-cta { min-height: 48px; }
.email-copy-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 15px;
  margin-top: 20px;
  background: #f5f8fc;
  border: 1px solid #e2e9f0;
  border-radius: 8px;
}
.email-copy-row span {
  color: #087fae;
  font: 700 13px Manrope, sans-serif;
  overflow-wrap: anywhere;
}
.email-copy-row button {
  flex: 0 0 auto;
  border: 1px solid #c9dce8;
  background: #fff;
  color: #14516f;
  border-radius: 6px;
  padding: 8px 11px;
  font: 700 11px "DM Sans", sans-serif;
  cursor: pointer;
}
.email-copy-row button:hover { background: #eaf7fb; border-color: #8bcde0; }
.copy-status { min-height: 16px; margin: 7px 0 0; color: #12805c; font-size: 10px; }
.email-contact-card > small {
  display: block;
  margin-top: 5px;
  color: #8492a2;
  font-size: 10px;
  line-height: 1.7;
}
@media(max-width:650px) {
  .email-contact-card { padding: 23px 20px; }
  .email-copy-row { align-items: flex-start; flex-direction: column; }
  .email-copy-row button { width: 100%; }
}


/* Direct website enquiry form (EmailJS-backed). */
.contact-grid-form{align-items:start}
.contact-form{background:#fff;border:1px solid #e2e9f0;border-radius:14px;padding:30px;box-shadow:0 15px 45px #183d630c}
.form-heading{margin-bottom:22px}
.form-heading h3{color:#102239;font:800 25px/1.25 Manrope,sans-serif;letter-spacing:-.6px;margin:9px 0 8px}
.form-heading p{color:#65758a;font-size:12px;line-height:1.7;margin:0}
.contact-form label{display:block;font-size:11px;font-weight:700;color:#34465c;margin-bottom:15px}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;display:block;margin-top:7px;border:1px solid #dce5ed;border-radius:7px;padding:12px 13px;font:400 12px "DM Sans",sans-serif;color:#172b42;background:#fbfdff;outline:none}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#149ac6;box-shadow:0 0 0 3px #149ac61a}
.contact-form textarea{resize:vertical;min-height:120px}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#94a0ad}
.submit-button{width:100%;justify-content:center;cursor:pointer}
.submit-button:disabled{opacity:.65;cursor:not-allowed;filter:grayscale(.12)}
.form-note{display:block;color:#8492a2;font-size:9px;line-height:1.7;margin-top:11px}
.form-status{min-height:18px;margin:11px 0 0;font-size:11px;line-height:1.6;color:#52677b}
.form-status a{color:#087fae;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.form-status.is-success{color:#147e5b}
.form-status.is-error{color:#b42318}
.contact-privacy-note{margin-top:22px!important;font-size:11px!important;color:#8492a2!important;line-height:1.7}
.form-honey{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:650px){.contact-form{padding:22px 19px}.form-heading h3{font-size:22px}}
