/*
 * CloudPrime public site stylesheet
 * Loaded on every marketing page via /css/site.css (see app/layout.tsx).
 *
 * Layout:
 *   Foundation — tokens, reset, document defaults
 *   Original system — chrome, pages, motion (source order preserved)
 *   Taste refinements — typography, nav, home closing band
 *   Product-page related solutions
 *   Assistant generation and structured answers
 *
 * Account / admin CSS is not here:
 *   app/globals.css, app/app-surfaces.css, app/admin/admin-design-system.css
 */

/* ---------- Foundation ---------- */
:root {
  --paper: #f4f8fc;
  --paper-strong: #ffffff;
  --ink: #0a1830;
  --ink-soft: #24344d;
  --muted: #5b6b83;
  --line: rgba(10,40,90,.14);
  --line-dark: rgba(10,40,90,.1);
  --blue: #0069c0;
  --blue-dark: #006fae;
  --accent: #0069c0;
  --brand-navy: #0a2a5e;
  --brand-cyan: #00c8ff;
  --brand-electric: #2b6fd4;
  --lime: #78efff;
  --panel: #e9f1fa;
  --max: 1360px;
  --pad: clamp(20px,4vw,64px);
  --nav-h: 78px;
  --radius: 2px;
  --ease: cubic-bezier(.2,.8,.2,1);
  --scroll-progress: 0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;
  color:var(--ink);
  background:var(--paper)
}

* {
  box-sizing:border-box
}

html {
  scroll-behavior:smooth;
  overflow-x:clip
}

body {
  margin:0;
  min-width:320px;
  background:var(--paper);
  color:var(--ink);
  line-height:1.65
}

#company, #contact, #ai-portfolio, #agent-platform, #workstations, #mainboards, #server-catalog, #about-system-title, #about-advantage-title, #about-capability-title, #partner-title, #footprint-title {
  scroll-margin-top:calc(var(--nav-h) + 16px)
}

body.menu-open, body.dialog-open {
  overflow:hidden
}

img {
  display:block;
  max-width:100%
}

[hidden] {
  display:none!important
}

a {
  color:inherit;
  text-decoration:none
}

button, input, select, textarea {
  font:inherit
}

button {
  color:inherit
}

ul, ol {
  margin:0;
  padding:0;
  list-style:none
}

h1, h2, h3, p, figure, dl, dd {
  margin:0
}

h1, h2, h3, h4 {
  text-wrap:pretty
}

:focus-visible {
  outline:3px solid var(--blue);
  outline-offset:4px
}

::selection {
  background:var(--blue);
  color:#fff
}

.container {
  width:min(calc(100% - var(--pad) * 2),var(--max));
  margin-inline:auto
}

/* ---------- Chrome, pages, and original component system (source order preserved) ---------- */
.skip-link {
  position:fixed;
  left:16px;
  top:-80px;
  z-index:9999;
  background:#0b2b71;
  color:#fff;
  padding:10px 16px;
  transition:top .2s
}

.skip-link:focus {
  top:12px
}

.sr-only {
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important
}

.section {
  padding-block:clamp(76px,10vw,148px)
}

.section--dark {
  color:#fff;
  background:var(--ink)
}

.section--line {
  border-top:1px solid var(--line)
}

.eyebrow {
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--blue-dark)
}

.eyebrow:before {
  content:"";
  width:9px;
  height:9px;
  background:var(--blue)
}

.section--dark .eyebrow {
  color:var(--lime)
}

.section--dark .eyebrow:before {
  background:var(--lime)
}

.display {
  max-width:13ch;
  font-size:clamp(3.25rem,7.3vw,7.4rem);
  line-height:.94;
  letter-spacing:-.075em;
  font-weight:780
}

.display em, .section-title em {
  color:var(--blue);
  font-style:normal
}

.section-title {
  max-width:18ch;
  font-size:clamp(2.2rem,4.6vw,5rem);
  line-height:1.03;
  letter-spacing:-.055em;
  font-weight:760;
  text-wrap:pretty
}

html[lang=en] .section-title {
  max-width:24ch;
  font-size:clamp(2rem,3.1vw,3.2rem);
  letter-spacing:-.035em
}

html[lang=en] .infrastructure-head .section-title {
  font-size:clamp(1.9rem,3vw,3rem);
  max-width:none
}

.section-intro {
  max-width:640px;
  color:var(--muted);
  font-size:clamp(1rem,1.3vw,1.18rem)
}

.section--dark .section-intro {
  color:#aebbc2
}

.section-head {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:32px;
  margin-bottom:clamp(42px,6vw,78px)
}

.section-head>div {
  display:grid;
  gap:18px
}

.label {
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--muted)
}

.signal {
  color:var(--blue)
}

.btn {
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  border:1px solid transparent;
  padding:0 20px;
  font-weight:760;
  font-size:.9rem;
  cursor:pointer;
  transition:transform .25s var(--ease),background .25s,color .25s,border-color .25s
}

.btn:hover {
  transform:translateY(-3px)
}

.btn--primary {
  background:var(--blue);
  color:#fff
}

.btn--primary:hover {
  background:var(--blue-dark)
}

.btn--dark {
  background:var(--ink);
  color:#fff
}

.btn--ghost {
  border-color:currentColor;
  background:transparent
}

.btn--light {
  background:#fff;
  color:var(--ink)
}

.btn--glass {
  border-color:#0a285a47;
  background:#ffffffbf;
  color:var(--ink);
  backdrop-filter:blur(12px)
}

.btn--glass:hover {
  border-color:var(--ink);
  background:#ffffffeb
}

.btn-arrow:after {
  content:"\2197";
  font-size:1.1em
}

.text-link {
  display:inline-flex;
  gap:12px;
  align-items:center;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  color:var(--blue-dark);
  font:inherit;
  font-weight:780;
  cursor:pointer
}

.text-link:after {
  content:"\2192";
  transition:transform .2s
}

.text-link:hover:after {
  transform:translate(5px)
}

.site-nav {
  position:fixed;
  inset:0 0 auto;
  height:var(--nav-h);
  z-index:500;
  border-bottom:1px solid rgba(9,17,22,.12);
  background:transparent;
  transition:background-color .24s,box-shadow .24s,border-color .24s
}

.site-nav:after {
  content:"";
  position:absolute;
  inset:auto 0 -1px;
  height:2px;
  background:var(--blue);
  transform:scaleX(var(--scroll-progress));
  transform-origin:left
}

.site-nav.is-scrolled {
  border-bottom-color:#0911162e;
  background:#ffffffd9;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  box-shadow:0 12px 34px #09111612
}

.nav-inner {
  height:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px
}

.nav-logo {
  display:flex;
  align-items:center
}

.nav-logo .nav-lockup {
  width:clamp(148px,15vw,178px);
  height:auto;
  max-height:56px;
  object-fit:contain
}

.nav-links {
  display:flex;
  align-items:center;
  gap:clamp(18px,2.2vw,34px);
  margin-left:auto
}

.nav-links>a, .nav-product-head>a, .nav-secondary-head>a {
  position:relative;
  padding:27px 0 24px;
  font-size:.88rem;
  font-weight:740
}

.nav-links>a:after, .nav-product-head>a:after, .nav-secondary-head>a:after {
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:20px;
  height:2px;
  background:var(--blue);
  transition:right .25s var(--ease)
}

.nav-links>a:hover:after, .nav-links>a[aria-current=page]:after, .nav-product-head>a:hover:after, .nav-product-head>a[aria-current=page]:after, .nav-secondary-head>a:hover:after, .nav-secondary-head>a[aria-current=page]:after {
  right:0
}

.nav-product {
  display:flex;
  align-items:center
}

.nav-product-head {
  display:flex;
  align-items:center;
  gap:5px
}

.nav-product-toggle {
  width:25px;
  height:25px;
  display:grid;
  place-items:center;
  padding:0;
  border:0;
  background:transparent;
  color:var(--blue-dark);
  cursor:pointer
}

.nav-product-toggle span {
  font-size:1.15rem;
  line-height:1;
  transition:transform .25s var(--ease)
}

.nav-product.is-open .nav-product-toggle span {
  transform:rotate(45deg)
}

.nav-product-menu {
  position:fixed;
  z-index:490;
  inset:var(--nav-h) 0 auto;
  display:grid;
  grid-template-columns:minmax(230px,.55fr) minmax(0,1.45fr);
  gap:clamp(28px,5vw,76px);
  padding:38px max(var(--pad),calc((100vw - var(--max)) / 2));
  border-bottom:1px solid var(--line);
  background:#ffffff99;
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  box-shadow:0 24px 50px #0911161c;
  opacity:0;
  visibility:hidden;
  transform:translateY(-10px);
  transition:opacity .22s,visibility .22s,transform .22s var(--ease)
}

.nav-product:hover .nav-product-menu, .nav-product:focus-within .nav-product-menu, .nav-product.is-open .nav-product-menu {
  opacity:1;
  visibility:visible;
  transform:none
}

.nav-product-overview {
  padding-right:clamp(24px,4vw,60px);
  border-right:1px solid var(--line);
  display:grid;
  align-content:start;
  gap:18px
}

.nav-product-overview strong {
  font-size:clamp(1.45rem,2.3vw,2.35rem);
  line-height:1.05;
  letter-spacing:-.045em
}

.nav-product-overview>a {
  color:var(--blue-dark);
  font-size:.8rem;
  font-weight:800
}

.nav-product-groups {
  display:grid;
  grid-template-columns:repeat(4,minmax(120px,1fr));
  gap:clamp(18px,3vw,42px)
}

.nav-product-group {
  display:grid;
  align-content:start;
  gap:4px
}

.nav-product-label {
  margin-bottom:9px;
  color:var(--muted);
  font-size:.64rem;
  font-weight:820;
  letter-spacing:.12em
}

.nav-product-group a {
  display:grid;
  gap:1px;
  padding:8px 0;
  border-bottom:1px solid var(--line)
}

.nav-product-group a span {
  font-size:.82rem;
  font-weight:820
}

.nav-product-group a small {
  color:var(--muted);
  font-size:.61rem
}

.nav-product-group a:hover span {
  color:var(--blue-dark)
}

.nav-secondary {
  display:flex;
  align-items:center
}

.nav-secondary-head {
  display:flex;
  align-items:center;
  gap:4px
}

.nav-secondary-toggle {
  width:23px;
  height:23px;
  display:grid;
  place-items:center;
  padding:0;
  border:0;
  background:transparent;
  color:var(--blue-dark);
  cursor:pointer
}

.nav-secondary-toggle span {
  font-size:1.05rem;
  line-height:1;
  transition:transform .22s var(--ease)
}

.nav-secondary.is-open .nav-secondary-toggle span {
  transform:rotate(45deg)
}

.nav-secondary-menu {
  position:fixed;
  z-index:490;
  inset:var(--nav-h) 0 auto;
  display:grid;
  grid-template-columns:minmax(230px,.55fr) minmax(0,1.45fr);
  gap:clamp(28px,5vw,76px);
  padding:38px max(var(--pad),calc((100vw - var(--max)) / 2));
  border-bottom:1px solid var(--line);
  background:#ffffff99;
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  box-shadow:0 28px 70px #09143229;
  opacity:0;
  visibility:hidden;
  transform:translateY(-10px);
  transition:opacity .22s,visibility .22s,transform .22s var(--ease)
}

.nav-secondary:hover .nav-secondary-menu, .nav-secondary:focus-within .nav-secondary-menu, .nav-secondary.is-open .nav-secondary-menu {
  opacity:1;
  visibility:visible;
  transform:none
}

.nav-secondary-overview {
  border-color:var(--line)
}

.nav-secondary-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:0 clamp(18px,2.5vw,38px);
  align-content:start
}

.nav-secondary-grid>a {
  min-width:0;
  display:grid;
  align-content:start;
  gap:5px;
  padding:14px 0;
  border-bottom:1px solid var(--line)
}

.nav-secondary-grid>a span {
  color:var(--ink);
  font-size:.82rem;
  font-weight:780;
  line-height:1.4
}

.nav-secondary-grid>a small {
  color:var(--muted);
  font-size:.61rem
}

.nav-secondary-grid>a:hover span {
  color:var(--blue-dark)
}

.nav-secondary-grid .nav-secondary-all {
  grid-template-columns:1fr auto;
  align-items:center;
  color:var(--blue-dark)
}

.nav-secondary-all b {
  font-size:1rem
}

.nav-account {
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 13px;
  border:1px solid var(--line);
  background:transparent;
  color:var(--ink);
  font-size:.76rem;
  font-weight:760;
  white-space:nowrap;
  transition:border-color .25s,background .25s,color .25s,transform .25s var(--ease),box-shadow .25s
}

.nav-account svg {
  color:var(--ink-soft);
  transition:transform .25s var(--ease),color .25s
}

.nav-account:hover, .nav-account[aria-current=page] {
  border-color:var(--blue-dark);
  background:#0069c014;
  color:var(--ink);
  box-shadow:0 8px 24px #005cd21f;
  transform:translateY(-2px)
}

.nav-account:hover svg {
  transform:translate(2px);
  color:var(--blue-dark)
}

.menu-button {
  display:none;
  width:40px;
  height:40px;
  border:1px solid var(--line);
  background:transparent;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:5px;
  cursor:pointer;
  transition:border-color .2s var(--ease),background-color .2s
}

.menu-button span {
  width:19px;
  height:2px;
  background:var(--ink);
  transition:.25s
}

.menu-button:hover {
  border-color:var(--blue-dark);
  background:#0069c014
}

body.brand-home .site-nav:not(.is-scrolled) {
  border-bottom-color:#0a285a14;
  background:transparent;
  color:var(--ink)
}

body.brand-home .site-nav:not(.is-scrolled) .nav-lockup {
  filter:none
}

body.brand-home .site-nav:not(.is-scrolled) .nav-product-toggle {
  color:var(--blue-dark)
}

body.brand-home .site-nav:not(.is-scrolled) .menu-button {
  border-color:#0a285a4d;
  background:transparent
}

body.brand-home .site-nav:not(.is-scrolled) .menu-button span {
  background:var(--ink)
}

body.brand-home.menu-open .site-nav {
  background:var(--paper);
  color:var(--ink)
}

@media(min-width:821px) {
.nav-product-toggle, .nav-secondary-toggle {
    display:none!important
}
}

.hero {
  --hero-scroll: 0px;
  min-height:100svh;
  padding-top:calc(var(--nav-h) + clamp(42px,7vw,105px));
  padding-bottom:clamp(48px,7vw,88px);
  display:flex;
  align-items:center;
  overflow:hidden;
  position:relative
}

.hero:before {
  content:"";
  position:absolute;
  inset:-54px;
  pointer-events:none;
  background-image:linear-gradient(rgba(9,17,22,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(9,17,22,.055) 1px,transparent 1px);
  background-size:54px 54px;
  mask-image:linear-gradient(to bottom,black,transparent 86%);
  animation:grid-drift 22s linear infinite
}

.hero-copy {
  display:grid;
  gap:30px
}

.hero-copy .lead {
  max-width:590px;
  color:var(--ink-soft);
  font-size:clamp(1.05rem,1.55vw,1.35rem)
}

.hero-actions {
  display:flex;
  flex-wrap:wrap;
  gap:12px
}

.brand-hero {
  min-height:max(780px,100svh);
  padding-top:calc(var(--nav-h) + clamp(34px,5vw,72px));
  padding-bottom:clamp(48px,6vw,76px);
  isolation:isolate;
  color:#0a1830;
  background:#e8f1fc
}

.brand-hero:before {
  inset:-24px;
  z-index:-2;
  background:url(../assets/media/generated/brand-compute-stream.jpg) 58% center / cover no-repeat;
  mask-image:none;
  transform:scale(1.04) translate3d(0,var(--hero-scroll),0);
  animation:brand-background-arrive 1.8s cubic-bezier(.16,1,.3,1) both;
  will-change:transform
}

.brand-hero:after {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(90deg,#f4f8fcf7,#eef4fceb 34%,#e6f0fc73 62%,#e6f0fc0d 88%),linear-gradient(180deg,#f4f8fc59 48%,#e8f1fcb8)
}

.brand-hero-grid {
  min-height:calc(max(780px,100svh) - var(--nav-h) - 110px);
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  align-items:center
}

.brand-hero-copy {
  width:min(100%,1180px);
  display:block
}

.hero-kicker {
  margin-top:30px;
  color:#12294d;
  font-size:clamp(1.25rem,2.1vw,2.25rem);
  font-weight:680;
  letter-spacing:.08em
}

.brand-hero .display {
  max-width:100%;
  margin-top:0;
  padding-block:.04em .14em;
  font-size:clamp(3.7rem,7vw,7.6rem);
  line-height:1.06;
  letter-spacing:-.065em;
  white-space:nowrap;
  overflow-wrap:normal
}

.brand-hero .display span {
  display:inline-block;
  color:inherit
}

.brand-hero .display em {
  display:inline-block;
  margin-left:.12em;
  color:var(--accent)
}

html[lang=en] .brand-hero .display {
  width:100%;
  max-width:none;
  white-space:normal
}

html[lang=en] .brand-hero .display span, html[lang=en] .brand-hero .display em {
  display:block;
  width:fit-content;
  max-width:100%;
  margin-left:0;
  padding:.04em .04em .18em 0;
  margin-bottom:-.18em;
  white-space:nowrap
}

.brand-hero .lead {
  max-width:680px;
  margin-top:22px;
  color:#33465f;
  font-size:clamp(.95rem,1.2vw,1.12rem)
}

.brand-hero .hero-actions {
  margin-top:30px
}

.ai-portfolio-section {
  background:#f8fafc
}

.tier-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px
}

.tier-card {
  --tier: var(--blue);
  min-height:650px;
  position:relative;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  padding:clamp(26px,3vw,42px);
  border:1px solid var(--line);
  border-top:5px solid var(--tier);
  background:#fff;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)
}

.tier-card:hover {
  transform:translateY(-7px);
  box-shadow:0 22px 55px #09111617
}

.tier-card--personal {
  --tier: #06a9bd
}

.tier-card--professional {
  --tier: #3869ec
}

.tier-card--enterprise {
  --tier: #b65bff
}

.tier-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px
}

