/* NexLink / AI engineering showroom. Light is the first-visit experience. */
:root {
  color-scheme: light;
  --md-sys-color-primary: #075b70;
  --md-sys-color-on-primary: #ffffff;
  --md-sys-color-primary-container: #b8f0fa;
  --md-sys-color-on-primary-container: #003642;
  --md-sys-color-secondary: #4f46b5;
  --md-sys-color-secondary-container: #e8e5ff;
  --md-sys-color-on-secondary-container: #26205a;
  --md-sys-color-surface: #ffffff;
  --md-sys-color-surface-container-low: #f3f6fa;
  --md-sys-color-surface-container: #eaf0f6;
  --md-sys-color-on-surface: #0f172a;
  --md-sys-color-on-surface-variant: #526176;
  --md-sys-color-outline: #7d899a;
  --md-sys-color-outline-variant: #d6dfe8;
  --brand-navy: #0f172a;
  --brand-deep: #0a0e27;
  --brand-cyan: #06b6d4;
  --brand-indigo: #6366f1;
  --demo-surface: #18243b;
  --demo-elevated: #22314c;
  --demo-text: #f4f7ff;
  --demo-muted: #becbdf;
  --demo-line: #40506a;
  --md-sys-shape-corner-medium: 12px;
  --md-sys-shape-corner-full: 999px;
  --md-sys-motion-duration-medium: 260ms;
  --md-sys-motion-easing-standard: cubic-bezier(.2,0,0,1);
  --page-width: 1280px;
}
[data-theme="dark"] {
  color-scheme: dark;
  --md-sys-color-primary: #79d7ec;
  --md-sys-color-on-primary: #003642;
  --md-sys-color-primary-container: #124858;
  --md-sys-color-on-primary-container: #b8f0fa;
  --md-sys-color-secondary: #bdb6ff;
  --md-sys-color-secondary-container: #322b63;
  --md-sys-color-on-secondary-container: #e8e5ff;
  --md-sys-color-surface: #101827;
  --md-sys-color-surface-container-low: #162132;
  --md-sys-color-surface-container: #202e41;
  --md-sys-color-on-surface: #e9eff8;
  --md-sys-color-on-surface-variant: #b3c0d2;
  --md-sys-color-outline: #8996a8;
  --md-sys-color-outline-variant: #3c495c;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 110px; scrollbar-color: var(--md-sys-color-outline) var(--md-sys-color-surface); }
body { margin:0; background:var(--md-sys-color-surface); color:var(--md-sys-color-on-surface); font-family:'Segoe UI',system-ui,-apple-system,sans-serif; font-size:16px; line-height:1.65; -webkit-font-smoothing:antialiased; }
::selection { background:var(--md-sys-color-primary-container); color:var(--md-sys-color-on-primary-container); }
a { color:inherit; text-decoration:none; text-underline-offset:5px; }
a:hover { text-decoration:underline; }
button { font:inherit; cursor:pointer; }
button,a { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:3px solid var(--md-sys-color-primary); outline-offset:5px; }
button:disabled { opacity:.38; cursor:not-allowed; }
img { display:block; max-width:100%; height:auto; }
svg { width:24px; height:24px; flex-shrink:0; }
h1,h2,h3,h4,p { margin:0; }
h1,h2,h3 { line-height:1.1; letter-spacing:-.035em; text-wrap:balance; }
h1 { font-size:clamp(3rem,6vw,5.8rem); font-weight:750; }
h2 { font-size:clamp(2rem,3.3vw,3.1rem); font-weight:650; }
h3 { font-size:1.5rem; font-weight:650; }
p { color:var(--md-sys-color-on-surface-variant); }
em { font-style:normal; color:var(--md-sys-color-primary); }
[hidden] { display:none !important; }
.container { width:min(var(--page-width),calc(100% - 96px)); margin-inline:auto; }
.small { font-size:.8rem; line-height:1.65; }
.skip-link { position:fixed; z-index:50; top:-100px; left:16px; padding:12px 24px; background:var(--md-sys-color-primary); color:var(--md-sys-color-on-primary); }
.skip-link:focus { top:12px; }
.masthead { position:sticky; top:0; z-index:20; background:var(--md-sys-color-surface); border-bottom:1px solid var(--md-sys-color-outline-variant); }
.nav-inner { min-height:88px; display:flex; align-items:center; gap:36px; }
.brand { display:inline-flex; align-items:center; gap:11px; flex-shrink:0; font-size:23px; font-weight:750; letter-spacing:-.8px; line-height:1; }
.brand:hover { text-decoration:none; }
.brand img { width:46px; height:32px; object-fit:contain; }
.brand-sub { display:block; font-size:9px; font-weight:600; letter-spacing:3.4px; padding-top:7px; }
.desktop-nav { display:flex; align-items:center; gap:24px; margin-left:auto; }
.desktop-nav a { font-size:13px; font-weight:600; min-height:48px; display:flex; align-items:center; white-space:nowrap; }
.desktop-nav a[aria-current] { color:var(--md-sys-color-primary); text-decoration:underline; text-decoration-thickness:2px; }
.nav-actions { display:flex; gap:10px; align-items:center; }
.theme-toggle,.nav-toggle { display:grid; place-items:center; border:0; background:transparent; color:inherit; width:48px; height:48px; border-radius:50%; }
.theme-toggle:hover,.nav-toggle:hover { background:var(--md-sys-color-surface-container); }
.nav-cta { display:flex; align-items:center; justify-content:center; gap:18px; min-height:48px; padding:0 20px; background:var(--md-sys-color-on-surface); color:var(--md-sys-color-surface); border-radius:999px; font-size:13px; font-weight:600; white-space:nowrap; }
.nav-toggle { display:none; }
.mobile-nav { padding:16px 24px 24px; border-top:1px solid var(--md-sys-color-outline-variant); max-height:calc(100dvh - 76px); overflow:auto; }
.mobile-nav a { display:flex; align-items:center; justify-content:space-between; min-height:52px; border-bottom:1px solid var(--md-sys-color-outline-variant); }
.btn { min-height:56px; display:inline-flex; align-items:center; justify-content:center; gap:24px; padding:12px 24px; border-radius:var(--md-sys-shape-corner-full); font-size:14px; font-weight:650; line-height:1.3; text-align:center; transition:background var(--md-sys-motion-duration-medium),transform var(--md-sys-motion-duration-medium); }
.btn:hover { text-decoration:none; transform:translateY(-2px); }
.btn--primary { background:var(--md-sys-color-primary); color:var(--md-sys-color-on-primary); }
.btn--primary:hover { background:color-mix(in srgb,var(--md-sys-color-primary),var(--md-sys-color-on-primary) 8%); }
.btn--ghost { border:1px solid var(--md-sys-color-outline); color:var(--md-sys-color-primary); }
.btn-row { display:flex; flex-wrap:wrap; gap:20px; align-items:center; }
.text-link { display:inline-flex; min-height:48px; align-items:center; gap:20px; color:var(--md-sys-color-primary); font-weight:600; font-size:14px; }
.home-hero { background:var(--md-sys-color-surface-container-low); padding:76px 0 0; overflow:hidden; }
.hero-grid { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:64px; }
.hero-copy { position:relative; z-index:1; }
.hero-copy h1 { margin-bottom:28px; }
.hero-copy>p { max-width:460px; font-size:17px; line-height:1.75; margin-bottom:32px; }
.hero-copy .btn-row { flex-direction:column; align-items:flex-start; gap:14px; }
.hero-secondary { display:flex; gap:12px; align-items:center; min-height:48px; font-weight:600; font-size:13px; }
.hero-secondary svg { width:18px; }
.hero-baseline { margin-top:64px; border-top:1px solid var(--md-sys-color-outline-variant); min-height:70px; display:flex; justify-content:space-between; align-items:center; gap:24px; font-size:12px; color:var(--md-sys-color-on-surface-variant); }
.hero-baseline a { display:flex; align-items:center; gap:16px; }
.hero-baseline svg { width:18px; }
.workflow-demo { position:relative; color:var(--demo-text); background:var(--brand-navy); padding:26px; border-radius:16px; box-shadow:0 26px 64px -28px rgba(15,23,42,.32); }
.workflow-demo p { color:var(--demo-muted); }
.demo-top { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:10px; color:var(--demo-muted); padding-bottom:24px; }
.demo-mark { font-weight:700; font-size:20px; letter-spacing:-1px; color:var(--brand-cyan); }
.demo-options { display:flex; gap:6px; border-bottom:1px solid var(--demo-line); padding-bottom:16px; }
.demo-options button { flex:1; color:var(--demo-muted); border:0; border-radius:999px; background:transparent; padding:10px 8px; min-height:48px; font-size:11px; font-weight:600; line-height:1.3; }
.demo-options button[aria-pressed="true"] { color:var(--brand-navy); background:var(--brand-cyan); }
.demo-options button:hover { outline:1px solid var(--demo-muted); }
.workflow-demo :focus-visible { outline-color:var(--brand-cyan); }
.demo-question { display:flex; align-items:center; gap:12px; padding:28px 0; min-height:100px; }
.demo-question p { color:var(--demo-text); font-size:16px; font-weight:550; line-height:1.4; }
.avatar { flex-shrink:0; display:grid; place-items:center; width:36px; height:36px; border-radius:50%; background:var(--demo-elevated); font-size:10px; }
.data-path { display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:9px; color:var(--demo-muted); margin:0 0 24px; }
.data-path span { white-space:nowrap; }
.data-path i { height:1px; flex:1; background:var(--demo-line); position:relative; }
.data-path i:after { content:''; position:absolute; right:0; top:-2px; width:5px; height:5px; background:var(--brand-cyan); border-radius:50%; }
.demo-answer { background:var(--demo-elevated); border-radius:12px; padding:20px; min-height:239px; }
.answer-label { display:flex; align-items:center; gap:10px; font-size:14px; }
.ai-sigil { color:var(--brand-cyan); font-size:19px; font-weight:750; }
.demo-answer>p { font-size:12px; margin-top:12px; line-height:1.7; }
.demo-record { display:flex; justify-content:space-between; align-items:center; gap:10px; border-top:1px solid var(--demo-line); border-bottom:1px solid var(--demo-line); padding:14px 0; margin-top:20px; font-size:10px; }
.demo-record strong { color:var(--brand-cyan); font-weight:500; white-space:nowrap; }
.demo-answer .demo-source { font-size:9px; }
.demo-foot { display:flex; align-items:center; gap:8px; padding-top:20px; font-size:9px; color:var(--demo-muted); }
.status-dot { width:6px; height:6px; background:var(--brand-cyan); border-radius:50%; flex-shrink:0; }
.client-strip { border-bottom:1px solid var(--md-sys-color-outline-variant); }
.client-strip .container { display:flex; gap:44px; align-items:center; padding-block:30px; }
.client-strip p { font-size:11px; white-space:nowrap; }
.client-logos { display:flex; align-items:center; justify-content:space-between; gap:36px; flex:1; }
.client-logos img { width:120px; height:48px; object-fit:contain; filter:grayscale(1); opacity:.7; }
[data-theme="dark"] .client-logos img { filter:grayscale(1) invert(1); }
.section { padding:112px 0; }
.section-intro { display:grid; grid-template-columns:1.1fr 1fr; gap:80px; align-items:end; margin-bottom:56px; }
.section-intro p { max-width:440px; }
.application-list>a { display:grid; grid-template-columns:140px 1fr 32px; align-items:center; gap:32px; border-top:1px solid var(--md-sys-color-outline-variant); padding:32px 0; }
.application-list>a:last-child { border-bottom:1px solid var(--md-sys-color-outline-variant); }
.application-list>a:hover { text-decoration:none; }
.application-list>a:hover h3 { color:var(--md-sys-color-primary); }
.application-tag { color:var(--md-sys-color-primary); font-size:14px; font-weight:600; }
.application-list h3 { font-size:24px; margin-bottom:12px; }
.application-list p { max-width:670px; font-size:15px; }
.feature-section { background:var(--md-sys-color-secondary-container); padding:96px 0; }
.feature-grid { display:grid; grid-template-columns:1.1fr 1fr; align-items:center; gap:100px; }
.feature-copy h2 { font-size:clamp(2.3rem,4vw,3.6rem); color:var(--md-sys-color-on-secondary-container); }
.feature-copy em { color:var(--md-sys-color-secondary); }
.feature-copy>p { margin-top:24px; max-width:470px; color:var(--md-sys-color-on-secondary-container); }
.feature-copy .text-link { margin-top:20px; color:var(--md-sys-color-on-secondary-container); }
.feature-copy .small { margin-top:16px; font-size:11px; }
.architecture { text-align:center; }
.architecture-source { padding:28px; background:var(--md-sys-color-surface); border-radius:12px; width:80%; margin:auto; }
.architecture-source>span { font-size:9px; letter-spacing:1px; color:var(--md-sys-color-on-surface-variant); }
.architecture-source strong { display:block; font-size:32px; margin:4px 0; letter-spacing:-1px; }
.architecture-source p { font-size:12px; }
.connector-line { width:1px; height:30px; background:var(--md-sys-color-secondary); margin:auto; }
.architecture-middle { padding:24px; border:1px solid var(--md-sys-color-secondary); border-radius:12px; }
.architecture-middle span { display:block; font-size:11px; color:var(--md-sys-color-on-secondary-container); }
.architecture-middle strong { display:block; font-size:21px; color:var(--md-sys-color-on-secondary-container); margin:8px 0; }
.architecture-middle p { font-size:11px; color:var(--md-sys-color-on-secondary-container); }
.architecture-result { background:var(--brand-navy); color:var(--demo-text); border-radius:12px; padding:25px; }
.architecture-result strong { display:block; font-size:26px; }
.architecture-result span { color:var(--demo-muted); font-size:12px; }
.service-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.service-panel { display:flex; flex-direction:column; align-items:flex-start; padding:32px; border-radius:12px; background:var(--md-sys-color-surface-container-low); min-height:345px; }
.service-panel:hover { text-decoration:none; }
.service-panel:hover h3 { text-decoration:underline; text-underline-offset:6px; }
.service-panel--ai { background:var(--md-sys-color-primary-container); color:var(--md-sys-color-on-primary-container); }
.service-panel--ai p { color:var(--md-sys-color-on-primary-container); }
.service-panel--web { background:var(--md-sys-color-secondary-container); color:var(--md-sys-color-on-secondary-container); }
.service-panel--web p { color:var(--md-sys-color-on-secondary-container); }
.service-symbol { font-size:30px; font-weight:650; letter-spacing:-2px; margin-bottom:42px; }
.service-panel h3 { font-size:24px; margin-bottom:16px; }
.service-panel p { font-size:14px; margin-bottom:24px; }
.panel-link { display:flex; align-items:center; gap:12px; font-size:12px; font-weight:600; margin-top:auto; }
.panel-link svg { width:18px; }
.additional-services { display:flex; align-items:center; gap:24px; border-bottom:1px solid var(--md-sys-color-outline-variant); padding:32px 0; font-size:12px; }
.additional-services strong { white-space:nowrap; }
.additional-services .text-link { font-size:12px; margin-left:auto; white-space:nowrap; }
.delivery-steps { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4,1fr); gap:32px; }
.delivery-steps li { border-top:1px solid var(--md-sys-color-outline-variant); padding-top:24px; }
.delivery-steps span { color:var(--md-sys-color-primary); font-size:13px; }
.delivery-steps h3 { font-size:21px; margin:32px 0 16px; }
.delivery-steps p { font-size:14px; }
.about-section { background:var(--md-sys-color-surface-container-low); padding:80px 0; }
.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.about-grid>img { width:100%; aspect-ratio:1.4; object-fit:cover; border-radius:12px; }
.about-grid h2 { margin-bottom:24px; }
.about-grid p { margin-bottom:20px; }
.faq-layout { display:grid; grid-template-columns:.8fr 1.2fr; gap:80px; }
.faq-item { border-bottom:1px solid var(--md-sys-color-outline-variant); padding:20px 0; }
.faq-item:first-child { border-top:1px solid var(--md-sys-color-outline-variant); }
.faq-item summary { cursor:pointer; font-weight:600; font-size:15px; padding:6px 32px 6px 0; min-height:48px; position:relative; list-style:none; }
.faq-item summary::-webkit-details-marker { display:none; }
.faq-item summary:after { content:'+'; position:absolute; right:4px; top:4px; font-size:24px; font-weight:400; color:var(--md-sys-color-primary); }
.faq-item[open] summary:after { content:'−'; }
.faq-item p,.faq-item .faq-body { font-size:14px; color:var(--md-sys-color-on-surface-variant); padding:12px 0; }
.contact-section { background:var(--md-sys-color-primary-container); padding:88px 0; }
.contact-layout { display:grid; grid-template-columns:1.3fr 1fr; gap:120px; align-items:center; }
.contact-section h2 { font-size:clamp(2.8rem,4.6vw,4.5rem); color:var(--md-sys-color-on-primary-container); }
.contact-section p { color:var(--md-sys-color-on-primary-container); margin:24px 0; max-width:480px; }
.contact-section em { color:var(--md-sys-color-primary); }
.contact-section .small { font-size:11px; margin-bottom:0; }
.contact-details { padding-left:40px; border-left:1px solid color-mix(in srgb,var(--md-sys-color-on-primary-container),transparent 70%); }
.contact-details h3 { color:var(--md-sys-color-on-primary-container); font-size:24px; }
.contact-details a { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:14px 0; border-bottom:1px solid color-mix(in srgb,var(--md-sys-color-on-primary-container),transparent 70%); font-size:17px; color:var(--md-sys-color-on-primary-container); }
.contact-details p { font-size:13px; }
.site-footer { padding:72px 0 24px; }
.footer-grid { display:grid; grid-template-columns:1.4fr .8fr 1fr; gap:64px; padding-bottom:56px; }
.footer-grid h2 { font-size:13px; letter-spacing:0; margin-bottom:20px; }
.footer-grid>div>a:not(.brand) { display:block; font-size:13px; min-height:36px; }
.footer-grid p { font-size:14px; margin-top:24px; }
.footer-grid .small { font-size:12px; }
.footer-bottom { border-top:1px solid var(--md-sys-color-outline-variant); padding-top:24px; display:flex; justify-content:space-between; align-items:center; gap:24px; font-size:10px; color:var(--md-sys-color-on-surface-variant); }
.footer-bottom a { display:flex; align-items:center; gap:12px; min-height:48px; }
.footer-bottom svg { width:16px; transform:rotate(-90deg); }
.service-hero { padding:80px 0; background:var(--md-sys-color-surface-container-low); }
.service-hero h1 { font-size:clamp(2.8rem,4.7vw,4.5rem); }
.breadcrumb { display:inline-block; font-size:12px; color:var(--md-sys-color-on-surface-variant); margin-bottom:28px; min-height:32px; }
.service-hero-art { display:grid; place-items:center; min-height:420px; overflow:hidden; position:relative; background:var(--md-sys-color-primary-container); border-radius:12px; }
.art-ring { position:absolute; width:330px; height:330px; border:1px solid var(--md-sys-color-primary); border-radius:50%; }
.art-ring--two { width:260px; height:260px; border-color:var(--md-sys-color-primary); }
.art-core { display:grid; place-items:center; width:185px; height:185px; border-radius:50%; background:var(--md-sys-color-primary); color:var(--md-sys-color-on-primary); font-size:60px; font-weight:650; letter-spacing:-3px; }
.art-label { position:absolute; bottom:24px; font-size:10px; letter-spacing:1px; color:var(--md-sys-color-on-primary-container); }
.capability-list article { display:grid; grid-template-columns:.9fr 1.4fr 24px; gap:48px; padding:36px 0; border-top:1px solid var(--md-sys-color-outline-variant); scroll-margin-top:120px; }
.capability-list h3 { font-size:25px; }
.capability-tags { display:block; color:var(--md-sys-color-primary); font-size:12px; margin-top:20px; }
.service-note { background:var(--md-sys-color-secondary-container); padding:72px 0; color:var(--md-sys-color-on-secondary-container); }
.service-note>.container { display:grid; grid-template-columns:1fr 1fr; gap:80px; }
.service-note p,.service-note .text-link { color:var(--md-sys-color-on-secondary-container); }
.service-note .text-link { margin-top:24px; }
.insights-hero,.article-hero { padding:72px 0; background:var(--md-sys-color-surface-container-low); }
.insights-hero h1 { max-width:1000px; font-size:clamp(2.8rem,5vw,4.8rem); }
.insights-hero p { max-width:780px; margin-top:28px; }
.insights-list { padding:64px 0; }
.insight-feature { display:grid; grid-template-columns:.9fr 1.1fr; gap:56px; padding:48px 0; border-bottom:1px solid var(--md-sys-color-outline-variant); align-items:center; }
.insight-visual { background:var(--md-sys-color-surface-container-low); padding:12px; border-radius:12px; overflow:hidden; }
.insight-visual iframe { width:100%; height:300px; border:0; }
.insight-visual img { width:100%; }
.insight-meta,.article-meta { display:flex; flex-wrap:wrap; gap:16px; color:var(--md-sys-color-on-surface-variant); font-size:11px; }
.insight-copy h2 { font-size:29px; margin:20px 0; }
.insight-copy p { font-size:14px; margin-bottom:20px; }
.cta-banner { padding:64px 0; background:var(--md-sys-color-primary-container); }
.cta-banner h2,.cta-banner p { color:var(--md-sys-color-on-primary-container); }
.cta-inner { display:grid; grid-template-columns:1.3fr 1fr; gap:64px; align-items:center; }
.cta-inner p { margin-top:20px; }
.article-breadcrumb { display:flex; flex-wrap:wrap; gap:10px; font-size:12px; margin-bottom:28px; }
.article-hero h1 { max-width:1100px; font-size:clamp(2.7rem,4.8vw,4.5rem); }
.article-deck { max-width:850px; font-size:18px; margin:28px 0; }
.article-shell { display:grid; grid-template-columns:minmax(0,780px) 240px; gap:88px; width:min(1120px,calc(100% - 96px)); margin:72px auto; align-items:start; }
.article-body { min-width:0; font-size:17px; line-height:1.8; }
.article-body p { margin:20px 0; }
.article-body h2 { font-size:32px; margin:56px 0 20px; }
.article-body h3 { font-size:23px; margin:28px 0 16px; }
.article-body a { color:var(--md-sys-color-primary); text-decoration:underline; }
.article-body a.btn { text-decoration:none; }
.article-body li { margin-bottom:10px; color:var(--md-sys-color-on-surface-variant); }
.article-summary { padding:32px; background:var(--md-sys-color-surface-container-low); border-radius:12px; }
.article-summary h2 { margin-top:0; }
.article-summary ul { padding-left:20px; margin-bottom:0; }
.article-toc { position:sticky; top:120px; border-top:1px solid var(--md-sys-color-outline-variant); padding-top:24px; }
.article-toc h2 { font-size:15px; letter-spacing:0; }
.article-toc ol { padding-left:20px; font-size:12px; }
.article-toc li { margin:14px 0; }
.article-toc a:hover { color:var(--md-sys-color-primary); }
.article-body figure { margin:36px 0; max-width:100%; }
.article-body iframe { width:100%; height:520px; border:0; border-radius:12px; background:var(--md-sys-color-surface-container-low); }
.article-body figcaption { font-size:12px; color:var(--md-sys-color-on-surface-variant); margin-top:12px; }
.article-callout,.article-cta { padding:28px; margin:36px 0; border-radius:12px; background:var(--md-sys-color-primary-container); color:var(--md-sys-color-on-primary-container); }
.article-callout p,.article-cta p { color:var(--md-sys-color-on-primary-container); }
.article-callout h3,.article-cta h2 { margin-top:0; }
.article-body table { border-collapse:collapse; width:100%; font-size:13px; margin:28px 0; }
.article-body th,.article-body td { padding:14px; text-align:left; vertical-align:top; border-bottom:1px solid var(--md-sys-color-outline-variant); }
.article-body th { background:var(--md-sys-color-surface-container); }
.table-wrap,.article-table-wrap { overflow-x:auto; }
.decision { display:flex; gap:20px; border-top:1px solid var(--md-sys-color-outline-variant); padding:16px 0; }
.decision-number { color:var(--md-sys-color-primary); padding-top:24px; }
.related-links { display:grid; gap:12px; }
.legal { width:min(800px,calc(100% - 48px)); margin:80px auto; }
.legal h1 { font-size:48px; }
.legal h2 { font-size:26px; margin:40px 0 16px; }
.legal p { margin:20px 0; }
.legal a { color:var(--md-sys-color-primary); text-decoration:underline; }
.not-found { padding:100px 0 140px; }
.not-found h1 { margin:24px 0; }
.not-found .btn { margin:32px 24px 0 0; }
@media(min-width:1500px) { .home-hero { padding-top:100px; } .hero-grid { gap:96px; } }
@media(max-width:1199px) { .container { width:calc(100% - 64px); } .nav-inner { gap:20px; } .desktop-nav { gap:16px; } .desktop-nav a { font-size:12px; } .nav-cta { padding:0 16px; } .hero-grid { gap:36px; } .workflow-demo { padding:20px; } .section-intro { gap:48px; } .client-logos { gap:20px; } .client-logos img { width:100px; } .feature-grid,.about-grid { gap:56px; } .service-panel { padding:26px; } .service-panel h3 { font-size:22px; } .contact-layout { gap:60px; } .article-shell { gap:48px; grid-template-columns:minmax(0,1fr) 200px; } }
@media(max-width:1099px) { .desktop-nav { display:none; } .nav-toggle { display:grid; } .nav-actions { margin-left:auto; } .client-strip .container { flex-direction:column; gap:24px; align-items:flex-start; } .client-strip p br { display:none; } .client-logos { width:100%; } .additional-services { flex-wrap:wrap; gap:12px; } .additional-services .text-link { margin-left:0; } .contact-layout { gap:48px; } }
@media(max-width:839px) { .container { width:calc(100% - 48px); } .nav-inner { min-height:76px; } .home-hero { padding-top:48px; } .hero-grid { grid-template-columns:1fr; gap:40px; } h1 { font-size:64px; } .hero-copy h1 br:nth-child(2) { display:none; } .hero-copy>p { max-width:550px; } .workflow-demo { max-width:580px; width:100%; margin-inline:auto; padding:28px; } .hero-baseline { margin-top:40px; font-size:11px; } .hero-baseline a { display:none; } .section { padding:72px 0; } .section-intro { grid-template-columns:1fr; gap:24px; margin-bottom:36px; } .section-intro p { max-width:600px; } .application-list>a { grid-template-columns:90px 1fr 24px; gap:20px; } .application-list h3 { font-size:22px; } .feature-grid { grid-template-columns:1fr; gap:48px; } .feature-section { padding:64px 0; } .architecture { max-width:450px; width:100%; margin:auto; } .service-grid { grid-template-columns:1fr; gap:16px; } .service-panel { min-height:0; padding:28px; } .service-symbol { margin-bottom:24px; } .service-panel p { max-width:500px; } .delivery-steps { grid-template-columns:repeat(2,1fr); gap:40px; } .delivery-steps h3 { margin-top:20px; } .about-grid { grid-template-columns:1fr; gap:36px; } .about-grid>img { max-height:380px; } .faq-layout { grid-template-columns:1fr; gap:36px; } .contact-layout { grid-template-columns:1fr; gap:48px; } .contact-details { border-left:0; padding:0; max-width:500px; } .footer-grid { grid-template-columns:1.2fr 1fr; gap:48px; } .footer-grid>div:first-child { grid-column:1/-1; } .footer-bottom { flex-wrap:wrap; } .service-hero { padding:48px 0; } .service-hero h1 { font-size:56px; } .service-hero-art { min-height:350px; } .capability-list article { grid-template-columns:1fr; gap:16px; } .capability-list article>svg { display:none; } .service-note>.container { grid-template-columns:1fr; gap:28px; } .insight-feature { grid-template-columns:1fr; gap:32px; } .insight-visual iframe { height:360px; } .cta-inner { grid-template-columns:1fr; gap:28px; } .article-shell { width:calc(100% - 48px); display:flex; flex-direction:column; gap:40px; margin:40px auto; } .article-toc { position:static; order:-1; width:100%; } .article-toc ol { display:flex; flex-wrap:wrap; gap:8px 24px; list-style:none; padding:0; } .article-toc li { margin:4px 0; } .article-toc a { display:block; padding:8px 0; } .article-hero,.insights-hero { padding:48px 0; } }
@media(max-width:599px) { .container { width:calc(100% - 40px); } .nav-inner { min-height:72px; gap:12px; } .brand { font-size:21px; gap:8px; } .brand img { width:38px; height:28px; } .brand-sub { font-size:8px; } .nav-actions { gap:0; } .nav-cta { display:none; } .home-hero { padding-top:40px; } h1 { font-size:54px; } .hero-copy>p { font-size:16px; margin-bottom:24px; } .hero-copy h1 { margin-bottom:24px; } .hero-copy .btn { font-size:13px; gap:16px; } .hero-grid { gap:28px; } .workflow-demo { padding:18px; } .demo-top { padding-bottom:18px; } .demo-top>span:last-child { font-size:9px; } .demo-options { gap:3px; padding-bottom:12px; } .demo-options button { font-size:10px; padding:8px 4px; } .demo-question { padding:24px 0; min-height:93px; } .demo-question p { font-size:14px; } .data-path { font-size:8px; gap:6px; } .demo-answer { padding:16px; min-height:237px; } .demo-record { font-size:9px; flex-wrap:wrap; } .demo-foot { font-size:8px; } .hero-baseline { min-height:56px; margin-top:32px; } .client-logos { flex-wrap:wrap; justify-content:center; gap:20px 24px; } .client-logos img { width:82px; height:35px; } .client-strip .container { align-items:center; padding-block:24px; gap:20px; } .section { padding:56px 0; } h2 { font-size:32px; } .section-intro p { font-size:15px; } .application-list>a { grid-template-columns:1fr 24px; gap:12px; padding:28px 0; } .application-tag { grid-column:1/-1; font-size:12px; } .application-list h3 { font-size:22px; } .application-list p { font-size:14px; } .feature-copy h2 { font-size:38px; } .feature-copy>p { font-size:15px; } .feature-grid { gap:40px; } .service-panel h3 { font-size:24px; } .additional-services { padding-bottom:8px; } .delivery-steps { gap:32px 24px; } .delivery-steps h3 { font-size:19px; } .delivery-steps p { font-size:13px; } .about-section { padding:56px 0; } .about-grid p { font-size:15px; } .contact-section { padding:56px 0; } .contact-section h2 { font-size:46px; } .contact-section p { font-size:15px; } .contact-details h3 { font-size:23px; } .contact-details a { font-size:16px; } .site-footer { padding-top:48px; } .footer-grid { gap:36px 24px; } .footer-grid>div:last-child { grid-column:1/-1; } .footer-bottom { gap:12px 24px; } .footer-bottom>span { flex-basis:100%; } .service-hero h1 { font-size:44px; } .service-hero-art { min-height:300px; } .art-ring { width:260px; height:260px; } .art-ring--two { width:210px; height:210px; } .art-core { width:150px; height:150px; font-size:48px; } .capability-list h3 { font-size:24px; } .insights-hero h1,.article-hero h1 { font-size:38px; } .insight-feature { padding:32px 0; } .insights-list { padding-top:16px; } .insight-copy h2 { font-size:27px; } .insight-visual iframe { height:240px; } .article-shell { width:calc(100% - 40px); } .article-body { font-size:16px; } .article-deck { font-size:16px; } .article-body h2 { font-size:27px; } .article-summary { padding:24px; } .article-body iframe { height:380px; } .article-body table { font-size:11px; } .article-body td,.article-body th { padding:8px; overflow-wrap:anywhere; } .article-callout,.article-cta { padding:24px; } .article-body .btn { font-size:13px; } .legal { margin-block:48px; } .legal h1 { font-size:40px; } }
.hero-robot { --robot-diameter:clamp(320px,38vw,520px); position:relative; height:540px; isolation:isolate; }
.hero-copy h1 br:nth-child(2) { display:initial; }
.demo-top>span:last-child,.demo-options button,.demo-record,.demo-answer .demo-source,.demo-foot { font-size:11px; }
.data-path { font-size:11px; }
.data-path span { white-space:normal; text-align:center; line-height:1.5; }
.demo-answer>p { font-size:13px; }
.demo-answer { min-height:260px; }
.hero-robot canvas { position:absolute; inset:0; width:100%; height:100%; z-index:2; clip-path:circle(calc(var(--robot-diameter) / 2) at 50% 50%); }
.robot-disc { position:absolute; width:var(--robot-diameter); aspect-ratio:1; background:var(--md-sys-color-primary-container); border-radius:50%; top:50%; left:50%; transform:translate(-50%,-50%); z-index:-1; }
#fx-canvas { display:none; }
#hero-loader { position:absolute; inset:0; display:grid; place-items:center; z-index:0; }
#hero-loader.done { display:none; }
#hero-loader img { opacity:.15; }
.robot-caption { position:absolute; bottom:0; left:0; width:100%; display:flex; justify-content:space-between; gap:12px; font-size:10px; color:var(--md-sys-color-on-surface-variant); }
.live-example { background:var(--md-sys-color-surface-container-low); }
.live-example h2 { margin-bottom:24px; }
.live-example p { max-width:430px; }
.live-example .text-link { margin-top:20px; }
.scroll-story { --journey:0; height:210vh; position:relative; background:var(--md-sys-color-surface); }
.story-sticky { position:sticky; top:88px; min-height:calc(100vh - 88px); display:grid; grid-template-columns:.9fr 1.1fr; align-items:center; gap:64px; padding-block:32px; }
.story-copy>p { margin:24px 0; max-width:400px; font-size:14px; }
.story-steps { list-style:none; margin:24px 0 12px; padding:0; }
.story-steps li { display:flex; gap:20px; padding:12px 0; border-top:1px solid var(--md-sys-color-outline-variant); color:var(--md-sys-color-on-surface-variant); transition:color .3s; }
.story-steps li>span { font-size:11px; padding-top:3px; }
.story-steps h3 { font-size:20px; letter-spacing:-.02em; }
.story-steps p { max-width:355px; font-size:13px; line-height:1.7; margin-top:12px; }
.story-steps .is-current { color:var(--md-sys-color-primary); }
.system-sculpture { position:relative; height:540px; perspective:1200px; display:grid; place-items:center; min-width:0; overflow:clip; }
.sculpture-orbit { width:470px; height:470px; border:1px solid var(--md-sys-color-outline-variant); border-radius:50%; position:absolute; transform:rotateX(55deg); }
.system-stack { position:absolute; width:340px; height:300px; transform-style:preserve-3d; transform:rotateX(calc(55deg - var(--journey)*18deg)) rotateZ(calc(-32deg + var(--journey)*25deg)); will-change:transform; }
.system-layer { position:absolute; width:340px; height:280px; border-radius:16px; transform-style:preserve-3d; box-shadow:0 24px 50px -20px rgba(15,23,42,.3); }
.layer-face { width:100%; height:100%; padding:28px; border-radius:16px; backface-visibility:hidden; }
.layer-face>span { display:block; font-size:10px; letter-spacing:1.2px; }
.layer-face strong { display:block; font-size:25px; line-height:1.2; letter-spacing:-.7px; margin:14px 0 6px; }
.layer-face small { font-size:10px; }
.layer-source { background:var(--brand-navy); color:var(--demo-text); transform:translateZ(calc(-85px - var(--journey)*55px)) translateY(calc(var(--journey)*65px)); }
.layer-intelligence { background:var(--brand-cyan); color:var(--brand-navy); transform:translateZ(40px); }
.layer-outcome { background:var(--md-sys-color-secondary-container); color:var(--md-sys-color-on-secondary-container); transform:translateZ(calc(165px + var(--journey)*55px)) translateY(calc(var(--journey)*-65px)); }
.layer-monogram { display:flex; align-items:center; gap:16px; font-size:65px; font-weight:750; letter-spacing:-5px; height:120px; }
.layer-monogram span { font-size:16px; font-weight:600; letter-spacing:0; }
.source-lines { height:120px; display:flex; flex-direction:column; justify-content:center; gap:10px; }
.source-lines i { display:block; width:80%; height:8px; border-radius:4px; background:var(--demo-line); }
.source-lines i:nth-child(2) { width:60%; }.source-lines i:nth-child(3) { width:70%; }
.outcome-line { height:120px; display:flex; align-items:center; gap:12px; }
.outcome-line span { height:44px; width:44px; border:1px solid var(--md-sys-color-secondary); border-radius:50%; }
.outcome-line span:last-child { background:var(--md-sys-color-secondary); }
.sculpture-caption { position:absolute; bottom:0; font-size:10px; letter-spacing:.3px; color:var(--md-sys-color-on-surface-variant); }
@media(max-width:1099px) { .hero-robot { height:460px; } .story-sticky { gap:24px; } .system-stack { width:280px; height:260px; } .system-layer { width:280px; height:260px; } .layer-face { padding:24px; } .layer-face strong { font-size:21px; } .sculpture-orbit { width:340px; height:340px; } }
@media(max-width:860px) { .hero-robot { display:none; } }
@media(max-width:839px) { .scroll-story { height:auto; } .story-sticky { position:static; min-height:0; display:flex; flex-direction:column; padding-block:64px; gap:24px; } .story-copy { width:100%; } .story-copy>p { max-width:560px; } .story-steps p { max-width:560px; } .system-sculpture { height:430px; width:100%; } .system-stack { transform:rotateX(45deg) rotateZ(-24deg); } .layer-source { transform:translateZ(-90px); } .layer-intelligence { transform:translateZ(10px); } .layer-outcome { transform:translateZ(110px); } .story-copy>.text-link { display:none; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation:none!important; transition:none!important; } .scroll-story { height:auto; } .story-sticky { position:relative; min-height:700px; } .hero-robot canvas { display:none!important; } .hero-robot #hero-loader { display:grid!important; } .hero-robot #hero-loader img { opacity:1; } .robot-caption span:last-child { display:none; } }
@media(max-height:700px) and (min-width:840px) { .scroll-story { height:auto; } .story-sticky { position:relative; min-height:650px; } }
