/* Typography hierarchy: display > section > card > body > control > label.
   Miniature dashboard/phone lettering belongs to the illustration, not page copy. */
:root {
  --type-section-title: clamp(44px, 3.9vw, 58px);
  --type-contact-title: clamp(60px, 4.8vw, 72px);
  --type-dialog-title: 44px;
  --type-card-title: clamp(30px, 2.5vw, 36px);
  --type-step-title: 28px;
  --type-lead: 21px;
  --type-body: 18px;
  --type-card-body: 16px;
  --type-nav: 16px;
  --type-control: 15px;
  --type-caption: 13px;
  --type-label: 12px;
}
@font-face{font-family:Manrope;src:url('assets/manrope-400.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url('assets/manrope-500.ttf') format('truetype');font-weight:500;font-display:swap}@font-face{font-family:Manrope;src:url('assets/manrope-600.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:Manrope;src:url('assets/manrope-700.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--paper:#f9f9f6;--ink:#102238;--blue:#386fa8;--muted:#667687;--line:#dce1e3;--ease:cubic-bezier(.22,1,.36,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #4f95d2;outline-offset:6px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #4f95d2;outline-offset:3px}button:disabled{cursor:default}img{display:block;max-width:100%;height:auto}main{overflow:clip}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-weight:500}h1,h2{letter-spacing:-.065em;line-height:1.07}h3{letter-spacing:-.05em}svg{display:block}.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-library{position:absolute;width:0;height:0;overflow:hidden}.shell{width:min(1280px,calc(100% - 112px));margin-inline:auto}.section-space{padding-block:114px}.blue{color:var(--blue)}.eyebrow{font-size:var(--type-label);font-weight:600;letter-spacing:.19em;line-height:1.6}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:var(--ink);color:white;padding:16px}.skip-link:focus{top:10px}.site-header{height:96px;position:relative;z-index:20;border-bottom:1px solid var(--line);background:var(--paper)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:14px;white-space:nowrap}.wordmark{display:flex;align-items:center;gap:1px;font-size:30px;letter-spacing:.035em;font-weight:700;line-height:1}.wordmark svg{width:29px;height:29px}.brand-divider{height:29px;width:1px;background:#81a7ca}.brand-sub{font-size:10px;letter-spacing:.3em;font-weight:700}.site-header nav{display:flex;align-items:center;gap:34px;font-size:var(--type-nav)}.site-header nav>a{position:relative;padding:10px 0}.site-header nav>a:after{content:'';position:absolute;left:0;bottom:3px;width:100%;height:1px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .3s}.site-header nav>a:hover:after{transform:scaleX(1)}.button{border:1px solid var(--ink);background:var(--ink);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:52px;padding:13px 23px;border-radius:30px;font-size:var(--type-control);font-weight:500;line-height:1.5;transition:background .3s,border-color .3s,transform .4s var(--ease),box-shadow .3s}.button:hover{background:#294b70;border-color:#294b70;transform:translateY(-2px);box-shadow:0 8px 22px #10223815}.button .icon{width:18px;height:18px;transition:transform .3s}.button:hover .icon{transform:translate(2px,-2px)}.button-small{min-height:42px;padding:10px 18px;gap:20px;font-size:var(--type-control)}.text-link{display:inline-flex;align-items:center;gap:16px;border:0;background:none;padding:6px 0;font-size:var(--type-control);line-height:1.4;position:relative}.text-link:after{content:'';position:absolute;left:0;right:0;height:1px;background:currentColor;bottom:1px;opacity:.5;transform-origin:left;transition:transform .3s}.text-link:hover:after{transform:scaleX(.55)}.menu-toggle{display:none}.hero{min-height:730px;height:calc(100svh - 96px);max-height:900px;position:relative;display:flex;align-items:center;padding-top:0;padding-bottom:70px}.hero-copy{position:relative;z-index:2;width:55%}.hero .eyebrow{font-size:var(--type-label);letter-spacing:.12em;display:flex;align-items:center;gap:11px;margin-bottom:29px;color:#5c7592}.blue-dot{height:5px;width:5px;border-radius:50%;background:#5485bb;flex-shrink:0}.hero h1{font-size:clamp(64px,6.65vw,96px);line-height:1.04;letter-spacing:-.06em;font-weight:500}.hero h1 span{color:var(--blue)}.hero-description{font-size:var(--type-lead);line-height:1.7;color:var(--muted);margin-top:26px;letter-spacing:-.02em}.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:30px}.hero-art{position:absolute;width:61%;right:-65px;top:3%;bottom:40px;display:flex;align-items:center;pointer-events:none}.hero-sculpture{width:100%;filter:drop-shadow(0 30px 24px #223e5b0c);transform:rotate(-10deg)}.art-orbit{display:none}.art-caption{position:absolute;bottom:13%;right:7%;font-size:var(--type-caption);color:var(--muted);line-height:1.6;display:flex;gap:12px}.art-caption>span{width:30px;height:1px;background:#9caec0;margin-top:7px}.scroll-cue{position:absolute;left:0;bottom:84px;display:flex;align-items:center;gap:14px;font-size:var(--type-label);letter-spacing:.19em;color:#708098}.scroll-line{height:36px;width:1px;background:#9dafc2;position:relative;overflow:hidden}.scroll-line:after{content:'';position:absolute;height:12px;width:1px;left:0;background:var(--ink);animation:scroll-cue 2.4s infinite}@keyframes scroll-cue{from{transform:translateY(-13px)}to{transform:translateY(40px)}}.hero-bottom{position:absolute;bottom:0;left:0;right:0;border-top:1px solid var(--line);padding:20px 0;display:flex;justify-content:space-between;font-size:var(--type-caption);color:var(--muted)}.approach{display:grid;grid-template-columns:1fr 3fr;gap:40px}.section-label{padding-top:6px}.asterisk{display:block;color:var(--blue);font-size:33px;margin-bottom:15px;line-height:1}.section-label p{font-size:var(--type-label);line-height:2;letter-spacing:.2em;font-weight:600;color:#5c7592}.approach h2{font-size:var(--type-section-title);line-height:1.17;letter-spacing:-.055em}.approach-bottom{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:25px;margin-top:26px}.approach-bottom p{font-size:var(--type-body);line-height:1.8;color:var(--muted)}.arrow-link{flex-shrink:0}.expertise{border-radius:40px 40px 0 0;background:#122c46;color:#fff;padding:68px 0 30px;overflow:hidden;position:relative}.expertise:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 70% 70%,#32629b30,transparent 70%);pointer-events:none}.expertise .shell{position:relative}.expertise-heading{display:flex;align-items:flex-end;justify-content:space-between}.expertise-heading .eyebrow{font-size:var(--type-label);color:#a7c7e8;margin-bottom:21px}.expertise-heading h2{font-size:var(--type-section-title);line-height:1.15}.expertise-heading h2 span{color:#9fc5ec}.expertise-heading>p{font-size:var(--type-body);color:#a6bfd6;line-height:1.8;margin-bottom:5px}.service-deck{height:640px;display:grid;grid-template-columns:1.3fr .93fr .95fr;gap:0;align-items:end;margin-top:28px;padding:30px 0 34px;perspective:1400px}.card-wrap{position:relative;height:510px;min-width:0;transform-origin:center bottom}.product-wrap{z-index:3;transform:rotate(-4deg) translateY(6px)}.systems-wrap{z-index:2;transform:rotate(2deg) translate(-6px,-16px)}.operations-wrap{z-index:1;transform:rotate(-3deg) translate(8px,-41px)}.service-card{border:1px solid #ffffff68;border-radius:13px;text-align:left;width:100%;height:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;position:relative;padding:28px;color:var(--ink);box-shadow:0 25px 32px #04182b38;overflow:hidden;transition:transform .6s var(--ease),box-shadow .6s var(--ease);isolation:isolate}.service-card:hover{transform:translateY(-14px) rotate(1deg);box-shadow:0 35px 40px #03132460}.service-card:focus-visible{outline-color:white;outline-offset:8px}.service-type{font-size:var(--type-label);letter-spacing:.15em;display:block;margin-bottom:19px;opacity:.58}.service-card h3{font-size:var(--type-card-title);font-weight:500;line-height:1.06}.service-card>p{font-size:var(--type-card-body);margin-top:10px;line-height:1.5;opacity:.75;max-width:240px}.card-arrow{width:38px;height:38px;flex-shrink:0;border-radius:50%;background:var(--ink);color:white;display:grid;place-items:center;margin-top:20px;position:relative;z-index:2;transition:transform .4s var(--ease)}.card-arrow .icon{width:17px;height:17px}.service-card:hover .card-arrow{transform:rotate(45deg)}.product-card{background:linear-gradient(125deg,#e6f1fc,#bbd6f0);}.systems-card{background:#f1efe8;}.operations-card{background:#366ea9;color:white;border-color:#76a4d15c}.operations-card .card-arrow{background:#f8f8f3;color:#183653}.product-scene{position:absolute;inset:250px -44px -35px 34px;transform:rotate(-5deg);pointer-events:none}.dashboard{position:absolute;left:41px;top:5px;width:390px;height:283px;background:#f8fafc;border:5px solid #182738;border-radius:12px;box-shadow:6px 10px 15px #2a456044;overflow:hidden;font-family:Manrope,sans-serif}.dash-top{height:30px;display:flex;justify-content:space-between;align-items:center;padding:0 12px;border-bottom:1px solid #e1e7ef;font-size:6px}.mini-logo{font-size:8px;font-weight:700;letter-spacing:.1em}.dash-top i{display:inline-block;background:#709ed0;width:9px;height:9px;border-radius:50%;vertical-align:middle;margin-left:6px}.dash-layout{display:flex;height:calc(100% - 30px)}.dash-sidebar{width:77px;flex-shrink:0;padding:17px 5px;background:#eef2f7;display:flex;flex-direction:column;gap:10px;font-size:6px;color:#6c7c90}.dash-sidebar span{padding:5px 4px}.dash-sidebar .nav-active{background:#d7e7fb;color:#376998;border-radius:4px}.dash-sidebar .side-bottom{margin-top:auto}.dash-content{padding:19px 15px;flex:1}.dash-muted{font-size:5px;color:#8693a5;letter-spacing:.12em}.dash-content h4{font-size:11px;font-weight:600;letter-spacing:-.03em;margin-top:5px}.dash-tabs{display:flex;gap:12px;font-size:5px;border-bottom:1px solid #e5e9ed;margin-top:13px;color:#8b98a6}.dash-tabs span{padding-bottom:6px}.dash-tabs .active{color:#3f70a5;border-bottom:1px solid #3f70a5}.dash-stats{display:flex;gap:10px;margin-top:11px}.dash-stats>div{width:50%;padding:8px;background:#edf3f8;border-radius:5px}.dash-stats span{font-size:5px;display:block;color:#6c7c90}.dash-stats strong{font-size:14px;font-weight:500}.dash-stats small{font-size:5px;font-weight:400;color:#8090a2}.dash-chart{padding:9px 0}.dash-chart>div{display:flex;justify-content:space-between;font-size:5px}.dash-chart b{font-weight:500}.dash-chart span{color:#8591a2}.dash-chart svg{width:100%;height:48px;margin-top:5px}.dash-task{font-size:5px;display:flex;align-items:center;gap:5px;border-top:1px solid #e5e9ed;padding-top:6px}.dash-task>span:last-child{margin-left:auto;color:#4b81b7}.task-dot{background:#87acd6;width:4px;height:4px;border-radius:50%}.phone{position:absolute;left:-20px;top:89px;width:125px;height:233px;background:#fafcfe;border:5px solid #182738;border-radius:23px;transform:rotate(12deg);box-shadow:7px 9px 20px #17365340;padding:11px 9px;font-size:6px;color:#183148;overflow:hidden}.phone-island{height:8px;width:33px;border-radius:10px;background:#172331;position:absolute;top:5px;left:40px}.phone-status{display:flex;justify-content:space-between;font-size:5px;margin-bottom:20px;font-weight:700}.phone-greeting{font-size:4px;letter-spacing:.1em;color:#7e8b9f}.phone h4{font-size:17px;font-weight:500;margin:3px 0}.phone-date{color:#8994a5;font-size:5px}.phone-calendar{display:flex;justify-content:space-between;text-align:center;margin:10px 0;font-size:5px;color:#8a96a4}.phone-calendar b{display:grid;place-items:center;font-size:6px;color:#294668;width:16px;height:17px;margin-top:3px}.phone-calendar .selected-day{background:#437ab1;color:#fff;border-radius:50%}.phone-task{display:flex;gap:5px;align-items:center;background:white;padding:7px 3px;border-top:1px solid #edf1f5;font-size:5px}.phone-task i{width:7px;height:7px;border:1px solid #7698ba;border-radius:50%;font-style:normal;color:white;font-size:5px}.phone-task small{display:block;font-size:4px;margin-top:3px;color:#9aa5b4}.phone-task.done i{background:#6c9bcb}.phone-task.done span{text-decoration:line-through;opacity:.5}.phone-nav{display:flex;justify-content:space-around;border-top:1px solid #e7ebef;padding-top:8px;color:#718fab;font-size:10px}.phone-nav span{color:#1e4d79}.concept-label{position:absolute;bottom:12px;right:15px;z-index:5;font-size:10px;letter-spacing:.12em;color:#7892a9}.connection-art{position:absolute;width:88%;left:8%;bottom:0;pointer-events:none}.connection-art svg{width:100%;height:auto}.flow-art{position:absolute;width:130%;left:-15%;bottom:12px;max-height:250px;color:#d0e3f8;opacity:.85}.operations-card:after{content:'';position:absolute;inset:0;background:linear-gradient(130deg,#8caed313,transparent);pointer-events:none}.expertise-footnote{border-top:1px solid #ffffff20;padding-top:25px;font-size:var(--type-caption);color:#a0b8cf;display:flex;align-items:center;justify-content:space-between}.expertise-footnote span{display:flex;align-items:center;gap:10px}.expertise-footnote .icon{width:14px;height:14px}.process{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-block:130px}.process-intro .eyebrow{font-size:var(--type-label);color:#6c8198;margin-bottom:26px}.process h2{font-size:var(--type-section-title);line-height:1.16;letter-spacing:-.055em}.process-intro>p:not(.eyebrow){font-size:var(--type-body);color:var(--muted);line-height:1.8;margin-top:22px}.process-mark{display:flex;gap:0;margin-top:35px;isolation:isolate}.process-mark span{width:39px;height:39px;border:1px solid #a4bfdb;border-radius:50%;margin-right:-11px;background:var(--paper)}.process-mark span:nth-child(2){background:#c4d9ed;border-color:#c4d9ed}.process-mark span:nth-child(3){background:#4f82b6;border-color:#4f82b6}.process-list{border-top:1px solid #ccd5dd}.process-list details{border-bottom:1px solid #ccd5dd}.process-list summary{display:flex;gap:22px;align-items:center;padding:27px 0;cursor:pointer;list-style:none}.process-list summary::-webkit-details-marker{display:none}.step-number{font-size:var(--type-caption);color:#7f92a5}.process-list h3{font-size:var(--type-step-title);letter-spacing:-.035em;flex:1}.plus{width:16px;height:16px;position:relative;color:#688bb0}.plus:before,.plus:after{content:'';position:absolute;left:0;top:7px;width:16px;height:1px;background:currentColor}.plus:after{transform:rotate(90deg);transition:transform .3s}.process-list details[open] .plus:after{transform:rotate(0)}.step-body{padding:0 35px 30px 35px}.step-body p{font-size:var(--type-body);color:var(--muted);line-height:1.85;max-width:390px}.step-body>span{display:block;font-size:var(--type-caption);color:#3e6b9b;margin-top:22px;letter-spacing:.01em}.contact{background:#f0eee7;overflow:hidden}.contact-inner{min-height:465px;display:flex;position:relative;align-items:center;padding-block:65px}.contact-copy{position:relative;z-index:2}.contact .eyebrow{font-size:var(--type-label);color:#738190;margin-bottom:24px}.contact h2{font-size:var(--type-contact-title);line-height:1.05}.contact-copy>p:not(.eyebrow){font-size:var(--type-body);color:#71808f;margin:23px 0 28px}.contact-art{position:absolute;right:0;width:42%;height:100%;top:0;pointer-events:none}.paper-plane{position:absolute;top:14%;left:8%;width:88%;transform:rotate(-9deg);filter:drop-shadow(12px 24px 20px #486a8a18)}.orbit-ring{position:absolute;width:110%;height:45%;top:29%;left:-4%;border:1px solid #7695b85c;border-radius:50%;transform:rotate(-15deg)}.orbit-dot{position:absolute;z-index:2;display:block;border-radius:50%;box-shadow:inset -4px -4px 8px #5c759033,2px 6px 7px #617c9820}.dot-one{width:21px;height:21px;background:#c3d8eb;top:32%;left:3%}.dot-two{width:29px;height:29px;background:#fdfbf6;bottom:26%;right:0}.plane-shadow{position:absolute;bottom:19%;left:30%;width:55%;height:16px;border-radius:50%;filter:blur(10px);background:#46688820}.site-footer{background:#0e2135;color:#f1f4f7;padding:61px 0 0}.brand-light{color:#f1f4f7}.brand-light .wordmark{font-size:24px}.brand-light .wordmark svg{width:24px;height:24px}.brand-light .brand-sub{font-size:10px}.brand-light .brand-divider{height:25px}.footer-top{display:grid;grid-template-columns:2fr 1fr 1.5fr 1fr;gap:40px;padding-bottom:51px}.footer-top>div:first-child>p{font-size:var(--type-card-body);line-height:1.8;color:#91a4b8;margin-top:22px}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:13px;font-size:var(--type-control)}.footer-links>span{color:#849bb2;margin-bottom:6px;font-size:var(--type-caption)}.footer-links button{border:0;background:none;padding:0;color:inherit;font-size:inherit;text-align:left}.footer-links a:hover,.footer-links button:hover{color:#a4cdf6}.back-top{font-size:var(--type-control);display:flex;gap:12px;justify-content:flex-end;align-items:flex-start}.back-top .icon{width:15px;height:15px}.footer-bottom{border-top:1px solid #ffffff20;min-height:66px;display:flex;justify-content:space-between;align-items:center;font-size:var(--type-caption);color:#8ba2b8}.footer-bottom button{display:flex;align-items:center;gap:7px;border:0;background:none;font-size:var(--type-caption);color:#a2b6c9;padding:10px}.motion-indicator{height:5px;width:5px;border-radius:50%;background:#8db9da}.footer-bottom button[aria-pressed=true] .motion-indicator{background:#6d7c8b}.dialog{color:var(--ink);border:1px solid #d8e0e7;border-radius:20px;padding:52px;width:min(560px,calc(100% - 32px));background:var(--paper);max-height:90svh;overflow-y:auto;box-shadow:0 25px 120px #071c3650}.dialog::backdrop{background:#07172c77;backdrop-filter:blur(8px)}.close-dialog{position:absolute;right:19px;top:13px;width:36px;height:36px;border:0;background:none;font-size:29px;font-weight:400;color:#708398}.dialog .eyebrow{font-size:var(--type-label);color:#7b94ae;margin-bottom:20px}.dialog h2{font-size:var(--type-dialog-title);line-height:1.12}.dialog>p:not(.eyebrow),#enquiry-success>p{font-size:var(--type-body);line-height:1.8;color:var(--muted);margin-top:24px}.dialog ul{padding:0;list-style:none;margin:27px 0 32px}.dialog li{padding:13px 0;border-bottom:1px solid var(--line);font-size:var(--type-body)}.dialog li:before{content:'↗';margin-right:16px;color:var(--blue)}body:has(dialog[open]){overflow:hidden}.enquiry-dialog{width:min(650px,calc(100% - 32px))}.enquiry-dialog form{margin-top:30px}label{display:block;font-size:var(--type-caption);color:#62788c;margin-bottom:22px}input,select,textarea{display:block;border:0;border-bottom:1px solid #c7d2dc;border-radius:0;background:transparent;color:var(--ink);width:100%;padding:10px 0;font-size:var(--type-body);transition:border-color .3s}input:focus,textarea:focus,select:focus{border-color:var(--blue)}textarea{resize:vertical;min-height:85px}textarea::placeholder{color:#9aa8b4;font-size:var(--type-control)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:28px}.preview-note{font-size:var(--type-caption);line-height:1.6;color:#8b98a5;margin-top:17px}.success-mark{display:grid;place-items:center;width:45px;height:45px;background:#dfebf6;color:#497dae;border-radius:50%;margin-bottom:22px}#enquiry-success .button{margin-top:27px}#edit-enquiry{display:block;margin-top:20px}[hidden]{display:none!important}.motion-paused *{animation-play-state:paused!important}
@media(min-width:1550px){.hero-art{right:-80px;width:62%;top:0}.hero{min-height:780px}}
@media(max-width:1100px){.shell{width:calc(100% - 72px)}.site-header nav{gap:23px}.brand{gap:10px}.wordmark{font-size:26px}.brand-sub{font-size:10px}.hero{min-height:650px;height:calc(90svh - 96px)}.hero h1{font-size:73px}.hero-copy{width:60%}.hero-art{width:60%;right:-50px;top:9%}.hero-actions{gap:17px}.hero-actions .text-link{font-size:var(--type-control)}.hero .eyebrow{font-size:var(--type-label);letter-spacing:.12em}.hero-description{font-size:var(--type-lead)}.hero-actions .button{padding:12px 18px;font-size:var(--type-control);gap:16px}.approach{grid-template-columns:1fr 3.5fr;gap:20px}.approach-bottom p{font-size:var(--type-body)}.service-deck{height:570px}.card-wrap{height:470px}.service-card{padding:23px 20px}.service-card h3{font-size:var(--type-card-title)}.service-card>p{font-size:var(--type-card-body)}.product-card{}.systems-card,.operations-card{}.product-scene{top:235px;left:21px;transform:scale(.87) rotate(-5deg);transform-origin:top left}.service-type{margin-bottom:16px}.process{gap:60px}.process h2{font-size:var(--type-section-title)}.contact-art{width:45%;right:-10px}.footer-top{gap:25px;grid-template-columns:1.7fr 1fr 1.3fr}.back-top{display:none}.footer-top .brand{gap:8px}.footer-top .brand-sub{font-size:10px}.footer-top .wordmark{font-size:23px}}
@media(max-width:800px){.shell{width:calc(100% - 44px)}.site-header{height:78px}.brand-sub{font-size:10px;letter-spacing:.22em}.wordmark{font-size:25px}.wordmark svg{width:25px;height:26px}.brand-divider{height:23px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:40px;height:40px;border:0;background:none;padding:10px;z-index:30}.menu-toggle span{width:22px;height:1px;background:var(--ink);transition:transform .3s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.site-header nav{display:none;position:absolute;top:77px;left:0;right:0;padding:25px 30px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 20px 25px #0d243510;align-items:stretch;gap:12px;font-size:var(--type-nav)}.site-header nav.is-open{display:flex;flex-direction:column}.site-header nav .button{align-self:flex-start;margin-top:10px}.hero{min-height:850px;height:auto;max-height:none;padding-top:54px;padding-bottom:460px;align-items:flex-start}.hero-copy{width:100%}.hero h1{font-size:clamp(61px,10vw,85px);line-height:1.02}.hero .eyebrow{font-size:var(--type-label);letter-spacing:.13em;margin-bottom:25px}.hero-description{font-size:var(--type-lead);margin-top:21px;line-height:1.65}.hero-actions{margin-top:24px}.hero-actions .button{font-size:var(--type-control);min-height:48px}.hero-actions .text-link{font-size:var(--type-control)}.hero-art{top:auto;bottom:44px;height:440px;width:470px;max-width:100%;right:-15px}.hero-sculpture{width:100%;max-height:460px;object-fit:contain}.art-caption{font-size:var(--type-caption);right:1%;bottom:25%}.scroll-cue{bottom:112px;font-size:var(--type-label);z-index:2}.hero-bottom{font-size:var(--type-caption);padding:18px 0}.hero-bottom span:last-child{display:none}.section-space{padding-block:70px}.approach{grid-template-columns:1fr;gap:24px}.section-label{display:flex;gap:13px;align-items:center}.section-label p{font-size:var(--type-label);line-height:1.6}.asterisk{font-size:28px;margin:0}.approach h2{font-size:var(--type-section-title)}.approach-bottom{display:block;margin-top:22px}.approach-bottom p{font-size:var(--type-body)}.approach-bottom .text-link{margin-top:22px;font-size:var(--type-control)}.expertise{border-radius:27px 27px 0 0;padding-top:46px}.expertise-heading h2{font-size:var(--type-section-title)}.expertise-heading>p{display:none}.service-deck{height:auto;display:flex;flex-direction:column;gap:27px;margin:40px auto 36px;padding:0 10px;max-width:510px}.card-wrap{width:100%;height:490px}.product-wrap{transform:rotate(-3deg)}.systems-wrap{transform:rotate(2deg)}.operations-wrap{transform:rotate(-2deg)}.service-card{padding:26px}.service-card h3{font-size:var(--type-card-title)}.service-card>p{font-size:var(--type-card-body)}.product-card{}.systems-card,.operations-card{}.product-scene{top:245px;left:49px;transform:rotate(-5deg);bottom:-30px}.dashboard{width:390px}.connection-art{width:290px;left:auto;right:0;bottom:0}.flow-art{width:110%;left:0;bottom:0;max-height:240px}.expertise-footnote{font-size:var(--type-caption);line-height:1.7;gap:20px}.expertise-footnote>span{display:none}.process{grid-template-columns:1fr;gap:42px}.process h2{font-size:var(--type-section-title)}.process-intro>p:not(.eyebrow){font-size:var(--type-body)}.process-mark{display:none}.process-list summary{padding:25px 0}.step-body{padding-left:34px;padding-right:5px}.contact-inner{min-height:700px;align-items:flex-start;padding-block:53px}.contact h2{font-size:var(--type-contact-title)}.contact-copy>p:not(.eyebrow){font-size:var(--type-body);max-width:330px;line-height:1.7;margin:20px 0 24px}.contact-art{top:auto;bottom:0;right:-5px;width:310px;height:290px}.paper-plane{top:0;width:87%}.orbit-ring{top:22%;height:47%;width:100%;left:0}.dot-one{top:31%}.dot-two{bottom:26%;right:10%}.plane-shadow{bottom:28%}.site-footer{padding-top:44px}.footer-top{grid-template-columns:1fr 1fr;row-gap:34px;padding-bottom:35px}.footer-top>div:first-child{grid-column:1/-1}.footer-top>div:first-child>p{font-size:var(--type-card-body);margin-top:18px}.footer-links{font-size:var(--type-control);gap:15px}.footer-links>span{font-size:var(--type-caption)}.footer-bottom{gap:10px;flex-wrap:wrap;min-height:70px;font-size:var(--type-caption)}.footer-bottom>span:last-child{display:none}.dialog{padding:45px 25px 30px}.dialog h2{font-size:var(--type-dialog-title)}.form-row{grid-template-columns:1fr;gap:0}}
@media(max-width:390px){.hero-actions{gap:14px}.hero-actions .button{font-size:var(--type-control);padding-inline:15px;gap:12px}.hero-actions .text-link{font-size:var(--type-control)}.hero h1{font-size:61px}.hero .eyebrow{font-size:var(--type-label)}.hero{padding-bottom:390px;min-height:795px}.hero-art{height:375px}.brand{gap:8px}.brand-sub{font-size:10px}.service-card h3{font-size:var(--type-card-title)}.product-scene{left:27px}.hero-bottom{font-size:var(--type-caption)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero-sculpture{transform:rotate(-10deg)}}

/* Readable supporting text and comfortable controls at every breakpoint. */
@media (min-width: 801px) {
  .operations-card { padding-left: 44px; }
}
body { font-size: var(--type-body); }
.eyebrow, .section-label p, .service-type { letter-spacing: .12em; }
.hero .eyebrow { max-width: 510px; align-items: flex-start; }
.hero .blue-dot { margin-top: 7px; }
.hero-description { line-height: 1.65; }
.button { min-height: 54px; }
.button-small { min-height: 46px; }
.text-link { min-height: 40px; }
.hero-actions { column-gap: 28px; row-gap: 14px; }
.service-card > p { line-height: 1.6; }
.service-type { opacity: .75; }
.step-body { padding-left: 40px; }
.step-body > span { line-height: 1.7; }
.art-caption { right: 4%; }
.scroll-cue { letter-spacing: .1em; }
.footer-links { line-height: 1.65; }
.footer-links > span { color: #a0b4c8; }
.footer-bottom { min-height: 80px; }
.footer-bottom button { min-height: 44px; }
label { font-weight: 500; }
.preview-note { color: #667687; }
.concept-label { letter-spacing: .04em; background: #e2edf7e8; padding: 3px 5px; border-radius: 3px; }
@media (min-width: 801px) and (max-width: 1100px) {
  .site-header nav { gap: 19px; }
  .hero .eyebrow { max-width: 430px; }
  .hero-actions { max-width: 510px; }
  .service-card { padding-inline: 23px; }
  .service-card > p { font-size: 15px; }
  .service-type { font-size: 11px; }
}
@media (max-width: 800px) {
  :root {
    --type-section-title: clamp(36px, 6vw, 46px);
    --type-contact-title: clamp(52px, 8vw, 62px);
    --type-dialog-title: 36px;
    --type-card-title: 34px;
    --type-step-title: 25px;
    --type-lead: 18px;
    --type-body: 16px;
    --type-card-body: 16px;
    --type-nav: 18px;
    --type-caption: 12px;
    --type-label: 11px;
  }
  .hero .eyebrow { max-width: 350px; letter-spacing: .1em; }
  .hero-actions { align-items: flex-start; column-gap: 22px; row-gap: 12px; }
  .hero-actions .button { min-height: 52px; padding-inline: 20px; }
  .hero-actions .text-link { min-height: 40px; }
  .hero { padding-bottom: 460px; }
  .hero-art { bottom: 57px; }
  .art-caption { font-size: 12px; right: 0; bottom: 15%; }
  .scroll-cue { bottom: 83px; font-size: 10px; }
  .scroll-cue > span:last-child { max-width: 84px; line-height: 1.6; }
  .expertise-footnote { padding-top: 20px; }
  .step-body { padding-left: 36px; }
  .contact-copy { width: 100%; }
  .contact-copy > p:not(.eyebrow) { max-width: 340px; }
  .footer-top { column-gap: 22px; }
  .footer-links { font-size: 14px; }
  .footer-top .brand-sub, .brand-sub { font-size: 9px; }
  .footer-bottom { column-gap: 12px; }
  .form-row { gap: 0; }
  input, select, textarea { font-size: 16px; }
}

/* Shared navigation and the product catalogue entry point. */
.service-apps-link { display: flex; width: fit-content; margin: -7px 0 25px; gap: 18px; align-items: center; }
@media (min-width: 801px) and (max-width: 950px) {
  .site-header nav { gap: 17px; }
  .site-header .brand-sub, .site-header .brand-divider { display: none; }
}
.apps-catalogue-link { display: inline-flex; align-items: center; gap: 13px; min-height: 44px; color: #d8e8f8; font-size: var(--type-control); border-bottom: 1px solid #7390a8; }
.apps-catalogue-link:hover { color: white; }
@media (max-width: 800px) { .expertise-footnote { flex-wrap: wrap; gap: 12px; } }