.tier-head span {
  padding:7px 10px;
  background:color-mix(in srgb,var(--tier) 10%,white);
  color:var(--tier);
  font-size:.7rem;
  font-weight:900;
  letter-spacing:.13em
}

.tier-head small {
  color:var(--muted);
  font-weight:750
}

.tier-index {
  position:absolute;
  right:20px;
  top:58px;
  color:#0911160a;
  font-size:8rem;
  line-height:1;
  font-weight:900;
  letter-spacing:-.08em
}

.tier-image {
  height:160px;
  min-height:160px;
  flex:0 0 160px;
  position:relative;
  display:grid;
  place-items:center;
  overflow:hidden;
  margin:36px 0 0
}

.tier-image img {
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain
}

.tier-card h3 {
  position:relative;
  margin-top:28px;
  font-size:clamp(2.2rem,3.5vw,3.8rem);
  line-height:.95;
  letter-spacing:-.06em
}

.tier-product {
  margin-top:12px;
  color:var(--tier);
  font-weight:820
}

.tier-card>strong {
  margin-top:32px;
  font-size:1.08rem;
  color:var(--ink)
}

.tier-card>p:not(.tier-product) {
  margin-top:14px;
  color:var(--muted)
}

.tier-card>.tier-model {
  margin-top:7px;
  color:var(--ink-soft);
  font-size:.74rem;
  font-weight:780;
  letter-spacing:.03em
}

.tier-card ul {
  display:grid;
  gap:8px;
  margin-top:auto;
  padding-top:34px;
  border-top:1px solid var(--line);
  color:var(--ink-soft);
  font-size:.8rem
}

.tier-card li:before {
  content:"+";
  margin-right:9px;
  color:var(--tier);
  font-weight:900
}

.tier-card--showcase {
  min-height:680px;
  display:grid;
  grid-template-rows:auto 190px auto 82px minmax(84px,1fr) auto;
  align-content:stretch
}

.tier-card--showcase .tier-image {
  width:100%;
  height:190px;
  min-height:0;
  margin:0;
  padding:28px 0 10px;
  overflow:visible
}

.tier-card--showcase .tier-image img {
  width:auto;
  height:auto;
  max-width:100%;
  max-height:152px;
  object-fit:contain
}

.tier-card--showcase .tier-title {
  position:relative;
  align-self:start;
  padding-top:14px
}

.tier-card--showcase .tier-title h3 {
  margin-top:0
}

.tier-card--showcase .tier-product {
  margin-top:10px
}

.tier-card--showcase .tier-performance {
  align-self:start;
  padding-top:25px
}

.tier-card--showcase .tier-performance strong {
  display:block;
  color:var(--ink);
  font-size:1.08rem
}

.tier-card--showcase .tier-model {
  margin-top:10px;
  color:var(--ink-soft);
  font-size:.74rem;
  font-weight:780;
  letter-spacing:.03em
}

.tier-card--showcase>.tier-description {
  align-self:start;
  margin-top:0;
  padding-top:12px;
  color:var(--muted)
}

.tier-card--showcase ul {
  margin-top:0;
  padding-top:24px
}

.portfolio-actions {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:18px 30px;
  margin-top:34px
}

.home-summary-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px
}

.home-summary-card {
  --summary: var(--accent);
  min-height:500px;
  display:grid;
  grid-template-rows:auto 190px auto 1fr auto;
  gap:0;
  position:relative;
  overflow:hidden;
  padding:clamp(26px,3vw,40px);
  border:1px solid var(--line);
  border-top:4px solid var(--summary);
  background:#fff;
  transition:transform .3s var(--ease),border-color .3s,box-shadow .3s
}

.home-summary-card:nth-child(2) {
  --summary: #3869ec
}

.home-summary-card:nth-child(3) {
  --summary: #8c50e8
}

.home-summary-card:hover {
  transform:translateY(-6px);
  border-color:color-mix(in srgb,var(--summary) 55%,var(--line));
  box-shadow:0 24px 56px #1e468c29
}

.home-summary-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px
}

.home-summary-head span {
  padding:6px 9px;
  background:color-mix(in srgb,var(--summary) 12%,white);
  color:var(--summary);
  font-size:.68rem;
  font-weight:880;
  letter-spacing:.13em
}

.home-summary-head small {
  color:var(--muted);
  font-weight:760
}

.home-summary-card figure {
  display:grid;
  place-items:center;
  padding:24px 0 10px;
  background:radial-gradient(ellipse at center,rgba(73,155,255,.17),transparent 68%)
}

.home-summary-card figure img {
  width:auto;
  height:auto;
  max-width:100%;
  max-height:150px;
  object-fit:contain;
  filter:drop-shadow(0 14px 18px rgba(0,3,22,.4))
}

.home-summary-card h3 {
  margin-top:16px;
  font-size:clamp(1.8rem,2.7vw,3rem);
  line-height:1;
  letter-spacing:-.045em
}

.home-summary-card>p {
  margin-top:18px;
  color:var(--muted)
}

.home-summary-link {
  align-self:end;
  margin-top:26px;
  padding-top:20px;
  border-top:1px solid var(--line);
  color:var(--blue-dark);
  font-size:.82rem;
  font-weight:800
}

.home-summary-link:after {
  content:"\2192";
  float:right
}

.tier-grid--compact .tier-card {
  min-height:620px
}

.tier-grid--compact .tier-card>.text-link {
  margin-top:auto;
  padding-top:28px
}

.tier-grid--compact .tier-card--showcase>.text-link {
  align-self:end;
  margin-top:0;
  padding-top:24px
}

.agent-section {
  position:relative;
  isolation:isolate;
  color:var(--ink);
  background-color:#fff;
  background-image:radial-gradient(circle at 82% 12%,rgba(0,105,192,.07),transparent 40%),linear-gradient(180deg,#fff,#f4f8fc)
}

.agent-layout {
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);
  gap:clamp(50px,8vw,120px);
  align-items:start
}

.agent-intro {
  position:sticky;
  top:calc(var(--nav-h) + 40px)
}

.agent-intro .eyebrow {
  color:var(--blue)
}

.agent-intro .eyebrow:before {
  background:var(--blue)
}

.agent-intro .section-title {
  margin-top:22px;
  font-size:clamp(2.2rem,3.9vw,4rem)
}

.agent-intro .section-title em {
  color:var(--blue)
}

.agent-intro>p {
  max-width:52ch;
  margin-top:28px;
  color:var(--muted)
}

.agent-intro .btn {
  margin-top:32px
}

.agent-logo {
  width:82px;
  height:82px;
  margin-bottom:28px;
  border-radius:20px;
  overflow:hidden;
  border:1px solid var(--line);
  box-shadow:0 18px 36px #0914321c
}

.agent-logo img {
  width:100%;
  height:100%;
  object-fit:cover
}

.agent-tags {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:24px
}

.agent-tags span {
  padding:7px 9px;
  border:1px solid var(--line);
  color:var(--ink-soft);
  font-size:.65rem;
  font-weight:740
}

.agent-capabilities {
  border-top:1px solid var(--line)
}

.agent-capabilities article {
  min-height:260px;
  position:relative;
  padding:36px 100px 36px 0;
  border-bottom:1px solid var(--line-dark)
}

.agent-capabilities article:after {
  content:attr(data-index);
  position:absolute;
  right:8px;
  top:24px;
  color:#0a183014;
  font-size:5.8rem;
  line-height:1;
  font-weight:900
}

.agent-kicker {
  color:var(--blue-dark);
  font-size:.65rem;
  font-weight:820;
  letter-spacing:.13em;
  text-transform:uppercase
}

.agent-capabilities h3 {
  margin-top:14px;
  font-size:clamp(1.8rem,3vw,3rem);
  line-height:1;
  letter-spacing:-.045em
}

.agent-capabilities p {
  max-width:62ch;
  margin-top:18px;
  color:var(--muted)
}

.agent-summary-panel {
  min-height:480px;
  align-self:center;
  display:flex;
  flex-direction:column;
  padding:clamp(32px,5vw,64px);
  border:1px solid var(--line);
  background:#fff;
  box-shadow:0 28px 70px #09143214
}

.agent-summary-panel h3 {
  max-width:14ch;
  margin-top:24px;
  font-size:clamp(2rem,3.7vw,3.8rem);
  line-height:.98;
  letter-spacing:-.055em
}

.agent-summary-panel>p {
  max-width:52ch;
  margin-top:24px;
  color:var(--muted)
}

.agent-summary-tags {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:28px
}

.agent-summary-tags span {
  padding:8px 10px;
  border:1px solid var(--line);
  color:var(--ink-soft);
  font-size:.68rem;
  font-weight:760
}

.agent-summary-panel .btn {
  align-self:flex-start;
  margin-top:auto
}

.agent-section .btn--light {
  background:var(--blue);
  color:#fff;
  border-color:transparent
}

.agent-section .btn--light:hover {
  background:var(--blue-dark);
  color:#fff
}

.infrastructure-section {
  position:relative;
  overflow:hidden;
  background-color:#f8fafc;
  background-image:linear-gradient(180deg,#f8fafc99,#f8fafce6 360px,#f8fafc 900px),linear-gradient(90deg,#f4f8fceb,#f4f8fc80),url(../assets/media/generated/section-infrastructure-v1.webp);
  background-position:center,center,top center;
  background-size:cover,cover,100% auto;
  background-repeat:no-repeat
}

.infrastructure-section:before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.5;
  background-image:linear-gradient(rgba(55,136,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(55,136,255,.08) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:linear-gradient(to bottom,transparent,black 24%,black 76%,transparent);
  animation:infrastructure-grid-drift 18s linear infinite
}

.infrastructure-section .container {
  position:relative;
  z-index:1
}

.infrastructure-head {
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(360px,1.08fr);
  gap:clamp(42px,7vw,110px);
  align-items:end;
  margin-bottom:clamp(42px,6vw,76px)
}

.infrastructure-total {
  min-height:180px;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:26px;
  align-items:end;
  padding:28px 0 6px;
  border-block:1px solid rgba(10,40,90,.18)
}

.infrastructure-total strong {
  color:var(--accent);
  font-size:clamp(5rem,9vw,8.8rem);
  line-height:.72;
  letter-spacing:-.09em
}

.infrastructure-total span {
  color:var(--muted);
  font-size:.68rem;
  font-weight:820;
  letter-spacing:.16em;
  text-transform:uppercase
}

.infrastructure-total p {
  max-width:44ch;
  margin-top:12px;
  color:var(--ink-soft);
  font-size:.9rem
}

.infrastructure-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px
}

.infrastructure-card {
  --series-accent: #0090d4;
  min-height:470px;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(210px,.92fr);
  overflow:hidden;
  border:1px solid var(--line);
  border-top:3px solid var(--series-accent);
  background:#fff;
  transition:transform .35s var(--ease),border-color .35s,box-shadow .35s
}

.infrastructure-card--pcie {
  --series-accent: #3869ec
}

.infrastructure-card--general {
  --series-accent: #0aa5b8
}

.infrastructure-card--storage {
  --series-accent: #8c50e8
}

.infrastructure-card--mainboard {
  --series-accent: #00b896;
  grid-column:1 / -1;
  grid-template-columns:minmax(0,.82fr) minmax(400px,1.18fr)
}

.infrastructure-card:hover {
  transform:translateY(-6px);
  border-color:var(--series-accent);
  box-shadow:0 26px 60px #1e468c29,0 0 0 1px color-mix(in srgb,var(--series-accent) 22%,transparent)
}

.infrastructure-copy {
  min-width:0;
  display:flex;
  flex-direction:column;
  padding:clamp(28px,3.2vw,44px)
}

.infrastructure-card-head {
  display:flex;
  justify-content:space-between;
  gap:18px;
  color:var(--series-accent);
  font-size:.62rem;
  font-weight:860;
  letter-spacing:.13em;
  text-transform:uppercase
}

.infrastructure-card-head b {
  flex:none;
  padding:5px 8px;
  border:1px solid color-mix(in srgb,var(--series-accent) 52%,transparent);
  color:color-mix(in srgb,var(--series-accent) 70%,var(--ink));
  letter-spacing:.04em
}

.infrastructure-card h3 {
  margin-top:clamp(34px,4vw,58px);
  color:var(--ink);
  font-size:clamp(2rem,3.2vw,3.45rem);
  line-height:.98;
  letter-spacing:-.055em
}

html[lang=en] .infrastructure-card h3 {
  font-size:clamp(1.5rem,2.2vw,2.2rem);
  line-height:1.08;
  letter-spacing:-.03em;
  overflow-wrap:break-word;
  hyphens:auto;
  -webkit-hyphens:auto
}

.infrastructure-card p {
  max-width:38ch;
  margin-top:18px;
  color:var(--muted);
  font-size:.84rem
}

.infrastructure-model {
  display:grid;
  gap:3px;
  margin-top:auto;
  padding-top:28px
}

.infrastructure-model small {
  color:var(--muted);
  font-size:.58rem;
  letter-spacing:.12em
}

.infrastructure-model strong {
  color:var(--ink);
  font-size:.78rem;
  letter-spacing:.03em
}

.infrastructure-model span {
  color:var(--ink-soft);
  font-size:.67rem
}

.infrastructure-link {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-top:24px;
  padding-top:18px;
  border-top:1px solid var(--line);
  color:var(--ink-soft);
  font-size:.72rem;
  font-weight:780
}

.infrastructure-link b {
  color:var(--series-accent);
  font-size:1rem;
  transition:transform .25s
}

.infrastructure-card:hover .infrastructure-link b {
  transform:translate(3px,-3px)
}

.infrastructure-card figure {
  min-width:0;
  display:grid;
  place-items:center;
  position:relative;
  overflow:hidden;
  padding:26px;
  background:linear-gradient(145deg,#edf5fb,#cbdbea)
}

.infrastructure-card figure:before {
  content:"";
  position:absolute;
  inset:0;
  opacity:.55;
  background-image:linear-gradient(rgba(7,32,82,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(7,32,82,.08) 1px,transparent 1px);
  background-size:28px 28px
}

.infrastructure-card figure:after {
  content:"";
  position:absolute;
  width:170px;
  aspect-ratio:1;
  border-radius:50%;
  background:color-mix(in srgb,var(--series-accent) 18%,transparent);
  filter:blur(32px)
}

.infrastructure-card img {
  position:relative;
  z-index:1;
  width:96%;
  height:270px;
  object-fit:contain;
  filter:drop-shadow(0 22px 20px rgba(5,19,42,.25));
  transition:transform .45s var(--ease)
}

.infrastructure-card:hover img {
  transform:scale(1.045)
}

.infrastructure-card--mainboard .infrastructure-mainboard-pair {
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px
}

.infrastructure-card--mainboard .infrastructure-mainboard-pair img {
  width:100%;
  height:250px
}

.advantage-section {
  padding-bottom:0;
  border-top:1px solid var(--line);
  background:#fff
}

.advantage-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border:1px solid var(--line)
}

.advantage-grid article {
  min-height:320px;
  padding:clamp(24px,2.8vw,38px);
  border-right:1px solid var(--line)
}

.advantage-grid article:last-child {
  border-right:0
}

.advantage-grid span {
  display:inline-grid;
  width:44px;
  height:44px;
  place-items:center;
  border-radius:50%;
  background:#edf3ff;
  color:var(--brand-electric);
  font-size:.78rem;
  font-weight:900
}

.advantage-grid h3 {
  margin-top:72px;
  font-size:clamp(1.35rem,2vw,2rem);
  line-height:1.08
}

.advantage-grid p {
  margin-top:16px;
  color:var(--muted);
  font-size:.88rem
}

.partner-section {
  overflow:hidden;
  border-block:1px solid var(--line);
  background:radial-gradient(circle at 18% 12%,rgba(0,105,192,.08),transparent 30%),#f8fafc
}

.partner-section .section-head {
  margin-bottom:clamp(34px,5vw,58px)
}

.partner-marquee {
  width:100%;
  overflow-x:auto;
  padding:2px 0 14px;
  scrollbar-width:thin;
  scrollbar-color:rgba(0,105,192,.45) rgba(10,40,90,.08);
  -webkit-mask-image:linear-gradient(90deg,transparent,black 5%,black 95%,transparent);
  mask-image:linear-gradient(90deg,transparent,black 5%,black 95%,transparent)
}

.partner-marquee::-webkit-scrollbar {
  height:5px
}

.partner-marquee::-webkit-scrollbar-track {
  background:#0a285a14
}

.partner-marquee::-webkit-scrollbar-thumb {
  background:linear-gradient(90deg,var(--brand-cyan),var(--blue));
  border-radius:999px
}

.partner-track {
  width:max-content;
  display:flex;
  animation:partner-scroll 34s linear infinite;
  will-change:transform
}

.partner-marquee:hover .partner-track, .partner-marquee:focus .partner-track, .partner-marquee:focus-within .partner-track, .partner-marquee:active .partner-track {
  animation-play-state:paused
}

.partner-set {
  display:flex;
  flex:none;
  gap:16px;
  padding-right:16px
}

.partner-logo-card {
  width:clamp(190px,18vw,260px);
  height:118px;
  flex:none;
  display:grid;
  place-items:center;
  padding:24px;
  border:1px solid rgba(155,194,228,.7);
  background:linear-gradient(145deg,#f8fbff,#e8f1f8);
  box-shadow:0 16px 42px #00041c2e
}

.partner-logo-card img {
  width:auto;
  height:auto;
  max-width:82%;
  max-height:52px;
  object-fit:contain;
  filter:none;
  opacity:1
}

.stack-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border:1px solid var(--line-dark)
}

.stack-card {
  min-height:420px;
  display:flex;
  flex-direction:column;
  padding:clamp(24px,2.4vw,38px);
  border-right:1px solid var(--line-dark);
  position:relative;
  overflow:hidden;
  transition:background-color .35s var(--ease),transform .35s var(--ease)
}

.stack-card:last-child {
  border:0
}

.stack-card:before {
  content:attr(data-index);
  position:absolute;
  right:18px;
  top:8px;
  font-size:6rem;
  line-height:1;
  letter-spacing:-.08em;
  font-weight:850;
  color:#ffffff0b
}

.stack-card:hover {
  background:#ffffff0a
}

.stack-card .status {
  width:10px;
  height:10px;
  background:var(--blue);
  margin-bottom:auto;
  box-shadow:0 0 0 5px #0069c01f;
  animation:status-pulse 3.2s var(--ease) infinite
}

.stack-card h3 {
  font-size:clamp(1.35rem,2vw,2rem);
  line-height:1.08;
  margin-bottom:16px
}

.stack-card p {
  color:#aab7bd;
  font-size:.92rem
}

.stack-card ul {
  display:grid;
  gap:8px;
  margin-top:24px;
  color:#dbe3e6;
  font-size:.78rem
}

.stack-card li:before {
  content:"+";
  color:var(--blue);
  margin-right:8px
}

.catalog-image:after, .product-shot:after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.65) 50%,transparent 62%);
  transform:translate(-120%);
  transition:transform .9s var(--ease)
}

