@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url('/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2') format('woff2');
}

@font-face {
  font-family: 'Instrument Serif';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/jizBRFtNs2ka5fXjeivQ4LroWlx-6zUTjg.woff2') format('woff2');
}

:root {
  --cel-50: #f2faff;
  --cel-100: #e2f4fe;
  --cel-200: #b1e1fd;
  --cel-300: #72cbfc;
  --cel-500: #089ef0;
  --cel-700: #0b668f;
  --cel-900: #0f3f57;
  --warm-50: #f7f9fc;
  --warm-100: #f0f4f8;
  --warm-200: #e4eaf0;
  --warm-300: #d5dee7;
  --ink-900: #1a1a2e;
  --ink-700: #2d3561;
  --ink-500: #6b7280;
  --coral: #c23a47;
  --coral-light: #ef6a73;
  --green: #16845b;
  --white: #ffffff;
  --serif: 'Instrument Serif', Georgia, 'Times New Roman', serif;
  --sans: 'Plus Jakarta Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink-700); background: var(--warm-50); font-family: var(--sans); font-size: 16px; line-height: 1.6; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
img { display: block; max-width: 100%; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.container { width: min(1110px, calc(100% - 48px)); margin: 0 auto; }

.site-header { position: sticky; z-index: 10; top: 0; border-bottom: 1px solid var(--warm-200); background: rgba(247, 249, 252, 0.94); backdrop-filter: blur(14px); }
.nav-wrap { display: flex; min-height: 78px; align-items: center; justify-content: space-between; gap: 32px; }
.brand { display: inline-flex; align-items: center; flex-shrink: 0; }
.brand img { width: 150px; }
.site-nav { display: flex; align-items: center; gap: 30px; color: var(--ink-500); font-size: 0.76rem; font-weight: 700; }
.site-nav a { transition: color 160ms ease; }
.site-nav a:hover, .site-nav a:focus-visible { color: var(--cel-700); }
.language-switcher { display: inline-flex; align-items: center; gap: 5px; padding-left: 4px; border-left: 1px solid var(--warm-300); }.language-switcher a { padding: 3px 2px; color: var(--ink-500); font-size: 0.62rem; font-weight: 800; letter-spacing: 0.04em; }.language-switcher a.is-active { color: var(--cel-700); }.language-switcher a:hover, .language-switcher a:focus-visible { color: var(--coral); }
.site-nav .nav-contact { display: inline-flex; align-items: center; gap: 7px; color: var(--cel-900); }
.nav-contact span { color: var(--coral); font-size: 1rem; }
.menu-toggle { display: none; padding: 9px; border: 0; background: transparent; cursor: pointer; }
.menu-line { display: block; width: 21px; height: 2px; margin: 5px 0; background: var(--cel-900); }

.hero { color: var(--cel-50); background: var(--cel-900); }
.hero-grid { display: grid; grid-template-columns: minmax(0, 0.86fr) minmax(420px, 1.14fr); gap: 82px; align-items: center; min-height: 610px; padding-top: 92px; padding-bottom: 94px; }
.eyebrow { display: flex; align-items: center; gap: 9px; margin: 0 0 19px; color: var(--cel-700); font-size: 0.68rem; font-weight: 800; letter-spacing: 0.09em; line-height: 1.3; text-transform: uppercase; }
.eyebrow-light { color: var(--cel-200); }
.eyebrow-dot { width: 7px; height: 7px; flex: 0 0 7px; border-radius: 50%; background: var(--coral-light); }
.hero h1 { margin: 0; color: var(--white); font-size: clamp(4.4rem, 9vw, 7.5rem); font-weight: 800; letter-spacing: -0.09em; line-height: 0.87; }
.hero h1 em { color: var(--cel-300); font-family: var(--serif); font-size: 1.08em; font-weight: 400; letter-spacing: -0.06em; }
.hero-copy { max-width: 470px; margin: 29px 0 12px; color: var(--white); font-size: clamp(1.15rem, 1.9vw, 1.45rem); font-weight: 700; letter-spacing: -0.04em; line-height: 1.32; }
.hero-detail { max-width: 450px; margin: 0 0 28px; color: var(--cel-200); font-size: 0.86rem; line-height: 1.75; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 23px; }.hero-text-link { display: inline-flex; align-items: center; gap: 7px; color: var(--cel-200); font-size: 0.77rem; font-weight: 800; }.hero-text-link span { color: var(--coral-light); font-size: 1rem; }.hero-note { display: flex; max-width: 430px; align-items: center; gap: 9px; margin: 40px 0 0; color: rgba(226, 244, 254, 0.58); font-size: 0.67rem; line-height: 1.5; }.hero-note span { color: var(--cel-300); font-size: 0.9rem; }
.hero-system { position: relative; padding-left: 28px; border-left: 1px solid rgba(177, 225, 253, 0.23); }.hero-system-top { display: flex; align-items: center; justify-content: space-between; margin: 0 0 15px; color: rgba(226, 244, 254, 0.56); font-size: 0.61rem; font-weight: 700; }.hero-system-brand { color: var(--cel-50); font-size: 0.75rem; }.hero-system-top span:last-child { display: inline-flex; align-items: center; gap: 6px; }.hero-system-top i { width: 6px; height: 6px; border-radius: 50%; background: #5bc98e; }
.hero-system-stack { display: grid; gap: 0; }.hero-system-card { display: grid; grid-template-columns: 37px 1fr; gap: 15px; padding: 19px 21px; border: 1px solid rgba(177, 225, 253, 0.22); border-radius: 10px; background: rgba(255, 255, 255, 0.07); }.hero-system-organize { border-color: rgba(114, 203, 252, 0.5); }.hero-system-automate { border-color: rgba(239, 106, 115, 0.48); background: rgba(194, 58, 71, 0.11); }.hero-system-grow { border-color: rgba(177, 225, 253, 0.31); }.hero-card-number { color: var(--cel-300); font-size: 0.64rem; font-weight: 800; letter-spacing: 0.06em; }.hero-system-automate .hero-card-number { color: var(--coral-light); }.hero-card-label { display: block; margin-bottom: 5px; color: var(--cel-300); font-size: 0.62rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; }.hero-system-automate .hero-card-label { color: var(--coral-light); }.hero-system-card h2 { margin: 0; color: var(--white); font-size: 1rem; letter-spacing: -0.04em; line-height: 1.25; }.hero-system-card p { max-width: 430px; margin: 7px 0 0; color: rgba(226, 244, 254, 0.68); font-size: 0.7rem; line-height: 1.6; }.hero-system-connector { height: 25px; padding-left: 52px; color: var(--cel-300); font-size: 0.95rem; line-height: 25px; }

.button { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; gap: 11px; padding: 11px 16px; border-radius: 0.7rem; font-size: 0.77rem; font-weight: 800; transition: transform 160ms ease, background 160ms ease; }
.button:hover, .button:focus-visible { transform: translateY(-2px); }
.button-light { color: var(--cel-900); background: var(--cel-100); }.button-light:hover, .button-light:focus-visible { background: var(--cel-200); }.button span { color: var(--coral); font-size: 1rem; }

.section { padding: 118px 0; }
.pillar-organize, .pillar-grow { background: var(--white); }
.pillar-automate { background: var(--warm-50); }
.pillar-grid { display: grid; grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr); gap: clamp(60px, 11vw, 150px); align-items: start; }
.pillar-grid-reverse .pillar-intro { order: 2; }.pillar-grid-reverse .pillar-list { order: 1; }
.pillar-intro h2, .built h2 { max-width: 690px; margin: 0; color: var(--ink-900); font-size: clamp(2.55rem, 5vw, 4.45rem); letter-spacing: -0.085em; line-height: 0.96; }
.pillar-intro > p:not(.eyebrow) { max-width: 390px; margin: 24px 0 0; color: var(--ink-500); font-size: 0.86rem; line-height: 1.8; }
.less-is-more { margin-top: 46px !important; color: var(--cel-700) !important; font-size: 0.85rem !important; font-weight: 700; line-height: 1.5 !important; }.less-is-more em { color: var(--coral); font-family: var(--serif); font-size: 1.65rem; font-weight: 400; }
.pillar-list { border-top: 1px solid var(--warm-300); }.pillar-list > div { display: grid; grid-template-columns: 44px 1fr; gap: 20px; padding: 22px 0; border-bottom: 1px solid var(--warm-300); }.pillar-list > div > span { color: var(--cel-500); font-size: 0.64rem; font-weight: 800; letter-spacing: 0.05em; }.pillar-list strong { display: block; color: var(--ink-900); font-size: 0.92rem; letter-spacing: -0.035em; }.pillar-list p { margin: 5px 0 0; color: var(--ink-500); font-size: 0.75rem; line-height: 1.65; }
.pillar-list .pillar-ai { padding-left: 13px; border-left: 3px solid var(--coral-light); background: rgba(255, 255, 255, 0.58); }.pillar-list .pillar-ai > span { color: var(--coral); }.pillar-list .pillar-ai strong { color: var(--cel-900); }
.vertical-list { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--warm-300); }.vertical-list > div { display: grid; grid-template-columns: 34px 1fr; gap: 12px; min-height: 112px; padding: 20px 18px 20px 0; border-bottom: 1px solid var(--warm-300); }.vertical-list > div:nth-child(odd) { border-right: 1px solid var(--warm-300); }.vertical-list > div:nth-child(even) { padding-left: 18px; }.vertical-list > div > span { color: var(--cel-500); font-size: 0.64rem; font-weight: 800; letter-spacing: 0.05em; }.vertical-list strong { display: block; color: var(--ink-900); font-size: 0.82rem; letter-spacing: -0.035em; }.vertical-alias { display: block; margin-top: 2px; color: var(--cel-700); font-size: 0.55rem; font-weight: 800; letter-spacing: 0.04em; text-transform: uppercase; }.vertical-list p { margin: 5px 0 0; color: var(--ink-500); font-size: 0.7rem; line-height: 1.55; }

.built { color: var(--cel-50); background: var(--cel-900); }.built-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(280px, 0.92fr); gap: clamp(60px, 12vw, 170px); align-items: start; }.built h2 { color: var(--white); }.built-copy { padding-top: 43px; }.built-copy p { max-width: 400px; margin: 0 0 15px; color: var(--cel-200); font-size: 0.87rem; line-height: 1.8; }.built-meta { display: flex; gap: 9px; margin: 30px 0; }.built-meta span { padding: 6px 10px; border: 1px solid rgba(177, 225, 253, 0.24); border-radius: 999px; color: var(--cel-300); font-size: 0.61rem; font-weight: 800; }

