@layer reset, base, components, responsive;
@layer reset {
  *, *::before, *::after { box-sizing: border-box; }
  body, h1, h2, h3, h4, p, figure { margin: 0; }
  button, input, select, textarea { font: inherit; }
  button, a { -webkit-tap-highlight-color: transparent; }
  img { max-width: 100%; height: auto; display: block; }
  a { color: inherit; text-decoration: none; }
}
@layer base {
  :root { --paper:#faf9f6; --ink:#191b24; --muted:#60616c; --purple:#7939db; --purple-dark:#6420c7; --line:#dedee5; --lavender:#eee8f8; --lime:#d9f177; --radius:24px; }
  html { scroll-behavior:smooth; scroll-padding-top:105px; }
  body { background:var(--paper); color:var(--ink); font-family:"Inter", "Segoe UI", Arial, sans-serif; font-size:16px; line-height:1.65; -webkit-font-smoothing:antialiased; }
  ::selection { background:#ded0f8; color:#241139; }
  :focus-visible { outline:3px solid var(--purple); outline-offset:5px; }
  h1, h2, h3 { font-weight:600; line-height:1.08; letter-spacing:-.045em; }
  h1 { font-size:clamp(45px,5.4vw,78px); }
  h2 { font-size:clamp(32px,3.7vw,52px); }
  h3 { font-size:24px; line-height:1.25; letter-spacing:-.025em; }
  p { color:var(--muted); }
  small { font-size:12px; }
  .container { width:min(1280px,calc(100% - 80px)); margin-inline:auto; }
  .section { padding-block:104px; }
  .section-head { display:flex; justify-content:space-between; align-items:flex-end; gap:40px; margin-bottom:48px; }
  .section-head h2 { max-width:710px; }
  .section-head p { max-width:390px; }
  .eyebrow { display:flex; align-items:center; gap:9px; color:var(--purple-dark); font-size:11px; line-height:1.5; font-weight:650; letter-spacing:.16em; text-transform:none; margin-bottom:22px; }
  .eyebrow::before { content:""; height:6px; width:6px; background:currentColor; flex:none; }
  .purple { color:var(--purple); }
  .lead { max-width:650px; font-size:18px; line-height:1.7; margin-top:25px; }
  .icon { width:22px; height:22px; flex:none; fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
  .arrow { width:17px; height:17px; }
  .skip-link { position:fixed; left:20px; top:-80px; z-index:100; background:var(--ink); color:white; padding:12px 20px; }
  .skip-link:focus { top:10px; }
  [hidden] { display:none !important; }
}
@layer components {
  .site-header { position:sticky; top:0; z-index:30; background:rgba(250,249,246,.97); border-bottom:1px solid rgba(222,222,229,.8); }
  .header-inner { height:88px; display:flex; align-items:center; gap:36px; }
  .brand { flex:none; }
  .brand img { width:158px; height:auto; }
  .site-nav { display:flex; align-items:center; justify-content:flex-end; flex:1; gap:30px; font-size:13px; font-weight:550; }
  .site-nav a { padding-block:12px; transition:color .18s; }
  .site-nav a:hover, .site-nav a[aria-current] { color:var(--purple); }
  .header-actions { display:flex; gap:24px; align-items:center; }
  .lang-switch { font-size:12px; font-weight:650; display:flex; gap:8px; align-items:center; }
  .lang-switch span { opacity:.3; }
  .lang-switch a { padding-block:9px; }
  .lang-switch .current { color:var(--purple); }
  .button { display:inline-flex; align-items:center; justify-content:center; gap:14px; border:1px solid transparent; border-radius:9px; padding:14px 21px; font-size:13px; line-height:1.4; font-weight:600; background:var(--purple); color:white; cursor:pointer; transition:background .2s, transform .2s; }
  .button:hover { background:var(--purple-dark); transform:translateY(-2px); }
  .button.small { font-size:12px; padding:12px 18px; }
  .button.secondary { background:transparent; border-color:var(--line); color:var(--ink); }
  .button.secondary:hover { background:white; border-color:var(--purple); }
  .button.light { background:white; color:var(--ink); }
  .button.light:hover { background:var(--lavender); }
  .text-link { display:inline-flex; gap:12px; align-items:center; color:var(--ink); font-size:13px; font-weight:600; padding-block:8px; }
  .text-link:hover { color:var(--purple); }
  .menu-toggle { display:none; background:none; border:1px solid var(--line); border-radius:8px; padding:10px; color:var(--ink); cursor:pointer; }
  .hero { padding-block:62px 64px; }
  .hero-grid { display:grid; grid-template-columns:1.02fr 1fr; align-items:center; gap:64px; }
  .hero-copy { padding-block:12px; }
  .hero-copy h1 { letter-spacing:-.065em; line-height:1.06; }
  .hero-copy .lead { max-width:490px; margin-top:26px; font-size:17px; }
  .hero-buttons { display:flex; gap:13px; flex-wrap:wrap; margin-top:30px; }
  .hero-note { display:flex; gap:18px; margin-top:25px; color:var(--muted); font-size:11px; }
  .hero-note span { display:flex; gap:6px; align-items:center; }
  .hero-note .icon { width:15px; height:15px; color:var(--purple); }
  .hero-watch { display:inline-flex; align-items:center; gap:10px; font-size:12px; font-weight:600; margin-top:20px; color:var(--purple-dark); }
  .hero-watch .icon { width:20px; height:20px; }
  .hero-watch span { font-size:10px; color:var(--muted); margin-left:5px; font-weight:400; }
  .hero-watch:hover { text-decoration:underline; }
  .brand-film { border-top:1px solid var(--line); }
  .film-layout { display:grid; grid-template-columns:.65fr 1fr; align-items:center; gap:70px; }
  .film-copy > p { margin-top:23px; font-size:15px; }
  .film-copy h2 { font-size:clamp(34px,3.3vw,46px); }
  .film-meta { display:flex; align-items:center; gap:10px; font-size:11px; color:var(--muted); margin-top:24px; }
  .film-meta .icon { width:16px; height:16px; color:var(--purple); }
  .film-player { border-radius:17px; overflow:hidden; border:1px solid #3f324e; background:#141217; aspect-ratio:16 / 9; }
  .film-player video { display:block; width:100%; height:100%; }
  .film-transcript { margin-top:24px; border-top:1px solid var(--line); padding-top:17px; }
  .film-transcript summary { cursor:pointer; font-size:12px; font-weight:550; color:var(--purple-dark); }
  .film-transcript p { font-size:12px; margin-top:14px; }
  .video-stories { background:#f0edf5; }
  .video-story-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:25px; }
  .video-story { min-width:0; }
  .video-story .film-player { border-radius:13px; }
  .video-story-copy { padding-top:24px; }
  .video-story-copy .eyebrow { font-size:9px; letter-spacing:.1em; margin-bottom:14px; }
  .video-story-copy h3 { font-size:24px; margin-bottom:17px; }
  .video-story-copy > p { font-size:13px; }
  .video-story-copy .text-link { margin-top:16px; }
  .hero-visual { position:relative; padding-bottom:26px; }
  .hero-photo { height:548px; width:100%; object-fit:cover; object-position:62% center; border-radius:22px; }
  .image-chip { position:absolute; top:23px; left:22px; display:flex; align-items:center; gap:9px; background:white; color:var(--ink); font-size:11px; font-weight:600; padding:10px 15px; border-radius:30px; box-shadow:0 6px 20px #15101d0a; }
  .image-chip .icon { width:15px; height:15px; color:var(--purple); }
  .hero-summary { position:absolute; left:-30px; bottom:42px; background:white; border:1px solid #eeebf3; border-radius:15px; padding:20px 23px; box-shadow:0 14px 48px #21113014; min-width:330px; }
  .summary-head { display:flex; justify-content:space-between; align-items:center; gap:35px; font-size:13px; font-weight:650; margin-bottom:16px; }
  .summary-head .icon { color:var(--purple); width:18px; }
  .summary-flow { display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:10px; color:var(--muted); }
  .summary-flow span { display:flex; gap:7px; align-items:center; }
  .summary-flow .icon { width:14px; height:14px; color:var(--purple); }
  .summary-flow i { color:#b5a2d6; font-style:normal; }
  .image-caption { position:absolute; right:2px; bottom:0; font-size:9px; color:#777782; }
  .trust { border-top:1px solid var(--line); padding-block:30px 42px; }
  .trust-label { text-align:center; color:var(--muted); font-size:11px; letter-spacing:.02em; }
  .client-logos { display:grid; grid-template-columns:repeat(6,1fr); align-items:center; gap:35px; margin-top:28px; }
  .client-logo { height:42px; display:flex; align-items:center; justify-content:center; }
  .client-logo img { max-width:132px; max-height:38px; object-fit:contain; filter:grayscale(1); opacity:.63; mix-blend-mode:multiply; transition:filter .2s, opacity .2s; }
  .client-logo:hover img { filter:grayscale(0); opacity:1; }
  .intro { padding-block:80px 98px; border-top:1px solid var(--line); }
  .intro-layout { display:grid; grid-template-columns:1.05fr 1fr; gap:100px; }
  .intro-title { font-size:clamp(30px,3.4vw,47px); }
  .intro-title span { color:#92919b; }
  .intro-right > p { font-size:17px; margin-bottom:30px; }
  .outcome { display:grid; grid-template-columns:38px 1fr; gap:16px; padding-block:18px; border-top:1px solid var(--line); }
  .outcome > .icon { color:var(--purple); margin-top:4px; width:24px; height:24px; }
  .outcome h3 { font-size:17px; letter-spacing:-.015em; margin-bottom:6px; }
  .outcome p { font-size:13px; line-height:1.65; }
  .workflow { background:#f0edf5; }
  .workflow-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
  .step-card { padding:28px 30px 30px; border:1px solid #dad3e7; background:rgba(255,255,255,.55); border-radius:16px; }
  .step-top { display:flex; justify-content:space-between; margin-bottom:46px; }
  .step-number { font-size:11px; color:var(--purple); font-weight:600; letter-spacing:.08em; }
  .step-top .icon { width:28px; height:28px; color:var(--purple); }
  .step-card h3 { font-size:26px; margin-bottom:17px; }
  .step-card p { font-size:14px; max-width:330px; }
  .step-tags { display:flex; flex-wrap:wrap; gap:7px; margin-top:27px; }
  .step-tags span { border:1px solid #d7d0e3; color:#575062; padding:5px 9px; font-size:10px; border-radius:4px; }
  .product-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:72px; align-items:center; }
  .product-art { position:relative; background:var(--lavender); border-radius:24px; padding:38px 28px 24px; }
  .product-art img { width:100%; }
  .art-label { display:flex; gap:8px; align-items:center; font-size:10px; font-weight:600; color:#736080; letter-spacing:.1em; text-transform:none; margin-bottom:26px; }
  .art-label .icon { width:15px; height:15px; }
  .product-copy h2 { margin-bottom:24px; }
  .product-copy p { font-size:15px; }
  .feature-list { list-style:none; padding:0; margin:24px 0; }
  .feature-list li { padding-block:9px; font-size:13px; display:flex; gap:11px; align-items:flex-start; }
  .feature-list .icon { width:17px; height:17px; color:var(--purple); margin-top:3px; }
  .intelligence { background:#20202b; color:white; overflow:hidden; }
  .intelligence-grid { display:grid; grid-template-columns:1fr .85fr; gap:90px; align-items:center; }
  .intelligence .eyebrow { color:#c6a4fb; }
  .intelligence h2 { max-width:620px; }
  .intelligence p { color:#b6b5c4; font-size:15px; margin-top:24px; max-width:580px; }
  .roadmap-pill { display:inline-flex; gap:9px; align-items:center; border:1px solid #5c536d; color:#d3b8ff; font-size:10px; padding:6px 10px; border-radius:4px; margin-top:25px; }
  .intelligence-card { background:#2c2b38; border:1px solid #494352; border-radius:18px; padding:30px; }
  .intelligence-card h3 { font-size:18px; letter-spacing:-.01em; margin-bottom:24px; }
  .review-row { display:flex; gap:14px; align-items:center; padding:17px 0; border-top:1px solid #48424f; }
  .review-row .icon { color:#c4a2ff; width:21px; height:21px; }
  .review-row strong { display:block; font-size:12px; font-weight:600; }
  .review-row span { color:#b6b5c4; font-size:11px; }
  .review-footer { padding:13px 16px; background:#d9f177; color:#222829; font-size:11px; border-radius:8px; margin-top:12px; display:flex; align-items:center; gap:10px; }
  .industry-grid { display:grid; grid-template-columns:1.25fr 1fr 1fr; gap:20px; }
  .industry-card { position:relative; border:1px solid var(--line); border-radius:16px; padding:29px; transition:border-color .2s, background .2s; min-height:260px; }
  a.industry-card:hover { border-color:var(--purple); background:white; }
  .industry-card > .icon { color:var(--purple); width:30px; height:30px; margin-bottom:47px; }
  .industry-card h3 { font-size:22px; margin-bottom:15px; }
  .industry-card p { font-size:13px; }
  .industry-card.featured { background:var(--lavender); border-color:transparent; }
  .industry-arrow { position:absolute; right:28px; top:29px; }
  .industries-full { grid-template-columns:repeat(3,1fr); }
  .industries-full .industry-card { min-height:290px; }
  .industry-card .text-link { margin-top:17px; }
  .insight-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:28px; }
  .insight-art { height:195px; display:flex; flex-direction:column; justify-content:center; padding:30px; border-radius:14px; margin-bottom:23px; overflow:hidden; position:relative; background:var(--lavender); color:var(--purple); }
  .insight-art .icon { width:54px; height:54px; stroke-width:1.2; }
  .insight-art::after { content:""; position:absolute; width:180px; height:180px; border:1px solid currentColor; opacity:.15; border-radius:50%; right:-50px; bottom:-70px; }
  .insight-art.a2 { background:#e4e9de; color:#556b40; }
  .insight-art.a3 { background:#282a36; color:#c1a0fb; }
  .insight-art.a4 { background:#e9e4df; color:#786357; }
  .insight-card { display:block; }
  .insight-card:hover h3 { color:var(--purple); }
  .insight-series { font-size:10px; color:var(--purple-dark); font-weight:600; letter-spacing:.08em; text-transform:none; margin-bottom:11px; }
  .insight-card h3 { font-size:24px; line-height:1.22; margin-bottom:13px; }
  .insight-card p { font-size:13px; }
  .insight-card .text-link { margin-top:15px; }
  .faq-section { border-top:1px solid var(--line); padding-top:80px; }
  .faq-layout { display:grid; grid-template-columns:.65fr 1fr; gap:100px; }
  .faq-list details { border-top:1px solid var(--line); padding-block:21px; }
  .faq-list details:last-child { border-bottom:1px solid var(--line); }
  .faq-list summary { cursor:pointer; font-size:15px; font-weight:550; display:flex; justify-content:space-between; align-items:center; gap:20px; list-style:none; }
  .faq-list summary::-webkit-details-marker { display:none; }
  .faq-list summary::after { content:"+"; font-size:23px; color:var(--purple); font-weight:400; }
  .faq-list details[open] summary::after { content:"−"; }
  .faq-list details p { margin-top:14px; font-size:14px; max-width:590px; }
  .cta-wrap { padding-bottom:100px; }
  .cta { background:var(--purple); border-radius:22px; color:white; padding:60px 66px; display:flex; justify-content:space-between; align-items:center; gap:50px; }
  .cta .eyebrow { color:#ebdcff; margin-bottom:16px; }
  .cta h2 { font-size:clamp(32px,3.6vw,48px); max-width:710px; }
  .cta p { color:#e5d4ff; margin-top:18px; max-width:600px; font-size:14px; }
  .cta .button { flex:none; }
  .site-footer { border-top:1px solid var(--line); padding-block:54px 26px; }
  .footer-grid { display:grid; grid-template-columns:1.3fr .7fr .7fr .9fr; gap:55px; }
  .footer-brand img { width:158px; }
  .footer-brand p { font-size:12px; max-width:235px; margin-top:19px; }
  .footer-column h3 { font-size:11px; letter-spacing:.01em; font-weight:650; margin-bottom:19px; }
  .footer-column a { display:block; font-size:12px; color:var(--muted); margin-bottom:9px; overflow-wrap:anywhere; }
  .footer-column a:hover { color:var(--purple); }
  .footer-column p { font-size:12px; line-height:1.7; margin-bottom:13px; }
  .footer-bottom { display:flex; gap:30px; justify-content:space-between; padding-top:30px; margin-top:36px; border-top:1px solid var(--line); color:var(--muted); font-size:10px; }
  .footer-legal { display:flex; gap:22px; }
  .page-hero { padding-block:76px 64px; border-bottom:1px solid var(--line); }
  .page-hero h1 { max-width:940px; font-size:clamp(42px,5.2vw,72px); }
  .page-hero .lead { font-size:18px; max-width:770px; }
  .page-hero .hero-buttons { margin-top:27px; }
  .platform-overview { padding-top:72px; }
  .capability-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }
  .capability { border:1px solid var(--line); border-radius:14px; padding:30px; display:grid; grid-template-columns:34px 1fr; gap:20px; }
  .capability > .icon { color:var(--purple); width:27px; height:27px; }
  .capability h3 { font-size:21px; margin-bottom:14px; }
  .capability p { font-size:14px; }
  .deployment-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
  .deployment-card { background:white; border:1px solid var(--line); border-radius:18px; padding:38px; }
  .deployment-card h3 { margin-bottom:16px; }
  .deployment-card p { font-size:14px; }
  .deployment-note { font-size:12px; margin-top:25px; max-width:950px; }
  .contact-section { padding-block:64px 100px; }
  .contact-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:88px; }
  .contact-info > p { font-size:15px; margin-bottom:32px; }
  .contact-item { display:flex; gap:17px; align-items:flex-start; border-top:1px solid var(--line); padding-block:23px; }
  .contact-item > .icon { color:var(--purple); margin-top:4px; }
  .contact-item h3 { font-size:13px; margin-bottom:7px; }
  .contact-item p, .contact-item a { font-size:14px; }
  .contact-item a:hover { color:var(--purple); }
  .demo-form { background:white; border:1px solid var(--line); border-radius:20px; padding:38px; }
  .demo-form h2 { font-size:29px; margin-bottom:10px; }
  .form-note { font-size:12px; margin-bottom:27px; }
  .field-row { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
  .field { margin-bottom:18px; }
  .field label { display:block; font-size:12px; font-weight:600; margin-bottom:8px; }
  .field input, .field select, .field textarea { display:block; width:100%; border:1px solid #d8d7df; border-radius:7px; background:#fbfafc; color:var(--ink); padding:12px 13px; font-size:13px; min-height:45px; }
  .field textarea { resize:vertical; min-height:115px; }
  .form-footnote { font-size:11px; margin-top:15px; line-height:1.6; }
  .form-footnote a { color:var(--purple); text-decoration:underline; }
  .form-feedback { font-size:12px; background:var(--lavender); color:#45325f; padding:14px; border-radius:8px; margin-top:18px; }
  .form-feedback a { text-decoration:underline; }
  .article-layout { display:grid; grid-template-columns:240px 1fr; gap:80px; padding-block:68px 100px; max-width:1060px; }
  .article-sidebar { font-size:12px; }
  .article-sidebar .eyebrow { font-size:10px; margin-bottom:17px; }
  .article-sidebar p { font-size:12px; }
  .article-body { max-width:730px; }
  .article-byline { font-size:13px;color:var(--muted);margin-top:22px; }
  .article-scope { border-top:1px solid var(--line);margin-top:44px;padding-top:8px; }
  .article-scope p { font-size:15px;line-height:1.75;color:var(--muted); }
  .article-scope h3 { font-size:16px;margin:24px 0 12px; }
  .article-scope ul { padding-left:20px;line-height:2; }
  .article-scope a { text-decoration:underline;text-underline-offset:4px; }
  .article-body > p { font-size:17px; margin-bottom:24px; }
  .article-body h2 { font-size:28px; margin-top:38px; margin-bottom:18px; line-height:1.25; }
  .article-callout { border-left:3px solid var(--purple); background:var(--lavender); padding:24px 28px; margin-block:36px; font-size:18px; color:#433252; }
  .empty-page { min-height:50vh; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; gap:25px; }
  .page-hero .breadcrumb { font-size:11px; color:var(--muted); margin-bottom:28px; }
  .industry-heading { font-size:23px; line-height:1.25; letter-spacing:-.025em; margin-bottom:15px; }
  .solution-section { border-top:1px solid var(--line); }
  .solution-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }
  .solution-card { position:relative; display:flex; flex-direction:column; background:white; border:1px solid var(--line); border-radius:17px; padding:32px; transition:border-color .2s, background .2s; }
  .solution-card:hover { border-color:var(--purple); background:#f8f5fc; }
  .solution-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:29px; }
  .solution-top > span { color:var(--purple); font-size:11px; letter-spacing:.1em; }
  .solution-top .icon { color:var(--purple); width:28px; height:28px; }
  .solution-card h3 { font-size:27px; margin-bottom:12px; }
  .solution-subtitle { font-size:14px; font-weight:550; margin-bottom:15px; }
  .solution-card p { font-size:14px; margin-bottom:18px; }
  .solution-card .text-link { margin-top:auto; }
  .vision-label { color:var(--purple-dark); font-size:9px; letter-spacing:.04em; border:1px solid #dfd1f6; border-radius:4px; padding:4px 8px; align-self:flex-start; margin-top:12px; }
  .ons-section { background:#20202b; color:white; }
  .ons-layout { display:grid; grid-template-columns:.85fr 1fr; gap:85px; align-items:center; }
  .ons-copy .eyebrow { color:#c6a4fb; }
  .ons-copy > p { font-size:16px; color:#bcbbc9; margin-top:27px; }
  .ons-copy .mission { font-size:13px; border-top:1px solid #44404e; padding-top:25px; }
  .ons-copy .text-link { color:#d5bbff; margin-top:19px; }
  .ons-diagram { border:1px solid #4b4558; border-radius:18px; padding:25px; background:#272632; }
  .ons-source-label { font-size:10px; text-transform:none; letter-spacing:.1em; color:#c0adce; margin-bottom:11px; }
  .ons-signals { display:flex; flex-wrap:wrap; gap:6px; }
  .ons-signals span { color:#cdc7d8; font-size:9px; border:1px solid #514859; border-radius:4px; padding:5px 8px; }
  .ons-center { display:flex; gap:11px; align-items:center; margin-block:23px; padding-block:19px; border-top:1px solid #4a4454; border-bottom:1px solid #4a4454; }
  .ons-center .icon { color:#bc88ff; width:26px; height:26px; }
  .ons-center strong { font-size:13px; letter-spacing:.05em; }
  .ons-center span { font-size:10px; color:#bdb3cc; margin-left:auto; }
  .ons-layers { display:grid; grid-template-columns:1fr 1fr; gap:13px; }
  .ons-layer { border:1px solid #514858; border-radius:9px; background:#302d3c; padding:17px; }
  .ons-layer > .icon { width:19px; height:19px; color:#bd95f1; margin-bottom:13px; }
  .ons-layer h3 { font-size:14px; letter-spacing:-.01em; margin-bottom:7px; }
  .ons-layer p { color:#bcb4c7; font-size:10px; line-height:1.65; }
  .ons-feedback { margin-top:18px; padding:12px; background:#d9f177; border-radius:7px; color:#252a23; font-size:10px; display:flex; gap:10px; align-items:center; }
  .ons-feedback .icon { width:17px; height:17px; }
  .ons-diagram figcaption { font-size:9px; color:#b3a5bf; text-align:center; margin-top:16px; }
  .context-section { border-bottom:1px solid var(--line); }
  .context-head { display:grid; grid-template-columns:1fr 1fr; gap:100px; align-items:center; }
  .context-head p { font-size:16px; }
  .context-tags { display:flex; flex-wrap:wrap; gap:7px; margin-top:22px; }
  .context-tags span { border:1px solid #d8cbe7; background:#f0eaf8; padding:5px 10px; border-radius:4px; color:#655276; font-size:11px; }
  .context-questions { display:grid; grid-template-columns:repeat(3,1fr); gap:35px; margin-top:49px; }
  .context-question { border-top:1px solid var(--line); padding-top:23px; }
  .context-question h3 { font-size:19px; margin-bottom:10px; }
  .context-question p { font-size:12px; }
  .module-section { background:#f0edf5; }
  .module-row { display:grid; grid-template-columns:170px 260px 1fr; gap:30px; padding-block:24px; border-top:1px solid #d8d0e2; align-items:baseline; }
  .module-row:last-child { border-bottom:1px solid #d8d0e2; }
  .module-name { color:var(--purple); font-size:20px; font-weight:650; letter-spacing:-.03em; }
  .module-row h3 { font-size:15px; line-height:1.5; font-weight:550; letter-spacing:-.01em; }
  .module-row p { font-size:13px; }
  .solution-definition { display:grid; grid-template-columns:1fr 1fr; gap:90px; }
  .solution-definition .lead { font-size:18px; }
  .solution-point { border-top:1px solid var(--line); padding-block:22px; }
  .solution-point h3 { font-size:19px; margin-bottom:12px; }
  .solution-point p { font-size:14px; }
  .solution-flow-section { background:var(--lavender); }
  .solution-flow { list-style:none; margin:30px 0 0; padding:0; display:grid; grid-template-columns:repeat(5,1fr); gap:25px; }
  .solution-flow li { border-top:1px solid #cfc1e3; padding-top:20px; display:flex; flex-direction:column; gap:15px; font-size:15px; font-weight:550; line-height:1.4; }
  .flow-num { color:var(--purple); font-size:10px; letter-spacing:.1em; }
  .solution-scope { margin-top:32px; color:#645c6d; font-size:12px; max-width:970px; }
  .solution-values { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; }
  .solution-value > .icon { color:var(--purple); width:30px; height:30px; margin-bottom:24px; }
  .solution-value h3 { font-size:23px; margin-bottom:17px; }
  .solution-value p { font-size:14px; }
  .scenario { background:white; border:1px solid var(--line); border-radius:16px; padding:32px; margin-top:50px; display:grid; grid-template-columns:.35fr 1fr; gap:45px; }
  .scenario .eyebrow { margin-bottom:0; }
  .scenario p { font-size:14px; }
}
@layer responsive {
  @media (min-width:1550px) { .hero { padding-block:80px; } .hero-photo { height:590px; } }
  @media (max-width:1150px) {
    .container { width:calc(100% - 56px); }
    .header-inner { gap:24px; } .site-nav { gap:20px; } .header-actions { gap:17px; }
    .hero-grid { gap:44px; } .hero-copy h1 { font-size:64px; } .hero-photo { height:520px; }
    .intro-layout, .faq-layout { gap:60px; } .product-grid { gap:45px; }
    .intelligence-grid { gap:50px; } .contact-grid { gap:45px; }
    .footer-grid { gap:30px; } .insight-grid { grid-template-columns:repeat(2,1fr); }
    .ons-layout { gap:45px; }
    .film-layout { gap:40px; }
    .module-row { grid-template-columns:135px 220px 1fr; gap:20px; }
  }
  @media (max-width:900px) {
    .header-inner { height:76px; } .brand img { width:140px; }
    .menu-toggle { display:flex; } .header-actions { margin-left:auto; }
    .site-nav { display:none; position:absolute; top:76px; left:0; right:0; background:var(--paper); padding:20px 28px 27px; border-bottom:1px solid var(--line); box-shadow:0 16px 22px #2111300a; }
    .site-nav.is-open { display:flex; flex-direction:column; align-items:stretch; gap:0; }
    .site-nav a { font-size:16px; padding:12px 0; }
    .hero-grid { grid-template-columns:1fr 1fr; gap:30px; } .hero-copy h1 { font-size:51px; } .hero-copy .lead { font-size:15px; }
    .hero-photo { height:490px; } .hero-summary { min-width:290px; left:-15px; padding:16px; }
    .hero-note { gap:10px; font-size:10px; flex-wrap:wrap; }
    .section { padding-block:75px; } .section-head { gap:35px; }
    .intro-layout { gap:50px; } .intro-right > p { font-size:15px; }
    .step-card { padding:24px; } .step-card h3 { font-size:23px; }
    .product-grid { gap:35px; } .product-art { padding:28px 20px; }
    .intelligence-grid { gap:40px; } .intelligence-card { padding:23px; }
    .industry-grid { grid-template-columns:repeat(3,1fr); } .industry-card { padding:24px; }
    .industry-card h3 { font-size:20px; } .insight-grid { gap:22px; } .insight-card h3 { font-size:21px; }
    .cta { padding:44px; flex-direction:column; align-items:flex-start; gap:28px; }
    .footer-grid { grid-template-columns:1.1fr 1fr 1fr; } .footer-brand { grid-column:1/-1; }
    .contact-grid { grid-template-columns:.8fr 1.2fr; gap:30px; } .demo-form { padding:28px; } .field-row { grid-template-columns:1fr; gap:0; }
    .ons-layout { gap:32px; } .ons-copy h2 { font-size:40px; }
    .ons-diagram { padding:20px; } .ons-center { flex-wrap:wrap; }
    .ons-center span { margin-left:0; }
    .context-head, .solution-definition { gap:40px; }
    .module-row { grid-template-columns:120px 1fr; } .module-row p { grid-column:2; }
    .scenario { grid-template-columns:1fr; gap:15px; }
  }
  @media (max-width:680px) {
    .container { width:calc(100% - 40px); }
    .header-inner { height:72px; gap:14px; } .brand img { width:126px; } .header-actions { gap:15px; }
    .header-actions > .button { display:none; } .lang-switch { font-size:11px; }
    .site-nav { top:72px; padding-inline:20px; } .menu-toggle { padding:8px; } .menu-toggle .icon { width:20px; height:20px; }
    .hero { padding-block:40px 35px; } .hero-grid { grid-template-columns:1fr; gap:35px; }
    .hero-copy h1 { font-size:clamp(45px,11vw,66px); max-width:520px; } .eyebrow { font-size:10px; letter-spacing:.12em; margin-bottom:19px; }
    .hero-copy .lead { font-size:16px; max-width:520px; } .hero-buttons { margin-top:25px; }
    .hero-note { margin-top:20px; gap:20px; font-size:10px; }
    .hero-photo { height:390px; object-position:63% center; } .hero-visual { margin-left:9px; }
    .hero-summary { left:-9px; bottom:40px; padding:18px; min-width:300px; max-width:calc(100% - 14px); }
    .image-chip { top:17px; left:16px; } .summary-head { font-size:12px; }
    .trust { padding-block:25px 29px; } .trust-label { font-size:10px; }
    .client-logos { grid-template-columns:repeat(3,1fr); gap:27px 20px; margin-top:28px; }
    .client-logo img { max-width:95px; max-height:28px; }
    .section { padding-block:60px; } .section-head { display:block; margin-bottom:32px; }
    .section-head > p { margin-top:20px; } h2 { font-size:34px; }
    .intro { padding-block:60px; } .intro-layout { grid-template-columns:1fr; gap:30px; } .intro-title { font-size:35px; }
    .workflow-grid { grid-template-columns:1fr; gap:16px; } .step-card { padding:24px; }
    .step-top { margin-bottom:26px; } .step-card h3 { font-size:27px; } .step-card p { max-width:none; }
    .product-grid { grid-template-columns:1fr; gap:38px; } .product-art { padding:27px 20px 20px; }
    .intelligence-grid { grid-template-columns:1fr; gap:35px; } .intelligence-card { padding:27px; }
    .industry-grid { grid-template-columns:1fr; gap:16px; } .industry-card { min-height:230px; padding:28px; }
    .industry-card > .icon { margin-bottom:30px; } .industry-card h3 { font-size:25px; } .industry-card p { font-size:14px; }
    .insight-grid { grid-template-columns:1fr; gap:35px; } .insight-art { height:190px; } .insight-card h3 { font-size:26px; }
    .faq-layout { grid-template-columns:1fr; gap:32px; } .faq-section { padding-top:60px; }
    .faq-list summary { font-size:14px; }
    .cta-wrap { padding-bottom:60px; } .cta { padding:34px 27px; border-radius:18px; } .cta h2 { font-size:34px; }
    .footer-grid { grid-template-columns:1fr 1fr; gap:32px; } .footer-column:last-child { grid-column:1/-1; } .site-footer { padding-top:38px; }
    .footer-bottom { flex-direction:column; gap:14px; margin-top:26px; padding-top:23px; }
    .page-hero { padding-block:48px; } .page-hero h1 { font-size:44px; } .page-hero .lead { font-size:16px; }
    .capability-grid, .deployment-grid { grid-template-columns:1fr; } .capability { padding:25px; gap:15px; } .deployment-card { padding:27px; }
    .contact-section { padding-block:45px 60px; } .contact-grid { grid-template-columns:1fr; gap:30px; }
    .demo-form { padding:25px; } .demo-form h2 { font-size:27px; } .field-row { grid-template-columns:1fr; }
    .article-layout { grid-template-columns:1fr; gap:30px; padding-block:40px 60px; }
    .article-sidebar { border-bottom:1px solid var(--line); padding-bottom:20px; } .article-body > p { font-size:16px; }
    .article-callout { padding:22px; } .article-body h2 { font-size:26px; }
    .solution-grid { grid-template-columns:1fr; gap:16px; } .solution-card { padding:27px; } .solution-card h3 { font-size:27px; }
    .ons-layout, .context-head, .solution-definition { grid-template-columns:1fr; gap:35px; }
    .film-layout { grid-template-columns:1fr; gap:28px; }
    .video-story-grid { grid-template-columns:1fr; gap:38px; }
    .film-copy > p { font-size:15px; } .film-player { border-radius:12px; }
    .ons-copy h2 { font-size:35px; } .ons-copy > p { font-size:15px; }
    .ons-diagram { padding:20px; } .ons-layer { padding:14px; } .ons-layer p { font-size:11px; }
    .ons-center { gap:9px; } .ons-center span { font-size:9px; }
    .context-questions { grid-template-columns:1fr; gap:22px; margin-top:32px; }
    .module-row { grid-template-columns:1fr; gap:9px; } .module-row p { grid-column:1; }
    .module-row h3 { font-size:16px; } .module-name { font-size:24px; }
    .solution-flow { grid-template-columns:1fr; gap:0; }
    .solution-flow li { flex-direction:row; padding-block:16px; gap:18px; align-items:baseline; }
    .flow-num { width:22px; flex:none; } .solution-values { grid-template-columns:1fr; gap:33px; }
    .scenario { padding:25px; margin-top:35px; }
    .industry-heading { font-size:25px; }
  }
  @media (prefers-reduced-motion:reduce) {
    html { scroll-behavior:auto; } *, *::before, *::after { transition:none !important; animation:none !important; }
  }
}


/* Tedsuite editorial system — spacious typography and moving field imagery. */
@layer base {
 :root { --paper:#fff; --ink:#18181b; --muted:#707074; --line:#e5e5e7; }
 body { font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; }
 h1,h2,h3 { letter-spacing:-.055em; }
 .container { width:min(1200px,calc(100% - 96px)); }
 .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; }
}
@layer components {
 .site-header { background:#ffffffde;backdrop-filter:blur(22px);border-bottom:1px solid #eee; }
 .header-inner { height:68px; } .brand img { width:134px; }
 .site-nav { font-size:12px;gap:28px; } .header-actions { gap:20px; }
 .button { border-radius:40px;box-shadow:none;font-weight:500; }
 .button.small { padding:9px 17px;font-size:12px; }
 .eyebrow::before { display:none; } .eyebrow { letter-spacing:.08em; }
 .opening { padding:100px 0 70px;text-align:center; }
 .opening-label { font-size:15px;font-weight:600;color:var(--ink);margin-bottom:25px; }
 .opening h1 { font-size:clamp(64px,7.7vw,112px);line-height:1.02;letter-spacing:-.065em; }
 .opening h1 .purple { color:#7939db; }
 .opening-description { font-size:21px;max-width:570px;margin:30px auto 0;line-height:1.5; }
 .opening-links { display:flex;justify-content:center;align-items:center;gap:30px;margin-top:30px; }
 .motion-scene { position:relative;background:#0c0c0e;overflow:hidden;width:100%;margin:0; }
 .motion-scene video { width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:16/9; }
 .opening-motion { padding:0 28px; }
 .opening-motion .motion-scene { border-radius:8px;max-height:760px; }
 .motion-toggle { position:absolute;right:24px;bottom:24px;width:42px;height:42px;border:1px solid #fff8;border-radius:50%;background:#151518a8;color:white;cursor:pointer;backdrop-filter:blur(10px); }
 .motion-fallback { position:absolute;bottom:20px;left:20px;color:white; }
 .trust { padding:54px 0 62px;text-align:center;border-bottom:1px solid var(--line); }
 .trust > .container > p { font-size:12px;letter-spacing:.03em; }
 .client-logos { display:flex;justify-content:space-between;align-items:center;gap:38px;margin-top:32px; }
 .client-logos > img { width:110px;height:34px;object-fit:contain;filter:grayscale(1);opacity:.65; }
 .manifesto { padding:140px 0 110px; }
 .editorial-heading { display:grid;grid-template-columns:1.15fr 1fr;gap:85px;align-items:end; }
 .editorial-heading h2 { font-size:clamp(40px,4.4vw,65px);line-height:1.07; }
 .editorial-heading p { font-size:20px;line-height:1.55;max-width:480px; }
 .editorial-heading .text-link { margin-top:22px; }
 .visual-story { padding:120px 0 100px;background:#f5f5f7;overflow:hidden; }
 .product-composition { margin-top:75px; }
 .composition-stage { position:relative;padding:20px 90px 60px 0; }
 .desktop-still { border:8px solid #242427;border-radius:15px;box-shadow:0 35px 55px -28px #17141f55;overflow:hidden; }
 .desktop-still img { width:100%; }
 .mobile-still { position:absolute;right:0;bottom:0;width:18%;border:6px solid #242427;border-radius:25px;overflow:hidden;box-shadow:0 25px 45px #18131e25; }
 .product-composition figcaption,.distribution-visual figcaption,.verification-art figcaption { font-size:11px;color:#68686d;margin-top:28px; }
 .cinema-chapter { padding:135px 0 0; }
 .cinema-chapter .editorial-heading { margin-bottom:70px; }
 .cinema-chapter .motion-scene { max-height:820px; }
 .verification-story { padding:150px 0;overflow:hidden; }
 .verification-layout { display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:90px; }
 .verification-copy h2 { font-size:clamp(40px,4.2vw,60px); }
 .verification-copy p { font-size:19px;margin:28px 0; }
 .chapter-label { display:block;font-size:12px;letter-spacing:.08em;color:var(--purple);margin-bottom:26px;font-weight:600; }
 .category-crop { position:relative;aspect-ratio:1545/825;overflow:hidden;border:1px solid #dedee3;border-radius:8px;box-shadow:0 35px 60px -35px #17141f55; }
 .category-crop img { position:absolute;left:-3.56%;top:-15.39%;width:103.56%;max-width:none; }
 .nervous-system { background:#16141b;color:#fff;padding:130px 0; }
 .nervous-system .chapter-label { color:#b99ae5; }
 .nervous-system p { color:#a5a1ae; }
 .nervous-system .text-link { color:#d6c0ff; }
 .nervous-line { display:grid;grid-template-columns:repeat(4,1fr);margin-top:90px;border-top:1px solid #514959; }
 .nervous-layer { padding:28px 28px 0 0;position:relative; }
 .nervous-layer::before { content:"";position:absolute;top:-4px;left:0;width:7px;height:7px;background:#bd94f5;border-radius:50%; }
 .layer-index { color:#8f849c;font-size:12px; } .nervous-layer h3 { margin:20px 0 10px;font-size:26px; }
 .nervous-layer p { font-size:15px;max-width:220px; }
 .nervous-note { font-size:11px;margin-top:55px; }
 .coordination-chapter { background:#f5f5f7; }
 .ai-story { padding:145px 0;background:#f5f5f7;overflow:hidden; }
 .ai-story-layout { display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px; }
 .ai-story h2 { font-size:clamp(40px,4.5vw,65px); }
 .ai-story p { font-size:19px;margin-top:28px; }
 .scope-note,.ai-story p.scope-note { font-size:12px;max-width:430px;line-height:1.6; }
 .ai-composition { display:flex;align-items:start;justify-content:center;gap:25px;padding:20px; }
 .ai-phone { width:46%;max-width:235px;overflow:hidden;border:6px solid #242427;border-radius:27px;box-shadow:0 25px 35px #1d172018; }
 .ai-phone.second { margin-top:95px; } .ai-phone img { width:100%; }
 .ai-motion { background:#f5f5f7; } .ai-motion .scope-note { padding:0 0 25px; }
 .solution-list { border-top:1px solid var(--line); }
 .solution-row { display:grid;grid-template-columns:45px 1fr 1fr 35px;gap:24px;align-items:baseline;padding:40px 0;border-bottom:1px solid var(--line); }
 .solution-index { color:#999;font-size:12px; } .solution-row h3 { font-size:29px; } .solution-row p { font-size:15px; } .solution-arrow { font-size:28px;color:var(--purple); }
 .solution-row:hover h3 { color:var(--purple); }
 .distribution-visual { margin-top:65px; } .distribution-visual img { border:7px solid #242427;border-radius:12px; }
 .insight-art { display:none; } .insight-card { padding-top:24px;border-top:1px solid var(--line); }
 .insight-grid { gap:32px; } .insight-card h3 { font-size:26px; }
 .cta-wrap { padding:60px 0 100px; } .cta { background:#f5f5f7;color:var(--ink);border-radius:0;padding:65px; } .cta p { color:var(--muted); } .cta .button.light { background:var(--purple);color:white; }
 .page-hero { padding:110px 0 90px; } .page-hero h1 { font-size:clamp(52px,6vw,84px); }
 .capability,.deployment-card,.industry-card,.scenario,.context-question { border-radius:0;box-shadow:none;background:transparent; }
}
@layer responsive {
 @media(min-width:1600px) { .opening-motion { max-width:1700px;margin:auto; } }
 @media(max-width:900px) {
  .container { width:calc(100% - 56px); } .header-inner { height:68px; } .site-nav { top:68px; }
  .editorial-heading { gap:38px;grid-template-columns:1fr 1fr; } .editorial-heading p { font-size:17px; }
  .verification-layout,.ai-story-layout { gap:40px; } .verification-copy p,.ai-story p { font-size:17px; }
  .manifesto,.visual-story,.verification-story,.ai-story,.nervous-system { padding-block:90px; }
  .solution-row { grid-template-columns:28px 1fr 1fr 25px;gap:15px; } .solution-row h3 { font-size:24px; }
  .nervous-line { gap:20px; } .nervous-layer { padding-right:0; } .nervous-layer h3 { font-size:22px; }
 }
 @media(max-width:600px) {
  .container { width:calc(100% - 40px); } .opening { padding:64px 0 50px; }
  .opening h1 { font-size:clamp(47px,10.5vw,64px); } .opening-label { font-size:12px;margin-bottom:22px; }
  .opening-description { font-size:17px;max-width:330px;margin-top:24px; } .opening-links { gap:22px;flex-wrap:wrap;margin-top:25px; } .opening-links .text-link { font-size:13px; }
  .opening-motion { padding:0 10px; } .motion-toggle { right:14px;bottom:14px;width:36px;height:36px; }
  .client-logos { display:grid;grid-template-columns:repeat(3,1fr);gap:25px;justify-items:center; } .client-logos > img { width:85px;height:28px; }
  .trust { padding:36px 0; } .editorial-heading { grid-template-columns:1fr;gap:26px; }
  .editorial-heading h2,.verification-copy h2,.ai-story h2 { font-size:39px; }
  .manifesto,.visual-story,.verification-story,.ai-story,.nervous-system { padding-block:72px; }
  .product-composition { margin-top:42px; } .composition-stage { padding:0 30px 35px 0; } .desktop-still { border-width:4px;border-radius:8px; } .mobile-still { width:23%;border-width:3px;border-radius:11px; }
  .cinema-chapter { padding-top:72px; } .cinema-chapter .editorial-heading { margin-bottom:36px; }
  .verification-layout,.ai-story-layout { grid-template-columns:1fr;gap:45px; } .verification-copy { grid-row:1; }
  .chapter-label { margin-bottom:20px; } .nervous-line { grid-template-columns:1fr 1fr;gap:36px 20px;margin-top:45px; } .nervous-layer { border-top:1px solid #514959; }
  .nervous-line { border:0; } .nervous-layer h3 { margin-top:12px; } .nervous-layer p { font-size:13px; }
  .ai-composition { max-width:370px;margin:auto;gap:18px; } .ai-phone { border-width:4px;border-radius:20px; } .ai-phone.second { margin-top:60px; }
  .solution-row { grid-template-columns:25px 1fr 25px;gap:12px;padding:27px 0; } .solution-row p { grid-column:2;grid-row:2; } .solution-arrow { grid-column:3;grid-row:1; }
  .solution-row h3 { font-size:25px; } .cta { padding:35px 25px; } .cta h2 { font-size:34px; } .cta-wrap { padding:20px 0 60px; }
  .page-hero { padding:65px 0; } .page-hero h1 { font-size:43px; }
 }
}

@layer components {
 .field-map-story { padding:100px 0;background:#f5f5f7;overflow:hidden; }
 .field-map-story figure { margin-top:60px; }
 .map-art { position:relative;aspect-ratio:1017/610;overflow:hidden;border-radius:12px;box-shadow:0 25px 60px -35px #231b3c60; }
 .map-art img { position:absolute;width:157.32%;max-width:none;left:-54.67%;top:-34.26%; }
 .field-map-story figcaption,.mobile-pair figcaption { font-size:11px;color:#68686d;margin-top:25px; }
 .mobile-field-story { background:#070709;color:#fff;padding:100px 0 70px;overflow:hidden; }
 .mobile-field-story .editorial-heading p { color:#a7a7b0; }
 .mobile-pair { display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:55px; }
 .mobile-pair img { width:100%;height:auto; }
 .mobile-pair figcaption { grid-column:1/-1;text-align:center; }
}
@layer responsive {
 @media(max-width:600px) {
  .field-map-story,.mobile-field-story { padding-block:65px; }
  .field-map-story figure { margin-top:35px; }
  .mobile-pair { margin-top:35px;grid-template-columns:1fr;gap:20px; }
 }
}

@layer components {
 .verification-overview { border:1px solid #dedee3;border-radius:8px;overflow:hidden;box-shadow:0 35px 60px -35px #17141f55; }
 .verification-overview img { display:block;width:100%;height:auto; }
}

@layer components {
 .inspection-records-art { position:relative;aspect-ratio:1335/665;overflow:hidden;border:1px solid #dedee3;border-radius:10px;box-shadow:0 25px 60px -35px #231b3c60; }
 .inspection-records-art img { position:absolute;width:103.596%;max-width:none;left:-3.596%;top:-16.54%;height:auto; }
}

@layer components {
 .current-map-art { position:relative;aspect-ratio:1085/554;overflow:hidden;border-radius:10px;box-shadow:0 25px 60px -35px #231b3c60; }
 .current-map-art img { position:absolute;width:148.018%;max-width:none;left:-45.622%;top:-25.993%;height:auto; }
}

@layer components {
 .mobile-platforms { display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:22px;font-size:12px;line-height:1.4; }
 .mobile-platforms-label { color:var(--muted);margin-right:5px; }
 .platform-tag { display:inline-block;border:1px solid #d8d8dd;border-radius:30px;padding:6px 13px;font-weight:600;color:var(--ink); }
 .mobile-field-story .platform-tag { border-color:#52525b;color:#f5f5f7; }
 .mobile-field-story .mobile-platforms-label { color:#a7a7b0; }
}

@layer components { .platform-download:hover { border-color:var(--purple);color:var(--purple); } .mobile-field-story .platform-download:hover { border-color:#c5a1ff;color:#c5a1ff; } }

@layer responsive {
 @media(max-width:900px) {
  .lang-switch a { display:inline-flex;align-items:center;justify-content:center;min-width:30px;min-height:44px; }
  .menu-toggle { min-width:44px;min-height:44px;align-items:center;justify-content:center; }
  .site-nav { top:68px; }
 }
 @media(max-width:600px) {
  .opening h1 { overflow-wrap:anywhere; }
  .module-row,.solution-row,.editorial-heading > *, .verification-copy { min-width:0; }
  .platform-tag { min-height:40px;display:inline-flex;align-items:center; }
 }
}

@layer components {
 .footer-legal { flex-wrap:wrap; }
 .legal-heading { padding:85px 0 45px;border-bottom:1px solid var(--line); }
 .legal-heading h1 { max-width:980px;font-size:clamp(32px,4.4vw,58px);line-height:1.15;letter-spacing:-.04em;overflow-wrap:anywhere; }
 .legal-navigation { display:flex;gap:25px;flex-wrap:wrap;margin-top:35px;font-size:14px; }
 .legal-navigation a[aria-current],.legal-navigation a:hover { color:var(--purple); }
 .legal-layout { max-width:900px;padding-block:50px 100px; }
 .legal-content { font-size:16px;line-height:1.8;overflow-wrap:anywhere; }
 .legal-content h2 { font-size:23px;line-height:1.4;letter-spacing:-.015em;margin:40px 0 18px; }
 .legal-content h3 { font-size:18px;letter-spacing:0;margin:27px 0 12px; }
 .legal-content p { margin:0 0 20px;color:#505057; }
 .legal-content li { margin:10px 0;color:#505057; }
 .legal-content ul { padding-left:24px; }
 .legal-content a,.form-policy a { color:var(--purple-dark);text-decoration:underline;text-underline-offset:3px; }
 .legal-content .legal-date { margin-bottom:40px; }
 .legal-notice { margin-top:25px;font-size:14px;line-height:1.7;color:#606069; }
 aside.legal-notice { border-left:2px solid var(--purple);padding:12px 22px;background:#f5f5f7;margin:0 0 45px; }
 .legal-notice p { margin-top:8px; }
 .form-policy { font-size:12px;margin:0 0 22px; }
}
@layer responsive {
 @media(max-width:600px) {
  .legal-heading { padding:50px 0 30px; }
  .legal-navigation { gap:18px;font-size:13px; }
  .legal-layout { padding-block:30px 60px; }
  .legal-content { font-size:15px; }
  .legal-content h2 { font-size:20px; }
 }
}

@layer components {
 .form-honeypot { position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden; }
 #contact-verification { margin-bottom:20px;min-width:0; }
 .demo-form button:disabled { opacity:.6;cursor:wait; }
}