.catalog-card:hover .catalog-image:after, .catalog-card:focus-visible .catalog-image:after, .product-shot:hover:after {
  transform:translate(120%)
}

.company-section {
  background:#fff;
  border-bottom:1px solid var(--line)
}

.company-grid {
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:clamp(52px,9vw,140px);
  align-items:start
}

.company-intro {
  position:sticky;
  top:calc(var(--nav-h) + 38px)
}

.company-intro .section-title {
  margin-top:22px
}

.company-intro>p {
  max-width:62ch;
  margin-top:30px;
  color:var(--muted);
  font-size:1rem
}

.company-scope {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:30px
}

.company-scope span {
  padding:7px 10px;
  border:1px solid var(--line);
  color:var(--ink-soft);
  font-size:.68rem;
  font-weight:780
}

.company-principles {
  border-top:1px solid var(--ink)
}

.company-principles article {
  min-height:190px;
  display:grid;
  grid-template-columns:84px 1fr;
  gap:28px;
  align-items:center;
  padding:32px 0;
  border-bottom:1px solid var(--line)
}

.company-principles article>span {
  align-self:start;
  color:var(--blue);
  font-size:1.15rem;
  font-weight:850
}

.company-principles h3 {
  font-size:clamp(1.45rem,2.2vw,2.2rem);
  line-height:1;
  letter-spacing:-.045em
}

.company-principles p {
  max-width:54ch;
  margin-top:13px;
  color:var(--muted)
}

.about-hero h1 {
  max-width:10ch
}

.about-capability-grid .stack-card {
  min-height:440px
}

.footprint-section {
  border-top:1px solid var(--line);
  background:#fff
}

.footprint-frame {
  border:1px solid var(--line);
  background:#fff;
  overflow:hidden
}

.footprint-frame img {
  width:100%;
  height:auto
}

.footprint-frame figcaption {
  padding:12px 16px;
  border-top:1px solid var(--line);
  color:var(--muted);
  font-size:.68rem;
  letter-spacing:.06em
}

.filter-bar {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:40px
}

.filter-button {
  min-height:44px;
  padding:0 18px;
  border:1px solid var(--line);
  background:#fff;
  font-weight:740;
  cursor:pointer
}

.filter-button:hover, .filter-button.is-active {
  background:var(--ink);
  color:#fff;
  border-color:var(--ink)
}

.empty-state {
  min-height:520px;
  display:grid;
  place-items:center;
  text-align:center;
  border:1px solid var(--line);
  background:#fff;
  padding:60px 20px
}

.empty-state-inner {
  max-width:620px
}

.empty-mark {
  width:100px;
  height:100px;
  display:grid;
  place-items:center;
  margin:0 auto 28px;
  border:1px solid var(--line);
  font-size:2.5rem;
  color:var(--blue);
  background-image:linear-gradient(rgba(0,153,229,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(0,153,229,.08) 1px,transparent 1px);
  background-size:15px 15px
}

.empty-state h2 {
  font-size:clamp(2rem,4vw,4.2rem);
  line-height:1;
  letter-spacing:-.05em
}

.empty-state p {
  margin:20px auto 30px;
  color:var(--muted)
}

.news-list {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px
}

.news-card {
  background:#fff;
  border:1px solid var(--line);
  min-height:430px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  transition:transform .25s var(--ease),box-shadow .25s
}

.news-card:hover {
  transform:translateY(-6px);
  box-shadow:0 18px 40px #09111617
}

.news-card-media {
  display:block;
  height:190px;
  overflow:hidden;
  background:var(--panel);
  border-bottom:1px solid var(--line)
}

.news-card-media img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .45s var(--ease)
}

.news-card:hover .news-card-media img {
  transform:scale(1.025)
}

.news-card-body {
  display:flex;
  flex:1;
  flex-direction:column;
  padding:28px
}

.news-card h2 {
  margin:15px 0 12px;
  font-size:1.55rem;
  line-height:1.15;
  letter-spacing:-.035em
}

.news-card p {
  color:var(--muted);
  font-size:.88rem;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden
}

.news-card-meta {
  display:flex;
  justify-content:space-between;
  gap:16px;
  margin-top:auto;
  padding-top:24px;
  color:var(--muted);
  font-size:.7rem;
  letter-spacing:.06em
}

.news-card-meta b {
  color:var(--blue-dark);
  font-weight:800
}

.article-hero {
  padding-top:calc(var(--nav-h) + clamp(60px,9vw,118px));
  padding-bottom:clamp(46px,7vw,82px);
  border-bottom:1px solid var(--line)
}

.article-hero-grid {
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:clamp(42px,7vw,100px);
  align-items:end
}

.article-hero h1 {
  max-width:18ch;
  margin-top:22px;
  font-size:clamp(2.8rem,6vw,6rem);
  line-height:.98;
  letter-spacing:-.065em
}

.article-deck {
  max-width:720px;
  margin-top:28px;
  color:var(--muted);
  font-size:clamp(1rem,1.25vw,1.16rem)
}

.article-meta {
  display:grid;
  gap:12px;
  padding-top:22px;
  border-top:1px solid var(--line);
  color:var(--muted);
  font-size:.82rem
}

.article-meta strong {
  color:var(--ink)
}

.article-cover {
  margin-top:clamp(30px,5vw,64px);
  border:1px solid var(--line);
  background:var(--panel)
}

.article-cover img {
  width:100%;
  max-height:720px;
  object-fit:cover
}

.article-layout {
  display:grid;
  grid-template-columns:minmax(0,760px) minmax(220px,1fr);
  gap:clamp(50px,9vw,140px);
  align-items:start
}

.article-content {
  min-width:0;
  color:var(--ink-soft);
  font-size:1.04rem;
  line-height:1.9;
  overflow-wrap:anywhere
}

.article-content>*+* {
  margin-top:1.2em
}

.article-content h1, .article-content h2, .article-content h3, .article-content h4 {
  margin-top:1.8em;
  color:var(--ink);
  line-height:1.3;
  letter-spacing:-.025em
}

.article-content h2 {
  font-size:1.75rem
}

.article-content h3 {
  font-size:1.35rem
}

.article-content ul, .article-content ol {
  display:grid;
  gap:.45em;
  padding-left:1.35em
}

.article-content ul {
  list-style:disc
}

.article-content ol {
  list-style:decimal
}

.article-content blockquote {
  padding:20px 24px;
  border-left:3px solid var(--blue);
  background:var(--panel);
  color:var(--muted)
}

.article-content img {
  width:auto;
  max-width:100%;
  height:auto;
  margin:1.6em auto
}

.article-content a {
  color:var(--blue-dark);
  text-decoration:underline;
  text-underline-offset:3px
}

.article-content table {
  width:100%;
  border-collapse:collapse;
  font-size:.88rem
}

.article-content th, .article-content td {
  padding:10px 12px;
  border:1px solid var(--line);
  text-align:left;
  vertical-align:top
}

.article-content pre {
  overflow-x:auto;
  padding:18px;
  background:#010617;
  color:#eaf4ff
}

.article-aside {
  position:sticky;
  top:calc(var(--nav-h) + 30px);
  padding:26px;
  border:1px solid var(--line);
  background:#fff
}

.article-aside p {
  margin:16px 0 22px;
  color:var(--muted);
  font-size:.85rem
}

.article-nav {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin-top:clamp(60px,8vw,110px);
  border:1px solid var(--line)
}

.article-nav a {
  min-height:150px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:22px;
  padding:25px
}

.article-nav a+a {
  border-left:1px solid var(--line);
  text-align:right
}

.article-nav span {
  color:var(--muted);
  font-size:.68rem;
  letter-spacing:.12em;
  text-transform:uppercase
}

.article-nav strong {
  font-size:1rem;
  line-height:1.35
}

.page-hero {
  padding-top:calc(var(--nav-h) + clamp(70px,10vw,135px));
  padding-bottom:clamp(65px,9vw,120px);
  border-bottom:1px solid var(--line);
  position:relative;
  overflow:hidden
}

.page-hero:after {
  content:attr(data-code);
  position:absolute;
  right:-1vw;
  bottom:-4vw;
  font-size:clamp(8rem,24vw,24rem);
  line-height:.7;
  letter-spacing:-.1em;
  font-weight:900;
  color:#09111609;
  pointer-events:none;
  transform-origin:right bottom;
  animation:page-code-arrive 1.55s cubic-bezier(.16,1,.3,1) both
}

.page-hero-grid {
  display:grid;
  grid-template-columns:1.2fr .8fr;
  align-items:end;
  gap:60px;
  position:relative;
  z-index:1
}

.page-hero h1 {
  max-width:12ch;
  font-size:clamp(3.2rem,6vw,6rem);
  line-height:.96;
  letter-spacing:-.055em
}

html[lang=en] .page-hero h1 {
  line-height:1.04;
  letter-spacing:-.04em
}

html[lang=en] .display, html[lang=en] .tier-card h3, html[lang=en] .agent-summary-panel h3, html[lang=en] .article-hero h1, html[lang=en] .company-strength-head h2, html[lang=en] .download-hero h1 {
  line-height:1.02
}

.page-hero p {
  color:var(--muted);
  max-width:560px;
  font-size:1.05rem
}

.catalog-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px
}

.catalog-card {
  display:flex;
  flex-direction:column;
  min-height:490px;
  border:1px solid var(--line);
  background:#fff;
  transition:transform .25s var(--ease),box-shadow .25s
}

.catalog-card:hover {
  transform:translateY(-6px);
  box-shadow:0 18px 40px #09111617
}

.catalog-card[hidden] {
  display:none
}

.catalog-image {
  min-height:235px;
  display:grid;
  place-items:center;
  padding:28px;
  background:#eaf0f2;
  position:relative;
  overflow:hidden
}

.catalog-image img {
  width:min(92%,360px);
  height:165px;
  max-height:none;
  object-fit:contain;
  object-position:center;
  position:relative;
  z-index:1;
  transition:transform .45s var(--ease)
}

.catalog-card:hover .catalog-image img {
  transform:translateY(-5px) scale(1.025)
}

.catalog-content {
  display:flex;
  flex-direction:column;
  flex:1;
  padding:26px
}

.catalog-content h2, .catalog-content h3 {
  margin:12px 0;
  font-size:1.9rem;
  letter-spacing:-.04em
}

.catalog-content p {
  color:var(--muted);
  font-size:.88rem
}

.spec-pills {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:auto;
  padding-top:24px
}

.spec-pills span {
  padding:6px 8px;
  background:var(--panel);
  font-size:.68rem;
  font-weight:750
}

.catalog-link {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding-top:20px;
  margin-top:18px;
  border-top:1px solid var(--line);
  color:var(--blue-dark);
  font-weight:780
}

.selector {
  margin-bottom:52px;
  padding:24px;
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:24px;
  background:var(--ink);
  color:#fff
}

.selector h2 {
  font-size:1.15rem
}

.selector p {
  color:var(--muted);
  font-size:.84rem
}

.product-hero {
  padding-top:calc(var(--nav-h) + clamp(64px,9vw,128px));
  padding-bottom:clamp(55px,8vw,100px);
  border-bottom:1px solid var(--line)
}

.product-hero-grid {
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  align-items:center;
  gap:clamp(42px,7vw,110px)
}

.product-copy {
  display:grid;
  gap:22px
}

.product-copy h1 {
  font-size:clamp(3.5rem,7vw,7rem);
  line-height:.9;
  letter-spacing:-.075em
}

.product-copy .subtitle {
  color:var(--blue-dark);
  font-size:.76rem;
  font-weight:820;
  letter-spacing:.13em;
  text-transform:uppercase
}

.product-copy .desc {
  color:var(--muted)
}

.quick-facts {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-block:1px solid var(--line)
}

.quick-facts div {
  padding:16px 12px 16px 0;
  border-right:1px solid var(--line)
}

.quick-facts div:not(:first-child) {
  padding-left:16px
}

.quick-facts div:last-child {
  border:0
}

.quick-facts dt {
  font-size:.62rem;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:.12em
}

.quick-facts dd {
  font-weight:850;
  font-size:1.05rem
}

.product-shot {
  min-height:470px;
  display:grid;
  place-items:center;
  padding:clamp(28px,5vw,68px);
  position:relative;
  background:#eaf0f2;
  border:1px solid var(--line);
  overflow:hidden
}

.product-shot:before {
  content:"";
  position:absolute;
  inset:0;
  background-image:linear-gradient(rgba(9,17,22,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(9,17,22,.04) 1px,transparent 1px);
  background-size:32px 32px;
  animation:product-grid 18s linear infinite
}

.product-shot img {
  position:relative;
  z-index:1;
  width:100%;
  height:clamp(240px,27vw,320px);
  max-height:none;
  object-fit:contain;
  object-position:center
}

.spec-layout {
  display:grid;
  grid-template-columns:300px 1fr;
  gap:clamp(42px,7vw,100px);
  align-items:start
}

.spec-sticky {
  position:sticky;
  top:calc(var(--nav-h) + 28px)
}

.spec-sticky p {
  margin-top:18px;
  color:var(--muted)
}

.spec-item {
  display:grid;
  grid-template-columns:190px 1fr;
  gap:30px;
  padding:20px 0;
  border-top:1px solid var(--line)
}

.spec-item-label {
  font-weight:780;
  font-size:.82rem
}

.spec-item-value {
  color:var(--ink-soft);
  font-size:.86rem
}

.spec-item-value ul {
  display:grid;
  gap:6px
}

.spec-item-value li:before {
  content:"\2014";
  margin-right:8px;
  color:var(--blue)
}

.server-catalog-summary {
  grid-template-columns:1fr auto
}

.server-catalog-summary>div:first-child {
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  column-gap:22px
}

.server-catalog-summary p {
  grid-column:2
}

.server-catalog-number {
  grid-row:1 / 3;
  color:var(--accent);
  font-size:clamp(3rem,5vw,5.5rem);
  line-height:.8;
  font-weight:900;
  letter-spacing:-.08em
}

.server-catalog-actions {
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px
}

.catalog-toolbar {
  position:sticky;
  z-index:30;
  top:var(--nav-h);
  display:grid;
  grid-template-columns:1.2fr .8fr minmax(220px,.7fr);
  gap:22px;
  margin-bottom:24px;
  padding:22px 0;
  border-block:1px solid var(--line);
  background:#f4f8fcf0;
  backdrop-filter:blur(16px)
}

.catalog-filter-label, .catalog-search span {
  display:block;
  margin-bottom:10px;
  color:var(--muted);
  font-size:.64rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase
}

.catalog-toolbar .filter-bar {
  display:flex;
  flex-wrap:wrap;
  gap:7px
}

.catalog-search input {
  width:100%;
  height:44px;
  padding:0 14px;
  border:1px solid var(--line);
  border-radius:0;
  outline:0;
  background:#fff;
  color:var(--ink)
}

.catalog-search input:focus {
  border-color:var(--blue);
  box-shadow:0 0 0 3px #0069c01f
}

.catalog-search input::placeholder {
  color:var(--muted)
}

.catalog-result-row {
  display:flex;
  justify-content:space-between;
  gap:20px;
  margin-bottom:18px;
  color:var(--muted);
  font-size:.76rem
}

.catalog-result-row>span {
  color:var(--accent);
  font-weight:800
}

.catalog-more {
  display:flex;
  justify-content:center;
  margin-top:34px
}

.catalog-more .btn {
  min-width:230px
}

.catalog-card {
  min-height:515px
}

.catalog-card-meta {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  color:var(--muted);
  font-size:.62rem
}

.catalog-card-meta .label {
  flex:none
}

.catalog-content p {
  min-height:92px;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
  overflow:hidden
}

.catalog-content .spec-pills span {
  line-height:1.35
}

.catalog-image img {
  filter:drop-shadow(0 14px 14px rgba(7,24,58,.2))
}

.server-detail-shot img {
  width:min(100%,900px)
}

.server-feature-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px
}

