/* Port of approved preview main.css; native areas only. */
@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;450;500;550;600;650;700;750;800&display=swap');
@font-face {
  font-family: 'Be Vietnam Pro';
  src: url('../fonts/BeVietnamPro-Bold.ttf') format('truetype');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}
*:where(.nextcore-native, .nextcore-native *) { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body.nextcore-homepage, .nextcore-native { margin: 0; background: var(--bg); color: var(--text); font-family: 'Be Vietnam Pro', Arial, Helvetica, sans-serif; font-size: 15px; line-height: 1.55; }
body.nextcore-site.modal-open { overflow: hidden; }
button:where(.nextcore-native, .nextcore-native *), input:where(.nextcore-native, .nextcore-native *) { font: inherit; }
button:where(.nextcore-native, .nextcore-native *), a:where(.nextcore-native, .nextcore-native *) { -webkit-tap-highlight-color: transparent; }
button:where(.nextcore-native, .nextcore-native *) { cursor: pointer; color: inherit; }
a:where(.nextcore-native, .nextcore-native *) { color: inherit; text-decoration: none; }
img:where(.nextcore-native, .nextcore-native *) { display: block; max-width: 100%; }
svg:where(.nextcore-native, .nextcore-native *) { fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
h1:where(.nextcore-native, .nextcore-native *), h2:where(.nextcore-native, .nextcore-native *), h3:where(.nextcore-native, .nextcore-native *), p:where(.nextcore-native, .nextcore-native *) { margin: 0; }
h1:where(.nextcore-native, .nextcore-native *), h2:where(.nextcore-native, .nextcore-native *), h3:where(.nextcore-native, .nextcore-native *) { line-height: 1.2; }
h2:where(.nextcore-native, .nextcore-native *) { font-size: clamp(27px, 2.5vw, 36px); letter-spacing: -.8px; }
h3:where(.nextcore-native, .nextcore-native *) { font-size: 17px; letter-spacing: -.25px; }
p:where(.nextcore-native, .nextcore-native *) { color: var(--muted); }
button:focus-visible:where(.nextcore-native, .nextcore-native *), a:focus-visible:where(.nextcore-native, .nextcore-native *), input:focus-visible:where(.nextcore-native, .nextcore-native *) { outline: 2px solid #fff; outline-offset: 5px; }
:where(.nextcore-native, .nextcore-native *)::selection { background: var(--red); color: white; }
.container:where(.nextcore-native, .nextcore-native *) { width: min(var(--container), calc(100% - 112px)); margin-inline: auto; }
.icon-library:where(.nextcore-native, .nextcore-native *) { position: absolute; width: 0; height: 0; overflow: hidden; }
.icon:where(.nextcore-native, .nextcore-native *) { width: 21px; height: 21px; }
.line-icon:where(.nextcore-native, .nextcore-native *) { width: 42px; height: 42px; color: #ef151b; flex-shrink: 0; }
.eyebrow:where(.nextcore-native, .nextcore-native *) { color: var(--red-text); text-transform: uppercase; font-size: 12px; font-weight: 700; letter-spacing: .45px; margin-bottom: 9px; }
.button:where(.nextcore-native, .nextcore-native *) { border: 1px solid transparent; display: inline-flex; align-items: center; justify-content: center; gap: 22px; padding: 13px 23px; border-radius: 6px; background: var(--red); color: #fff; font-weight: 700; font-size: 13px; min-height: 46px; transition: background .2s, transform .2s; }
.button:hover:where(.nextcore-native, .nextcore-native *) { background: #bb0000; transform: translateY(-2px); }
.button span:where(.nextcore-native, .nextcore-native *) { font-size: 20px; line-height: 1; }
.button-small:where(.nextcore-native, .nextcore-native *) { padding: 10px 18px; min-height: 38px; border-radius: 24px; font-size: 11px; gap: 12px; white-space: nowrap; }
.button-row:where(.nextcore-native, .nextcore-native *) { display: flex; gap: 30px; align-items: center; margin-top: 30px; }
.button-text:where(.nextcore-native, .nextcore-native *) { display: inline-flex; align-items: center; gap: 12px; font-size: 13px; font-weight: 700; }
.circle:where(.nextcore-native, .nextcore-native *) { display: inline-grid; place-items: center; width: 29px; height: 29px; border: 1px solid #acb4b6; border-radius: 50%; font-size: 17px; }
.text-link:where(.nextcore-native, .nextcore-native *) { color: var(--red-text); font-size: 13px; display: inline-flex; gap: 10px; align-items: center; }
.text-link:hover:where(.nextcore-native, .nextcore-native *) { color: #fff; }
.skip-link:where(.nextcore-native, .nextcore-native *) { position: fixed; top: -100px; left: 20px; z-index: 100; background: white; color: black; padding: 12px; }
.skip-link:focus:where(.nextcore-native, .nextcore-native *) { top: 10px; }
.site-header:where(.nextcore-native, .nextcore-native *) { position: fixed; inset: 0 0 auto; z-index: 20; transition: background .25s, box-shadow .25s; }
.site-header.is-scrolled:where(.nextcore-native, .nextcore-native *), .site-header.menu-open:where(.nextcore-native, .nextcore-native *) { background: rgba(7, 11, 13, .95); backdrop-filter: blur(12px); box-shadow: 0 1px var(--border); }
.header-inner:where(.nextcore-native, .nextcore-native *) { min-height: 82px; display: flex; align-items: center; gap: 30px; }
.brand:where(.nextcore-native, .nextcore-native *) { display: block; width: 160px; flex-shrink: 0; }
.brand img:where(.nextcore-native, .nextcore-native *) { width: 100%; height: 65px; object-fit: contain; }
.main-nav:where(.nextcore-native, .nextcore-native *) { display: flex; gap: 23px; margin-left: auto; align-items: center; }
.main-nav a:where(.nextcore-native, .nextcore-native *) { font-size: 11px; font-weight: 600; white-space: nowrap; position: relative; padding-block: 12px; }
.main-nav a:hover:where(.nextcore-native, .nextcore-native *)::after, .main-nav a.is-active:where(.nextcore-native, .nextcore-native *)::after { content: ''; position: absolute; bottom: 4px; left: 0; width: 14px; height: 2px; background: var(--red); }
.header-actions:where(.nextcore-native, .nextcore-native *) { display: flex; align-items: center; gap: 15px; }
.icon-button:where(.nextcore-native, .nextcore-native *) { display: grid; place-items: center; width: 42px; height: 42px; border: 0; background: transparent; border-radius: 50%; }
.icon-button:hover:where(.nextcore-native, .nextcore-native *) { background: var(--panel); }
.menu-toggle:where(.nextcore-native, .nextcore-native *) { display: none; }
.hero:where(.nextcore-native, .nextcore-native *) { min-height: 520px; position: relative; isolation: isolate; overflow: hidden; }
.hero-image:where(.nextcore-native, .nextcore-native *) { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 25%; z-index: -2; }
.hero:where(.nextcore-native, .nextcore-native *)::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(3, 8, 10, .91), rgba(3, 8, 10, .57) 40%, rgba(3, 8, 10, .08) 75%), linear-gradient(0deg, rgba(3, 8, 10, .5), transparent 40%); }
.hero-inner:where(.nextcore-native, .nextcore-native *) { display: flex; align-items: center; min-height: 520px; padding-top: 78px; padding-bottom: 35px; }
.hero-copy:where(.nextcore-native, .nextcore-native *) { max-width: 690px; }
.hero .eyebrow:where(.nextcore-native, .nextcore-native *) { margin-bottom: 18px; }
h1:where(.nextcore-native, .nextcore-native *) { font-size: clamp(44px, 5.15vw, 74px); line-height: 1.03; letter-spacing: -1.9px; font-weight: 800; }
h1 span:where(.nextcore-native, .nextcore-native *) { color: #ef272d; }
.hero-description:where(.nextcore-native, .nextcore-native *) { font-size: 17px; color: #f1f1f1; margin-top: 22px; }
.scroll-cue:where(.nextcore-native, .nextcore-native *) { position: absolute; right: 30px; bottom: 30px; display: grid; justify-items: center; gap: 13px; }
.scroll-cue > span:first-child:where(.nextcore-native, .nextcore-native *) { writing-mode: vertical-rl; text-transform: uppercase; font-size: 9px; letter-spacing: 2px; color: var(--muted); }
.stats:where(.nextcore-native, .nextcore-native *) { border-block: 1px solid var(--border); }
.stats-grid:where(.nextcore-native, .nextcore-native *) { display: grid; grid-template-columns: repeat(4, 1fr); padding-block: 27px; }
.stat:where(.nextcore-native, .nextcore-native *) { display: flex; align-items: center; gap: 26px; padding-inline: 30px; border-right: 1px solid var(--border); }
.stat:first-child:where(.nextcore-native, .nextcore-native *) { padding-left: 15px; }
.stat:last-child:where(.nextcore-native, .nextcore-native *) { border: 0; }
.stat strong:where(.nextcore-native, .nextcore-native *) { display: block; font-size: 28px; line-height: 1.2; }
.stat span:where(.nextcore-native, .nextcore-native *) { display: block; color: var(--muted); font-size: 12px; margin-top: 5px; }
.section-border:where(.nextcore-native, .nextcore-native *) { border-bottom: 1px solid var(--border); }
.about:where(.nextcore-native, .nextcore-native *) { overflow: hidden; }
.about-inner:where(.nextcore-native, .nextcore-native *) { display: grid; grid-template-columns: 39% 61%; min-height: 320px; }
.about-copy:where(.nextcore-native, .nextcore-native *) { padding: 35px 30px 35px 0; position: relative; z-index: 2; }
.about-copy > p:not(.eyebrow):where(.nextcore-native, .nextcore-native *) { max-width: 410px; margin-block: 19px; font-size: 14px; }
.about-visual:where(.nextcore-native, .nextcore-native *) { position: relative; margin-right: calc((min(1280px, 100vw - 112px) - 100vw) / 2); }
.about-visual > img:first-child:where(.nextcore-native, .nextcore-native *) { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 54%; }
.about-visual:where(.nextcore-native, .nextcore-native *)::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, var(--bg), transparent 25%, rgba(0,0,0,.17)); }
.office-logo:where(.nextcore-native, .nextcore-native *) { position: absolute; width: 185px; height: 85px; object-fit: contain; top: 28px; right: 25%; z-index: 1; }
.image-motto:where(.nextcore-native, .nextcore-native *) { position: absolute; right: 8%; top: 26%; text-transform: uppercase; color: #fff; font-size: 13px; font-weight: 700; z-index: 1; line-height: 1.55; }
.section:where(.nextcore-native, .nextcore-native *) { padding-block: 36px; }
.section-heading:where(.nextcore-native, .nextcore-native *) { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-bottom: 22px; }
.services-grid:where(.nextcore-native, .nextcore-native *) { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.service-card:where(.nextcore-native, .nextcore-native *) { position: relative; isolation: isolate; overflow: hidden; background: var(--panel); border: 1px solid var(--border); border-radius: 8px; padding: 28px 24px 22px; min-height: 225px; transition: border-color .25s, transform .25s, box-shadow .25s; }
.service-card:where(.nextcore-native, .nextcore-native *)::before { content: ''; position: absolute; z-index: -2; inset: 0; background-size: cover; background-position: center; opacity: .35; }
.service-card:where(.nextcore-native, .nextcore-native *)::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg, #0c1214 4%, rgba(7,11,13,.55) 65%, rgba(7,11,13,.12)); }
.service-card:hover:where(.nextcore-native, .nextcore-native *) { border-color: rgba(223,0,0,.65); transform: translateY(-4px); box-shadow: 0 8px 30px rgba(223,0,0,.06); }
.service-card h3:where(.nextcore-native, .nextcore-native *) { margin-top: 24px; }
.service-card p:where(.nextcore-native, .nextcore-native *) { font-size: 12px; margin-block: 10px 18px; }
.service-card .circle:where(.nextcore-native, .nextcore-native *) { width: 25px; height: 25px; }
.section-projects:where(.nextcore-native, .nextcore-native *) { padding-top: 0; }
.projects-grid:where(.nextcore-native, .nextcore-native *), .blog-grid:where(.nextcore-native, .nextcore-native *) { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.project-card:where(.nextcore-native, .nextcore-native *) { overflow: hidden; border: 1px solid var(--border); border-radius: 8px; background: #0d1315; transition: border-color .25s; }
.project-card:hover:where(.nextcore-native, .nextcore-native *) { border-color: rgba(223,0,0,.6); }
.project-visual:where(.nextcore-native, .nextcore-native *) { display: block; overflow: hidden; aspect-ratio: 16 / 9; background: #101618; }
.project-visual img:where(.nextcore-native, .nextcore-native *) { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.project-card:hover .project-visual img:where(.nextcore-native, .nextcore-native *) { transform: scale(1.035); }
.card-copy:where(.nextcore-native, .nextcore-native *) { position: relative; padding: 18px 20px 20px; min-height: 107px; }
.card-copy h3:where(.nextcore-native, .nextcore-native *) { font-size: 16px; }
.card-copy p:where(.nextcore-native, .nextcore-native *) { font-size: 13px; margin-top: 8px; }
.round-button:where(.nextcore-native, .nextcore-native *) { position: absolute; right: 18px; top: 25px; border: 0; background: var(--red); width: 36px; height: 36px; border-radius: 50%; font-size: 23px; }
.round-button:hover:where(.nextcore-native, .nextcore-native *) { background: #aa0000; }
.technology:where(.nextcore-native, .nextcore-native *) { position: relative; isolation: isolate; border-top: 1px solid var(--border); overflow: hidden; background: radial-gradient(circle at 43% 51%, rgba(223, 0, 0, .075), transparent 24%), radial-gradient(circle at 2% 72%, rgba(223, 0, 0, .13), transparent 27%), var(--bg); }
.technology:where(.nextcore-native, .nextcore-native *)::after { content: ''; position: absolute; left: -33%; bottom: -160%; z-index: -1; width: 76%; aspect-ratio: 1; border: 1px solid rgba(239, 21, 27, .65); border-radius: 50%; background: radial-gradient(circle at 72% 20%, rgba(223, 0, 0, .14), transparent 48%); box-shadow: 0 -10px 55px rgba(223, 0, 0, .13); pointer-events: none; }
.technology:where(.nextcore-native, .nextcore-native *) { --technology-chrome-height: 84px; min-height: calc(100svh - var(--technology-chrome-height)); display: grid; align-items: center; scroll-margin-top: var(--technology-chrome-height); }
.technology-inner:where(.nextcore-native, .nextcore-native *) { position: relative; z-index: 1; display: grid; grid-template-columns: 355px minmax(0, 1fr); align-items: center; gap: 28px; padding-block: 42px; }
.technology h2:where(.nextcore-native, .nextcore-native *) { max-width: 360px; font-size: clamp(34px, 3.2vw, 47px); line-height: 1.18; letter-spacing: -1.3px; text-wrap: balance; }
.technology h2 span:where(.nextcore-native, .nextcore-native *) { display: block; white-space: nowrap; }
.technology-description:where(.nextcore-native, .nextcore-native *) { max-width: 290px; margin-top: 24px; color: var(--muted); font-size: 14px; line-height: 1.75; }
.technology-motto:where(.nextcore-native, .nextcore-native *) { margin-top: 34px; color: var(--muted); font-size: 9px; letter-spacing: 2.4px; text-transform: uppercase; }
.technology-motto:where(.nextcore-native, .nextcore-native *)::before { content: ''; display: inline-block; width: 28px; height: 2px; margin-right: 16px; vertical-align: middle; background: var(--red); }
.technology-constellation:where(.nextcore-native, .nextcore-native *) { position: relative; min-width: 0; height: max(720px, calc(100svh - var(--technology-chrome-height) - 98px)); isolation: isolate; }
.technology-constellation:where(.nextcore-native, .nextcore-native *)::before { content: ''; position: absolute; inset: 9% 4%; z-index: -3; opacity: .22; background-image: radial-gradient(circle, var(--text) 0 1px, transparent 1.5px); background-size: 97px 83px; mask-image: radial-gradient(circle, #000, transparent 72%); }
.constellation-connectors:where(.nextcore-native, .nextcore-native *) { position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; overflow: visible; pointer-events: none; }
.constellation-connectors path:where(.nextcore-native, .nextcore-native *) { fill: none; stroke: var(--muted); stroke-width: .85; opacity: .3; vector-effect: non-scaling-stroke; transition: opacity .3s, stroke .3s, stroke-width .3s; }
.constellation-connectors path.is-active:where(.nextcore-native, .nextcore-native *) { stroke: var(--red-text); stroke-width: 1.15; opacity: .85; }
.constellation-connectors .constellation-signal:where(.nextcore-native, .nextcore-native *) { fill: #ff242b; stroke: none; filter: drop-shadow(0 0 4px var(--red-text)); opacity: .82; transform-box: fill-box; transform-origin: center; animation: constellation-signal 3.8s ease-in-out infinite; }
.constellation-signal.is-active:where(.nextcore-native, .nextcore-native *) { opacity: 1; }
.constellation-core:where(.nextcore-native, .nextcore-native *) { position: absolute; left: 45%; top: 46%; z-index: 3; display: grid; place-items: center; align-content: center; gap: 9px; width: 112px; height: 112px; transform: translate(-50%, -50%); border: 1px solid var(--red-text); border-radius: 50%; background: radial-gradient(circle, rgba(223, 0, 0, .2), color-mix(in srgb, var(--bg) 94%, var(--red) 6%) 64%); box-shadow: 0 0 22px rgba(223, 0, 0, .34), 0 0 56px rgba(223, 0, 0, .16), inset 0 0 24px rgba(223, 0, 0, .14); animation: constellation-breathe 4.8s ease-in-out infinite; }
.constellation-core:where(.nextcore-native, .nextcore-native *)::before, .constellation-core:where(.nextcore-native, .nextcore-native *)::after { content: ''; position: absolute; border-radius: inherit; pointer-events: none; }
.constellation-core:where(.nextcore-native, .nextcore-native *)::before { inset: 7px; border: 1px solid rgba(255, 73, 73, .24); }
.constellation-core:where(.nextcore-native, .nextcore-native *)::after { display: none; }
.constellation-core-mark:where(.nextcore-native, .nextcore-native *) { position: relative; display: block; width: 43px; height: 40px; }
.constellation-core-mark i:where(.nextcore-native, .nextcore-native *) { position: absolute; top: 1px; bottom: 1px; width: 8px; border-radius: 1px; background: linear-gradient(#ff3138, #df0000); box-shadow: 0 0 9px rgba(255, 49, 56, .35); }
.constellation-core-mark i:first-child:where(.nextcore-native, .nextcore-native *) { left: 4px; }
.constellation-core-mark i:nth-child(2):where(.nextcore-native, .nextcore-native *) { left: 18px; transform: skew(28deg); }
.constellation-core-mark i:last-child:where(.nextcore-native, .nextcore-native *) { right: 3px; }
.constellation-core small:where(.nextcore-native, .nextcore-native *) { color: var(--text); font-size: 8px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; }
.technology-clusters:where(.nextcore-native, .nextcore-native *) { position: absolute; inset: 0; }
.tech-cluster:where(.nextcore-native, .nextcore-native *) { --spread-x: 0px; --spread-y: 0px; position: absolute; display: grid; place-items: center; padding: 38px 10px 26px; border: 1px dashed color-mix(in srgb, var(--muted) 32%, transparent); border-radius: 50%; transition: border-color .3s, box-shadow .3s; }
.tech-cluster h3:where(.nextcore-native, .nextcore-native *) { position: absolute; top: 13px; color: var(--text); font-size: 15px; font-weight: 600; letter-spacing: .4px; transition: color .3s; }
.tech-cluster-nodes:where(.nextcore-native, .nextcore-native *) { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: center; justify-items: center; gap: 30px 12px; width: 100%; }
.tech-node:where(.nextcore-native, .nextcore-native *) { --drag-x: 0px; --drag-y: 0px; --spread-x: 0px; --node-color: #8aa0aa; position: relative; display: grid; place-items: center; width: 64px; height: 64px; padding: 0; border: 1px solid color-mix(in srgb, var(--node-color) 70%, transparent); border-radius: 50%; background: radial-gradient(circle at 35% 28%, color-mix(in srgb, var(--node-color) 11%, transparent), color-mix(in srgb, var(--panel) 92%, transparent) 62%); color: var(--node-color); box-shadow: 0 0 16px color-mix(in srgb, var(--node-color) 15%, transparent), inset 0 0 12px color-mix(in srgb, var(--node-color) 5%, transparent); touch-action: none; user-select: none; transform: translate(calc(var(--drag-x) + var(--spread-x)), var(--drag-y)); animation: constellation-float calc(4.6s + var(--node-index) * .38s) ease-in-out calc(var(--node-index) * -.47s) infinite; transition: transform .42s cubic-bezier(.2,.8,.25,1), border-color .3s, box-shadow .3s, opacity .3s; }
.tech-node-icon:where(.nextcore-native, .nextcore-native *) { display: grid; place-items: center; width: 40px; height: 40px; pointer-events: none; }
.tech-node-icon img:where(.nextcore-native, .nextcore-native *) { display: block; width: 100%; height: 100%; object-fit: contain; }
.tech-node-wordmark:where(.nextcore-native, .nextcore-native *) { color: var(--text); font-size: 11px; font-weight: 600; line-height: 1.2; letter-spacing: -.3px; text-align: center; width: max-content; max-width: 58px; overflow-wrap: anywhere; }
.tech-node--flask .tech-node-icon:where(.nextcore-native, .nextcore-native *) { background: var(--text); mask: url('../images/technology/flask.svg') center / contain no-repeat; }
.tech-node--flask .tech-node-icon:has(img) img:where(.nextcore-native, .nextcore-native *) { opacity: 0; }
.tech-node--flask .tech-node-icon:not(:has(img)):where(.nextcore-native, .nextcore-native *) { background: none; mask: none; }
.tech-node--aws .tech-node-icon:where(.nextcore-native, .nextcore-native *) { width: 46px; height: 40px; padding: 3px; border-radius: 8px; background: #fff; }
.tech-node-label:where(.nextcore-native, .nextcore-native *) { position: absolute; top: calc(100% + 5px); left: 50%; width: max-content; max-width: 90px; transform: translateX(-50%); color: var(--text); font-size: 13px; font-weight: 600; line-height: 1.2; text-align: center; pointer-events: none; transition: color .3s; }
.tech-node:hover:where(.nextcore-native, .nextcore-native *), .tech-node:focus-visible:where(.nextcore-native, .nextcore-native *), .tech-node.is-active:where(.nextcore-native, .nextcore-native *), .tech-node.is-dragging:where(.nextcore-native, .nextcore-native *) { z-index: 4; border-color: var(--node-color); box-shadow: 0 0 22px color-mix(in srgb, var(--node-color) 28%, transparent); animation-play-state: paused; transform: translate(calc(var(--drag-x) + var(--spread-x)), var(--drag-y)) scale(1.07); }
.tech-node.is-dragging:where(.nextcore-native, .nextcore-native *) { cursor: grabbing; transition: border-color .3s, box-shadow .3s, opacity .3s; }
.tech-node:focus-visible:where(.nextcore-native, .nextcore-native *) { outline: 2px solid var(--red-text); outline-offset: 3px; }
.tech-node:hover .tech-node-label:where(.nextcore-native, .nextcore-native *), .tech-node:focus-visible .tech-node-label:where(.nextcore-native, .nextcore-native *), .tech-node.is-active .tech-node-label:where(.nextcore-native, .nextcore-native *) { color: var(--text); }
.technology-constellation:has(.tech-node:hover) .tech-node:not(:hover):not(.is-active):where(.nextcore-native, .nextcore-native *) { opacity: .7; }
.tech-cluster:hover:where(.nextcore-native, .nextcore-native *), .tech-cluster:focus-within:where(.nextcore-native, .nextcore-native *) { border-color: color-mix(in srgb, var(--red-text) 55%, transparent); box-shadow: 0 0 28px rgba(223, 0, 0, .05); }
.tech-cluster:hover h3:where(.nextcore-native, .nextcore-native *), .tech-cluster:focus-within h3:where(.nextcore-native, .nextcore-native *) { color: var(--text); }
.tech-cluster:hover .tech-node:nth-child(odd):where(.nextcore-native, .nextcore-native *) { --spread-x: -3px; }
.tech-cluster:hover .tech-node:nth-child(even):where(.nextcore-native, .nextcore-native *) { --spread-x: 3px; }
.tech-cluster--platform:where(.nextcore-native, .nextcore-native *) { left: 0; top: 7%; width: 30%; height: 27%; }
.tech-cluster--language:where(.nextcore-native, .nextcore-native *) { right: 0; top: 7%; width: 39%; height: 31%; }
.tech-cluster--database:where(.nextcore-native, .nextcore-native *) { left: 0; bottom: 4%; width: 32%; height: 32%; }
.tech-cluster--framework:where(.nextcore-native, .nextcore-native *) { right: 0; top: 40%; width: 41%; height: 32%; }
.tech-cluster--cloud:where(.nextcore-native, .nextcore-native *) { left: 34%; bottom: 0; width: 31%; height: 28%; }
.tech-cluster--os:where(.nextcore-native, .nextcore-native *) { right: 0; bottom: 0; width: 29%; height: 25%; }
.tech-node--drupal:where(.nextcore-native, .nextcore-native *), .tech-node--azure:where(.nextcore-native, .nextcore-native *), .tech-node--gcp:where(.nextcore-native, .nextcore-native *) { --node-color: #35a8e8; }
.tech-node--salesforce:where(.nextcore-native, .nextcore-native *) { --node-color: #31b7d6; }
.tech-node--sitecore:where(.nextcore-native, .nextcore-native *), .tech-node--laravel:where(.nextcore-native, .nextcore-native *) { --node-color: #ff5147; }
.tech-node--python:where(.nextcore-native, .nextcore-native *) { --node-color: #f2cb4c; }
.tech-node--csharp:where(.nextcore-native, .nextcore-native *), .tech-node--dotnet:where(.nextcore-native, .nextcore-native *) { --node-color: #a875e8; }
.tech-node--java:where(.nextcore-native, .nextcore-native *) { --node-color: #ef5b51; }
.tech-node--php:where(.nextcore-native, .nextcore-native *) { --node-color: #8993be; }
.tech-node--javascript:where(.nextcore-native, .nextcore-native *) { --node-color: #e9c94b; }
.tech-node--apex:where(.nextcore-native, .nextcore-native *) { --node-color: #6aa7d8; }
.tech-node--mysql:where(.nextcore-native, .nextcore-native *), .tech-node--postgresql:where(.nextcore-native, .nextcore-native *), .tech-node--sqlite:where(.nextcore-native, .nextcore-native *), .tech-node--db2:where(.nextcore-native, .nextcore-native *) { --node-color: #62a7d1; }
.tech-node--flask:where(.nextcore-native, .nextcore-native *) { --node-color: var(--text); }
.tech-node--react:where(.nextcore-native, .nextcore-native *) { --node-color: #45d1f3; }
.tech-node--vue:where(.nextcore-native, .nextcore-native *) { --node-color: #42b883; }
.tech-node--aws:where(.nextcore-native, .nextcore-native *) { --node-color: #f5a32f; }
.tech-node--windows:where(.nextcore-native, .nextcore-native *) { --node-color: #39a9e8; }
.tech-node--ubuntu:where(.nextcore-native, .nextcore-native *) { --node-color: #e86f45; }
.tech-node--centos:where(.nextcore-native, .nextcore-native *) { --node-color: #9b78c5; }
.constellation-status:where(.nextcore-native, .nextcore-native *) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
@keyframes constellation-float { 0%, 100% { translate: 0 -2px; } 50% { translate: 0 2px; } }
@keyframes constellation-breathe { 0%, 100% { scale: 1; } 50% { scale: 1.015; } }
@keyframes constellation-signal { 0%, 100% { scale: .82; opacity: .55; } 50% { scale: 1.18; opacity: 1; } }
.partner:where(.nextcore-native, .nextcore-native *) { background: url('../images/partner-waves.svg') center / cover no-repeat, #080c0f; }
.partner-inner:where(.nextcore-native, .nextcore-native *) { min-height: 222px; padding-block: 26px; display: grid; grid-template-columns: 1fr 280px 265px; gap: 55px; align-items: center; }
.partner h2:where(.nextcore-native, .nextcore-native *) { font-size: 30px; }
.partner p:not(.eyebrow):not(.partner-motto):where(.nextcore-native, .nextcore-native *) { margin-block: 11px 18px; }
.partner-logo:where(.nextcore-native, .nextcore-native *) { width: 210px; height: 165px; object-fit: contain; margin-inline: auto; }
.partner-motto:where(.nextcore-native, .nextcore-native *) { border-left: 1px solid #566064; padding-left: 48px; text-transform: uppercase; line-height: 1.45; font-size: 17px; color: #dbe0e2; }
.team-inner:where(.nextcore-native, .nextcore-native *) { display: grid; grid-template-columns: 285px minmax(0, 1fr) 180px; gap: 28px; padding-block: 26px; align-items: center; }
.team h2:where(.nextcore-native, .nextcore-native *) { font-size: 27px; }
.team-grid:where(.nextcore-native, .nextcore-native *) { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.team-card:where(.nextcore-native, .nextcore-native *) { overflow: hidden; border: 1px solid var(--border); border-radius: 5px; background: #0d1315; }
.team-card > img:where(.nextcore-native, .nextcore-native *) { width: 100%; aspect-ratio: 1.45; height: auto; object-fit: cover; object-position: center 24%; filter: saturate(.62); }
.team-card > div:where(.nextcore-native, .nextcore-native *) { padding: 10px; }
.team-card h3:where(.nextcore-native, .nextcore-native *) { font-size: 13px; }
.team-card p:where(.nextcore-native, .nextcore-native *) { font-size: 11px; margin-top: 4px; }
.team-message:where(.nextcore-native, .nextcore-native *) { background: #101618; border-radius: 5px; padding: 20px; height: 100%; display: flex; flex-direction: column; align-items: start; }
.team-message img:where(.nextcore-native, .nextcore-native *) { object-fit: contain; width: 39px; height: 39px; }
.team-message p:where(.nextcore-native, .nextcore-native *) { margin-top: 12px; color: #e2e5e6; font-size: 14px; }
.team-message > span:where(.nextcore-native, .nextcore-native *) { color: var(--red-text); align-self: end; font-size: 23px; margin-top: auto; }
.quiet-label:where(.nextcore-native, .nextcore-native *) { color: var(--muted); font-size: 12px; }
.blog-card:where(.nextcore-native, .nextcore-native *) { position: relative; overflow: hidden; isolation: isolate; border: 1px solid var(--border); border-radius: 7px; min-height: 205px; background: #0d1315; }
.blog-image-link:where(.nextcore-native, .nextcore-native *) { display: block; overflow: hidden; aspect-ratio: 16 / 7.2; background: #101618; }
.blog-image-link img:where(.nextcore-native, .nextcore-native *) { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.blog-card:where(.nextcore-native, .nextcore-native *)::after { content: none; }
.blog-card:hover .blog-image-link img:where(.nextcore-native, .nextcore-native *) { transform: scale(1.035); }
.blog-card > div:where(.nextcore-native, .nextcore-native *) { padding: 23px; }
.post-meta:where(.nextcore-native, .nextcore-native *) { font-size: 12px; color: #c4cbd0; }
.blog-card h3:where(.nextcore-native, .nextcore-native *) { font-size: 17px; margin-top: 10px; }
.blog-card button:where(.nextcore-native, .nextcore-native *) { background: none; border: none; text-align: left; font: inherit; padding: 0; }
.blog-card button:where(.nextcore-native, .nextcore-native *)::after { content: ''; position: absolute; inset: 0; }
.blog-card:focus-within:where(.nextcore-native, .nextcore-native *) { outline: 2px solid #fff; outline-offset: 3px; }
.final-cta:where(.nextcore-native, .nextcore-native *) { position: relative; isolation: isolate; min-height: 285px; overflow: hidden; }
.final-cta > img:where(.nextcore-native, .nextcore-native *) { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 55%; z-index: -2; }
.final-cta:where(.nextcore-native, .nextcore-native *)::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(7,16,23,.67), rgba(7,16,23,.15)), linear-gradient(0deg, #070b0d77, transparent); }
.cta-inner:where(.nextcore-native, .nextcore-native *) { min-height: 285px; padding-block: 43px; display: flex; justify-content: space-between; gap: 25px; }
.cta-inner h2:where(.nextcore-native, .nextcore-native *) { font-size: 30px; }
.cta-inner p:not(.cta-motto):where(.nextcore-native, .nextcore-native *) { color: #e0e5e9; margin-block: 15px 25px; }
.cta-motto:where(.nextcore-native, .nextcore-native *) { align-self: end; text-transform: uppercase; font-size: 14px; color: #dce1e4; line-height: 1.45; }
.site-footer:where(.nextcore-native, .nextcore-native *) { padding-block: 32px 55px; }
.footer-grid:where(.nextcore-native, .nextcore-native *) { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr 1.2fr; gap: 34px; align-items: start; }
.footer-brand .brand:where(.nextcore-native, .nextcore-native *) { margin-top: -10px; }
.footer-brand p:where(.nextcore-native, .nextcore-native *), .footer-brand small:where(.nextcore-native, .nextcore-native *) { font-size: 11px; color: var(--muted); }
.footer-brand small:where(.nextcore-native, .nextcore-native *) { display: block; margin-top: 9px; }
.site-footer h2:where(.nextcore-native, .nextcore-native *) { font-size: 13px; letter-spacing: 0; margin-block: 12px 17px; }
.footer-grid > div > a:not(.brand):where(.nextcore-native, .nextcore-native *) { display: block; font-size: 12px; color: var(--muted); margin-bottom: 7px; }
.site-footer a:hover:where(.nextcore-native, .nextcore-native *) { color: #fff; }
.social-links:where(.nextcore-native, .nextcore-native *) { display: flex; gap: 12px; }
.social-links button:where(.nextcore-native, .nextcore-native *) { border: 0; border-radius: 50%; width: 26px; height: 26px; font-size: 14px; background: #e3e6e8; color: #0b0d10; font-weight: 700; }
.footer-motto:where(.nextcore-native, .nextcore-native *) { text-transform: uppercase; font-size: 10px; align-self: center; display: flex; align-items: center; gap: 16px; }
.footer-motto:where(.nextcore-native, .nextcore-native *)::before { content: ''; width: 50px; height: 1px; background: #707879; }
.final-cta > img:where(.nextcore-native, .nextcore-native *) { object-position: center 28%; }
dialog:where(.nextcore-native, .nextcore-native *) { background: #10181c; color: var(--text); border: 1px solid #344148; padding: 40px; border-radius: 12px; width: min(560px, calc(100% - 32px)); max-height: 85vh; box-shadow: 0 25px 100px #0008; }
dialog:where(.nextcore-native, .nextcore-native *)::backdrop { background: #020608cf; backdrop-filter: blur(5px); }
dialog h2:where(.nextcore-native, .nextcore-native *) { font-size: 28px; padding-right: 20px; }
dialog p:not(.eyebrow):where(.nextcore-native, .nextcore-native *) { margin-block: 20px 25px; }
.dialog-close:where(.nextcore-native, .nextcore-native *) { position: absolute; right: 12px; top: 10px; border: 0; background: transparent; width: 38px; height: 38px; font-size: 28px; }
dialog label:where(.nextcore-native, .nextcore-native *) { display: block; font-size: 13px; color: var(--muted); margin: 24px 0 10px; }
dialog input:where(.nextcore-native, .nextcore-native *) { width: 100%; border: 1px solid #53646c; background: #070b0d; color: white; padding: 13px; border-radius: 5px; }
#search-results:where(.nextcore-native, .nextcore-native *) { list-style: none; padding: 0; margin: 15px 0 0; }
#search-results a:where(.nextcore-native, .nextcore-native *) { display: block; padding: 10px 0; border-bottom: 1px solid var(--border); }
#search-results a:hover:where(.nextcore-native, .nextcore-native *) { color: var(--red-text); }
.noscript-note:where(.nextcore-native, .nextcore-native *) { padding: 15px; text-align: center; }
.reveal-ready:where(.nextcore-native, .nextcore-native *) { opacity: 0; transform: translateY(14px); transition: opacity .6s ease, transform .6s ease; }
.reveal-ready.is-visible:where(.nextcore-native, .nextcore-native *) { opacity: 1; transform: none; }
/* Six matching petals, mirrored around the Nextcore center. */
@media (min-width: 769px) {
.technology-constellation:where(.nextcore-native, .nextcore-native *) { container-type: inline-size; height: auto; aspect-ratio: 1 / .88; min-height: 680px; }
.constellation-core:where(.nextcore-native, .nextcore-native *) { left: 50%; top: 50%; width: 17%; height: auto; aspect-ratio: 1; background-color: var(--bg); }
.tech-cluster:where(.nextcore-native, .nextcore-native *) { inset: auto; width: 36%; height: 32%; transform: translate(-50%, -50%); padding: 38px 16px 30px; border-color: color-mix(in srgb, var(--red-text) 30%, transparent); background: radial-gradient(ellipse at center, color-mix(in srgb, var(--panel) 92%, transparent) 45%, color-mix(in srgb, var(--red) 7%, var(--bg)) 100%); box-shadow: inset 0 0 22px rgba(223, 0, 0, .035), 0 10px 28px rgba(223, 0, 0, .045); }
.tech-cluster--platform:where(.nextcore-native, .nextcore-native *) { left: 50%; top: 13%; height: 24%; }
.tech-cluster--language:where(.nextcore-native, .nextcore-native *) { left: 82%; top: 32.5%; }
.tech-cluster--framework:where(.nextcore-native, .nextcore-native *) { left: 82%; top: 67.5%; }
.tech-cluster--cloud:where(.nextcore-native, .nextcore-native *) { left: 50%; top: 87%; height: 24%; }
.tech-cluster--os:where(.nextcore-native, .nextcore-native *) { left: 18%; top: 67.5%; }
.tech-cluster--database:where(.nextcore-native, .nextcore-native *) { left: 18%; top: 32.5%; }
.tech-cluster-nodes:where(.nextcore-native, .nextcore-native *) { gap: 27px 8px; }
.tech-cluster--database .tech-cluster-nodes:where(.nextcore-native, .nextcore-native *) { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 190px; }
.tech-cluster--framework .tech-cluster-nodes:where(.nextcore-native, .nextcore-native *) { grid-template-columns: repeat(6, minmax(0, 1fr)); column-gap: 0; }
.tech-cluster--framework .tech-node:where(.nextcore-native, .nextcore-native *) { grid-column: span 2; }
.tech-cluster--framework .tech-node:nth-child(4):where(.nextcore-native, .nextcore-native *) { grid-column: 2 / span 2; }
.tech-node:where(.nextcore-native, .nextcore-native *) { width: clamp(46px, 7cqw, 64px); height: clamp(46px, 7cqw, 64px); animation: none; }
.tech-node-icon:where(.nextcore-native, .nextcore-native *) { width: clamp(30px, 4.5cqw, 40px); height: clamp(30px, 4.5cqw, 40px); }
.tech-node-label:where(.nextcore-native, .nextcore-native *) { font-size: clamp(11px, 1.5cqw, 13px); }
.constellation-connectors path:where(.nextcore-native, .nextcore-native *) { stroke: var(--red-text); opacity: .45; }
}
@media (min-width: 1600px) {
.hero:where(.nextcore-native, .nextcore-native *), .hero-inner:where(.nextcore-native, .nextcore-native *) { min-height: 580px; }
 }
@media (max-width: 1200px) {
.container:where(.nextcore-native, .nextcore-native *) { width: calc(100% - 64px); }
.main-nav:where(.nextcore-native, .nextcore-native *) { gap: 14px; }
.header-inner:where(.nextcore-native, .nextcore-native *) { gap: 18px; }
.brand:where(.nextcore-native, .nextcore-native *) { width: 135px; }
.header-actions:where(.nextcore-native, .nextcore-native *) { gap: 4px; }
.about-visual:where(.nextcore-native, .nextcore-native *) { margin-right: -32px; }
.team-inner:where(.nextcore-native, .nextcore-native *) { grid-template-columns: 235px minmax(0, 1fr); }
.team-message:where(.nextcore-native, .nextcore-native *) { display: none; }
.service-card:where(.nextcore-native, .nextcore-native *) { padding: 24px 18px 20px; }
.stat:where(.nextcore-native, .nextcore-native *) { padding-inline: 20px; gap: 20px; }
.partner-inner:where(.nextcore-native, .nextcore-native *) { grid-template-columns: 1fr 230px 215px; gap: 35px; }
.partner-motto:where(.nextcore-native, .nextcore-native *) { padding-left: 30px; }
.technology-inner:where(.nextcore-native, .nextcore-native *) { grid-template-columns: minmax(0, 1fr); }
.footer-grid:where(.nextcore-native, .nextcore-native *) { gap: 24px; }

}
@media (max-width: 1023px) {
.projects-grid:where(.nextcore-native, .nextcore-native *) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.header-inner:where(.nextcore-native, .nextcore-native *) { min-height: 74px; }
.header-actions:where(.nextcore-native, .nextcore-native *) { margin-left: auto; }
.menu-toggle:where(.nextcore-native, .nextcore-native *) { display: flex; flex-direction: column; justify-content: center; gap: 5px; width: 44px; height: 44px; border: 1px solid var(--border); border-radius: 5px; background: transparent; order: 3; }
.menu-toggle span:where(.nextcore-native, .nextcore-native *) { display: block; width: 20px; height: 1px; background: white; margin-inline: auto; transition: transform .2s, opacity .2s; }
.menu-toggle[aria-expanded="true"] span:first-child:where(.nextcore-native, .nextcore-native *) { transform: translateY(6px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] span:nth-child(2):where(.nextcore-native, .nextcore-native *) { opacity: 0; }
.menu-toggle[aria-expanded="true"] span:last-child:where(.nextcore-native, .nextcore-native *) { transform: translateY(-6px) rotate(-45deg); }
.main-nav:where(.nextcore-native, .nextcore-native *) { display: none; position: absolute; left: 0; right: 0; top: 74px; margin: 0; padding: 18px 32px 25px; background: #090f12; border-bottom: 1px solid var(--border); max-height: calc(100dvh - 74px); overflow: auto; }
.main-nav.is-open:where(.nextcore-native, .nextcore-native *) { display: grid; grid-template-columns: 1fr 1fr; gap: 6px 24px; }
.main-nav a:where(.nextcore-native, .nextcore-native *) { padding: 12px; font-size: 14px; }
.hero:where(.nextcore-native, .nextcore-native *), .hero-inner:where(.nextcore-native, .nextcore-native *) { min-height: 485px; }
h1:where(.nextcore-native, .nextcore-native *) { font-size: 55px; }
.hero-copy:where(.nextcore-native, .nextcore-native *) { max-width: 590px; }
.hero-image:where(.nextcore-native, .nextcore-native *) { object-position: 61% center; }
.hero:where(.nextcore-native, .nextcore-native *)::after { background: linear-gradient(90deg, #03080aee, #03080a88 55%, #03080a33); }
.stat:where(.nextcore-native, .nextcore-native *) { padding-inline: 13px; gap: 15px; }
.stat .line-icon:where(.nextcore-native, .nextcore-native *) { width: 32px; height: 32px; }
.stat span:where(.nextcore-native, .nextcore-native *) { font-size: 10px; }
.about-inner:where(.nextcore-native, .nextcore-native *) { grid-template-columns: 45% 55%; }
.image-motto:where(.nextcore-native, .nextcore-native *) { display: none; }
.office-logo:where(.nextcore-native, .nextcore-native *) { right: 15%; width: 145px; }
.services-grid:where(.nextcore-native, .nextcore-native *) { grid-template-columns: repeat(2, 1fr); }
.service-card:where(.nextcore-native, .nextcore-native *) { min-height: 205px; }
.project-visual:where(.nextcore-native, .nextcore-native *) { aspect-ratio: 16 / 9; }
.card-copy:where(.nextcore-native, .nextcore-native *) { padding: 16px; min-height: 156px; }
.round-button:where(.nextcore-native, .nextcore-native *) { top: auto; bottom: 15px; right: 15px; }
.card-copy h3:where(.nextcore-native, .nextcore-native *) { font-size: 15px; }
.technology-inner:where(.nextcore-native, .nextcore-native *) { grid-template-columns: minmax(0, 1fr); gap: 24px; }
.technology h2:where(.nextcore-native, .nextcore-native *) { font-size: 30px; }
.technology-constellation:where(.nextcore-native, .nextcore-native *) { height: 690px; }
.tech-node:where(.nextcore-native, .nextcore-native *) { width: 60px; height: 60px; }
.tech-node-label:where(.nextcore-native, .nextcore-native *) { font-size: 12px; }
.partner-inner:where(.nextcore-native, .nextcore-native *) { grid-template-columns: 1fr 185px 170px; gap: 25px; }
.partner-motto:where(.nextcore-native, .nextcore-native *) { font-size: 14px; padding-left: 20px; }
.team-inner:where(.nextcore-native, .nextcore-native *) { grid-template-columns: 1fr; gap: 24px; }
.team h2 br:where(.nextcore-native, .nextcore-native *) { display: none; }
.team-card > img:where(.nextcore-native, .nextcore-native *) { aspect-ratio: 1.4; }
.team-card h3:where(.nextcore-native, .nextcore-native *) { font-size: 15px; }
.team-card p:where(.nextcore-native, .nextcore-native *) { font-size: 12px; }
.blog-card h3:where(.nextcore-native, .nextcore-native *) { font-size: 15px; }
.blog-card > div:where(.nextcore-native, .nextcore-native *) { padding-inline: 16px; }
.footer-grid:where(.nextcore-native, .nextcore-native *) { grid-template-columns: 1.7fr 1fr 1fr 1fr; }
.footer-motto:where(.nextcore-native, .nextcore-native *) { display: none; }

}
@media (max-width: 768px) {
.technology-inner:where(.nextcore-native, .nextcore-native *) { grid-template-columns: minmax(0, 1fr); gap: 34px; }
.technology-copy:where(.nextcore-native, .nextcore-native *) { max-width: 560px; }
.technology h2 span:where(.nextcore-native, .nextcore-native *) { white-space: normal; }
.technology-description:where(.nextcore-native, .nextcore-native *) { max-width: 520px; }
.technology-constellation:where(.nextcore-native, .nextcore-native *) { display: grid; height: auto; gap: 30px; }
.technology-constellation:where(.nextcore-native, .nextcore-native *)::before, .constellation-connectors:where(.nextcore-native, .nextcore-native *) { display: none; }
.constellation-core:where(.nextcore-native, .nextcore-native *) { position: relative; left: auto; top: auto; width: 92px; height: 92px; margin-inline: auto; transform: none; }
.technology-clusters:where(.nextcore-native, .nextcore-native *) { position: static; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.tech-cluster:where(.nextcore-native, .nextcore-native *) { position: relative; inset: auto; width: auto; height: auto; min-height: 185px; padding: 42px 16px 25px; border-radius: 28px; }
.tech-node:where(.nextcore-native, .nextcore-native *) { width: 60px; height: 60px; touch-action: auto; }
}
@media (max-width: 639px) {
.container:where(.nextcore-native, .nextcore-native *) { width: calc(100% - 40px); }
html { scroll-padding-top: 80px; }
h2:where(.nextcore-native, .nextcore-native *) { font-size: 28px; }
.header-inner:where(.nextcore-native, .nextcore-native *) { gap: 10px; min-height: 68px; }
.brand:where(.nextcore-native, .nextcore-native *) { width: 132px; }
.brand img:where(.nextcore-native, .nextcore-native *) { height: 58px; }
.header-actions .button:where(.nextcore-native, .nextcore-native *) { display: none; }
.main-nav:where(.nextcore-native, .nextcore-native *) { top: 68px; padding-inline: 20px; }
.main-nav.is-open:where(.nextcore-native, .nextcore-native *) { grid-template-columns: 1fr; }
.main-nav a:where(.nextcore-native, .nextcore-native *) { padding-block: 9px; }
.hero:where(.nextcore-native, .nextcore-native *), .hero-inner:where(.nextcore-native, .nextcore-native *) { min-height: 640px; }
.hero-inner:where(.nextcore-native, .nextcore-native *) { align-items: flex-start; padding-top: 137px; padding-bottom: 190px; }
.hero-image:where(.nextcore-native, .nextcore-native *) { object-position: 66% center; }
.hero:where(.nextcore-native, .nextcore-native *)::after { background: linear-gradient(180deg, #03080a66, #03080a55 62%, #03080acc), linear-gradient(90deg, #03080adb, #03080a55 85%); }
h1:where(.nextcore-native, .nextcore-native *) { font-size: clamp(37px, 9.3vw, 59px); letter-spacing: -1.2px; }
.hero .eyebrow:where(.nextcore-native, .nextcore-native *) { font-size: 10px; margin-bottom: 20px; }
.hero-description:where(.nextcore-native, .nextcore-native *) { font-size: 15px; max-width: 290px; }
.button-row:where(.nextcore-native, .nextcore-native *) { gap: 20px; flex-wrap: wrap; }
.button:where(.nextcore-native, .nextcore-native *) { padding: 12px 19px; }
.scroll-cue:where(.nextcore-native, .nextcore-native *) { right: 20px; bottom: 20px; }
.stats-grid:where(.nextcore-native, .nextcore-native *) { grid-template-columns: repeat(2, 1fr); padding-block: 0; }
.stat:where(.nextcore-native, .nextcore-native *), .stat:first-child:where(.nextcore-native, .nextcore-native *) { padding: 23px 10px; gap: 18px; }
.stat:nth-child(2):where(.nextcore-native, .nextcore-native *) { border-right: 0; }
.stat:nth-child(-n+2):where(.nextcore-native, .nextcore-native *) { border-bottom: 1px solid var(--border); }
.stat strong:where(.nextcore-native, .nextcore-native *) { font-size: 27px; }
.stat span:where(.nextcore-native, .nextcore-native *) { font-size: 10px; }
.stat .line-icon:where(.nextcore-native, .nextcore-native *) { width: 31px; height: 31px; }
.about-inner:where(.nextcore-native, .nextcore-native *) { display: flex; flex-direction: column; }
.about-copy:where(.nextcore-native, .nextcore-native *) { padding: 35px 0 24px; }
.about-copy > p:not(.eyebrow):where(.nextcore-native, .nextcore-native *) { font-size: 14px; }
.about-visual:where(.nextcore-native, .nextcore-native *) { min-height: 230px; margin-inline: -20px; }
.about-visual:where(.nextcore-native, .nextcore-native *)::after { background: linear-gradient(180deg, var(--bg), transparent 30%, #070b0d33); }
.office-logo:where(.nextcore-native, .nextcore-native *) { top: 10px; right: 11%; width: 140px; }
.section:where(.nextcore-native, .nextcore-native *) { padding-block: 30px; }
.section-heading:where(.nextcore-native, .nextcore-native *) { gap: 15px; flex-wrap: wrap; margin-bottom: 20px; }
.section-heading .text-link:where(.nextcore-native, .nextcore-native *) { font-size: 12px; }
.services-grid:where(.nextcore-native, .nextcore-native *) { gap: 12px; }
.service-card:where(.nextcore-native, .nextcore-native *) { padding: 20px 15px; min-height: 229px; }
.service-card .line-icon:where(.nextcore-native, .nextcore-native *) { width: 34px; height: 34px; }
.service-card h3:where(.nextcore-native, .nextcore-native *) { font-size: 16px; min-height: 38px; margin-top: 20px; }
.service-card p:where(.nextcore-native, .nextcore-native *) { min-height: 38px; font-size: 12px; }
.section-projects:where(.nextcore-native, .nextcore-native *) { padding-top: 0; }
.projects-grid:where(.nextcore-native, .nextcore-native *), .blog-grid:where(.nextcore-native, .nextcore-native *) { grid-template-columns: 1fr; gap: 18px; }
.project-visual:where(.nextcore-native, .nextcore-native *) { aspect-ratio: 16 / 9; }
.card-copy:where(.nextcore-native, .nextcore-native *) { min-height: 105px; padding: 20px; }
.card-copy h3:where(.nextcore-native, .nextcore-native *) { font-size: 17px; }
.round-button:where(.nextcore-native, .nextcore-native *) { top: 25px; bottom: auto; right: 15px; }
.technology-inner:where(.nextcore-native, .nextcore-native *) { grid-template-columns: 1fr; padding-block: 25px; gap: 34px; }
.technology h2 br:where(.nextcore-native, .nextcore-native *) { display: none; }
.technology h2:where(.nextcore-native, .nextcore-native *) { font-size: 30px; }
.partner-inner:where(.nextcore-native, .nextcore-native *) { grid-template-columns: 1fr 1fr; gap: 20px; padding-block: 30px; }
.partner-logo:where(.nextcore-native, .nextcore-native *) { width: 150px; height: 125px; }
.partner-motto:where(.nextcore-native, .nextcore-native *) { grid-column: 1 / -1; border: 0; padding: 0; font-size: 11px; letter-spacing: 1.5px; }
.partner-motto br:where(.nextcore-native, .nextcore-native *) { display: none; }
.partner h2:where(.nextcore-native, .nextcore-native *) { font-size: 25px; }
.partner p:not(.eyebrow):where(.nextcore-native, .nextcore-native *) { font-size: 13px; }
.team-grid:where(.nextcore-native, .nextcore-native *) { grid-template-columns: 1fr; gap: 14px; }
.team-card:where(.nextcore-native, .nextcore-native *) { display: grid; grid-template-columns: 125px 1fr; align-items: center; }
.team-card > img:where(.nextcore-native, .nextcore-native *) { width: 125px; height: 125px; aspect-ratio: 1; }
.team-card > div:where(.nextcore-native, .nextcore-native *) { padding: 18px; }
.team-card h3:where(.nextcore-native, .nextcore-native *) { font-size: 16px; }
.team-card p:where(.nextcore-native, .nextcore-native *) { font-size: 12px; }
.blog-card:where(.nextcore-native, .nextcore-native *) { min-height: 215px; }
.blog-card > div:where(.nextcore-native, .nextcore-native *) { padding: 23px 22px; }
.blog-card h3:where(.nextcore-native, .nextcore-native *) { font-size: 18px; }
.final-cta:where(.nextcore-native, .nextcore-native *), .cta-inner:where(.nextcore-native, .nextcore-native *) { min-height: 350px; }
.cta-inner:where(.nextcore-native, .nextcore-native *) { padding-block: 36px; }
.cta-inner h2:where(.nextcore-native, .nextcore-native *) { font-size: 29px; max-width: 340px; }
.cta-inner p:not(.cta-motto):where(.nextcore-native, .nextcore-native *) { font-size: 14px; max-width: 310px; }
.cta-inner .button:where(.nextcore-native, .nextcore-native *) { width: 100%; }
.cta-inner > div:where(.nextcore-native, .nextcore-native *) { width: 100%; }
.cta-motto:where(.nextcore-native, .nextcore-native *) { display: none; }
.final-cta > img:where(.nextcore-native, .nextcore-native *) { object-position: 66% center; }
.final-cta:where(.nextcore-native, .nextcore-native *)::after { background: linear-gradient(90deg, #071017c9, #07101744); }
.site-footer:where(.nextcore-native, .nextcore-native *) { padding-block: 25px 35px; }
.footer-grid:where(.nextcore-native, .nextcore-native *) { grid-template-columns: repeat(3, 1fr); gap: 22px 14px; }
.footer-brand:where(.nextcore-native, .nextcore-native *) { grid-column: 1 / -1; }
.footer-brand .brand:where(.nextcore-native, .nextcore-native *) { width: 160px; }
.site-footer h2:where(.nextcore-native, .nextcore-native *) { font-size: 12px; }
.social-links:where(.nextcore-native, .nextcore-native *) { gap: 8px; }
.social-links button:where(.nextcore-native, .nextcore-native *) { width: 25px; height: 25px; }
.eyebrow:where(.nextcore-native, .nextcore-native *) { font-size: 11px; }
dialog:where(.nextcore-native, .nextcore-native *) { padding: 32px 24px; }
dialog h2:where(.nextcore-native, .nextcore-native *) { font-size: 25px; }

}
@media (max-width: 480px) {
.technology-clusters:where(.nextcore-native, .nextcore-native *) { grid-template-columns: 1fr; }
.tech-cluster:where(.nextcore-native, .nextcore-native *) { min-height: 175px; }
.technology-motto:where(.nextcore-native, .nextcore-native *) { letter-spacing: 1.5px; }
}
@media (prefers-reduced-motion: reduce) {
html { scroll-behavior: auto; }
*:where(.nextcore-native, .nextcore-native *), *:where(.nextcore-native, .nextcore-native *)::before, *:where(.nextcore-native, .nextcore-native *)::after { animation: none !important; transition: none !important; }
.reveal-ready:where(.nextcore-native, .nextcore-native *) { opacity: 1; transform: none; }
.tech-node:where(.nextcore-native, .nextcore-native *) { transform: translate(var(--drag-x), var(--drag-y)); }

}
