/* L09: isolated engineering-catalog landing. Shared site shell remains in common CSS. */
.l09-page { --l09-ink:#202538; --l09-muted:#596174; --l09-purple:#6345c1; --l09-line:#dce0e9; --l09-dark:#171d31; }
.l09-page .l09-main { color:var(--l09-ink); background:#fff; font-family:Montserrat,Arial,sans-serif; font-size:16px; line-height:1.65; }
.l09-main *, .l09-main *::before, .l09-main *::after { box-sizing:border-box; }
.l09-main h1, .l09-main h2, .l09-main h3, .l09-main p, .l09-main figure { margin:0; }
.l09-main h1, .l09-main h2, .l09-main h3 { color:inherit; font-weight:600; }
.l09-main img { display:block; max-width:100%; height:auto; }
.l09-main a { color:inherit; text-decoration:none; }
.l09-main [hidden] { display:none!important; }
.l09-main a:focus-visible, .l09-main input:focus-visible, .l09-main summary:focus-visible { outline:3px solid #a38ae9; outline-offset:5px; }
.l09-wrap { width:100%; max-width:1260px; padding:0 30px; margin:0 auto; }
.l09-main h2 { font-size:clamp(28px,3.2vw,40px); line-height:1.18; letter-spacing:-.035em; text-wrap:balance; }
.l09-main h3 { font-size:21px; line-height:1.35; letter-spacing:-.025em; }
.l09-main p + p { margin-top:16px; }
.l09-main .l09-kicker { margin-bottom:20px; font-size:12px; font-weight:600; line-height:1.5; letter-spacing:.11em; text-transform:uppercase; color:var(--l09-purple); }
.l09-breadcrumb { display:flex; gap:10px; flex-wrap:wrap; padding:22px 0; color:var(--l09-muted); font-size:12px; line-height:1.5; }
.l09-breadcrumb a:hover { color:var(--l09-purple); text-decoration:underline; }
.l09-hero { background:var(--l09-dark); color:#fff; overflow:hidden; }
.l09-hero-grid { display:grid; grid-template-columns:1.04fr 1fr; gap:35px; align-items:center; padding-top:54px; padding-bottom:50px; }
.l09-hero-copy { position:relative; z-index:1; min-width:0; }
.l09-hero .l09-kicker { color:#bdb2e9; margin-bottom:24px; }
.l09-main h1 { font-size:clamp(36px,3.6vw,52px); line-height:1.07; letter-spacing:-.045em; overflow-wrap:normal; }
.l09-main .l09-lead { margin-top:25px; color:#d4d7e2; font-size:18px; line-height:1.65; max-width:570px; }
.l09-actions { display:flex; align-items:center; flex-wrap:wrap; gap:22px; margin-top:28px; }
.l09-button { display:inline-flex; align-items:center; justify-content:space-between; gap:20px; min-height:54px; padding:16px 22px; border:1px solid transparent; border-radius:10px; background:var(--l09-purple); color:#fff!important; font:600 14px/1.4 Montserrat,Arial,sans-serif; transition:background .2s; }
.l09-button:hover { background:#50379f; }
.l09-button span { font-size:22px; line-height:1; }
.l09-button--light { background:#fff; color:#3f2b80!important; }
.l09-button--light:hover { background:#f0ebff; }
.l09-text-link { font-size:14px; color:#d4c9fc!important; padding:10px 0; }
.l09-text-link:hover, .l09-inline-link:hover, .l09-source-links a:hover { text-decoration:underline; text-underline-offset:4px; }
.l09-main .l09-hero-proof { margin-top:28px; max-width:535px; border-top:1px solid #41475c; padding-top:20px; color:#b8bece; font-size:14px; line-height:1.65; }
.l09-hero-proof a { display:inline-block; color:#d4c9fc; text-decoration:underline; text-underline-offset:3px; }
.l09-hero-visual { min-width:0; position:relative; }
.l09-hero-visual img { width:100%; border-radius:18px; }
.l09-hero-visual figcaption { margin-top:16px; font-size:12px; line-height:1.5; color:#b8bece; max-width:440px; }
.l09-visual-note { position:absolute; bottom:70px; right:-8px; padding:14px 18px; border:1px solid #55536b; border-radius:10px; background:#22263aeF; box-shadow:0 12px 32px #0003; }
.l09-visual-note span { display:block; font-size:12px; color:#b8bece; margin-bottom:5px; }
.l09-visual-note strong { display:block; font-size:12px; font-weight:500; }
.l09-jump { display:flex; gap:28px; padding-top:20px; padding-bottom:20px; border-bottom:1px solid var(--l09-line); font-size:14px; color:var(--l09-muted); flex-wrap:wrap; }
.l09-jump a { padding:4px 0; }
.l09-jump a:hover { color:var(--l09-purple); }
.l09-section { padding-top:90px; padding-bottom:90px; }
.l09-heading-row { display:grid; grid-template-columns:250px 1fr; gap:45px; margin-bottom:42px; }
.l09-heading-row .l09-kicker { margin-top:7px; }
.l09-heading-row h2 + p { margin-top:22px; max-width:820px; color:var(--l09-muted); }
.l09-journey { display:grid; grid-template-columns:repeat(4,1fr); gap:28px; padding:0; margin:0; list-style:none; }
.l09-journey li { border-top:2px solid #c9bdf0; padding-top:23px; }
.l09-journey li > span { display:block; color:var(--l09-purple); font-size:12px; margin-bottom:23px; }
.l09-journey h3 { font-size:18px; margin-bottom:12px; }
.l09-journey p { color:var(--l09-muted); font-size:14px; }
.l09-demo-section { padding:80px 0; background:#f2f1f8; scroll-margin-top:25px; }
.l09-demo-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:70px; align-items:start; }
.l09-demo-copy h2 { margin-bottom:24px; }
.l09-demo-copy > p:not(.l09-kicker) { color:var(--l09-muted); }
.l09-main .l09-note { font-size:14px; color:var(--l09-muted); line-height:1.6; }
.l09-demo-copy .l09-note { border-left:2px solid #b9a6e9; padding-left:15px; margin-top:24px; }
.l09-comparison { min-width:0; background:#fff; border:1px solid #dddce8; border-radius:15px; box-shadow:0 20px 50px #2821440c; overflow:hidden; }
.l09-comparison-top { display:flex; gap:20px; justify-content:space-between; align-items:center; padding:20px 22px; background:#20263b; color:#fff; font-size:12px; }
.l09-difference { display:flex; align-items:center; gap:8px; cursor:pointer; font-size:12px; }
.l09-difference input { accent-color:#7255c9; width:18px; height:18px; flex-shrink:0; cursor:pointer; }
.l09-table { width:100%; table-layout:fixed; border-collapse:collapse; font-size:13px; line-height:1.5; }
.l09-table caption { padding:18px 22px 0; text-align:left; font-size:12px; color:var(--l09-muted); caption-side:bottom; }
.l09-table th, .l09-table td { text-align:left; padding:15px 15px; border-bottom:1px solid #e9eaf0; vertical-align:middle; overflow-wrap:anywhere; }
.l09-table thead th { background:#f9f9fc; font-weight:600; font-size:14px; }
.l09-table th:first-child { width:44%; padding-left:22px; }
.l09-table tbody th { font-weight:500; color:var(--l09-muted); }
.l09-table tbody td { font-weight:600; font-variant-numeric:tabular-nums; }
.l09-main .l09-comparison-status { font-size:12px; color:var(--l09-muted); margin:10px 22px 16px; }
.l09-source-links { border-top:1px solid #e9eaf0; padding:15px 22px; display:flex; flex-wrap:wrap; gap:12px; font-size:12px; }
.l09-source-links span { width:100%; color:var(--l09-muted); }
.l09-source-links a { color:var(--l09-purple); padding:5px 0; }
.l09-data-grid { display:grid; grid-template-columns:1.4fr 1fr; gap:90px; align-items:start; }
.l09-editorial-list article { display:flex; align-items:start; gap:25px; border-top:1px solid var(--l09-line); padding:26px 0; }
.l09-editorial-list article > span { padding-top:2px; font-size:14px; color:var(--l09-purple); }
.l09-editorial-list h3 { margin-bottom:10px; }
.l09-editorial-list p { color:var(--l09-muted); font-size:14px; }
.l09-document { background:var(--l09-dark); border-radius:14px; color:#fff; padding:32px; position:relative; }
.l09-document-icon { border:1px solid #71658e; border-radius:5px; font-size:12px; padding:6px 10px; display:inline-block; color:#d3c3fb; margin-bottom:30px; }
.l09-document .l09-kicker { color:#bfb0e6; margin-bottom:12px; }
.l09-document h3 { font-size:23px; }
.l09-document dl { margin:28px 0; font-size:12px; }
.l09-document dl > div { padding:13px 0; border-top:1px solid #41465b; display:grid; grid-template-columns:100px 1fr; gap:10px; }
.l09-document dt { color:#bac0d0; }
.l09-document dd { margin:0; }
.l09-document > p:last-child { font-size:14px; line-height:1.65; color:#bac0d0; }
.l09-supply { background:#f8f9fb; scroll-margin-top:25px; }
.l09-order-paths { display:grid; grid-template-columns:1fr 1fr; gap:60px; }
.l09-order-paths article { border-top:2px solid #c5b9e7; padding-top:25px; }
.l09-main .l09-path-label { color:var(--l09-purple); font-size:12px; margin-bottom:16px; }
.l09-order-paths h3 { font-size:25px; margin-bottom:20px; }
.l09-order-paths article > p:not(.l09-path-label) { color:var(--l09-muted); font-size:14px; }
.l09-main .l09-path-result { padding-top:18px; margin-top:20px; border-top:1px solid var(--l09-line); }
.l09-main .l09-supply-note { margin-top:34px; max-width:930px; }
.l09-exchange-board { padding:32px; color:#fff; background:var(--l09-dark); border-radius:16px; }
.l09-board-caption { color:#bcb5d9; font-size:12px; letter-spacing:.04em; margin-bottom:25px!important; }
.l09-exchange-flow { display:grid; grid-template-columns:1fr 35px 1fr 35px 1fr; gap:14px; align-items:center; }
.l09-exchange-flow div { padding:20px; background:#282e43; border-radius:9px; min-height:170px; }
.l09-exchange-flow span:not(.l09-flow-arrow) { display:block; color:#bcb5d9; font-size:12px; }
.l09-exchange-flow strong { display:block; font-size:19px; font-weight:500; margin:13px 0; line-height:1.3; }
.l09-exchange-flow p { color:#c6cada; font-size:14px; }
.l09-flow-arrow { font-size:24px; text-align:center; color:#b7a1ef; }
.l09-main .l09-return-path { border-top:1px solid #4b5064; margin-top:28px; padding-top:20px; color:#c6cada; font-size:14px; }
.l09-return-path > span { font-size:20px; margin-right:8px; color:#b7a1ef; }
.l09-exchange-detail { display:grid; grid-template-columns:1fr 1fr; gap:60px; margin-top:35px; }
.l09-exchange-detail h3 { margin-bottom:13px; font-size:19px; }
.l09-exchange-detail p { font-size:14px; color:var(--l09-muted); }
.l09-case-section { background:#f7f5fc; }
.l09-case { display:grid; grid-template-columns:1fr 1.07fr; gap:75px; align-items:start; }
.l09-case-tag { display:block; color:var(--l09-purple); font-size:12px; margin-bottom:20px; }
.l09-case h3 { font-size:28px; margin-bottom:23px; }
.l09-case-copy p { color:var(--l09-muted); font-size:14px; }
.l09-case .l09-note { margin-top:20px; padding-left:15px; border-left:2px solid #baaae1; }
.l09-inline-link { display:inline-block; color:var(--l09-purple)!important; font-size:14px; font-weight:600; margin-top:22px; padding:5px 0; }
.l09-case-media figure + figure { margin-top:28px; }
.l09-case-media img { border-radius:10px; border:1px solid #e3deed; width:100%; }
.l09-case-media figcaption { font-size:12px; color:var(--l09-muted); line-height:1.5; margin-top:10px; }
.l09-bakaev { display:grid; grid-template-columns:1.7fr 1fr; gap:70px; border-top:1px solid #dcd5e9; padding-top:40px; margin-top:55px; }
.l09-bakaev h3 { margin-bottom:20px; font-size:26px; }
.l09-bakaev p { color:var(--l09-muted); font-size:14px; }
.l09-main .l09-bakaev-boundary { align-self:center; border-left:2px solid #baa8e6; padding-left:25px; font-size:14px; }
.l09-scope-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; }
.l09-scope-grid h3 { margin-bottom:24px; font-size:23px; }
.l09-list { margin:0; padding:0; list-style:none; font-size:14px; color:var(--l09-muted); }
.l09-list li { padding:14px 0 14px 22px; border-top:1px solid var(--l09-line); position:relative; }
.l09-list li::before { content:'+'; color:var(--l09-purple); position:absolute; left:0; top:14px; }
.l09-cost { padding:30px; background:#f7f5fc; border-radius:12px; margin:40px 0; }
.l09-cost h3 { margin-bottom:18px; }
.l09-cost p { font-size:14px; color:var(--l09-muted); max-width:1050px; }
.l09-acceptance { display:grid; grid-template-columns:1fr 2fr; gap:50px; }
.l09-acceptance ol { margin:0; padding-left:20px; font-size:14px; color:var(--l09-muted); }
.l09-acceptance li { padding-left:7px; margin-bottom:16px; }
.l09-faq-section { padding-bottom:70px; }
.l09-faq { max-width:900px; margin-left:auto; }
.l09-page .l09-faq > details { border-radius:0; padding:20px 0; border:0; border-bottom:1px solid var(--l09-line); background:transparent; }
.l09-page .l09-faq > details > summary { font-size:16px; font-weight:500; color:var(--l09-ink); }
.l09-page .l09-faq > details > p { font-size:14px; color:var(--l09-muted); line-height:1.65; }
.l09-related { display:grid; grid-template-columns:1fr 1fr; gap:60px; padding-bottom:75px; }
.l09-related a { display:block; border-top:1px solid var(--l09-line); padding:24px 0; }
.l09-related span { display:block; color:var(--l09-muted); font-size:14px; margin-bottom:12px; }
.l09-related strong { font-size:17px; font-weight:500; color:var(--l09-purple); }
.l09-related a:hover strong { text-decoration:underline; text-underline-offset:4px; }
.l09-final { background:#35285e; color:#fff; padding:75px 0; }
.l09-final .l09-kicker { color:#cfc0f0; }
.l09-final-grid { display:grid; grid-template-columns:1.5fr 1fr; gap:90px; align-items:center; }
.l09-final h2 { font-size:clamp(30px,3vw,39px); margin-bottom:24px; }
.l09-final p { font-size:14px; color:#d5cce5; }
.l09-final-action > p { margin-top:22px; font-size:14px; }
.l09-final-action > p a { color:#fff; text-decoration:underline; text-underline-offset:3px; }
.l09-phone { display:inline-block; font-size:18px; margin-top:22px; padding:5px 0; }
.l09-main section[id] { scroll-margin-top:25px; }
@media(max-width:1100px) {
  .l09-hero-grid { gap:22px; }
  .l09-heading-row { grid-template-columns:190px 1fr; gap:30px; }
  .l09-demo-grid { gap:35px; grid-template-columns:.9fr 1.1fr; }
  .l09-data-grid, .l09-case { gap:45px; }
  .l09-final-grid { gap:40px; }
  .l09-table th, .l09-table td { padding:14px 12px; }
}
@media(max-width:900px) {
  .l09-hero-grid { grid-template-columns:1fr; gap:40px; }
  .l09-main h1 { max-width:780px; font-size:46px; }
  .l09-hero-visual { max-width:680px; }
  .l09-hero-visual img { max-height:430px; object-fit:cover; }
  .l09-section { padding-top:65px; padding-bottom:65px; }
  .l09-heading-row { grid-template-columns:1fr; gap:5px; }
  .l09-journey { grid-template-columns:1fr 1fr; gap:35px; }
  .l09-demo-grid { grid-template-columns:1fr; gap:40px; }
  .l09-demo-section { padding:65px 0; }
  .l09-demo-copy { max-width:720px; }
  .l09-data-grid { gap:35px; }
  .l09-document { padding:24px; }
  .l09-document dl > div { grid-template-columns:80px 1fr; }
  .l09-order-paths, .l09-exchange-detail { gap:35px; }
  .l09-exchange-board { padding:25px; }
  .l09-exchange-flow { gap:7px; grid-template-columns:1fr 24px 1fr 24px 1fr; }
  .l09-exchange-flow div { padding:15px; min-height:195px; }
  .l09-exchange-flow strong { font-size:17px; }
  .l09-case { grid-template-columns:1fr; gap:35px; }
  .l09-case-media { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
  .l09-case-media figure + figure { margin-top:0; }
  .l09-bakaev { gap:30px; }
  .l09-scope-grid { gap:35px; }
  .l09-acceptance { gap:30px; grid-template-columns:1fr 1.7fr; }
  .l09-faq { max-width:100%; }
  .l09-final-grid { grid-template-columns:1fr; gap:35px; }
}
@media(max-width:600px) {
  .l09-main { font-size:15px!important; }
  .l09-wrap { padding-left:20px; padding-right:20px; }
  .l09-breadcrumb { padding:17px 0; font-size:12px; gap:7px; }
  .l09-hero-grid { padding-top:36px; padding-bottom:32px; gap:30px; }
  .l09-hero .l09-kicker { font-size:12px; margin-bottom:20px; }
  .l09-main h1 { font-size:34px; line-height:1.12; letter-spacing:-.04em; }
  .l09-main .l09-lead { font-size:16px; line-height:1.65; margin-top:20px; }
  .l09-actions { align-items:stretch; gap:12px; flex-direction:column; }
  .l09-button { width:100%; padding:15px 17px; gap:12px; font-size:15px; }
  .l09-text-link { padding:8px 0; }
  .l09-main .l09-hero-proof { font-size:14px; margin-top:20px; }
  .l09-hero-visual figcaption { font-size:12px; margin-top:12px; }
  .l09-visual-note { display:none; }
  .l09-jump { padding-top:16px; padding-bottom:16px; gap:10px 18px; font-size:14px; }
  .l09-section { padding-top:50px; padding-bottom:50px; }
  .l09-heading-row { margin-bottom:30px; }
  .l09-main h2 { font-size:29px; letter-spacing:-.035em; }
  .l09-main .l09-kicker { font-size:12px; margin-bottom:14px; }
  .l09-heading-row h2 + p { margin-top:18px; }
  .l09-journey { grid-template-columns:1fr; gap:25px; }
  .l09-journey li { display:grid; grid-template-columns:30px 1fr; gap:0 13px; padding-top:18px; }
  .l09-journey li > span { margin-bottom:0; grid-row:span 2; padding-top:4px; }
  .l09-journey h3 { margin-bottom:8px; }
  .l09-journey p { font-size:14px; }
  .l09-demo-section { padding:50px 0; }
  .l09-demo-grid { gap:30px; }
  .l09-comparison-top { padding:16px 12px; align-items:start; gap:12px; flex-direction:column; }
  .l09-comparison-top > span { font-size:12px; }
  .l09-difference { font-size:12px; }
  .l09-table { font-size:12px; line-height:1.55; }
  .l09-table th:first-child { width:44%; padding-left:12px; }
  .l09-table th, .l09-table td { padding:13px 7px; }
  .l09-table thead th { font-size:12px; }
  .l09-table caption { padding:15px 12px 0; font-size:12px; }
  .l09-main .l09-comparison-status { margin-left:12px; margin-right:12px; font-size:12px; }
  .l09-source-links { padding:12px; font-size:12px; gap:8px 18px; }
  .l09-source-links a { font-size:12px; }
  .l09-data-grid, .l09-order-paths, .l09-exchange-detail, .l09-bakaev, .l09-scope-grid, .l09-acceptance, .l09-related { grid-template-columns:1fr; gap:30px; }
  .l09-editorial-list article { gap:17px; padding:23px 0; }
  .l09-editorial-list h3 { font-size:20px; }
  .l09-document { padding:24px; }
  .l09-document dl > div { grid-template-columns:85px 1fr; }
  .l09-document-icon { margin-bottom:24px; }
  .l09-order-paths h3 { font-size:23px; }
  .l09-exchange-board { padding:22px; }
  .l09-exchange-flow { grid-template-columns:1fr; gap:10px; }
  .l09-exchange-flow div { min-height:0; padding:18px; }
  .l09-flow-arrow { transform:rotate(90deg); line-height:1.3; }
  .l09-exchange-flow strong { margin:8px 0; font-size:21px; }
  .l09-main .l09-return-path { font-size:14px; margin-top:22px; }
  .l09-case h3, .l09-bakaev h3 { font-size:25px; }
  .l09-case-media { grid-template-columns:1fr; gap:25px; }
  .l09-bakaev { margin-top:38px; padding-top:30px; }
  .l09-main .l09-bakaev-boundary { padding-left:15px; }
  .l09-cost { padding:24px; margin:30px 0; }
  .l09-acceptance { gap:20px; }
  .l09-faq-section { padding-bottom:45px; }
  .l09-page .l09-faq > details > summary { font-size:15px; padding-right:40px; }
  .l09-related { padding-bottom:45px; gap:5px; }
  .l09-final { padding:50px 0; }
  .l09-final h2 { font-size:29px; }
}
@media(max-width:374px) {
  .l09-wrap { padding-left:16px; padding-right:16px; }
  .l09-main h1 { font-size:29px; }
  .l09-main h2 { font-size:26px; }
  .l09-main .l09-lead { font-size:15px; }
  .l09-button { font-size:15px; padding:14px 14px; }
  .l09-table { font-size:12px; }
  .l09-table thead th { font-size:12px; }
  .l09-table th, .l09-table td { padding-left:6px; padding-right:6px; }
}
@media(prefers-reduced-motion:reduce) { .l09-main *, .l09-main *::before, .l09-main *::after { transition:none!important; scroll-behavior:auto!important; } }
@media(forced-colors:active) { .l09-button { border:1px solid ButtonText; } }
@media print { .l09-page .header, .l09-jump, .l09-actions, .l09-related, .l09-page .footer { display:none; } .l09-main .l09-hero, .l09-main .l09-final, .l09-main .l09-exchange-board { background:#fff; color:#000; } .l09-main p { color:#222!important; } .l09-section { padding-top:25px; padding-bottom:25px; } }


/* 2026-10-03: shared 13FOX spacing and readable UI refinement. */
.l09-page .l09-wrap { box-sizing:border-box; width:100%; max-width:1320px; margin-inline:auto; padding-inline:15px; }
.commercial-page .l09-breadcrumb { gap:8px; font-size:16px; line-height:1.5; }
.commercial-page .l09-faq > details { border:1px solid var(--commercial-border); border-radius:18px; background:#fff; padding:0; }
.commercial-page .l09-faq > details > summary { font-size:17px; line-height:1.5; padding:20px 58px 20px 22px; }
.commercial-page .l09-faq > details > :not(summary) { padding-left:22px; padding-right:22px; }
@media(max-width:600px) {
 .commercial-page .l09-breadcrumb { font-size:15px; }
 .commercial-page .l09-faq > details > summary { font-size:16px; padding:18px 52px 18px 18px; }
 .commercial-page .l09-faq > details > :not(summary) { padding-left:18px; padding-right:18px; }
}
.commercial-page.l09-page main .l09-button { border-radius:14px; }