.server-feature-card {
  min-height:330px;
  padding:26px;
  border:1px solid var(--line);
  background:linear-gradient(180deg,#fff,#f2f7fc)
}

.server-feature-card>span {
  display:inline-grid;
  width:34px;
  height:34px;
  place-items:center;
  margin-bottom:48px;
  background:#0069c01a;
  color:var(--accent);
  font-size:.68rem;
  font-weight:850
}

.server-feature-card h3 {
  margin-bottom:18px;
  font-size:1.2rem
}

.server-feature-card ul {
  display:grid;
  gap:10px;
  color:var(--muted);
  font-size:.82rem
}

.server-feature-card li {
  position:relative;
  padding-left:14px
}

.server-feature-card li:before {
  content:"+";
  position:absolute;
  left:0;
  color:var(--accent)
}

.server-spec-list {
  border-bottom:1px solid var(--line)
}

.server-spec-list .spec-item-value {
  white-space:pre-line
}

.source-transcript {
  margin-top:36px;
  border:1px solid var(--line);
  background:#fff
}

.source-transcript summary {
  cursor:pointer;
  padding:18px 20px;
  color:var(--accent);
  font-size:.78rem;
  font-weight:800
}

.source-transcript pre {
  max-height:560px;
  margin:0;
  overflow:auto;
  padding:22px;
  border-top:1px solid var(--line);
  background:#010617;
  color:#cbdaf0;
  white-space:pre-wrap;
  word-break:break-word;
  font:.76rem/1.75 ui-monospace,SFMono-Regular,Consolas,monospace
}

.server-product-nav {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin-block:0 90px;
  border:1px solid var(--line)
}

.server-product-nav a {
  min-height:130px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:24px
}

.server-product-nav a+a {
  border-left:1px solid var(--line);
  text-align:right
}

.server-product-nav small {
  color:var(--muted);
  font-size:.66rem;
  letter-spacing:.12em;
  text-transform:uppercase
}

.server-product-nav strong {
  color:var(--accent)
}

.workstation-section {
  position:relative;
  overflow:hidden;
  border-block:1px solid var(--line);
  background:radial-gradient(circle at 14% 4%,rgba(0,105,192,.08),transparent 28%),radial-gradient(circle at 86% 12%,rgba(77,86,255,.08),transparent 28%),#f4f8fc
}

.workstation-section:before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.18;
  background-image:linear-gradient(rgba(72,143,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(72,143,255,.12) 1px,transparent 1px);
  background-size:52px 52px
}

.workstation-section .container {
  position:relative;
  z-index:1
}

.workstation-toolbar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:24px;
  padding-block:18px;
  border-block:1px solid var(--line)
}

.workstation-toolbar .filter-bar {
  display:flex;
  flex-wrap:wrap;
  gap:8px
}

.workstation-toolbar>span {
  color:var(--accent);
  font-size:.76rem;
  font-weight:800
}

.workstation-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px
}

.workstation-card {
  min-width:0;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid var(--line);
  border-top:3px solid var(--workstation-accent,var(--accent));
  background:#fff;
  transition:transform .3s var(--ease),border-color .3s,box-shadow .3s
}

.workstation-card[data-workstation-category=personal] {
  --workstation-accent: #0090d4
}

.workstation-card[data-workstation-category=desktop] {
  --workstation-accent: #6a55e8
}

.workstation-card:hover {
  transform:translateY(-6px);
  border-color:var(--workstation-accent,var(--accent));
  box-shadow:0 24px 54px #1e468c2e
}

.workstation-card-head {
  display:flex;
  justify-content:space-between;
  gap:16px;
  padding:18px 22px;
  color:var(--workstation-accent,var(--accent));
  font-size:.65rem;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase
}

.workstation-card-head small {
  color:var(--muted);
  font:inherit
}

.workstation-card-media {
  height:300px;
  display:grid;
  place-items:center;
  position:relative;
  overflow:hidden;
  padding:24px;
  background:linear-gradient(145deg,#f3f7fb,#d5e1eb)
}

.workstation-card-media:before {
  content:"";
  position:absolute;
  inset:0;
  opacity:.48;
  background-image:linear-gradient(rgba(7,32,82,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(7,32,82,.07) 1px,transparent 1px);
  background-size:26px 26px
}

.workstation-card-media img {
  position:relative;
  z-index:1;
  width:100%;
  height:248px;
  object-fit:contain;
  filter:drop-shadow(0 20px 18px rgba(5,19,42,.23));
  transition:transform .4s var(--ease)
}

.workstation-card:hover .workstation-card-media img {
  transform:scale(1.03)
}

.workstation-card-copy {
  flex:1;
  display:flex;
  flex-direction:column;
  padding:24px
}

.workstation-card-meta {
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  color:var(--accent);
  font-size:.64rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase
}

.workstation-card-meta span+span {
  color:var(--muted)
}

.workstation-card h3 {
  margin-top:13px;
  overflow-wrap:anywhere;
  font-size:clamp(1.65rem,2.5vw,2.35rem);
  line-height:1;
  letter-spacing:-.045em
}

.workstation-card-copy>p {
  min-height:68px;
  margin-top:16px;
  color:var(--ink-soft);
  font-size:.82rem
}

.workstation-card dl {
  display:grid;
  margin-top:20px;
  border-top:1px solid var(--line)
}

.workstation-card dl div {
  display:grid;
  grid-template-columns:62px 1fr;
  gap:14px;
  padding:12px 0;
  border-bottom:1px solid var(--line)
}

.workstation-card dt {
  color:var(--muted);
  font-size:.65rem
}

.workstation-card dd {
  color:var(--ink-soft);
  font-size:.72rem
}

.workstation-detail-link {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:auto;
  padding:20px 0 0;
  border:0;
  background:transparent;
  color:var(--accent);
  font-weight:800;
  cursor:pointer
}

.workstation-detail-link span {
  font-size:1.1rem;
  transition:transform .2s
}

.workstation-detail-link:hover span {
  transform:translate(3px,-3px)
}

.mainboard-section {
  position:relative;
  overflow:hidden;
  border-block:1px solid var(--line);
  background:radial-gradient(circle at 78% 8%,rgba(0,105,192,.07),transparent 30%),#f8fafc
}

.mainboard-section:before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.18;
  background-image:linear-gradient(rgba(72,143,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(72,143,255,.12) 1px,transparent 1px);
  background-size:48px 48px
}

.mainboard-section .container {
  position:relative;
  z-index:1
}

.mainboard-toolbar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:24px;
  padding-block:18px;
  border-block:1px solid var(--line)
}

.mainboard-toolbar .filter-bar {
  display:flex;
  flex-wrap:wrap;
  gap:8px
}

.mainboard-toolbar>span {
  color:var(--accent);
  font-size:.76rem;
  font-weight:800
}

.mainboard-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px
}

.mainboard-card {
  min-width:0;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid var(--line);
  border-top:3px solid var(--mainboard-accent,var(--accent));
  background:#fff;
  transition:transform .3s var(--ease),border-color .3s,box-shadow .3s
}

.mainboard-card:nth-child(3n+2) {
  --mainboard-accent: #3869ec
}

.mainboard-card:nth-child(3n) {
  --mainboard-accent: #8c50e8
}

.mainboard-card:hover {
  transform:translateY(-6px);
  border-color:var(--mainboard-accent,var(--accent));
  box-shadow:0 24px 54px #1e468c2e
}

.mainboard-card-head {
  display:flex;
  justify-content:space-between;
  gap:16px;
  padding:18px 22px;
  color:var(--mainboard-accent,var(--accent));
  font-size:.64rem;
  font-weight:850;
  letter-spacing:.13em;
  text-transform:uppercase
}

.mainboard-card-head small {
  color:var(--muted);
  font:inherit;
  letter-spacing:.08em
}