.site-footer { color: var(--cel-200); background: var(--cel-900); }.footer-top { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding: 42px 0; border-top: 1px solid rgba(177, 225, 253, 0.16); }.footer-top .brand img { width: 140px; }.footer-links { display: flex; flex-wrap: wrap; gap: 25px; color: rgba(242, 250, 255, 0.7); font-size: 0.68rem; }.footer-links a:hover, .footer-links a:focus-visible { color: var(--white); }.footer-bottom { display: flex; justify-content: space-between; padding: 17px 0 21px; border-top: 1px solid rgba(177, 225, 253, 0.12); color: rgba(226, 244, 254, 0.45); font-size: 0.61rem; }
:focus-visible { outline: 3px solid rgba(239, 106, 115, 0.62); outline-offset: 4px; }

@media (max-width: 850px) {
  .container { width: min(100% - 40px, 680px); }.nav-wrap { min-height: 70px; }.menu-toggle { display: block; }.site-nav { position: fixed; top: 70px; right: 0; left: 0; display: none; padding: 13px 20px 19px; flex-direction: column; align-items: stretch; gap: 0; border-bottom: 1px solid var(--warm-200); background: var(--warm-50); box-shadow: 0 15px 25px rgba(15, 63, 87, 0.08); }.site-nav.is-open { display: flex; }.site-nav a { padding: 12px 0; border-bottom: 1px solid var(--warm-200); }.site-nav .language-switcher { justify-content: flex-start; padding: 10px 0; border-bottom: 1px solid var(--warm-200); border-left: 0; }.site-nav .language-switcher a { padding: 4px 8px 4px 0; border-bottom: 0; }.site-nav .nav-contact { justify-content: space-between; border-bottom: 0; }
  .hero-grid { grid-template-columns: 1fr; gap: 55px; min-height: 0; padding-top: 72px; padding-bottom: 76px; }.hero-system { max-width: 620px; padding-left: 24px; }.section { padding: 86px 0; }.pillar-grid, .built-grid { grid-template-columns: 1fr; gap: 48px; }.pillar-grid-reverse .pillar-intro, .pillar-grid-reverse .pillar-list { order: initial; }.built-copy { padding-top: 0; }
}

