/* Isolated L14 composition. Shared navigation, consent and lead runtime stay native. */
.xl14-page { --xl14-ink:#25232e; --xl14-muted:#655f72; --xl14-purple:#7052cf; --xl14-line:#ded8eb; --xl14-soft:#f5f2fb; }
.xl14-page .xl14-main { color:var(--xl14-ink); background:#fff; font-size:17px; line-height:1.65; }
.xl14-page .xl14-shell { max-width:1290px; padding-inline:32px; }
.xl14-page .xl14-main :where(h1,h2,h3,p,figure,ol,ul,dl) { margin:0; }
.xl14-page .xl14-main :is(h1,h2,h3) { color:inherit; font-weight:600; }
.xl14-page .xl14-main h2 { font-size:clamp(30px,3.1vw,43px); letter-spacing:-1.35px; line-height:1.18; }
.xl14-page .xl14-main h3 { font-size:23px; line-height:1.32; letter-spacing:-.5px; }
.xl14-page .xl14-main :where(a) { color:inherit; }
.xl14-page .xl14-main a:hover { color:var(--xl14-purple); }
.xl14-page .xl14-main :is(a,button,select,summary,[tabindex]):focus-visible { outline:3px solid #946fdd; outline-offset:5px; }
.xl14-page .xl14-main :is(section,[id]) { scroll-margin-top:100px; }
.xl14-page .xl14-main [hidden] { display:none!important; }
.xl14-page .xl14-breadcrumb { display:flex; flex-wrap:wrap; gap:7px 12px; padding-top:22px; margin-bottom:30px; font-size:12px; color:var(--xl14-muted); line-height:1.6; }
.xl14-page .xl14-breadcrumb a { text-decoration:none; }
.xl14-page .xl14-kicker { color:var(--xl14-purple); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:1.4px; line-height:1.5; }
.xl14-page .xl14-hero { display:grid; grid-template-columns:1.15fr 1fr; gap:45px; align-items:center; padding:35px 0 50px; margin:0; }
.xl14-page .xl14-hero h1 { margin-top:20px; font-size:clamp(36px,3.9vw,54px); font-weight:600; letter-spacing:-2px; line-height:1.06; max-width:630px; }
.xl14-page .xl14-hero h1 span { display:block; color:var(--xl14-purple); }
.xl14-page .xl14-lead { max-width:590px; margin-top:24px; font-size:21px; line-height:1.5; }
.xl14-page .xl14-hero-audience { max-width:560px; margin-top:18px; color:var(--xl14-muted); font-size:15px; line-height:1.6; }
.xl14-page .xl14-actions { display:flex; gap:20px; align-items:center; flex-wrap:wrap; margin:27px 0 0; }
.xl14-page .xl14-button { display:inline-flex; justify-content:space-between; align-items:center; gap:25px; border-radius:12px; padding:18px 23px; min-height:58px; text-decoration:none; font-size:15px; font-weight:600; line-height:1.4; border:1px solid transparent; }
.xl14-page .xl14-button--primary { background:var(--xl14-purple); color:#fff; box-shadow:0 10px 25px #7052cf20; }
.xl14-page .xl14-main .xl14-button--primary:hover { background:#583ba9; color:#fff; }
.xl14-page .xl14-button span { font-size:22px; }
.xl14-page .xl14-inline-link { display:inline-flex; gap:13px; align-items:center; min-height:44px; font-size:14px; font-weight:600; text-decoration:none; line-height:1.4; }
.xl14-page .xl14-hero-proof { margin-top:22px; font-size:14px; color:var(--xl14-muted); line-height:1.7; max-width:520px; }
.xl14-page .xl14-hero-proof a { text-underline-offset:3px; }
.xl14-page .xl14-hero-art { position:relative; align-self:stretch; min-width:0; padding-top:5px; display:flex; flex-direction:column; justify-content:center; }
.xl14-page .xl14-hero-art picture { height:430px; overflow:hidden; border-radius:26px 26px 8px 26px; background:var(--xl14-soft); }
.xl14-page .xl14-hero-art img { height:100%; width:100%; object-fit:cover; object-position:43% center; }
.xl14-page .xl14-art-caption { position:relative; width:91%; margin-top:-49px; margin-left:-19px; padding:22px 25px; background:#f0e9fb; border-radius:16px; display:flex; align-items:center; gap:14px; box-shadow:0 12px 32px #31214410; }
.xl14-page .xl14-art-caption p { font-size:16px; line-height:1.5; }
.xl14-page .xl14-art-caption strong { font-weight:600; }
.xl14-page .xl14-art-dot { width:11px; height:11px; background:var(--xl14-purple); border-radius:50%; flex:none; }
.xl14-page .xl14-hero-art figcaption { margin-top:13px; font-size:12px; line-height:1.5; color:var(--xl14-muted); text-align:right; }
.xl14-page .xl14-underhero { border-block:1px solid var(--xl14-line); padding:24px 0; display:flex; align-items:center; gap:50px; justify-content:space-between; }
.xl14-page .xl14-underhero p { font-size:14px; line-height:1.8; max-width:895px; }
.xl14-page .xl14-underhero a { flex:none; }
.xl14-page .xl14-section { padding-top:100px; }
.xl14-page .xl14-section-head { display:grid; grid-template-columns:1fr 1fr; gap:18px 55px; align-items:start; margin-bottom:40px; }
.xl14-page .xl14-section-head .xl14-kicker { grid-column:1/-1; }
.xl14-page .xl14-section-head > p:last-child { font-size:16px; line-height:1.8; max-width:555px; color:var(--xl14-muted); }
/* Inspectable demo: data model, permitted action and reconciliation. */
.xl14-page .xl14-demo { overflow:hidden; border-radius:24px; background:#272332; color:#f5f1ff; padding:30px; box-shadow:0 24px 60px #28203315; }
.xl14-page .xl14-demo-top { display:flex; justify-content:space-between; gap:15px; align-items:center; color:#c5bdd4; font-size:12px; letter-spacing:.5px; }
.xl14-page .xl14-demo-label { color:#e7d9ff; font-weight:600; }
.xl14-page .xl14-tabs { display:flex; gap:6px; margin-top:24px; padding-bottom:20px; border-bottom:1px solid #514659; }
.xl14-page .xl14-tabs button { cursor:pointer; background:transparent; color:#c5bdd4; border:1px solid transparent; border-radius:9px; padding:12px 17px; font-family:inherit; font-size:13px; font-weight:600; min-height:44px; }
.xl14-page .xl14-tabs button[aria-selected="true"] { background:#e7d9ff; color:#38214c; }
.xl14-page .xl14-tabs button:hover { border-color:#a895c7; }
.xl14-page .xl14-panel { padding-top:27px; outline:none; }
.xl14-page .xl14-data-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:40px; }
.xl14-page .xl14-small-label { font-size:12px; font-weight:600; color:var(--xl14-muted); letter-spacing:.8px; text-transform:uppercase; line-height:1.6; }
.xl14-page .xl14-demo .xl14-small-label { color:#c5bdd4; }
.xl14-page .xl14-table-scroll { overflow-x:auto; margin-top:16px; border-radius:10px; background:#363040; }
.xl14-page .xl14-source-table { width:100%; border-collapse:collapse; font-size:12px; line-height:1.5; text-align:left; white-space:nowrap; }
.xl14-page .xl14-source-table caption { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.xl14-page .xl14-source-table :is(th,td) { padding:12px 10px; border-bottom:1px solid #514659; }
.xl14-page .xl14-source-table th { background:#44394f; color:#e8e0f5; font-weight:600; }
.xl14-page .xl14-demo-note { font-size:14px; line-height:1.7; margin-top:15px; color:#c5bdd4; }
.xl14-page .xl14-entity { display:flex; align-items:center; gap:16px; padding:13px 0; border-bottom:1px solid #514659; }
.xl14-page .xl14-entity > span { display:grid; place-items:center; width:31px; height:31px; border-radius:8px; background:#564666; color:#e7d9ff; font-size:12px; flex:none; }
.xl14-page .xl14-entity strong { font-size:14px; font-weight:600; }
.xl14-page .xl14-entity p { font-size:14px; color:#c5bdd4; margin-top:2px; }
.xl14-page .xl14-map-controls { display:flex; gap:10px; flex-wrap:wrap; margin-top:25px; }
.xl14-page .xl14-map-controls button { font-family:inherit; font-size:12px; cursor:pointer; padding:11px 14px; min-height:44px; border:1px solid #756584; background:transparent; color:#ede5f7; border-radius:8px; }
.xl14-page .xl14-map-controls button[aria-pressed="true"] { background:#53415f; border-color:#bd9ee7; }
.xl14-page .xl14-map-result { margin-top:20px; padding:19px 22px; background:#3c3049; color:#f0e8fb; border-radius:10px; font-size:14px; line-height:1.8; min-height:86px; }
.xl14-page .xl14-map-result strong { font-weight:600; }
.xl14-page .xl14-role-grid { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:start; }
.xl14-page .xl14-role-grid select { display:block; margin-top:12px; padding:12px; width:100%; max-width:320px; min-height:48px; font-family:inherit; font-size:14px; border:1px solid #a895c7; border-radius:8px; background:#f0e8fb; color:#282332; }
.xl14-page #xl14-role-description { font-size:14px; line-height:1.8; margin-top:20px; }
.xl14-page .xl14-request { border:1px solid #6a5878; padding:22px; border-radius:13px; }
.xl14-page .xl14-request-sum { font-size:35px; margin-top:12px; line-height:1.2; letter-spacing:-.7px; }
.xl14-page .xl14-request-sum span { font-size:19px; color:#c5bdd4; }
.xl14-page .xl14-status { display:inline-block; padding:6px 12px; border-radius:25px; background:#4f435c; color:#f0e8fb; margin-top:12px; font-size:12px; }
.xl14-page .xl14-demo-action { display:block; padding:13px 18px; background:#e7d9ff; color:#38214c; border:1px solid #e7d9ff; border-radius:8px; min-height:48px; font-size:13px; font-family:inherit; font-weight:600; cursor:pointer; margin-top:20px; }
.xl14-page .xl14-demo-action:disabled { background:#44394f; color:#b7adc2; border-color:#62536c; cursor:default; }
.xl14-page .xl14-reset { font-size:12px; padding:10px 0; min-height:44px; background:none; border:0; font-family:inherit; color:#e7d9ff; cursor:pointer; text-decoration:underline; text-underline-offset:4px; }
.xl14-page .xl14-check-grid { display:grid; grid-template-columns:.85fr .85fr 1.3fr; gap:23px; margin-top:24px; }
.xl14-page .xl14-check-grid > div { padding-bottom:15px; border-bottom:1px solid #6a5878; }
.xl14-page .xl14-check-grid span { font-size:12px; color:#c5bdd4; }
.xl14-page .xl14-check-grid strong { display:block; font-size:24px; font-weight:500; margin-top:12px; }
.xl14-page .xl14-check-grid p { margin-top:7px; font-size:14px; color:#c5bdd4; }
.xl14-page .xl14-process-line { display:grid; grid-template-columns:repeat(4,1fr); gap:30px; padding:30px 0 0; list-style:none; }
.xl14-page .xl14-process-line li { border-top:1px solid var(--xl14-line); padding-top:14px; }
.xl14-page .xl14-process-line span { font-size:12px; color:var(--xl14-purple); font-weight:600; letter-spacing:.8px; text-transform:uppercase; }
.xl14-page .xl14-process-line p { margin-top:9px; font-size:14px; line-height:1.7; }
/* Choice, scope and pilot use different structures to support scanning. */
.xl14-page .xl14-options article { display:grid; grid-template-columns:75px 1fr; gap:20px; padding:29px 0; border-top:1px solid var(--xl14-line); }
.xl14-page .xl14-option-number { color:#b3a2d4; font-size:35px; font-weight:500; line-height:1.2; }
.xl14-page .xl14-options h3 { font-size:24px; }
.xl14-page .xl14-options article > div:last-child { display:grid; grid-template-columns:1fr 1fr; gap:14px 60px; }
.xl14-page .xl14-options h3 { grid-column:1/-1; }
.xl14-page .xl14-options p { font-size:15px; line-height:1.8; }
.xl14-page .xl14-option-check { color:var(--xl14-muted); }
.xl14-page .xl14-scope { display:grid; grid-template-columns:1fr 1fr; gap:55px; padding:35px 40px; background:var(--xl14-soft); border-radius:18px; margin-top:20px; }
.xl14-page .xl14-scope h3 { margin:10px 0 14px; }
.xl14-page .xl14-scope > div:last-child { padding-top:26px; }
.xl14-page .xl14-scope p:not(.xl14-kicker) { font-size:14px; line-height:1.8; }
.xl14-page .xl14-pilot-grid { display:grid; grid-template-columns:1.15fr 1fr; gap:65px; }
.xl14-page .xl14-steps { list-style:none; padding:0; }
.xl14-page .xl14-steps li { display:grid; grid-template-columns:40px 1fr; gap:20px; margin-bottom:30px; }
.xl14-page .xl14-steps li > span { font-size:13px; color:var(--xl14-purple); padding-top:3px; }
.xl14-page .xl14-steps h3 { font-size:20px; }
.xl14-page .xl14-steps p { font-size:14px; margin-top:10px; line-height:1.8; }
.xl14-page .xl14-acceptance { align-self:start; background:#eee8f8; padding:32px; border-radius:18px; }
.xl14-page .xl14-acceptance h3 { margin-top:15px; }
.xl14-page .xl14-acceptance ul { padding-left:19px; margin-top:22px; font-size:14px; }
.xl14-page .xl14-acceptance li { margin-top:13px; padding-left:5px; line-height:1.8; }
.xl14-page .xl14-acceptance > p:last-child { font-size:14px; line-height:1.8; margin-top:22px; border-top:1px solid #cfc2e2; padding-top:20px; color:#51475f; }
.xl14-page .xl14-integration-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:60px; }
.xl14-page .xl14-source-route { align-self:start; padding:25px 30px; border-left:2px solid #bca9df; display:flex; flex-direction:column; align-items:start; gap:16px; }
.xl14-page .xl14-source-route > span { border:1px solid var(--xl14-line); background:var(--xl14-soft); padding:12px 17px; border-radius:8px; font-size:13px; }
.xl14-page .xl14-source-destination { padding:24px 0 0; border-top:1px solid var(--xl14-line); width:100%; margin-top:10px; }
.xl14-page .xl14-source-destination strong { font-size:22px; font-weight:600; }
.xl14-page .xl14-source-destination p { font-size:14px; margin-top:10px; }
.xl14-page .xl14-integration-grid > div:last-child h3 { font-size:20px; margin-bottom:12px; }
.xl14-page .xl14-integration-grid > div:last-child > p { margin-bottom:26px; font-size:14px; line-height:1.8; }
.xl14-page .xl14-note { border-top:1px solid var(--xl14-line); padding-top:20px; color:var(--xl14-muted); font-size:14px!important; }
.xl14-page .xl14-note a { text-underline-offset:3px; }
.xl14-page .xl14-case-grid { display:grid; grid-template-columns:1fr 1fr; gap:30px; }
.xl14-page .xl14-case { display:flex; flex-direction:column; min-width:0; background:#faf8fd; border-radius:18px; overflow:hidden; }
.xl14-page .xl14-case-image { height:345px; display:block; overflow:hidden; background:#f1ecf8; }
.xl14-page .xl14-case-image img { width:100%; height:100%; object-fit:cover; object-position:50% 0; }
.xl14-page .xl14-case--cv .xl14-case-image { background:radial-gradient(ellipse at bottom,#dacdf3,#f5f1fc 70%); }
.xl14-page .xl14-case--cv .xl14-case-image img { object-fit:contain; padding:12px 0; }
.xl14-page .xl14-case-copy { padding:30px; flex:1; display:flex; flex-direction:column; }
.xl14-page .xl14-case-copy h3 { margin-top:12px; }
.xl14-page .xl14-case-copy > p:not(.xl14-small-label) { margin-top:18px; font-size:14px; line-height:1.8; }
.xl14-page .xl14-case-copy .xl14-inline-link { align-self:start; margin-top:23px; padding:10px 0; }
.xl14-page .xl14-estimate { padding:40px 45px; background:#f6f3fa; border-radius:22px; margin-top:100px; }
.xl14-page .xl14-estimate-list { display:grid; grid-template-columns:1fr 1fr; gap:30px 60px; }
.xl14-page .xl14-estimate-list > div { padding-top:20px; border-top:1px solid var(--xl14-line); }
.xl14-page .xl14-estimate-list dt { font-size:17px; font-weight:600; }
.xl14-page .xl14-estimate-list dd { margin:10px 0 0; font-size:14px; line-height:1.8; }
.xl14-page .xl14-estimate-foot { font-size:14px; color:var(--xl14-muted); margin-top:30px; line-height:1.8; }
.xl14-page .xl14-article-link { margin-top:35px; padding:22px 0 0; display:grid; grid-template-columns:1fr auto; border-top:1px solid var(--xl14-line); text-decoration:none; gap:10px 25px; }
.xl14-page .xl14-article-link > span:first-child { font-size:12px; color:var(--xl14-muted); grid-column:1; }
.xl14-page .xl14-article-link strong { font-size:16px; font-weight:600; line-height:1.6; }
.xl14-page .xl14-article-link > span:last-child { grid-column:2; grid-row:1/3; align-self:center; font-size:26px; }
.xl14-page .xl14-faq { display:grid; gap:0; }
.xl14-page .xl14-faq > details { border-width:1px 0 0; border-radius:0; box-shadow:none; }
.xl14-page .xl14-faq > details > summary { font-size:17px; padding:24px 52px 24px 0; line-height:1.6; }
.xl14-page .xl14-faq > details > p { padding:0 52px 24px 0; font-size:14px; line-height:1.8; max-width:960px; }
.xl14-page .xl14-faq > details[open] { box-shadow:none; }
.xl14-page .xl14-final { margin:100px 0 0; padding:43px 45px; border-radius:22px; display:grid; grid-template-columns:1.5fr 1fr; gap:55px; color:#f6f0ff; background:#392948; box-shadow:none; }
.xl14-page .xl14-final .xl14-kicker { color:#d7c0f4; }
.xl14-page .xl14-final h2 { margin-top:17px; font-size:36px; }
.xl14-page .xl14-final p:not(.xl14-kicker) { margin-top:22px; font-size:15px; line-height:1.8; max-width:650px; }
.xl14-page .xl14-final p.xl14-final-small { font-size:14px; color:#d4c7df; margin-top:17px; }
.xl14-page .xl14-final-actions { display:flex; flex-direction:column; align-items:start; justify-content:center; gap:8px; }
.xl14-page .xl14-final .xl14-button { background:#eadbf9; color:#38214c; box-shadow:none; margin-bottom:12px; }
.xl14-page .xl14-final .xl14-button:hover { background:#d6bcf4; color:#38214c; }
.xl14-page .xl14-contact-link { display:inline-flex; align-items:center; min-height:44px; text-decoration:none; font-size:13px; overflow-wrap:anywhere; }
.xl14-page .xl14-final .xl14-contact-link:hover { color:#eadbf9; }
.xl14-page .xl14-related { display:flex; gap:24px; justify-content:space-between; border-top:1px solid var(--xl14-line); padding:23px 0; margin-top:40px; }
.xl14-page .xl14-related a { min-height:44px; display:flex; align-items:center; text-decoration:none; font-size:14px; line-height:1.6; }
@media(max-width:1100px) {
 .xl14-page .xl14-shell { padding-inline:24px; }
 .xl14-page .xl14-hero { gap:30px; }
 .xl14-page .xl14-hero h1 { font-size:43px; }
 .xl14-page .xl14-lead { font-size:18px; }
 .xl14-page .xl14-hero-art picture { height:430px; }
 .xl14-page .xl14-data-grid { grid-template-columns:1.1fr 1fr; gap:24px; }
 .xl14-page .xl14-case-image { height:275px; }
 .xl14-page .xl14-pilot-grid { gap:35px; }
}
@media(max-width:800px) {
 .xl14-page .xl14-hero { grid-template-columns:1fr; padding-top:14px; gap:30px; }
 .xl14-page .xl14-hero h1 { max-width:680px; font-size:46px; }
 .xl14-page .xl14-hero-art { max-width:680px; width:100%; }
 .xl14-page .xl14-hero-art picture { height:350px; }
 .xl14-page .xl14-art-caption { margin-left:0; width:85%; }
 .xl14-page .xl14-underhero { gap:20px; align-items:start; flex-direction:column; }
 .xl14-page .xl14-section { padding-top:75px; }
 .xl14-page .xl14-section-head { grid-template-columns:1fr; gap:18px; margin-bottom:30px; }
 .xl14-page .xl14-section-head > p:last-child { max-width:650px; }
 .xl14-page .xl14-data-grid { grid-template-columns:1fr; gap:26px; }
 .xl14-page .xl14-process-line { grid-template-columns:1fr 1fr; }
 .xl14-page .xl14-role-grid { gap:30px; }
 .xl14-page .xl14-options article > div:last-child { grid-template-columns:1fr; gap:14px; }
 .xl14-page .xl14-options article { grid-template-columns:45px 1fr; }
 .xl14-page .xl14-scope { gap:30px; padding:30px; }
 .xl14-page .xl14-pilot-grid { grid-template-columns:1fr; gap:10px; }
 .xl14-page .xl14-integration-grid { grid-template-columns:1fr; gap:30px; }
 .xl14-page .xl14-source-route { flex-direction:row; flex-wrap:wrap; padding:20px 25px; }
 .xl14-page .xl14-source-route > span { font-size:12px; }
 .xl14-page .xl14-estimate { padding:30px; margin-top:75px; }
 .xl14-page .xl14-case-grid { gap:20px; }
 .xl14-page .xl14-case-image { height:230px; }
 .xl14-page .xl14-case-copy { padding:25px; }
 .xl14-page .xl14-case-copy h3 { font-size:21px; }
 .xl14-page .xl14-final { grid-template-columns:1fr; padding:35px; gap:25px; margin-top:75px; }
 .xl14-page .xl14-final-actions { display:grid; grid-template-columns:1fr 1fr; align-items:center; }
 .xl14-page .xl14-final-actions .xl14-button { grid-column:1/-1; width:max-content; }
 .xl14-page .xl14-related { flex-wrap:wrap; justify-content:start; gap:10px 25px; }
}
@media(max-width:520px) {
 .xl14-page .xl14-shell { padding-inline:18px; }
 .xl14-page .xl14-breadcrumb { font-size:12px; gap:5px 8px; padding-top:16px; margin-bottom:23px; }
 .xl14-page .xl14-main h2 { font-size:30px; letter-spacing:-1px; line-height:1.22; }
 .xl14-page .xl14-main h3 { font-size:21px; }
 .xl14-page .xl14-kicker { font-size:12px; letter-spacing:1px; }
 .xl14-page .xl14-hero { padding-top:0; padding-bottom:30px; gap:24px; }
 .xl14-page .xl14-hero h1 { font-size:37px; letter-spacing:-1.5px; line-height:1.09; margin-top:15px; }
 .xl14-page .xl14-lead { font-size:17px; margin-top:19px; line-height:1.6; }
 .xl14-page .xl14-hero-audience { font-size:14px; margin-top:14px; line-height:1.7; }
 .xl14-page .xl14-actions { gap:7px; margin-top:22px; }
 .xl14-page .xl14-button { width:100%; font-size:15px; padding:16px 18px; gap:10px; }
 .xl14-page .xl14-inline-link { font-size:14px; }
 .xl14-page .xl14-hero-proof { font-size:14px; margin-top:11px; line-height:1.8; }
 .xl14-page .xl14-hero-art picture { height:265px; border-radius:20px; }
 .xl14-page .xl14-art-caption { padding:16px 18px; margin-top:-33px; }
 .xl14-page .xl14-art-caption p { font-size:14px; }
 .xl14-page .xl14-hero-art figcaption { font-size:12px; }
 .xl14-page .xl14-underhero { padding:20px 0; gap:8px; }
 .xl14-page .xl14-underhero p { font-size:14px; line-height:1.8; }
 .xl14-page .xl14-section { padding-top:65px; }
 .xl14-page .xl14-section-head { gap:15px; margin-bottom:25px; }
 .xl14-page .xl14-section-head > p:last-child { font-size:14px; line-height:1.8; }
 .xl14-page .xl14-demo { border-radius:16px; padding:19px 16px; margin-inline:-2px; }
 .xl14-page .xl14-demo-top { font-size:12px; }
 .xl14-page .xl14-demo-top > span:last-child { display:none; }
 .xl14-page .xl14-tabs { gap:4px; margin-top:17px; padding-bottom:16px; }
 .xl14-page .xl14-tabs button { padding:11px 9px; font-size:12px; flex:1; }
 .xl14-page .xl14-panel { padding-top:21px; }
 .xl14-page .xl14-small-label { font-size:12px; }
 .xl14-page .xl14-source-table { font-size:12px; }
 .xl14-page .xl14-source-table :is(th,td) { padding:11px 8px; }
 .xl14-page .xl14-map-controls { gap:7px; margin-top:22px; }
 .xl14-page .xl14-map-controls button { font-size:12px; padding:10px; }
 .xl14-page .xl14-map-result { padding:16px; font-size:14px; line-height:1.8; }
 .xl14-page .xl14-role-grid { grid-template-columns:1fr; gap:22px; }
 .xl14-page .xl14-request { padding:18px; }
 .xl14-page .xl14-check-grid { grid-template-columns:1fr 1fr; gap:20px; }
 .xl14-page .xl14-check-grid > div:last-child { grid-column:1/-1; }
 .xl14-page .xl14-process-line { gap:25px 20px; padding-top:25px; }
 .xl14-page .xl14-process-line p { font-size:14px; }
 .xl14-page .xl14-process-line span { font-size:12px; }
 .xl14-page .xl14-options article { grid-template-columns:28px 1fr; gap:13px; padding:25px 0; }
 .xl14-page .xl14-option-number { font-size:24px; }
 .xl14-page .xl14-options p { font-size:14px; }
 .xl14-page .xl14-scope { grid-template-columns:1fr; gap:27px; padding:24px; margin-top:10px; }
 .xl14-page .xl14-scope > div:last-child { padding:0; }
 .xl14-page .xl14-scope p:not(.xl14-kicker) { font-size:14px; }
 .xl14-page .xl14-steps li { grid-template-columns:24px 1fr; gap:12px; }
 .xl14-page .xl14-steps h3 { font-size:19px; }
 .xl14-page .xl14-steps p { font-size:14px; }
 .xl14-page .xl14-acceptance { padding:25px; }
 .xl14-page .xl14-acceptance ul { font-size:13px; }
 .xl14-page .xl14-integration-grid > div:last-child > p { font-size:14px; }
 .xl14-page .xl14-case-grid { grid-template-columns:1fr; gap:25px; }
 .xl14-page .xl14-case-image { height:auto; aspect-ratio:1.4; }
 .xl14-page .xl14-case--cv .xl14-case-image { height:300px; aspect-ratio:auto; }
 .xl14-page .xl14-case-copy { padding:24px; }
 .xl14-page .xl14-case-copy > p:not(.xl14-small-label) { font-size:14px; }
 .xl14-page .xl14-estimate { padding:25px 22px; margin-top:65px; }
 .xl14-page .xl14-estimate-list { grid-template-columns:1fr; gap:22px; }
 .xl14-page .xl14-estimate-list dt { font-size:16px; }
 .xl14-page .xl14-estimate-list dd { font-size:13px; }
 .xl14-page .xl14-article-link strong { font-size:14px; }
 .xl14-page .xl14-faq > details > summary { font-size:14px; padding:21px 38px 21px 0; }
 .xl14-page .xl14-faq > details > p { font-size:14px; padding:0 10px 22px 0; }
 .xl14-page .xl14-faq > details > summary::after { right:0; }
 .xl14-page .xl14-final { padding:28px 24px; margin-top:65px; }
 .xl14-page .xl14-final h2 { font-size:28px; }
 .xl14-page .xl14-final p:not(.xl14-kicker) { font-size:14px; }
 .xl14-page .xl14-final p.xl14-final-small { font-size:14px; }
 .xl14-page .xl14-final-actions { display:flex; align-items:stretch; gap:2px; }
 .xl14-page .xl14-final-actions .xl14-button { width:100%; }
 .xl14-page .xl14-contact-link { font-size:12px; }
 .xl14-page .xl14-related { margin-top:25px; gap:4px; flex-direction:column; }
}
@media(max-width:350px) {
 .xl14-page .xl14-shell { padding-inline:15px; }
 .xl14-page .xl14-hero h1 { font-size:33px; }
 .xl14-page .xl14-lead { font-size:16px; }
 .xl14-page .xl14-main h2 { font-size:27px; }
 .xl14-page .xl14-demo { padding-inline:13px; }
 .xl14-page .xl14-tabs button { padding-inline:6px; }
 .xl14-page .xl14-map-controls { gap:5px; }
 .xl14-page .xl14-map-controls button { padding-inline:7px; }
 .xl14-page .xl14-final { padding:25px 19px; }
}
@media(prefers-reduced-motion:reduce) { .xl14-page .xl14-main *, .xl14-page .xl14-main *::before, .xl14-page .xl14-main *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }

/* Keep consent and contact links visible in the inherited mobile footer. */
@media(max-width:1024px) { .xl14-page .footer__item:first-child { display:flex; flex-direction:column; width:100%; gap:9px; margin-bottom:25px; } .xl14-page .footer__item:first-child a { min-height:44px; display:flex; align-items:center; font-size:12px; line-height:1.5; } .xl14-page .footer__flex { flex-wrap:wrap; } }

/* Allow the table to scroll inside the demo, instead of forcing its grid wider. */
.xl14-page .xl14-data-grid > div, .xl14-page .xl14-entity > div { min-width:0; }
@media(max-width:800px) { .xl14-page .xl14-data-grid { grid-template-columns:minmax(0,1fr); } }
/* A menu-open contact action keeps its return target, while the dialog owns the screen. */
.xl14-page.lock .header__mobile-menu { visibility:hidden; opacity:0; pointer-events:none; transition:none; }
@media(prefers-reduced-motion:reduce) { .xl14-page .header__mobile-menu { transition:none; } }


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