.mainboard-card-media {
  height:260px;
  display:grid;
  place-items:center;
  position:relative;
  overflow:hidden;
  padding:22px;
  background:linear-gradient(145deg,#edf5fb,#cbdbea)
}

.mainboard-card-media:before {
  content:"";
  position:absolute;
  inset:0;
  opacity:.55;
  background-image:linear-gradient(rgba(7,32,82,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(7,32,82,.08) 1px,transparent 1px);
  background-size:24px 24px
}

.mainboard-card-media img {
  position:relative;
  z-index:1;
  width:100%;
  height:216px;
  object-fit:contain;
  filter:drop-shadow(0 18px 16px rgba(5,19,42,.24));
  transition:transform .4s var(--ease)
}

.mainboard-card:hover .mainboard-card-media img {
  transform:scale(1.035)
}

.mainboard-card-copy {
  flex:1;
  display:flex;
  flex-direction:column;
  padding:25px 24px 24px
}

.mainboard-platform {
  color:var(--accent);
  font-size:.64rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase
}

.mainboard-card h3 {
  margin-top:12px;
  font-size:clamp(2rem,3vw,3rem);
  line-height:1;
  letter-spacing:-.05em
}

.mainboard-card-copy>p {
  min-height:76px;
  margin-top:16px;
  color:var(--ink-soft);
  font-size:.82rem
}

.mainboard-card dl {
  display:grid;
  margin-top:22px;
  border-top:1px solid var(--line)
}

.mainboard-card dl div {
  display:grid;
  grid-template-columns:54px 1fr;
  gap:14px;
  padding:12px 0;
  border-bottom:1px solid var(--line)
}

.mainboard-card dt {
  color:var(--muted);
  font-size:.65rem
}

.mainboard-card dd {
  color:var(--ink-soft);
  font-size:.72rem
}

.mainboard-detail-link {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:auto;
  padding:20px 0 0;
  border:0;
  background:transparent;
  color:var(--accent);
  font-weight:800;
  cursor:pointer
}

.mainboard-detail-link span {
  font-size:1.1rem;
  transition:transform .2s
}

.mainboard-detail-link:hover span {
  transform:translate(3px,-3px)
}

.contact-band {
  position:relative;
  overflow:hidden;
  padding-block:clamp(58px,7vw,92px);
  border-top:1px solid var(--line);
  background-color:var(--panel);
  background-image:linear-gradient(rgba(9,17,22,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(9,17,22,.045) 1px,transparent 1px);
  background-size:38px 38px;
  color:var(--ink)
}

.contact-band h2 {
  max-width:18ch;
  font-size:clamp(2.15rem,3.7vw,4.25rem);
  line-height:1;
  letter-spacing:-.055em
}

.contact-actions {
  display:flex;
  flex-wrap:wrap;
  gap:12px
}

.contact-band .btn--light {
  background:var(--ink);
  color:#fff
}

.contact-band .btn--light:hover {
  background:var(--blue-dark)
}

.contact-band .btn--ghost {
  border-color:var(--ink);
  color:var(--ink)
}

.contact-meta {
  margin-top:24px;
  color:var(--muted);
  font-size:.88rem
}

.site-footer {
  background:var(--ink);
  color:#fff
}

.footer-grid {
  padding-block:72px;
  display:grid;
  grid-template-columns:1.25fr .75fr .55fr .7fr 1.05fr;
  gap:clamp(28px,3vw,48px)
}

.footer-brand img {
  width:min(270px,100%);
  height:auto;
  object-fit:contain;
  filter:brightness(0) invert(1)
}

.footer-brand p {
  margin-top:22px;
  max-width:38ch;
  color:#9eacb3;
  font-size:.88rem
}

.footer-col h2 {
  margin-bottom:18px;
  color:#83939c;
  font-size:.68rem;
  text-transform:uppercase;
  letter-spacing:.14em
}

.footer-col ul {
  display:grid;
  gap:10px
}

.footer-col a {
  color:#dce3e6;
  font-size:.86rem
}

.footer-col a:hover {
  color:var(--lime)
}

.footer-col .text-link {
  color:#dce3e6;
  font-size:.86rem
}

.footer-col .text-link:hover {
  color:var(--lime)
}

.qr-grid {
  display:flex;
  gap:14px;
  flex-wrap:wrap
}

.qr-grid figure {
  text-align:center
}

.qr-grid img {
  width:80px;
  height:80px;
  object-fit:cover;
  background:#fff;
  padding:3px
}

.qr-grid figcaption {
  margin-top:7px;
  color:#9eacb3;
  font-size:.65rem
}

.footer-bottom {
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:15px;
  padding-block:22px;
  border-top:1px solid rgba(255,255,255,.14);
  color:#83939c;
  font-size:.72rem
}

.inquiry-dialog {
  width:min(760px,calc(100% - 32px));
  max-height:calc(100svh - 32px);
  padding:0;
  border:0;
  background:#fff;
  color:var(--ink);
  box-shadow:0 30px 100px #00000059
}

.inquiry-dialog[open] {
  animation:dialog-enter .32s var(--ease) both
}

.inquiry-dialog::backdrop {
  background:#050c10ad;
  backdrop-filter:blur(5px)
}

.inquiry-dialog[open]::backdrop {
  animation:backdrop-enter .25s ease both
}

.dialog-head {
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:26px 30px;
  border-bottom:1px solid var(--line)
}

.dialog-head h2 {
  font-size:1.45rem
}

.inquiry-context {
  margin-top:10px;
  padding:8px 12px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#3974ff1f;
  font-size:.85rem;
  color:var(--muted)
}

.inquiry-context strong {
  color:#17548f
}

.dialog-close {
  width:40px;
  height:40px;
  border:1px solid var(--line);
  background:#fff;
  cursor:pointer
}

.inquiry-form {
  padding:30px
}

.form-grid {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px
}

.field {
  display:grid;
  gap:7px
}

.field--wide {
  grid-column:1 / -1
}

.field label {
  font-size:.74rem;
  font-weight:780
}

.field input, .field select, .field textarea {
  width:100%;
  border:1px solid var(--line);
  border-radius:0;
  background:#f8fafb;
  padding:12px;
  color:var(--ink)
}

.field textarea {
  resize:vertical;
  min-height:120px
}

.form-status {
  color:var(--blue-dark);
  font-size:.78rem
}

.chat-trigger {
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:650;
  width:58px;
  height:58px;
  border:0;
  background:var(--ink);
  color:#fff;
  cursor:pointer;
  box-shadow:0 12px 32px #0003;
  transition:bottom .28s var(--ease),opacity .2s,transform .2s,background-color .2s
}

.chat-trigger:hover {
  background:var(--blue-dark);
  transform:translateY(-3px)
}

.chat-trigger[aria-expanded=true] {
  opacity:0;
  pointer-events:none;
  transform:translateY(8px)
}

.chat-trigger:before {
  content:"AI";
  font-size:.8rem;
  font-weight:900;
  letter-spacing:.08em
}

.chat-trigger:after {
  content:"";
  position:absolute;
  right:8px;
  top:8px;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#4d9fe0
}

body.menu-open .chat-trigger {
  opacity:0;
  visibility:hidden;
  pointer-events:none
}

body.menu-open .chat-panel {
  display:none
}

.chat-panel {
  --chat-width: 430px;
  --chat-height: 640px;
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:660;
  width:min(var(--chat-width),calc(100vw - 32px));
  height:min(var(--chat-height),calc(100svh - 44px));
  display:none;
  overflow:hidden;
  background:var(--paper);
  border:1px solid var(--ink);
  box-shadow:0 24px 70px #0000003d
}

.chat-panel.is-open {
  display:block;
  animation:panel-enter .28s var(--ease) both
}

.chat-panel.is-resizing {
  animation:none
}

.chat-resize {
  position:absolute;
  z-index:4;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  touch-action:none
}

.chat-resize--n {
  top:0;
  left:20px;
  right:0;
  height:12px;
  cursor:ns-resize
}

.chat-resize--w {
  top:20px;
  left:0;
  bottom:0;
  width:12px;
  cursor:ew-resize
}

.chat-resize--nw {
  top:0;
  left:0;
  width:22px;
  height:22px;
  cursor:nwse-resize
}

.chat-resize--nw:before {
  content:"";
  position:absolute;
  top:6px;
  left:6px;
  width:9px;
  height:9px;
  border-top:2px solid rgba(0,105,192,.55);
  border-left:2px solid rgba(0,105,192,.55);
  opacity:.7
}

.chat-resize--n:hover, .chat-panel.is-resizing-n .chat-resize--n {
  background:linear-gradient(180deg,rgba(0,105,192,.28),transparent)
}

.chat-resize--w:hover, .chat-panel.is-resizing-w .chat-resize--w {
  background:linear-gradient(90deg,rgba(0,105,192,.22),transparent)
}

.chat-resize:hover:before, .chat-panel.is-resizing .chat-resize--nw:before {
  opacity:1
}

html.is-resizing-chat, html.is-resizing-chat * {
  cursor:inherit!important;
  user-select:none!important
}

html.is-resizing-chat-n {
  cursor:ns-resize!important
}

html.is-resizing-chat-w {
  cursor:ew-resize!important
}

html.is-resizing-chat-nw {
  cursor:nwse-resize!important
}

.chat-shell {
  height:100%;
  display:flex;
  flex-direction:column
}

.chat-head {
  min-height:82px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:16px 18px;
  color:var(--ink);
  background:#fff;
  border-bottom:2px solid var(--blue)
}

.chat-identity {
  min-width:0;
  display:flex;
  align-items:center;
  gap:12px
}

.chat-identity div {
  min-width:0;
  display:grid;
  gap:2px
}

.chat-identity strong {
  font-size:.95rem;
  letter-spacing:.01em
}

.chat-identity div>span {
  overflow:hidden;
  color:var(--muted);
  font-size:.66rem;
  letter-spacing:.04em;
  text-overflow:ellipsis;
  white-space:nowrap
}

.chat-tools {
  display:flex;
  align-items:center;
  gap:6px
}

.chat-tools button {
  min-width:38px;
  height:38px;
  padding:0 9px;
  border:1px solid var(--line);
  background:transparent;
  color:var(--ink-soft);
  font-size:.72rem;
  cursor:pointer;
  transition:border-color .2s var(--ease),background-color .2s
}

.chat-tools button:last-child {
  width:38px;
  padding:0;
  font-size:1.35rem;
  line-height:1
}

.chat-tools button:hover {
  border-color:var(--blue-dark);
  background:#0069c014;
  color:var(--ink)
}

.chat-thread {
  flex:1 1 auto;
  min-height:0;
  display:flex;
  flex-direction:column;
  gap:18px;
  overflow-y:auto;
  padding:22px 20px;
  background-color:#f6f9fa;
  background-image:linear-gradient(rgba(9,17,22,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(9,17,22,.035) 1px,transparent 1px);
  background-size:28px 28px;
  scroll-behavior:smooth
}

.chat-message {
  max-width:88%;
  display:grid;
  gap:5px;
  align-self:flex-start
}

.chat-message--user {
  align-self:flex-end
}

.chat-message-label {
  color:var(--muted);
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase
}

.chat-message--user .chat-message-label {
  text-align:right
}

.chat-message-body {
  padding:13px 15px;
  border:1px solid var(--line);
  background:#fff;
  color:var(--ink-soft);
  font-size:.86rem;
  line-height:1.72;
  white-space:pre-wrap;
  overflow-wrap:anywhere
}

.chat-message-body>*+* {
  margin-top:.68em
}

.chat-message-body h3 {
  font-size:.92rem;
  line-height:1.45
}

.chat-message-body ul, .chat-message-body ol {
  padding-left:1.2rem;
  list-style:disc
}

.chat-message-body ol {
  list-style:decimal
}

.chat-message-body li+li {
  margin-top:.34em
}

.chat-message-body hr {
  height:1px;
  border:0;
  background:var(--line)
}

.chat-message-body code {
  padding:.1em .3em;
  background:var(--panel);
  color:var(--ink);
  font-size:.82em
}

.chat-message-body pre {
  max-width:100%;
  overflow-x:auto;
  padding:10px 12px;
  background:var(--ink);
  color:#fff;
  white-space:pre
}

.chat-message-body pre code {
  padding:0;
  background:transparent;
  color:inherit
}

.chat-message--assistant .chat-message-body {
  border-left:3px solid var(--blue)
}

.chat-feedback {
  display:flex;
  gap:6px;
  margin-top:8px
}

.chat-feedback button {
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border:1px solid #d5dee8;
  border-radius:8px;
  background:#fff;
  color:#5b6b7c;
  cursor:pointer
}

.chat-feedback button:hover,
.chat-feedback button.is-active {
  border-color:var(--blue);
  background:#eef5fb;
  color:var(--blue)
}

.chat-feedback button:disabled {
  opacity:.55;
  cursor:wait
}

.chat-message--user .chat-message-body {
  border-color:var(--blue-dark);
  background:var(--blue-dark);
  color:#fff
}

.chat-message.is-streaming .chat-message-body:after {
  content:"";
  display:inline-block;
  width:7px;
  height:1em;
  margin-left:4px;
  vertical-align:-.12em;
  background:var(--blue);
  animation:chat-cursor .75s steps(1) infinite
}

.chat-suggestions {
  display:grid;
  grid-template-columns:1fr;
  gap:7px;
  padding:0 20px 16px;
  background:#f6f9fa;
  max-height:176px;
  overflow-y:auto;
  flex:0 1 auto
}

.chat-suggestions[hidden] {
  display:none
}

.chat-suggestions button {
  min-height:39px;
  padding:8px 12px;
  border:1px solid var(--line);
  background:#ffffffe6;
  color:var(--ink-soft);
  text-align:left;
  font-size:.76rem;
  cursor:pointer
}

.chat-suggestions button:after {
  content:"\2197";
  float:right;
  color:var(--blue-dark)
}

.chat-suggestions button:hover {
  border-color:var(--blue);
  color:var(--blue-dark)
}

.chat-compose {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:8px;
  padding:15px 16px 10px;
  border-top:1px solid var(--line);
  background:#fff
}

.chat-compose textarea {
  width:100%;
  min-height:46px;
  max-height:120px;
  resize:none;
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:0;
  background:#f8fafb;
  color:var(--ink);
  line-height:1.5
}

.chat-compose textarea:focus {
  border-color:var(--blue);
  outline:2px solid rgba(0,105,192,.16)
}

.chat-send {
  min-height:46px;
  padding:0 14px;
  border:1px solid var(--ink);
  background:var(--ink);
  color:#fff;
  font-size:.76rem;
  font-weight:800;
  cursor:pointer
}

.chat-send:hover {
  background:var(--blue-dark);
  border-color:var(--blue-dark)
}

.chat-send:disabled {
  cursor:not-allowed;
  background:var(--ink-soft);
  border-color:var(--ink-soft);
  opacity:1
}

.chat-send:disabled:has(.spin) {
  cursor:wait
}

.chat-send[hidden] {
  display:none
}

.chat-status {
  min-height:30px;
  padding:0 16px 12px;
  background:#fff;
  color:var(--muted);
  font-size:.62rem;
  line-height:1.45
}

.site-nav, .site-nav.is-scrolled {
  border-bottom-color:#0a285a1f;
  color:var(--ink);
  box-shadow:0 12px 34px #14326e14
}

.site-nav:after {
  background:var(--blue)
}

.site-nav .nav-lockup, body.brand-home .site-nav:not(.is-scrolled) .nav-lockup {
  filter:none
}

.site-nav .nav-product-toggle {
  color:var(--blue-dark)
}

.nav-product-menu {
  border-color:var(--line);
  background:#ffffff99;
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  box-shadow:0 28px 70px #09143229
}

.nav-product-overview {
  border-color:var(--line)
}

.menu-button, body.brand-home .site-nav:not(.is-scrolled) .menu-button {
  border-color:var(--line);
  background:transparent
}

.menu-button span, body.brand-home .site-nav:not(.is-scrolled) .menu-button span {
  background:var(--ink)
}

body.brand-home .site-nav:not(.is-scrolled) {
  background:transparent
}

body.brand-home .site-nav .nav-logo {
  opacity:1;
  visibility:visible;
  transform:none;
  pointer-events:auto
}

body.brand-home.menu-open .site-nav {
  background:#f4f8fcfa;
  color:var(--ink)
}

body.brand-home.menu-open .site-nav .nav-lockup {
  filter:none
}

body.brand-home.menu-open .site-nav .menu-button {
  border-color:var(--line)
}

body.brand-home.menu-open .site-nav .menu-button span {
  background:var(--ink)
}

.section--dark {
  background:#07143a
}

.about-capability-section {
  position:relative;
  isolation:isolate;
  background-color:#02071c;
  background-image:linear-gradient(90deg,#02071cf5,#02071cd1 46%,#02071c94),linear-gradient(180deg,#02071c40,#02071cd1),url(../assets/media/generated/section-engineering-v1.webp);
  background-position:center,center,center;
  background-size:cover;
  background-repeat:no-repeat
}

.about-capability-section .container {
  position:relative;
  z-index:1
}

.about-capability-section .stack-card {
  background:linear-gradient(180deg,#071439d1,#030c26e0);
  backdrop-filter:blur(7px)
}

.eyebrow {
  color:var(--accent)
}

.eyebrow:before {
  background:var(--accent);
  box-shadow:none
}

.section--dark .eyebrow {
  color:var(--brand-cyan)
}

.section--dark .eyebrow:before {
  background:var(--brand-cyan)
}

.display em, .section-title em {
  color:var(--accent)
}

.btn--primary {
  background:linear-gradient(135deg,#009fe9,#2767ff);
  box-shadow:0 12px 34px #0082ff38
}

.btn--primary:hover {
  background:linear-gradient(135deg,#18b8ff,#4c7cff)
}

.btn--dark {
  border-color:#0a1a4733;
  background:#0a1a47
}

.btn--light {
  background:#fff;
  color:#0a1830;
  border-color:var(--line)
}

.text-link {
  color:var(--blue-dark)
}

.ai-portfolio-section {
  background:radial-gradient(circle at 72% 5%,rgba(41,110,220,.12),transparent 30%),#f8fafc
}

.tier-card, .news-card, .empty-state, .catalog-card, .article-aside {
  border-color:var(--line);
  background:#fff
}

.tier-card:hover, .news-card:hover, .catalog-card:hover {
  box-shadow:0 24px 58px #1e468c29
}

.tier-head span {
  background:color-mix(in srgb,var(--tier) 12%,white)
}

.tier-index {
  color:#0a285a12
}

.tier-card .tier-image {
  background:radial-gradient(ellipse at center,rgba(73,155,255,.16),transparent 68%)
}

.tier-card .tier-image img {
  filter:drop-shadow(0 16px 18px rgba(10,30,70,.22))
}

.advantage-section {
  border-color:var(--line);
  background:radial-gradient(circle at 15% 5%,rgba(0,105,192,.07),transparent 28%),#fff
}

.advantage-grid article {
  border-color:var(--line)
}

.advantage-grid span {
  background:#0069c01a;
  color:var(--accent);
  box-shadow:none
}

.catalog-image, .product-shot {
  background:#eef4fa
}

.product-shot:before {
  background-image:linear-gradient(rgba(7,32,82,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(7,32,82,.07) 1px,transparent 1px)
}

.company-section {
  border-color:var(--line);
  background:radial-gradient(circle at 80% 10%,rgba(57,116,255,.08),transparent 28%),#fff
}

.company-principles {
  border-color:var(--line)
}

.footprint-section {
  border-color:var(--line);
  background:#f8fafc
}

.footprint-frame {
  border-color:var(--line);
  background:#fff
}

.filter-button {
  border-color:var(--line);
  background:#fff;
  color:var(--ink)
}

.filter-button:hover, .filter-button.is-active {
  border-color:var(--blue);
  background:var(--blue);
  color:#fff
}

.article-content blockquote, .spec-pills span {
  background:var(--panel)
}

.page-hero, .article-hero, .product-hero {
  background:radial-gradient(circle at 82% 30%,rgba(41,110,220,.14),transparent 30%),linear-gradient(135deg,#fff,#e9f2fc 70%,#dceafa)
}

.page-hero:after {
  color:#0a285a12
}

.selector {
  border:1px solid var(--line);
  background:#fff
}

.contact-band {
  border-color:var(--line);
  background-color:#0a2a5e;
  background-image:radial-gradient(circle at 82% 20%,rgba(0,168,237,.22),transparent 28%),linear-gradient(rgba(111,193,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(111,193,255,.08) 1px,transparent 1px);
  color:#fff
}

.contact-band .btn--light {
  background:linear-gradient(135deg,#0069c0,#00a8ed);
  color:#fff
}

.contact-band .btn--ghost {
  border-color:#ffffff8c;
  color:#fff
}

.contact-meta {
  color:#e6f2ffbf
}

.site-footer {
  background:#061a3d
}

.chat-trigger {
  background:linear-gradient(145deg,#0069c0,#009ee8);
  box-shadow:0 14px 36px #0074ff52
}

.inquiry-dialog, .chat-panel {
  --paper: #f4f7f8;
  --paper-strong: #ffffff;
  --ink: #091116;
  --ink-soft: #25323a;
  --muted: #66757e;
  --line: #d5dde1;
  --panel: #e8eef1;
  --blue-dark: #006fae;
  background:#fff;
  color:var(--ink)
}

html.motion-ready [data-reveal] {
  opacity:0;
  filter:blur(7px);
  transform:translateY(30px);
  transition:opacity .78s var(--ease),filter .78s var(--ease),transform .85s var(--ease);
  transition-delay:var(--reveal-delay,0ms);
  will-change:opacity,transform
}

html.motion-ready [data-reveal=card] {
  transform:translateY(38px) scale(.975)
}

html.motion-ready [data-reveal=fade] {
  transform:none
}

html.motion-ready [data-reveal=clip] {
  clip-path:inset(0 0 18% 0);
  transform:translateY(24px) scale(.985)
}

html.motion-ready [data-reveal=section-heading] {
  clip-path:inset(0 0 16% 0);
  transform:translateY(44px)
}

html.motion-ready [data-reveal=feature-panel] {
  clip-path:inset(0 9% 0 0);
  transform:translate(54px) scale(.985)
}

html.motion-ready [data-reveal=inner-hero-heading] {
  opacity:1;
  filter:none;
  transform:none;
  clip-path:none
}

html.motion-ready [data-reveal=inner-hero-heading]>.eyebrow {
  opacity:0;
  transform:translateY(18px);
  transition:opacity .62s var(--ease),transform .68s var(--ease);
  transition-delay:var(--reveal-delay,0ms)
}

html.motion-ready [data-reveal=inner-hero-heading]>h1 {
  opacity:0;
  clip-path:inset(100% 0 0);
  transform:translateY(68px);
  transition:opacity 0s linear,transform .95s cubic-bezier(.16,1,.3,1);
  transition-delay:calc(var(--reveal-delay,0ms) + .11s)
}

html.motion-ready [data-reveal=inner-hero-heading].is-visible>h1 {
  animation:reveal-clip-fade .9s cubic-bezier(.16,1,.3,1) calc(var(--reveal-delay,0ms) + .11s) both
}

html.motion-ready [data-reveal=inner-hero-copy] {
  transform:translate(48px);
  transition-duration:.88s
}

html.motion-ready [data-reveal=hero-title] {
  opacity:1;
  filter:none;
  transform:none;
  clip-path:none
}

html.motion-ready [data-reveal=hero-title]>span, html.motion-ready [data-reveal=hero-title]>em {
  opacity:0;
  clip-path:inset(100% 0 0);
  transform:translateY(72px);
  transition:opacity 0s linear,transform .88s cubic-bezier(.16,1,.3,1);
  transition-delay:var(--reveal-delay,0ms)
}

html.motion-ready [data-reveal=hero-title]>em {
  transition-delay:calc(var(--reveal-delay,0ms) + 115ms)
}

html.motion-ready [data-reveal=hero-title].is-visible>span, html.motion-ready [data-reveal=hero-title].is-visible>em {
  animation:reveal-clip-fade .82s cubic-bezier(.16,1,.3,1) var(--reveal-delay,0ms) both
}

html.motion-ready [data-reveal=hero-title].is-visible>em {
  animation-delay:calc(var(--reveal-delay,0ms) + 115ms)
}

html.motion-ready [data-reveal=hero-detail] {
  transform:translateY(28px);
  transition-duration:.74s
}

html.motion-ready [data-reveal=hero-actions] {
  transform:translateY(24px) scale(.97);
  transition-duration:.72s
}

html.motion-ready [data-reveal].is-visible {
  opacity:1;
  filter:blur(0);
  transform:none
}

html.motion-ready [data-reveal=clip].is-visible, html.motion-ready [data-reveal=section-heading].is-visible {
  animation:reveal-clip-up .9s var(--ease) var(--reveal-delay,0ms) both
}

html.motion-ready [data-reveal=feature-panel].is-visible {
  animation:reveal-clip-left .9s var(--ease) var(--reveal-delay,0ms) both
}

@keyframes reveal-clip-up {
  0% {
    opacity:0;
    filter:blur(7px);
    clip-path:inset(0 0 16% 0);
    transform:translateY(30px)
  }
  to {
    opacity:1;
    filter:blur(0);
    clip-path:inset(-2% -2% -15% -2%);
    transform:none
  }
}

@keyframes reveal-clip-fade {
  0% {
    opacity:0;
    clip-path:inset(100% 0 0);
    transform:translateY(68px)
  }
  to {
    opacity:1;
    clip-path:inset(-2% -2% -15% -2%);
    transform:none
  }
}

@keyframes reveal-clip-left {
  0% {
    opacity:0;
    filter:blur(7px);
    clip-path:inset(0 9% 0 0);
    transform:translate(54px) scale(.985)
  }
  to {
    opacity:1;
    filter:blur(0);
    clip-path:inset(-2% -2% -15% -2%);
    transform:none
  }
}

[data-count-to] {
  display:inline-block;
  min-width:1.15ch;
  font-variant-numeric:tabular-nums;
  transform:scale(var(--counter-scale,1));
  transform-origin:left bottom;
  will-change:transform
}

.motion-tilt {
  --media-rotate-x: 0deg;
  --media-rotate-y: 0deg;
  --media-shift-x: 0px;
  --media-shift-y: 0px;
  --glow-x: 50%;
  --glow-y: 50%;
  position:relative;
  isolation:isolate
}

.motion-tilt:after {
  content:"";
  position:absolute;
  z-index:4;
  inset:0;
  pointer-events:none;
  opacity:0;
  background:radial-gradient(circle at var(--glow-x) var(--glow-y),rgba(114,210,255,.17),transparent 34%);
  transition:opacity .28s var(--ease)
}

.motion-tilt:hover:after {
  opacity:1
}

.motion-tilt .motion-media {
  transform:perspective(1100px) rotateX(var(--media-rotate-x)) rotateY(var(--media-rotate-y));
  transform-style:preserve-3d;
  transition:transform .18s ease-out
}

.motion-tilt .motion-media img {
  transform:translate3d(var(--media-shift-x),var(--media-shift-y),22px) scale(1);
  transition:transform .2s ease-out
}

.motion-tilt:hover .motion-media img {
  transform:translate3d(var(--media-shift-x),var(--media-shift-y),28px) scale(1.055)
}

html.motion-ready [data-reveal].is-visible.motion-tilt:hover {
  transform:translateY(-7px)
}

.btn-arrow:after {
  transition:transform .28s var(--ease)
}

.btn-arrow:hover:after {
  transform:translate(3px,-3px)
}

.btn:active {
  transform:scale(.97)
}

@media(hover:hover) {
.stack-card:hover {
    transform:translateY(-5px);
    background:#ffffff0e
}
}

@keyframes grid-drift {
  to {
    transform:translate3d(54px,54px,0)
  }
}

@keyframes brand-background-arrive {
  0% {
    opacity:.56;
    transform:scale(1.12) translate3d(1.5%,14px,0)
  }
  to {
    opacity:1;
    transform:scale(1.04) translate3d(0,var(--hero-scroll),0)
  }
}

@keyframes page-code-arrive {
  0% {
    opacity:0;
    transform:translate3d(5%,12%,0) scale(1.08)
  }
  to {
    opacity:1;
    transform:none
  }
}

@keyframes infrastructure-grid-drift {
  to {
    background-position:64px 64px
  }
}

@keyframes control-scan {
  0%,15% {
    transform:translateY(0);
    opacity:0
  }
  24% {
    opacity:.8
  }
  72% {
    opacity:.65
  }
  86%,to {
    transform:translateY(535%);
    opacity:0
  }
}

@keyframes status-pulse {
  0%,72%,to {
    box-shadow:0 0 0 5px #baff3f1f
  }
  82% {
    box-shadow:0 0 0 11px #baff3f00
  }
}

@keyframes product-grid {
  to {
    background-position:32px 32px
  }
}

@keyframes dialog-enter {
  0% {
    opacity:0;
    transform:translateY(20px) scale(.985)
  }
  to {
    opacity:1;
    transform:none
  }
}

@keyframes backdrop-enter {
  0% {
    opacity:0
  }
  to {
    opacity:1
  }
}

@keyframes panel-enter {
  0% {
    opacity:0;
    transform:translateY(14px)
  }
  to {
    opacity:1;
    transform:none
  }
}

@keyframes chat-cursor {
  0%,48% {
    opacity:1
  }
  49%,to {
    opacity:0
  }
}

@keyframes partner-scroll {
  to {
    transform:translate(-50%)
  }
}

@media(max-width:1080px) {
.product-hero-grid {
    grid-template-columns:1fr
}

  
.hero {
    min-height:auto
}

  
.brand-hero {
    min-height:max(760px,100svh)
}

  
.brand-hero-grid {
    grid-template-columns:1fr
}

  
.stack-grid {
    grid-template-columns:repeat(2,1fr)
}

  
.stack-card:nth-child(2) {
    border-right:0
}

  
.stack-card:nth-child(-n+2) {
    border-bottom:1px solid var(--line-dark)
}

  
.tier-grid {
    grid-template-columns:1fr
}

  
.tier-card {
    min-height:590px
}

  
.tier-card h3 {
    margin-top:42px
}

  
.infrastructure-head, .infrastructure-grid {
    grid-template-columns:1fr
}

  
.infrastructure-card {
    min-height:430px
}

  
.home-summary-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
}

  
.advantage-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
}

  
.advantage-grid article:nth-child(2) {
    border-right:0
}

  
.advantage-grid article:nth-child(-n+2) {
    border-bottom:1px solid var(--line)
}

  
.catalog-grid {
    grid-template-columns:repeat(2,1fr)
}

  
.footer-grid {
    grid-template-columns:repeat(2,1fr)
}
}

@media(max-width:820px) {
:root {
    --nav-h: 68px
}

  
.nav-inner {
    gap:10px
}

  
.menu-button {
    display:flex
}

  
.nav-account {
    width:40px;
    min-height:40px;
    padding:0
}

  
.nav-account span {
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0 0 0 0);
    clip-path:inset(50%);
    white-space:nowrap
}

  
.catalog-toolbar {
    position:static;
    background:transparent;
    backdrop-filter:none
}

  
.nav-links {
    position:fixed;
    inset:var(--nav-h) 0 auto;
    height:calc(100svh - var(--nav-h));
    display:none;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    padding:24px var(--pad) 48px;
    overflow-y:auto;
    background:var(--paper);
    border-top:1px solid var(--line)
}

  
.menu-open .nav-links {
    display:flex
}

  
.menu-open .nav-links>* {
    animation:menu-item-enter .38s var(--ease) both
}

  
.menu-open .nav-links>*:nth-child(2) {
    animation-delay:45ms
}

  
.menu-open .nav-links>*:nth-child(3) {
    animation-delay:90ms
}

  
.menu-open .nav-links>*:nth-child(4) {
    animation-delay:135ms
}

  
.nav-links>a {
    display:block;
    flex:0 0 auto;
    padding:18px 0;
    font-size:1.2rem;
    border-bottom:1px solid var(--line)
}

  
.nav-product-head>a {
    display:block;
    flex:1;
    padding:18px 0;
    font-size:1.2rem;
    border-bottom:1px solid var(--line)
}

  
.nav-secondary-head>a {
    display:block;
    flex:1;
    padding:18px 0;
    font-size:1.2rem;
    border-bottom:0
}

  
.nav-links>a:after, .nav-product-head>a:after, .nav-secondary-head>a:after {
    bottom:13px
}

  
.nav-product {
    display:block;
    border-bottom:1px solid var(--line)
}

  
.nav-product-head>a {
    border-bottom:0
}

  
.nav-product-toggle {
    width:48px;
    height:48px;
    border-left:1px solid var(--line)
}

  
.nav-product-menu {
    position:static;
    display:none;
    grid-template-columns:1fr;
    padding:0 0 22px;
    border:0;
    box-shadow:none;
    background:transparent;
    opacity:1;
    visibility:visible;
    transform:none
}

  
.nav-product:hover .nav-product-menu, .nav-product:focus-within .nav-product-menu {
    display:none
}

  
.nav-product.is-open .nav-product-menu {
    display:grid
}

  
.nav-secondary {
    display:block;
    border-bottom:1px solid var(--line)
}

  
.nav-secondary-head {
    display:flex
}

  
.nav-secondary-toggle {
    width:48px;
    height:48px;
    flex:none;
    border-left:1px solid var(--line)
}

  
.nav-secondary-menu {
    position:static;
    display:none;
    grid-template-columns:1fr;
    gap:0;
    width:auto;
    padding:0 0 18px;
    border:0;
    box-shadow:none;
    background:transparent;
    opacity:1;
    visibility:visible;
    transform:none
}

  
.nav-secondary:hover .nav-secondary-menu, .nav-secondary:focus-within .nav-secondary-menu {
    display:none
}

  
.nav-secondary.is-open .nav-secondary-menu {
    display:grid
}

  
.nav-secondary-overview {
    display:none
}

  
.nav-secondary-grid {
    grid-template-columns:1fr;
    gap:0
}

  
.nav-secondary-grid>a {
    padding:11px 0
}

  
.nav-product-overview {
    display:none
}

  
.nav-product-groups {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px 28px
}

  
.nav-product-group a {
    padding:7px 0
}

  
.brand-hero {
    min-height:860px;
    background-position:62% center
}

  
.brand-hero:after {
    background:linear-gradient(90deg,#f4f8fcf5,#e9f2fcb3),linear-gradient(180deg,transparent 42%,rgba(232,241,252,.8))
}

  
.brand-hero-grid {
    min-height:720px;
    grid-template-columns:1fr;
    align-content:center;
    gap:42px
}

  
.brand-hero .display {
    white-space:normal
}

  
.brand-hero .display em {
    display:block;
    margin-left:0
}

  
.brand-hero .display {
    margin-top:52px
}

  
.hero-kicker {
    margin-top:26px
}

  
.display {
    font-size:clamp(3rem,14vw,5.4rem)
}

  
.section-head {
    display:grid;
    grid-template-columns:1fr;
    align-items:start
}

  
.page-hero-grid, .spec-layout, .article-hero-grid, .article-layout {
    grid-template-columns:1fr
}

  
.article-aside {
    position:static
}

  
.company-grid, .home-summary-grid {
    grid-template-columns:1fr
}

  
.company-intro {
    position:static
}

  
.agent-layout {
    grid-template-columns:1fr
}

  
.agent-intro {
    position:static
}

  
.spec-sticky {
    position:static
}

  
.spec-item {
    grid-template-columns:150px 1fr
}
}

@media(max-width:620px) {
.section {
    padding-block:70px
}

  
.hero {
    padding-top:calc(var(--nav-h) + 48px)
}

  
.brand-hero {
    min-height:800px;
    padding-bottom:46px;
    background-position:66% center
}

  
.brand-hero-grid {
    min-height:680px
}

  
.hero-kicker {
    margin-top:24px;
    font-size:1.05rem;
    letter-spacing:.05em
}

  
.brand-hero .display {
    font-size:clamp(3.05rem,16vw,4.7rem)
}

  
html[lang=en] .brand-hero .display span, html[lang=en] .brand-hero .display em {
    white-space:normal
}

  
.brand-hero .lead {
    font-size:1rem
}

  
.stack-grid, .catalog-grid, .news-list, .footer-grid {
    grid-template-columns:1fr
}

  
.tier-card {
    min-height:610px
}

  
.tier-grid--compact .tier-card {
    min-height:600px
}

  
.tier-index {
    font-size:6.5rem
}

  
.agent-capabilities article {
    min-height:240px;
    padding-right:64px
}

  
.agent-capabilities article:after {
    font-size:4.2rem
}

  
.advantage-grid {
    grid-template-columns:1fr
}

  
.advantage-grid article {
    min-height:250px;
    border-right:0;
    border-bottom:1px solid var(--line)
}

  
.advantage-grid article:nth-child(3) {
    border-bottom:1px solid var(--line)
}

  
.advantage-grid article:last-child {
    border-bottom:0
}

  
.advantage-grid h3 {
    margin-top:48px
}

  
.stack-card {
    min-height:330px;
    border-right:0;
    border-bottom:1px solid var(--line-dark)
}

  
.stack-card:nth-child(3) {
    border-bottom:1px solid var(--line-dark)
}

  
.infrastructure-total {
    grid-template-columns:112px 1fr;
    min-height:150px;
    gap:18px
}

  
.infrastructure-total strong {
    font-size:5.8rem
}

  
.infrastructure-card {
    min-height:0;
    grid-template-columns:1fr
}

  
.infrastructure-card--mainboard {
    grid-column:auto
}

  
.infrastructure-card figure {
    min-height:260px;
    grid-row:1
}

  
.infrastructure-card img {
    height:210px
}

  
.infrastructure-card--mainboard .infrastructure-mainboard-pair img {
    height:180px
}

  
.infrastructure-card h3 {
    margin-top:34px
}

  
.article-nav {
    grid-template-columns:1fr
}

  
.article-nav a+a {
    border-left:0;
    border-top:1px solid var(--line);
    text-align:left
}

  
.partner-logo-card {
    width:180px;
    height:94px;
    padding:18px
}

  
.partner-logo-card img {
    max-height:42px
}

  
.selector {
    grid-template-columns:1fr
}

  
.spec-item {
    grid-template-columns:1fr;
    gap:8px
}

  
.form-grid {
    grid-template-columns:1fr
}

  
.field--wide {
    grid-column:auto
}

  
.inquiry-form, .dialog-head {
    padding:22px
}

  
.page-hero h1 {
    max-width:11ch;
    font-size:clamp(2.7rem,12vw,4rem);
    line-height:1;
    letter-spacing:-.045em
}

  
.product-shot {
    min-height:320px
}

  
.product-shot img {
    height:230px
}

  
.catalog-image img {
    width:94%;
    height:150px
}

  
.nav-product-groups {
    grid-template-columns:1fr
}

  
.company-principles article {
    grid-template-columns:56px 1fr;
    gap:16px
}

  
.chat-trigger {
    right:16px;
    bottom:max(16px,env(safe-area-inset-bottom));
    width:52px;
    height:52px
}

  
.chat-trigger.is-raised {
    bottom:112px
}

  
.chat-panel {
    inset:auto 0 0;
    width:100%;
    height:min(var(--chat-height,82svh),82svh,calc(100svh - 16px));
    max-height:calc(100svh - 16px);
    border-width:1px 0 0
}

  
.chat-resize--w, .chat-resize--nw {
    display:none
}

  
.chat-resize--n {
    left:0;
    height:20px
}

  
.chat-resize--n:after {
    content:"";
    position:absolute;
    top:8px;
    left:50%;
    width:44px;
    height:4px;
    transform:translate(-50%);
    background:#ffffff61
}

  
.chat-head {
    min-height:74px;
    padding:13px 14px
}

  
.chat-thread {
    padding:18px 14px
}

  
.chat-message {
    max-width:92%
}

  
.chat-suggestions {
    padding:0 14px 12px
}

  
.chat-compose {
    padding:12px 12px 8px
}

  
.chat-status {
    padding:0 12px calc(9px + env(safe-area-inset-bottom))
}
}

@media(max-width:1050px) {
.catalog-toolbar {
    grid-template-columns:repeat(2,minmax(0,1fr))
}

  
.catalog-search {
    grid-column:1 / -1
}

  
.server-feature-grid, .workstation-grid, .mainboard-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
}
}

@media(max-width:820px) {
.server-catalog-summary, .catalog-toolbar {
    grid-template-columns:1fr
}

  
.catalog-search {
    grid-column:auto
}

  
.server-catalog-actions {
    justify-content:flex-start
}

  
.server-feature-grid {
    grid-template-columns:1fr
}

  
.server-feature-card {
    min-height:auto
}

  
.server-feature-card>span {
    margin-bottom:32px
}

  
.server-product-nav {
    margin-inline:var(--pad)
}
}

@media(max-width:620px) {
.server-catalog-summary>div:first-child {
    grid-template-columns:1fr
}

  
.server-catalog-summary p {
    grid-column:auto
}

  
.server-catalog-number {
    grid-row:auto;
    margin-bottom:12px
}

  
.catalog-result-row {
    flex-direction:column;
    gap:5px
}

  
.catalog-card {
    min-height:470px
}

  
.catalog-content p {
    min-height:auto
}

  
.server-product-nav {
    grid-template-columns:1fr
}

  
.server-product-nav a+a {
    border-left:0;
    border-top:1px solid var(--line);
    text-align:left
}

  
.workstation-toolbar {
    align-items:flex-start;
    flex-direction:column
}

  
.workstation-grid {
    grid-template-columns:1fr
}

  
.workstation-card-media {
    height:250px
}

  
.workstation-card-media img {
    height:205px
}

  
.workstation-card-copy>p {
    min-height:auto
}

  
.mainboard-toolbar {
    align-items:flex-start;
    flex-direction:column
}

  
.mainboard-grid {
    grid-template-columns:1fr
}

  
.mainboard-card-media {
    height:230px
}

  
.mainboard-card-media img {
    height:190px
}

  
.mainboard-card-copy>p {
    min-height:auto
}
}

@media(prefers-reduced-motion:reduce) {
html {
    scroll-behavior:auto
}

  
*, *:before, *:after {
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    transition-duration:.001ms!important
}

  
html.motion-ready [data-reveal] {
    opacity:1;
    filter:none;
    transform:none;
    clip-path:none
}

  
html.motion-ready [data-reveal=hero-title]>span, html.motion-ready [data-reveal=hero-title]>em {
    opacity:1;
    clip-path:none;
    transform:none
}

  
html.motion-ready [data-reveal=inner-hero-heading]>.eyebrow, html.motion-ready [data-reveal=inner-hero-heading]>h1 {
    opacity:1;
    clip-path:none;
    transform:none
}

  
.partner-track {
    animation:none
}
}

@keyframes menu-item-enter {
  0% {
    opacity:0;
    transform:translateY(-8px)
  }
  to {
    opacity:1;
    transform:none
  }
}

.about-card-carousel {
  position:relative;
  margin-top:clamp(36px,5vw,64px);
  outline:none
}

.about-card-carousel [data-carousel-track] {
  position:relative;
  display:block;
  height:590px;
  overflow:clip;
  border:0;
  perspective:1500px
}

.about-card-carousel--engineering [data-carousel-track] {
  height:660px
}

.about-card-carousel [data-carousel-track]>article {
  width:min(760px,68%);
  height:calc(100% - 24px);
  position:absolute;
  inset:0 auto auto 50%;
  overflow:hidden;
  padding:0;
  border:1px solid rgba(104,174,240,.32);
  background:linear-gradient(180deg,#0b1f4ffa,#051031fc);
  box-shadow:0 24px 70px #00041c5c;
  opacity:0;
  pointer-events:none;
  transform:translate(-50%) scale(.72);
  transform-origin:center center;
  transition:transform .7s cubic-bezier(.2,.72,.2,1),opacity .5s ease,border-color .5s ease,filter .5s ease
}

.about-card-carousel [data-carousel-track]>article[data-carousel-position=active] {
  z-index:3;
  opacity:1;
  pointer-events:auto;
  transform:translate(-50%) scale(1) rotateY(0);
  border-color:#1fc2ffb8
}

.about-card-carousel [data-carousel-track]>article[data-carousel-position=previous] {
  z-index:1;
  opacity:.46;
  transform:translate(-130%) scale(.84) rotateY(8deg);
  filter:saturate(.62) brightness(.72)
}

.about-card-carousel [data-carousel-track]>article[data-carousel-position=next] {
  z-index:2;
  opacity:.58;
  transform:translate(30%) scale(.88) rotateY(-8deg);
  filter:saturate(.72) brightness(.8)
}

.about-card-carousel [data-carousel-track]>article[data-carousel-position=hidden] {
  z-index:0;
  opacity:0;
  transform:translate(-50%) scale(.7)
}

.about-card-media {
  height:58%;
  position:relative;
  overflow:hidden;
  background:#03102e
}

.about-card-media:after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 52%,rgba(4,14,44,.92));
  pointer-events:none
}

.about-card-media img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform 6s cubic-bezier(.2,.7,.2,1)
}

.about-card-carousel [data-carousel-position=active] .about-card-media img {
  transform:scale(1.055)
}

.about-card-copy {
  min-height:42%;
  position:relative;
  z-index:1;
  padding:clamp(24px,3vw,38px)
}

.about-card-carousel .advantage-grid article {
  min-height:0;
  border:1px solid rgba(104,174,240,.32)
}

.about-card-carousel .advantage-grid article:last-child {
  border:1px solid rgba(104,174,240,.32)
}

.about-card-carousel .advantage-grid .about-card-copy>span {
  position:absolute;
  right:30px;
  top:24px;
  background:#00a9ff21
}

.about-card-carousel .advantage-grid h3 {
  margin-top:0;
  padding-right:70px;
  font-size:clamp(1.7rem,2.6vw,2.65rem)
}

.about-card-carousel .advantage-grid p {
  max-width:54ch;
  color:#aebbd2
}

.about-card-carousel .stack-card {
  min-height:0;
  border:1px solid rgba(104,174,240,.32)
}

.about-card-carousel .stack-card:before {
  z-index:2;
  top:20px;
  right:26px;
  font-size:5rem;
  color:#ffffff26;
  text-shadow:0 2px 24px rgba(0,0,0,.4)
}

.about-card-carousel .stack-card .about-card-copy {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(190px,.8fr);
  column-gap:34px;
  align-content:start
}

.about-card-carousel .stack-card .status {
  grid-column:1 / -1;
  margin:0 0 22px
}

.about-card-carousel .stack-card h3 {
  grid-column:1;
  margin:0 0 14px
}

.about-card-carousel .stack-card p {
  grid-column:1
}

.about-card-carousel .stack-card ul {
  grid-column:2;
  grid-row:2 / span 2;
  margin-top:0;
  align-self:start
}

.about-carousel-controls {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  margin-top:10px
}

.about-carousel-controls>button {
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border:1px solid rgba(77,166,244,.42);
  border-radius:50%;
  background:#051337d1;
  color:#e8f6ff;
  font-size:1.05rem;
  cursor:pointer;
  transition:border-color .25s,background .25s,transform .25s
}

.about-carousel-controls>button:hover {
  border-color:var(--brand-cyan);
  background:#0089da2e;
  transform:translateY(-2px)
}

.about-carousel-dots {
  display:flex;
  gap:9px
}

.about-carousel-dots button {
  width:30px;
  height:4px;
  overflow:hidden;
  border:0;
  background:#75aede47;
  cursor:pointer;
  transition:width .35s,background .35s
}

.about-carousel-dots button.is-active {
  width:54px;
  background:var(--brand-cyan)
}

@media(max-width:760px) {
.about-card-carousel [data-carousel-track] {
    height:540px
}

  
.about-card-carousel--engineering [data-carousel-track] {
    height:650px
}

  
.about-card-carousel [data-carousel-track]>article {
    width:88%
}

  
.about-card-carousel [data-carousel-track]>article[data-carousel-position=previous] {
    transform:translate(-126%) scale(.82) rotateY(6deg)
}

  
.about-card-carousel [data-carousel-track]>article[data-carousel-position=next] {
    transform:translate(26%) scale(.86) rotateY(-6deg)
}

  
.about-card-media {
    height:52%
}

  
.about-card-copy {
    min-height:48%;
    padding:24px
}

  
.about-card-carousel .stack-card .about-card-copy {
    display:block
}

  
.about-card-carousel .stack-card .status {
    margin-bottom:18px
}

  
.about-card-carousel .stack-card ul {
    margin-top:20px
}

  
.about-carousel-controls {
    margin-top:4px
}
}

.company-strength {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  margin-top:clamp(76px,9vw,132px);
  border-block:1px solid var(--line);
  background:radial-gradient(circle at 80% 10%,rgba(0,105,192,.07),transparent 34%),linear-gradient(180deg,#fff,#f4f8fc);
  color:var(--ink)
}

.company-strength:before {
  content:"PROVEN AT SCALE";
  position:absolute;
  right:-2vw;
  top:-3vw;
  color:#0a183008;
  font-size:clamp(5rem,13vw,13rem);
  font-weight:900;
  line-height:.8;
  letter-spacing:-.075em;
  white-space:nowrap;
  pointer-events:none
}

.company-strength:after {
  content:"";
  position:absolute;
  inset:0;
  opacity:.5;
  background-image:linear-gradient(rgba(10,40,90,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(10,40,90,.05) 1px,transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(90deg,transparent,black 34%,black 76%,transparent);
  pointer-events:none
}

.company-strength-inner {
  position:relative;
  z-index:1;
  padding-block:clamp(72px,8vw,116px) clamp(100px,10vw,150px)
}

.company-strength-head {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);
  gap:clamp(42px,8vw,120px);
  align-items:end
}

.company-strength-head h2 {
  max-width:12ch;
  margin-top:18px;
  font-size:clamp(2.8rem,5.8vw,6.1rem);
  line-height:.94;
  letter-spacing:-.065em
}

.company-strength-head h2 em {
  color:var(--blue)
}

.company-strength-head>p {
  max-width:48ch;
  padding:24px 0 8px;
  border-top:1px solid var(--line);
  color:var(--muted);
  font-size:clamp(.92rem,1.15vw,1.08rem)
}

.strength-journey {
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(14px,1.8vw,26px);
  margin-top:clamp(62px,8vw,104px)
}

.strength-journey:before {
  content:"";
  position:absolute;
  z-index:0;
  left:3%;
  right:3%;
  top:48%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(0,105,192,.4) 30%,rgba(0,105,192,.4) 70%,transparent);
  transform:rotate(-3.2deg)
}

.strength-card {
  min-height:330px;
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  padding:clamp(25px,2.5vw,36px);
  border:1px solid var(--line);
  background:#fff;
  box-shadow:0 24px 52px #0914320f;
  transition:transform .35s var(--ease),border-color .35s,box-shadow .35s
}

.strength-card:nth-child(2) {
  margin-top:58px
}

.strength-card:nth-child(3) {
  margin-top:14px
}

.strength-card:nth-child(4) {
  margin-top:72px
}

.strength-card:before {
  content:"";
  width:9px;
  height:9px;
  position:absolute;
  left:28px;
  top:-5px;
  border-radius:50%;
  background:var(--blue);
  box-shadow:0 0 0 5px rgba(0,105,192,.12)
}

.strength-card:hover {
  transform:translateY(-9px);
  border-color:var(--blue-dark);
  box-shadow:0 30px 72px #09143217
}

.strength-stage {
  color:var(--blue-dark);
  font-size:.61rem;
  font-weight:820;
  letter-spacing:.14em;
  text-transform:uppercase
}

.strength-card strong {
  display:block;
  max-width:100%;
  margin-top:auto;
  color:var(--blue);
  font-size:clamp(3.6rem,5.2vw,6.2rem);
  line-height:.82;
  letter-spacing:-.075em;
  transform-origin:left bottom;
  font-variant-numeric:tabular-nums
}

.counter-visual {
  max-width:100%;
  display:inline-flex;
  align-items:flex-end;
  height:.9em;
  overflow:hidden;
  vertical-align:bottom
}

.counter-digit-window {
  width:.57em;
  height:.9em;
  display:block;
  overflow:hidden
}

.counter-digit-strip {
  display:flex;
  flex-direction:column;
  transform:translateY(0);
  will-change:transform
}

.counter-digit-strip>span {
  height:.9em;
  flex:0 0 .9em;
  display:grid;
  align-items:end
}

.counter-affix, .counter-separator {
  height:.9em;
  display:inline-grid;
  align-items:end
}

html[lang=en] .strength-card [data-count-prefix] {
  font-size:clamp(3.45rem,4.5vw,5rem)
}

html[lang=en] .strength-card [data-count-prefix] .counter-visual {
  width:100%;
  height:1.24em;
  flex-wrap:wrap;
  align-content:flex-end;
  overflow:visible
}

html[lang=en] .strength-card [data-count-prefix] .counter-affix:first-child {
  height:auto;
  flex:0 0 100%;
  align-items:center;
  padding-bottom:.16em;
  color:#81dcff;
  font-size:.27em;
  font-weight:820;
  line-height:1;
  letter-spacing:.12em;
  text-transform:uppercase;
  white-space:nowrap
}

.strength-card strong.is-roll-reset .counter-digit-strip {
  transition:none;
  transform:translateY(0);
  filter:blur(0)
}

.strength-card strong.is-rolling .counter-digit-strip {
  transform:translateY(calc(var(--roll-index) * -.9em));
  transition:transform 1.45s cubic-bezier(.12,.72,.18,1);
  transition-delay:var(--roll-delay,0ms)
}

.strength-card strong.is-rolling .counter-visual {
  animation:counter-focus 1.5s ease both
}

.strength-card h3 {
  margin-top:28px;
  color:var(--ink);
  font-size:clamp(1.2rem,1.7vw,1.65rem)
}

.strength-card p {
  margin-top:9px;
  color:var(--muted);
  font-size:.76rem
}

@media(max-width:900px) {
.company-strength-head {
    grid-template-columns:1fr
}

  
.company-strength-head>p {
    max-width:62ch
}

  
.strength-journey {
    grid-template-columns:repeat(2,minmax(0,1fr))
}

  
.strength-card:nth-child(2), .strength-card:nth-child(4) {
    margin-top:36px
}

  
.strength-card:nth-child(3) {
    margin-top:0
}
}

@media(max-width:620px) {
.company-strength-inner {
    padding-block:72px 86px
}

  
.company-strength-head h2 {
    font-size:clamp(2.7rem,14vw,4.2rem)
}

  
.strength-journey {
    grid-template-columns:1fr;
    gap:16px;
    padding-left:24px
}

  
.strength-journey:before {
    width:1px;
    height:auto;
    inset:0 auto 0 5px;
    transform:none;
    background:linear-gradient(transparent,#00c8ff 12%,#7568ff 88%,transparent)
}

  
.strength-card, .strength-card:nth-child(2), .strength-card:nth-child(3), .strength-card:nth-child(4) {
    min-height:270px;
    margin-top:0
}

  
.strength-card:before {
    left:-24px;
    top:32px
}

  
.strength-card strong {
    font-size:clamp(4rem,19vw,5.8rem)
}
}

@keyframes counter-focus {
  0% {
    filter:blur(3px);
    opacity:.58;
    transform:translateY(12px)
  }
  24% {
    opacity:1
  }
  to {
    filter:blur(0);
    opacity:1;
    transform:none
  }
}

.language-switcher {
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin-left:auto;
  color:#0a1e3c8c;
  font:600 12px/1 Inter,ui-sans-serif,system-ui,sans-serif;
  letter-spacing:.04em;
  white-space:nowrap
}

.language-switcher button {
  min-width:25px;
  padding:8px 2px;
  border:0;
  border-bottom:1px solid transparent;
  background:transparent;
  color:#0a1e3c9e;
  font:inherit;
  cursor:pointer;
  transition:color .2s ease,border-color .2s ease
}

.language-switcher button:hover, .language-switcher button:focus-visible, .language-switcher button.is-active {
  color:#0a1830;
  border-bottom-color:#0d7fd4
}

.language-switcher[aria-busy=true] {
  opacity:.55;
  pointer-events:none
}

@media(max-width:980px) {
.language-switcher {
    margin-left:auto
}
}

.download-page {
  min-height:100vh;
  padding-bottom:110px;
  background:#f5f8fc;
  color:#08152d
}

.download-hero {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:500px;
  padding:calc(var(--nav-h) + 95px) 0 82px;
  background:radial-gradient(circle at 82% 30%,rgba(41,110,220,.14),transparent 30%),linear-gradient(135deg,#fff,#e9f2fc 70%,#dceafa);
  color:var(--ink)
}

.download-hero-inner {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 250px;
  align-items:end;
  gap:110px
}

.download-hero .eyebrow {
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--blue-dark)
}

.download-hero h1 {
  max-width:800px;
  margin:28px 0 24px;
  color:var(--ink);
  font-size:clamp(3.3rem,6.4vw,6.5rem);
  line-height:.95;
  letter-spacing:-.07em
}

.download-hero h1 em {
  color:var(--accent);
  font-style:normal
}

.download-hero-inner>div:first-child>p {
  max-width:700px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.8
}

.download-hero-status {
  padding:25px;
  border:1px solid var(--line);
  background:#fff;
  box-shadow:0 14px 36px rgba(9,17,22,.07)
}

.download-hero-status>span {
  color:var(--blue-dark);
  font-size:.6rem;
  font-weight:800;
  letter-spacing:.18em
}

.download-hero-status strong {
  display:block;
  margin:12px 0 0;
  color:var(--blue);
  font-size:4.4rem;
  line-height:1;
  letter-spacing:-.07em
}

.download-hero-status p {
  margin-top:5px;
  color:var(--muted);
  font-size:.72rem
}

.download-hero-status small {
  display:flex;
  align-items:center;
  gap:7px;
  margin-top:24px;
  padding-top:14px;
  border-top:1px solid var(--line);
  color:var(--muted);
  font-size:.6rem
}

.download-hero-status i {
  width:6px;
  height:6px;
  border-radius:50%;
  background:#46e2be;
  box-shadow:0 0 10px #46e2be
}

.download-categories {
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:-44px;
  box-shadow:0 24px 70px #1230581f
}

.download-categories button {
  min-height:176px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:20px;
  padding:28px 30px;
  border:0;
  border-right:1px solid #d7e2ee;
  background:#fff;
  color:#0b1c38;
  text-align:left;
  cursor:pointer;
  transition:transform .25s var(--ease),background .25s,color .25s
}

.download-categories button:last-child {
  border-right:0
}

.download-categories button:hover, .download-categories button.is-active {
  z-index:1;
  transform:translateY(-7px);
  background:linear-gradient(145deg,#072c68,#0c66d6);
  color:#fff;
  box-shadow:0 18px 48px #05409945
}

.download-category-index {
  align-self:start;
  color:#81a0bf;
  font-size:.58rem;
  font-weight:800;
  letter-spacing:.12em
}

.download-categories button>svg {
  color:#079fda
}

.download-categories button.is-active>svg, .download-categories button:hover>svg {
  color:#57ddff
}

.download-categories strong {
  display:block;
  font-size:1rem
}

.download-categories p {
  margin-top:8px;
  color:#6d8097;
  font-size:.68rem;
  line-height:1.6
}

.download-categories button:hover p, .download-categories button.is-active p {
  color:#a9c9eb
}

.download-categories button>b {
  color:#c6d5e4;
  font-size:2rem;
  font-weight:500
}

.download-library {
  padding-top:100px;
  scroll-margin-top:calc(var(--nav-h) + 16px)
}

.download-library-head {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:30px;
  margin-bottom:30px
}

.download-library-head h2 {
  margin-top:13px;
  color:#07162f;
  font-size:clamp(2rem,3.4vw,3.6rem);
  letter-spacing:-.055em
}

.download-library-head>p {
  padding-bottom:8px;
  color:#70839a;
  font-size:.72rem
}

.download-toolbar {
  display:grid;
  grid-template-columns:minmax(280px,1fr) 190px 190px;
  gap:10px;
  padding:14px;
  border:1px solid #dce6f0;
  background:#fff;
  box-shadow:0 12px 40px #12365c0f
}

.download-toolbar label {
  display:flex;
  align-items:center;
  gap:10px;
  padding:0 14px;
  border:1px solid #d5e0eb;
  background:#f6f9fc;
  color:#7890a8
}

.download-toolbar input, .download-toolbar select {
  width:100%;
  height:46px;
  border:1px solid #d5e0eb;
  outline:0;
  background:#f6f9fc;
  color:#19304d;
  font-size:.73rem
}

.download-toolbar input {
  height:auto;
  padding:0;
  border:0;
  background:transparent
}

.download-toolbar select {
  padding:0 12px
}

.download-list {
  display:grid;
  gap:8px;
  margin-top:16px
}

.download-card {
  display:grid;
  grid-template-columns:52px minmax(0,1fr) 118px;
  align-items:stretch;
  min-height:0;
  border:1px solid #dce6ef;
  background:#fff;
  box-shadow:0 6px 18px #0e305809;
  transition:border-color .2s,box-shadow .2s,background .2s
}

.download-card:hover {
  border-color:#8ccbec;
  background:#fbfdff;
  box-shadow:0 10px 28px #0e438214
}

.download-card-icon {
  display:grid;
  place-items:center;
  border-right:1px solid #e6eef5;
  background:linear-gradient(180deg,#f7fbfe,#eef5fb);
  color:#139dd2
}

.download-card-main {
  min-width:0;
  display:grid;
  gap:4px;
  padding:12px 16px
}

.download-card-top {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px 12px
}

.download-card h3 {
  margin:0;
  color:#0a1933;
  font-size:1rem;
  line-height:1.25
}

.download-card-meta {
  display:flex;
  flex-wrap:wrap;
  gap:6px
}

.download-card-meta span,
.download-card-meta a {
  padding:3px 7px;
  background:#eef5fb;
  color:#4f6c89;
  font-size:.54rem;
  font-weight:700;
  text-decoration:none
}

.download-card-meta a:hover {
  background:#dcecf8;
  color:#173f62
}

.download-card-main>p {
  overflow:hidden;
  margin:0;
  color:#718197;
  font-size:.68rem;
  line-height:1.45;
  text-overflow:ellipsis;
  white-space:nowrap
}

.download-card-facts {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:4px 14px;
  margin:2px 0 0;
  padding:0;
  list-style:none;
  color:#314861;
  font-size:.64rem
}

.download-card-facts span {
  margin-right:5px;
  color:#93a1b1;
  font-size:.52rem;
  letter-spacing:.04em;
  text-transform:uppercase
}

.download-checksum {
  overflow:hidden;
  color:#9aa8b7;
  font:.55rem ui-monospace,monospace;
  text-overflow:ellipsis;
  white-space:nowrap
}

.download-action {
  display:grid;
  place-content:center;
  justify-items:center;
  gap:3px;
  padding:10px 8px;
  border-left:1px solid #dce6ef;
  color:#067cbd;
  text-align:center;
  text-decoration:none;
  transition:background .2s,color .2s
}

.download-action:hover {
  background:#0879d1;
  color:#fff
}

.download-action span {
  font-size:.72rem;
  font-weight:800
}

.download-action small {
  color:#8ca0b4;
  font-size:.52rem
}

.download-action:hover small {
  color:#b8d7ef
}

.download-pagination {
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:6px;
  margin-top:18px
}

.download-pagination button {
  min-width:36px;
  min-height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  padding:0 11px;
  border:1px solid #d5e0eb;
  background:#fff;
  color:#35516d;
  font-size:.68rem;
  font-weight:700;
  cursor:pointer
}

.download-pagination button:hover:not(:disabled) {
  border-color:#139dd2;
  color:#0877b2
}

.download-pagination button.is-current {
  border-color:#0879d1;
  background:#0879d1;
  color:#fff
}

.download-pagination button:disabled {
  opacity:.4;
  cursor:not-allowed
}

.download-page-gap {
  color:#93a1b1;
  padding:0 4px
}

.download-action--locked {
  color:#5a738d;
  background:#f5f8fb
}

.download-action--locked:hover {
  background:#0b1c38;
  color:#fff
}

.download-gate {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:14px;
  padding:13px 16px;
  border:1px solid #cfe0ef;
  background:#f3f8fc;
  color:#4d6782;
  font-size:.72rem
}

.download-gate a {
  color:#0877b2;
  font-weight:800
}

.download-empty {
  display:grid;
  justify-items:center;
  margin-top:22px;
  padding:85px 25px;
  border:1px solid #dbe6f0;
  background:#fff;
  color:#8ca0b4;
  text-align:center
}

.download-empty svg {
  color:#149ed5
}

.download-empty h3 {
  margin:18px 0 8px;
  color:#182d48;
  font-size:1.2rem
}

.download-empty p {
  max-width:560px;
  font-size:.72rem;
  line-height:1.7
}

.download-empty button {
  margin-top:20px;
  padding:10px 18px;
  border:1px solid #198dcc;
  background:transparent;
  color:#0877b2;
  cursor:pointer
}

@media(max-width:980px) {
.download-hero-inner {
    grid-template-columns:1fr;
    gap:50px
}

  
.download-hero-status {
    width:min(300px,100%)
}

  
.download-categories {
    grid-template-columns:1fr
}

  
.download-categories button {
    min-height:130px;
    border-right:0;
    border-bottom:1px solid #d7e2ee
}

  
.download-toolbar {
    grid-template-columns:1fr 1fr
}

  
.download-toolbar label {
    grid-column:1 / -1;
    min-height:48px
}

  
.download-card {
    grid-template-columns:48px minmax(0,1fr)
}

  
.download-action {
    grid-column:1 / -1;
    grid-auto-flow:column;
    justify-content:center;
    gap:8px;
    padding:10px 14px;
    border-top:1px solid #dce6ef;
    border-left:0
}
}

@media(max-width:640px) {
.download-hero {
    min-height:0;
    padding-top:calc(var(--nav-h) + 70px)
}

  
.download-hero h1 {
    font-size:3.25rem
}

  
.download-categories {
    margin-inline:var(--pad)
}

  
.download-categories button {
    grid-template-columns:auto minmax(0,1fr) auto;
    padding:24px 20px
}

  
.download-library {
    padding-top:70px
}

  
.download-library-head {
    align-items:flex-start;
    flex-direction:column
}

  
.download-toolbar {
    grid-template-columns:1fr
}

  
.download-toolbar label {
    grid-column:auto
}

  
.download-card {
    grid-template-columns:1fr
}

  
.download-card-icon {
    display:none
}

  
.download-card-main {
    padding:12px 14px 10px
}

  
.download-card-facts {
    gap:6px 12px
}

  
.download-action {
    padding:9px 12px
}

  
.download-gate {
    align-items:flex-start;
    flex-direction:column
}
}

/* ---------- Taste refinements ---------- */
/* Taste refinement layer: preserve the existing system while tightening hierarchy. */
:root {
  font-family: "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", Inter, ui-sans-serif, system-ui, sans-serif;
}

/* CTA labels stay textual; direction is communicated by placement and hover state. */
.btn-arrow::after, .text-link::after {
  content: none !important;
}

.text-link:hover::after {
  transform: none;
}

html[lang="zh-CN"] .display {
  letter-spacing: -.052em;
}

html[lang="zh-CN"] .section-title {
  letter-spacing: -.032em;
}

.nav-scroll-sentinel {
  position: absolute;
  top: 12px;
  left: 0;
  width: 1px;
  height: 1px;
  pointer-events: none;
}

@supports (animation-timeline: scroll()) {
.site-nav::after {
    animation: site-scroll-progress linear both;
    animation-timeline: scroll(root block);
}
}

@keyframes site-scroll-progress {
  from { transform: scaleX(0); }
  to { transform: scaleX(1); }
}

.btn:active, .text-link:active {
  transform: translateY(1px) scale(.99);
}

.eyebrow, .label, .home-summary-head span, .tier-head span, .workstation-card-head, .mainboard-card-head, .strength-stage {
  font-size: max(.72rem, 12px);
}

.nav-product-group a small, .nav-secondary-grid > a small, .agent-kicker, .agent-tags span, .agent-summary-tags span {
  font-size: max(.68rem, 11px);
}

.tier-model, .agent-kicker, .agent-tags span, .agent-summary-tags span, .workstation-card-meta span, .workstation-card dt, .workstation-card dd, .mainboard-card dt, .mainboard-card dd, .mainboard-platform, .spec-pills span, .catalog-card-meta span, .catalog-filter-label, .catalog-result-row small {
  font-size: max(.75rem, 12px);
}

.brand-home .section {
  padding-block: clamp(72px, 8vw, 116px);
}

.brand-home .section-head {
  margin-bottom: clamp(36px, 4.5vw, 60px);
}

.brand-hero .hero-actions {
  margin-top: 2px;
}

.home-summary-grid {
  align-items: stretch;
}

.home-summary-card, .home-summary-card:nth-child(2), .home-summary-card:nth-child(3) {
  --summary: var(--blue);
}

.home-summary-card:hover {
  box-shadow: 0 22px 52px rgba(12, 55, 104, .14);
}

.home-summary-head span {
  background: rgba(0, 105, 192, .09);
}

.agent-intro .section-title {
  margin-top: 26px;
}

.agent-summary-panel > h3:first-child {
  margin-top: 0;
}

.infrastructure-card, .infrastructure-card--pcie, .infrastructure-card--general, .infrastructure-card--storage, .infrastructure-card--mainboard {
  --series-accent: var(--blue);
}

.infrastructure-card-head {
  font-size: max(.7rem, 11px);
}

.infrastructure-model small {
  font-size: max(.66rem, 10.5px);
}

.infrastructure-model strong {
  font-size: max(.8rem, 13px);
}

.infrastructure-model span, .infrastructure-link {
  font-size: max(.74rem, 12px);
}

@media (min-width: 1101px) {
.home-summary-grid {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(320px, 1fr));
}

  
.home-summary-card--enterprise {
    grid-column: 1 / span 7;
    grid-row: 1 / span 2;
    min-height: 658px;
    display: flex;
    flex-direction: column;
}

  
.home-summary-card--personal, .home-summary-card--professional {
    grid-column: 8 / -1;
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 150px;
    grid-template-rows: auto auto 1fr auto;
    column-gap: clamp(18px, 2vw, 28px);
}

  
.home-summary-card--personal .home-summary-head, .home-summary-card--professional .home-summary-head {
    grid-column: 1 / -1;
}

  
.home-summary-card--personal figure, .home-summary-card--professional figure {
    grid-column: 2;
    grid-row: 2 / 5;
    align-self: stretch;
    margin: 10px 0 0;
    padding: 0;
    background: none;
}

  
.home-summary-card--personal figure img, .home-summary-card--professional figure img {
    max-height: 154px;
}

  
.home-summary-card--personal h3, .home-summary-card--professional h3 {
    grid-column: 1;
    margin-top: 22px;
    font-size: clamp(1.7rem, 2.2vw, 2.45rem);
}

  
.home-summary-card--personal > p, .home-summary-card--professional > p {
    grid-column: 1;
    margin-top: 12px;
    font-size: .88rem;
    line-height: 1.65;
}

  
.home-summary-card--personal .home-summary-link, .home-summary-card--professional .home-summary-link {
    grid-column: 1;
    margin-top: 16px;
    padding-top: 14px;
}

  
.home-summary-card--enterprise figure {
    height: 260px;
    min-height: 260px;
    flex: 0 0 260px;
    padding-block: 42px 22px;
}

  
.home-summary-card--enterprise figure img {
    max-height: 210px;
}
}

@media (min-width: 821px) and (max-width: 1100px) {
.home-summary-card--enterprise {
    grid-column: 1 / -1;
    min-height: 560px;
}
}

@media (max-width: 820px) {
.brand-home .section {
    padding-block: 64px;
}

  
.brand-hero {
    min-height: 760px;
}

  
.brand-hero-grid {
    min-height: 620px;
}

  
.home-summary-card {
    min-height: 470px;
}

  
.infrastructure-grid {
    display: flex;
    gap: 14px;
    overflow-x: auto;
    margin-inline: calc(var(--pad) * -1);
    padding: 2px var(--pad) 18px;
    scroll-padding-inline: var(--pad);
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

  
.infrastructure-grid::-webkit-scrollbar {
    display: none;
}

  
.infrastructure-card, .infrastructure-card--mainboard {
    flex: 0 0 min(84vw, 430px);
    min-height: 600px;
    grid-template-columns: 1fr;
    scroll-snap-align: start;
}

  
.infrastructure-card figure {
    min-height: 230px;
    padding: 20px;
}

  
.infrastructure-card img {
    height: 190px;
}

  
.infrastructure-card--mainboard .infrastructure-mainboard-pair img {
    height: 150px;
}

  
.infrastructure-copy {
    padding: 26px;
}

  
.infrastructure-card h3 {
    margin-top: 26px;
}
}

body.menu-open .menu-button span:first-child {
  transform: translateY(3.5px) rotate(45deg);
}

body.menu-open .menu-button span:last-child {
  transform: translateY(-3.5px) rotate(-45deg);
}

@media (max-width: 620px) {
.nav-logo .nav-lockup {
    width: clamp(106px, 32vw, 120px);
}

  
.language-switcher button, .nav-account, .menu-button {
    min-height: 44px;
}

  
.nav-account, .menu-button {
    width: 44px;
    min-width: 44px;
    height: 44px;
    padding-inline: 0;
}

  
.brand-hero-grid {
    align-content: start;
    align-items: start;
    padding-top: 52px;
}

  
.brand-hero .display {
    font-size: clamp(3rem, 15vw, 4.35rem);
    line-height: 1.02;
}

  
.brand-hero .lead {
    max-width: 32ch;
}

  
.chat-trigger {
    right: 14px;
    bottom: max(14px, env(safe-area-inset-bottom));
    width: 48px;
    height: 48px;
}

  
.chat-trigger.is-raised {
    bottom: 92px;
}

  
.portfolio-actions .text-link {
    min-height: 44px;
    padding-inline: 4px;
}
}

@media (prefers-reduced-motion: reduce) {
.site-nav::after {
    animation: none;
}
}

/* Keep directory-style navigation legible while preserving the shared glass surface. */
.nav-secondary-menu--directory {
  border-bottom-color: rgba(10, 40, 90, .16);
  background: rgba(248, 251, 255, .72);
  -webkit-backdrop-filter: blur(24px) saturate(135%);
  backdrop-filter: blur(24px) saturate(135%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .76),
    0 28px 70px rgba(9, 20, 50, .16);
}

/* Home closing section: company context and configuration inquiry share one block. */
.contact-band--home-combined {
  padding-block: clamp(58px, 7vw, 92px);
  border-top: 1px solid var(--line);
  background: #edf4fb;
  color: var(--ink);
}

.home-contact-combined {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  border: 1px solid rgba(10, 40, 90, .14);
  background: #fff;
  box-shadow: 0 28px 72px rgba(16, 48, 92, .1);
}

.home-contact-about, .home-contact-inquiry {
  min-width: 0;
  display: grid;
  align-content: center;
  justify-items: start;
  padding: clamp(38px, 5vw, 72px);
}

.home-contact-about h2, .home-contact-inquiry h2 {
  margin-top: 20px;
  font-size: clamp(2.2rem, 4vw, 4.8rem);
  line-height: 1;
  letter-spacing: -.055em;
}

.home-contact-about > p, .home-contact-inquiry > p:not(.contact-meta) {
  max-width: 46ch;
  margin-top: 22px;
  color: var(--muted);
}

.home-contact-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 28px;
}

.home-contact-tags span {
  padding: 8px 11px;
  border: 1px solid var(--line);
  color: var(--ink-soft);
  font-size: .68rem;
  font-weight: 760;
}

.home-contact-about > .btn {
  margin-top: 34px;
}

.home-contact-inquiry {
  background-color: #0a2a5e;
  background-image: radial-gradient(circle at 84% 18%, rgba(0, 168, 237, .24), transparent 30%), linear-gradient(rgba(111, 193, 255, .08) 1px, transparent 1px), linear-gradient(90deg, rgba(111, 193, 255, .08) 1px, transparent 1px);
  background-size: auto, 38px 38px, 38px 38px;
  color: #fff;
}

.home-contact-inquiry .eyebrow {
  color: #78efff;
}

.home-contact-inquiry .eyebrow::before {
  background: #78efff;
}

.home-contact-inquiry > p:not(.contact-meta), .home-contact-inquiry .contact-meta {
  color: rgba(230, 242, 255, .76);
}

.home-contact-inquiry .contact-actions {
  margin-top: 34px;
}

@media (max-width: 820px) {
.home-contact-combined {
    grid-template-columns: 1fr;
}

  
.home-contact-about, .home-contact-inquiry {
    padding: 38px 28px;
}

  
.home-contact-about h2, .home-contact-inquiry h2 {
    font-size: clamp(2.25rem, 10vw, 3.5rem);
}
}

/* ---------- Product-page related solutions ---------- */
#industry-solutions, #code-assistant, #document-writing, #archive-intelligence, #financial-research, #deployment-workstation, #deployment-platform, #deployment-cluster, #deployment-compare {
  scroll-margin-top: calc(var(--nav-h) + 16px);
}

/* Product detail: related industry solutions */
.product-solutions {
  background: #eef4fa;
}

.product-solution-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid #94b2cc;
  border-bottom: 1px solid var(--line);
}

.product-solution-grid > a {
  min-height: 300px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: clamp(28px, 4vw, 50px);
  border-right: 1px solid var(--line);
  background: rgba(255, 255, 255, .62);
  transition: background .25s, transform .25s var(--ease);
}

.product-solution-grid > a:last-child {
  border-right: 0;
}

.product-solution-grid > a:hover {
  z-index: 1;
  background: #fff;
  transform: translateY(-5px);
}

.product-solution-grid span {
  color: var(--blue);
  font: 700 .74rem/1 ui-monospace, SFMono-Regular, Consolas, monospace;
}

.product-solution-grid h3 {
  margin-top: auto;
  padding-top: 36px;
  font-size: clamp(1.4rem, 2vw, 2.1rem);
  line-height: 1.05;
  letter-spacing: -.04em;
}

.product-solution-grid p {
  display: -webkit-box;
  overflow: hidden;
  margin-top: 12px;
  color: var(--muted);
  font-size: .76rem;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.product-solution-grid strong {
  margin-top: 24px;
  color: var(--blue-dark);
  font-size: .72rem;
}

@media (max-width: 820px) {
.product-solution-grid {
    grid-template-columns: 1fr;
}

  
.product-solution-grid > a {
    min-height: 260px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
}
}

@media (max-width: 620px) {
.product-solution-grid > a {
    padding: 30px 24px;
}
}

/* ---------- Assistant generation and structured answers ---------- */
/* Assistant generation states and structured answer output. */
.chat-progress {
  min-height: 42px;
  display: flex;
  align-items: center;
  gap: 10px;
  opacity: 0;
  transform: translateY(5px);
  transition: opacity .18s ease, transform .18s ease;
}

.chat-progress.is-visible {
  opacity: 1;
  transform: none;
}

.chat-progress-dot {
  width: 8px;
  height: 8px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: var(--blue);
  animation: chat-progress-breathe 1.5s ease-in-out infinite;
}

.chat-progress-copy {
  min-width: 0;
  display: grid;
  gap: 1px;
}

.chat-progress-copy strong {
  color: var(--ink);
  font-size: .78rem;
  font-weight: 720;
}

.chat-progress-copy small {
  color: var(--muted);
  font-size: .61rem;
}

.chat-rich-text {
  display: grid;
  gap: .72em;
  white-space: normal;
}

.chat-rich-text > * {
  margin: 0;
}

.chat-rich-text p, .chat-rich-text li, .chat-rich-text blockquote {
  line-height: 1.78;
}

.chat-rich-text strong {
  color: var(--ink);
  font-weight: 760;
}

.chat-answer-heading {
  margin-top: .28em;
  padding-top: .7em;
  border-top: 1px solid rgba(10, 40, 90, .12);
  color: var(--ink);
  font-size: .88rem;
  line-height: 1.45;
}

.chat-answer-heading:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.chat-answer-heading--1 {
  font-size: .96rem;
}

.chat-rich-text ul, .chat-rich-text ol {
  display: grid;
  gap: .38em;
  padding-left: 1.28rem;
}

.chat-rich-text blockquote {
  padding: 9px 11px;
  border-left: 2px solid var(--blue);
  background: rgba(0, 105, 192, .055);
  color: var(--muted);
}

.chat-citation {
  display: inline-flex;
  margin: 0 .12em;
  padding: .08em .34em;
  border: 1px solid rgba(0, 105, 192, .2);
  background: rgba(0, 105, 192, .06);
  color: var(--blue-dark);
  font-size: .78em;
  line-height: 1.5;
  vertical-align: .06em;
}

a.chat-citation:hover {
  border-color: var(--blue);
  background: rgba(0, 105, 192, .11);
}

.chat-citation-text {
  display: inline-flex;
  align-items: baseline;
  gap: .35em;
}

.chat-citation-text small {
  font-size: .86em;
  font-weight: 780;
}

.chat-evidence {
  display: grid;
  gap: 8px;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid rgba(10, 40, 90, .12);
}

.chat-evidence details {
  margin: 0;
}

.chat-evidence summary {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 2px 0;
  color: var(--ink);
  cursor: pointer;
  list-style: none;
}

.chat-evidence summary::-webkit-details-marker {
  display: none;
}

.chat-evidence summary strong {
  color: var(--ink);
  font-size: .66rem;
}

.chat-evidence-summary-meta {
  margin-left: auto;
  color: var(--muted);
  font-size: .6rem;
  font-variant-numeric: tabular-nums;
}

.chat-evidence-summary-action {
  min-width: 30px;
  display: inline-flex;
  justify-content: flex-end;
  color: var(--blue-dark);
  font-size: .61rem;
  font-weight: 720;
}

.chat-evidence-summary-action span:last-child, .chat-evidence details[open] .chat-evidence-summary-action span:first-child {
  display: none;
}

.chat-evidence details[open] .chat-evidence-summary-action span:last-child {
  display: inline;
}

.chat-evidence-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 10px;
}

.chat-evidence-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(10, 40, 90, .14);
  background: #fff;
  color: var(--ink);
  transition: border-color .2s, transform .2s;
}

.chat-evidence-card:hover {
  border-color: var(--blue);
  transform: translateY(-2px);
}

.chat-evidence-card img {
  width: 100%;
  height: 88px;
  object-fit: cover;
  background: #eef4fa;
}

.chat-evidence-card span {
  display: grid;
  gap: 3px;
  padding: 8px;
}

.chat-evidence-card b {
  display: -webkit-box;
  overflow: hidden;
  color: var(--ink);
  font-size: .65rem;
  line-height: 1.4;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.chat-evidence-card small {
  overflow: hidden;
  color: var(--muted);
  font-size: .56rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@keyframes chat-progress-breathe {
  0%, 100% { opacity: .42; transform: scale(.82); }
  50% { opacity: 1; transform: scale(1); }
}

@media (max-width: 420px) {
.chat-evidence-grid {
 grid-template-columns: 1fr;
}
}

@media (prefers-reduced-motion: reduce) {
.chat-progress, .chat-evidence-card {
    transition: none;
}

  
.chat-progress-dot {
    animation: none;
    opacity: 1;
    transform: none;
}
}