@media (max-width: 600px) {
  .container { width: min(100% - 32px, 480px); }.brand img { width: 136px; }.hero-grid { gap: 45px; padding-top: 55px; padding-bottom: 61px; }.hero h1 { font-size: clamp(3.9rem, 19vw, 5.8rem); }.hero-detail { font-size: 0.82rem; }.hero-system { padding-left: 16px; }.hero-system-card { grid-template-columns: 30px 1fr; gap: 10px; padding: 17px 15px; }.hero-system-card h2 { font-size: 0.9rem; }.hero-system-card p { font-size: 0.66rem; }.hero-system-connector { padding-left: 40px; }.section { padding: 70px 0; }.pillar-intro h2, .built h2 { font-size: clamp(2.6rem, 13vw, 4rem); }.pillar-list > div { gap: 12px; }.pillar-list strong { font-size: 0.86rem; }.vertical-list { grid-template-columns: 1fr; }.vertical-list > div, .vertical-list > div:nth-child(even) { min-height: 0; padding: 18px 0; border-right: 0; }.less-is-more { margin-top: 36px !important; }.built-meta { margin: 25px 0; }.footer-top { display: block; padding: 36px 0; }.footer-links { gap: 13px 22px; margin-top: 27px; }.footer-bottom { display: block; }.footer-bottom span:last-child { display: block; margin-top: 5px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: 0.01ms !important; }
}
