/* AelfaCred / blue editorial system. Catalogue: 28, 32, 47, 50, 53, 56,
   59, 68, 70, 80, 90, 104, 106, 110. No green or teal theme accents. */
@import url("./visuals.css");
@import url("./live-effects.css");
:root { color-scheme: dark; --bg:#060d18; --alt:#091321; --panel:#0e1c2f; --text:#f4f7fb; --muted:#abbcd2; --blue:#6fa7ff; --ice:#b9d7ff; --edge:rgba(140,177,230,.2); --max:1200px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:100px; }
body { margin:0; background:var(--bg); color:var(--text); font-family:Inter,"Segoe UI",Arial,sans-serif; -webkit-font-smoothing:antialiased; }
body,button,input,select,textarea { font-size:16px; }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }
button,a,input,select,textarea,summary { -webkit-tap-highlight-color:transparent; }
button { cursor:pointer; }
img,svg { max-width:100%; }
img { display:block; height:auto; }
button { color:inherit; }
button:disabled { cursor:default; }
[hidden] { display:none!important; }
::selection { background:#315fa3; color:white; }
:focus-visible { outline:2px solid var(--ice); outline-offset:5px; }
h1,h2,h3,p { margin-top:0; }
h1,h2,h3 { font-weight:600; }
h1 { font-size:clamp(42px,5.2vw,76px); line-height:1.06; letter-spacing:-.055em; margin-bottom:25px; }
h2 { font-size:clamp(32px,3.7vw,54px); line-height:1.1; letter-spacing:-.045em; margin-bottom:23px; }
h3 { font-size:23px; line-height:1.25; letter-spacing:-.025em; margin-bottom:14px; }
h1 span,h2 span { color:var(--blue); }
p { line-height:1.8; color:var(--muted); }
main { outline:0; }
.container { width:min(var(--max),calc(100% - 112px)); margin-inline:auto; }
.section { padding:100px 0; position:relative; border-bottom:1px solid var(--edge); scroll-margin-top:82px; }
.alternate { background:var(--alt); }
.eyebrow { font-size:10px; font-weight:700; letter-spacing:.18em; line-height:1.7; text-transform:uppercase; color:var(--blue); margin-bottom:22px; }
.section-heading { max-width:800px; margin-bottom:44px; }
.section-heading h2:last-child { margin-bottom:0; }
.section-intro { max-width:740px; font-size:16px; margin:0; }
.heading-row { display:flex; justify-content:space-between; align-items:end; gap:30px; margin-bottom:44px; }
.heading-row .section-heading { margin:0; }
.heading-row>.text-link { flex-shrink:0; margin-bottom:8px; }
.grid { display:grid; gap:20px; }
.two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.four { grid-template-columns:repeat(4,minmax(0,1fr)); }
.split { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:70px; align-items:center; }
.split .section-heading { margin-bottom:28px; }
.actions { display:flex; gap:24px; align-items:center; flex-wrap:wrap; margin-top:30px; }
.button { display:inline-flex; justify-content:center; align-items:center; gap:23px; min-height:49px; padding:15px 23px; border:1px solid transparent; border-radius:8px; background:#91bcff; color:#081526; font-weight:600; font-size:13px; line-height:1.3; position:relative; overflow:hidden; transition:background .25s,box-shadow .25s,transform .25s; }
.button::before { content:''; position:absolute; inset:0; background:linear-gradient(110deg,transparent,rgba(255,255,255,.5),transparent); transform:translateX(-120%); transition:transform .6s; pointer-events:none; }
.button:is(:hover,:focus-visible)::before { transform:translateX(120%); }
.button:is(:hover,:focus-visible) { background:#b2d0ff; box-shadow:0 8px 28px rgba(70,126,230,.17); }
.button span,.button .icon { transition:transform .25s; }
.button:is(:hover,:focus-visible) :is(span,.icon) { transform:translateX(3px); }
.text-link { display:inline-flex; align-items:center; gap:18px; font-size:13px; font-weight:500; color:var(--ice); line-height:1.6; }
.text-link span { font-size:19px; transition:transform .25s; }
.text-link:is(:hover,:focus-visible) span { transform:translate(3px,-3px); }
.text-link:hover { color:#fff; }
.text-button { border:0; background:none; padding:10px 0; color:var(--ice); font-size:13px; text-align:left; }
.icon { flex-shrink:0; width:24px; height:24px; }
.icon-box { width:48px; height:48px; display:grid; place-items:center; color:var(--blue); border:1px solid #314c74; background:rgba(84,137,227,.07); border-radius:12px; }
.index { font-size:10px; letter-spacing:.16em; color:#85a1c8; }
.body-copy { font-size:15px; line-height:1.9; }
.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; }
.skip-link { position:fixed; left:20px; top:-70px; z-index:200; background:var(--ice); color:#061326; padding:14px 20px; border-radius:6px; }
.skip-link:focus { top:14px; }

/* Shared page navigation: every primary destination is a real HTML page. */
.site-header { height:82px; position:fixed; top:0; left:0; right:0; z-index:100; background:rgba(6,13,24,.93); backdrop-filter:blur(16px); border-bottom:1px solid var(--edge); transition:background .3s; }
.home-page:not(.has-scrolled) .site-header { background:linear-gradient(180deg,rgba(2,7,13,.75),transparent); border-color:rgba(255,255,255,.1); }
.nav-container { width:min(1400px,calc(100% - 80px)); height:100%; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:25px; }
.brand { display:inline-flex; gap:9px; align-items:center; flex-shrink:0; }
.brand img { width:100px; height:39px; object-fit:contain; }
.brand-word { font-size:19px; letter-spacing:.14em; font-weight:400; border-left:1px solid #56647a; padding-left:12px; }
.brand-word>span { display:block; font-size:5px; letter-spacing:.13em; margin-top:4px; color:#adbfda; }
#main-nav { display:flex; gap:26px; align-items:center; }
#main-nav a { position:relative; padding-block:15px; color:#bdcbe0; font-size:12px; white-space:nowrap; }
#main-nav a::after { content:''; position:absolute; bottom:6px; height:2px; left:0; right:0; background:var(--blue); transform:scaleX(0); transform-origin:left; transition:transform .25s; }
#main-nav a:is(:hover,:focus-visible,[aria-current]) { color:#fff; }
#main-nav a:is(:hover,:focus-visible,[aria-current])::after { transform:scaleX(1); }
.nav-cta { color:#e3edff; border:1px solid #5073a7; border-radius:999px; padding:12px 20px; font-size:12px; white-space:nowrap; transition:background .25s; }
.nav-cta span { margin-left:15px; }
.nav-cta:hover { background:#172d4e; }
.menu-toggle { display:none; }

/* Section/page entrances stay readable when JavaScript or motion is disabled. */
.motion-ready .reveal { opacity:0; transform:translateY(22px); transition:opacity .65s ease var(--delay,0s),transform .65s cubic-bezier(.2,.7,.2,1) var(--delay,0s); }
.motion-ready .reveal.is-visible { opacity:1; transform:none; }
.page-hero { padding-top:123px; padding-bottom:75px; overflow:hidden; background:radial-gradient(ellipse at 85% 45%,rgba(45,103,211,.14),transparent 55%),var(--bg); }
.breadcrumbs { display:flex; align-items:center; gap:12px; flex-wrap:wrap; font-size:11px; color:#96a9c2; margin-bottom:45px; }
.breadcrumbs a:hover { color:var(--ice); }
.breadcrumbs>[aria-current] { color:#cfddf2; }
.hero-split { gap:45px; }
.hero-copy { max-width:790px; position:relative; z-index:2; }
.hero-description { max-width:650px; font-size:17px; line-height:1.8; margin:0; }
.page-hero .eyebrow { margin-bottom:24px; }

/* Catalogue 70 + 80: blue integration paths and moving packets. */
.network-art { position:relative; height:430px; min-width:0; isolation:isolate; }
.dot-field { position:absolute; inset:10% 0; background-image:radial-gradient(#718db7 1px,transparent 1px); background-size:23px 23px; opacity:.2; mask-image:radial-gradient(ellipse,#000,transparent 73%); z-index:-1; }
.network-lines { position:absolute; width:100%; height:100%; inset:0; overflow:visible; }
.network-lines path { stroke:#385b91; stroke-width:1.5; }
.network-lines circle { stroke:#263f66; stroke-width:1; }
.network-lines .packet { stroke:var(--ice); stroke-width:2; stroke-dasharray:3 97; animation:flow-packet 7s linear infinite; animation-play-state:paused; }
.network-lines .orbit { stroke-dasharray:2 12; transform-origin:center; animation:orbit 80s linear infinite; animation-play-state:paused; }
.in-view .network-lines :is(.packet,.orbit) { animation-play-state:running; }
.network-core { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:185px; height:185px; border:1px solid #5b87c8; border-radius:50%; background:radial-gradient(circle at 35% 20%,#203f6a,#0b192c 70%); box-shadow:0 0 65px rgba(59,115,214,.13),inset 0 0 35px rgba(99,159,255,.08); display:flex; justify-content:center; align-items:center; flex-direction:column; }
.network-core .network-logo { width:70%; max-width:126px; height:auto; object-fit:contain; margin:8px 0 16px; filter:drop-shadow(0 5px 14px rgba(90,145,235,.2)); }
.network-core small { margin-top:7px; font-size:8px; color:#9cb9e2; }
.network-node { position:absolute; display:flex; align-items:center; gap:9px; border:1px solid #3a5984; border-radius:9px; padding:14px; background:#10223a; font-size:11px; color:#cfdef4; box-shadow:0 12px 25px rgba(0,0,0,.18); }
.network-node .icon { width:19px; height:19px; color:var(--blue); }
.node-0 { top:12%; left:1%; }.node-1 { top:12%; right:0; }.node-2 { bottom:12%; left:1%; }.node-3 { bottom:12%; right:0; }
.visual-caption { position:absolute; bottom:0; left:0; right:0; text-align:center; font-size:8px; letter-spacing:.14em; color:#7895bc; }

/* Cards retain the previous border-lit, dark enterprise design language. */
.card { padding:28px; border:1px solid var(--edge); border-radius:16px; background:linear-gradient(145deg,#112039,#0b1728); display:flex; flex-direction:column; min-width:0; }
.card-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:25px; }
.card h3 { font-size:22px; }
.card p { font-size:14px; line-height:1.8; }
.card>.text-link { margin-top:auto; padding-top:12px; }
.spotlight { position:relative; isolation:isolate; overflow:hidden; transition:border-color .3s,box-shadow .3s; }
.spotlight::after { content:''; position:absolute; inset:0; pointer-events:none; z-index:-1; background:radial-gradient(350px circle at var(--px,50%) var(--py,0%),rgba(87,147,255,.13),transparent 75%); opacity:0; transition:opacity .3s; }
.spotlight:is(:hover,:focus-within) { border-color:#6087bf; box-shadow:0 12px 32px rgba(0,0,0,.17); }
.spotlight:is(:hover,:focus-within)::after { opacity:1; }
.spotlight .icon-box .icon { transition:transform .3s; }
.spotlight:hover .icon-box .icon { transform:rotate(-7deg); }
.capability-strip { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:15px; padding-top:45px; color:#9bb4d5; font-size:11px; }
.capability-strip i { width:4px; height:4px; border-radius:50%; background:var(--blue); }
.check-list { list-style:none; padding:0; margin:24px 0 0; display:grid; gap:12px; }
.check-list li { color:#b7c8df; font-size:14px; line-height:1.65; position:relative; padding-left:24px; }
.check-list li::before { content:'✓'; position:absolute; left:0; color:var(--blue); }

/* Actual supplied UI previews, with blue-toned screenshot presentation. */
.product-demo { margin-top:32px; padding:36px; display:grid; grid-template-columns:1fr 1.25fr; gap:45px; align-items:center; border:1px solid var(--edge); border-radius:18px; background:radial-gradient(ellipse at 85% 100%,rgba(70,120,210,.12),transparent 60%),#0e1c30; }
.product-copy h3 { font-size:34px; letter-spacing:-.04em; }
.product-copy>p:not(.eyebrow) { font-size:15px; }
.product-tabs { display:flex; gap:8px; flex-wrap:wrap; margin-top:30px; }
.product-tabs button { background:transparent; border:1px solid #37547b; border-radius:7px; color:#b9ceeb; padding:12px 15px; font-size:11px; }
.product-tabs button[aria-selected="true"] { color:#e5efff; border-color:var(--blue); background:#203d66; }
.product-panel { outline:0; }
.product-panel img { width:100%; height:340px; object-fit:contain; background:#fff; border-radius:10px; filter:grayscale(1); }
.caption { margin:14px 0 0; font-size:9px; letter-spacing:.07em; color:#96afd1; }
/* Product showcase: a responsive, blue workflow illustration instead of a cropped image. */
.workspace-demo { grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr); padding:38px; gap:38px; background:radial-gradient(ellipse at 95% 5%,rgba(80,132,232,.16),transparent 55%),linear-gradient(145deg,#0d1c31,#0a1525); overflow:hidden; }
.workspace-demo .product-copy h3 { font-size:clamp(28px,3vw,41px); line-height:1.12; letter-spacing:-.045em; }
.workspace-demo .product-copy h3>span { color:var(--blue); }
.workspace-demo .product-copy>p:not(.eyebrow) { font-size:14px; line-height:1.85; }
.workspace-demo .product-tabs { flex-direction:column; align-items:stretch; max-width:280px; gap:10px; }
.workspace-demo .product-tabs button { display:flex; align-items:center; gap:12px; text-align:left; padding:15px; font-size:12px; border-radius:10px; background:rgba(21,42,73,.35); transition:background .25s,border-color .25s; }
.workspace-demo .product-tabs button .icon { width:19px; height:19px; color:#91bfff; }
.workspace-demo .product-tabs button>span { flex:1; }
.workspace-demo .product-tabs button::after { content:'↗'; color:#7faaf0; font-size:17px; }
.workspace-demo .product-tabs button[aria-selected="true"] { background:linear-gradient(110deg,#234575,#172f52); border-color:#6d9fe9; box-shadow:inset 0 1px 0 rgba(199,220,255,.1); }
.workspace-promise { display:flex; gap:12px; align-items:center; padding-top:25px; margin-top:30px; border-top:1px solid var(--edge); color:#839dc2; font-size:10px; line-height:1.8; }
.workspace-promise>.icon { width:28px; height:28px; color:#759ed8; }
.workspace-promise strong { color:#b6cceb; font-size:11px; font-weight:400; }
.workspace-shell { min-width:0; border:1px solid #365a8c; border-radius:16px; background:linear-gradient(135deg,rgba(21,43,73,.97),rgba(10,24,44,.98)); box-shadow:0 30px 65px rgba(0,0,0,.3),0 0 45px rgba(59,112,206,.07); overflow:hidden; }
.workspace-toolbar { display:flex; justify-content:space-between; gap:15px; align-items:center; padding:17px 23px; border-bottom:1px solid #2e496e; background:rgba(8,21,40,.6); }
.workspace-brand { display:flex; align-items:center; gap:12px; }
.workspace-brand img { width:62px; height:auto; }
.workspace-brand>span { font-size:7px; letter-spacing:.15em; color:#7e9dc6; border-left:1px solid #3a5376; padding-left:12px; }
.preview-badge { font-size:8px; line-height:1.5; color:#a1bce4; padding:5px 9px; border:1px solid #36527a; border-radius:999px; white-space:nowrap; }
.workspace-panel { padding:26px; min-height:435px; }
.workspace-title { display:flex; align-items:center; gap:16px; justify-content:space-between; }
.workspace-title .eyebrow { font-size:8px; letter-spacing:.14em; margin:0 0 8px; }
.workspace-title h4 { font-size:21px; line-height:1.25; font-weight:500; letter-spacing:-.025em; margin:0; }
.workspace-symbol { display:grid; place-items:center; width:37px; height:37px; border:1px solid #436ba1; border-radius:11px; flex-shrink:0; color:var(--blue); background:#1a3558; }
.workspace-symbol .icon { width:19px; height:19px; }
.monitor-summary { display:flex; align-items:center; gap:23px; padding:21px 0; margin:20px 0 10px; border-top:1px solid var(--edge); }
.reminder-dial { width:116px; height:116px; flex-shrink:0; position:relative; }
.reminder-dial svg { width:100%; height:100%; transform:rotate(-90deg); }
.dial-track { stroke:#1f3b62; stroke-width:7; }
.dial-accent { stroke:#8ab7ff; stroke-width:7; stroke-linecap:round; stroke-dasharray:76 100; filter:drop-shadow(0 0 5px rgba(111,167,255,.3)); }
.reminder-dial>span { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; }
.reminder-dial strong { font-size:28px; font-weight:500; letter-spacing:-.055em; }
.reminder-dial strong>span { color:#678ebf; padding-inline:3px; font-size:23px; }
.reminder-dial small { font-size:7px; letter-spacing:.15em; color:#90acd3; }
.mini-label { color:#829fc8; font-size:7px; letter-spacing:.13em; }
.workspace-panel h5 { font-size:20px; line-height:1.25; font-weight:500; letter-spacing:-.025em; margin:9px 0; }
.monitor-summary p,.signature-context p { font-size:11px; line-height:1.8; color:#9cb5d8; margin:0; }
.workspace-table { border:1px solid #2e4d78; border-radius:10px; background:rgba(9,23,43,.5); overflow:hidden; }
.workspace-table-head,.workspace-row { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.workspace-table-head { padding:12px 15px; background:rgba(33,62,103,.3); font-size:7px; letter-spacing:.13em; color:#8eabd3; }
.workspace-row { padding:13px 15px; border-top:1px solid rgba(104,148,210,.12); }
.record-name { display:flex; align-items:center; gap:10px; font-size:11px; color:#cedef5; }
.record-name .icon { width:16px; height:16px; color:#84a9df; }
.record-action { font-size:9px; line-height:1.4; color:#adcfff; text-align:right; }
.workspace-flow { display:flex; gap:12px; align-items:center; margin-top:23px; }
.workspace-flow>span { display:flex; align-items:center; gap:6px; color:#94b1d8; font-size:9px; }
.workspace-flow .icon { width:14px; height:14px; color:var(--blue); }
.workspace-flow i { height:1px; flex:1; background:linear-gradient(90deg,#28456f,#8bb9ff,#28456f); background-size:200% 100%; animation:data-flow 4s linear infinite; animation-play-state:paused; }
.in-view .workspace-flow i { animation-play-state:running; }
.workspace-caption { display:flex; gap:7px; align-items:center; margin:0; padding:12px 22px; background:rgba(5,15,30,.4); border-top:1px solid #2c4770; font-size:8px; color:#829dc3; line-height:1.7; }
.workspace-caption>span { width:4px; height:4px; border-radius:50%; background:#719bd6; flex-shrink:0; }
.signature-preview { display:grid; grid-template-columns:.9fr 1fr; gap:24px; align-items:center; padding:23px 0; margin-top:18px; border-top:1px solid var(--edge); }
.signature-paper { padding:19px; border:1px solid #496f9f; border-radius:10px; background:linear-gradient(135deg,#26486f,#152e4e); transform:rotate(-3deg); box-shadow:0 12px 20px rgba(0,0,0,.13); }
.paper-label { font-size:7px; letter-spacing:.16em; color:#b8d3f5; }
.signature-paper>i { display:block; width:100%; height:4px; background:#42658e; border-radius:3px; margin-top:12px; }
.signature-paper>i:nth-of-type(2) { width:78%; }.signature-paper>i:nth-of-type(3) { width:88%; }
.signature-line { display:flex; gap:8px; align-items:center; margin-top:19px; padding-top:10px; border-top:1px dashed #6689b5; font-size:8px; line-height:1.6; color:#c1d7f5; }
.signature-line .icon { width:19px; height:19px; }
.signature-stages { list-style:none; padding:0; margin:7px 0 0; display:grid; gap:16px; }
.signature-stages li { display:flex; align-items:center; gap:12px; }
.signature-stages li>span { display:grid; place-items:center; width:29px; height:29px; border:1px solid #4b70a4; border-radius:50%; color:#9fc4fa; font-size:8px; flex-shrink:0; }
.signature-stages strong { font-size:11px; font-weight:500; display:block; color:#d3e2f8; }
.signature-stages small { font-size:9px; line-height:1.7; display:block; color:#91accf; margin-top:3px; }
.automation-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.automation-card { position:relative; padding:30px; border:1px solid var(--edge); border-radius:14px; background:#0d1a2d; }
.automation-card>.index { position:absolute; top:33px; right:30px; }
.automation-card h3 { margin-top:25px; }
.automation-card p { font-size:14px; max-width:460px; }
.mini-flow { display:flex; align-items:center; gap:12px; border-top:1px solid var(--edge); padding-top:22px; margin-top:22px; font-size:10px; color:#adc6e8; }
.mini-flow i { min-width:12px; height:1px; flex:1; background:linear-gradient(90deg,#24436e,#83b1ff,#24436e); background-size:200% 100%; animation:data-flow 4s linear infinite; animation-play-state:paused; }
.in-view .mini-flow i { animation-play-state:running; }

/* Interactive lifecycle with native buttons and a progressive connecting line. */
.workflow { position:relative; padding-top:15px; }
.workflow-track { position:absolute; left:24px; right:24px; height:1px; top:38px; background:#2a4264; }
.workflow-track span { display:block; height:2px; background:var(--blue); width:0; transition:width .45s; }
.workflow-steps { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:20px; }
.workflow-step button { padding:0; border:0; background:none; display:flex; flex-direction:column; gap:24px; width:100%; text-align:left; }
.step-number { display:grid; place-items:center; width:47px; height:47px; background:var(--bg); border:1px solid #3d5a80; border-radius:50%; color:#9eb8dc; font-size:11px; box-shadow:0 0 0 7px var(--bg); position:relative; transition:background .3s,border-color .3s; }
.workflow-step button strong { font-size:18px; font-weight:500; }
.workflow-step button[aria-pressed="true"] .step-number { background:#203d67; border-color:var(--blue); color:#fff; }
.workflow-step p { font-size:12px; line-height:1.7; margin:13px 0 0; }
.workflow-detail { display:grid; grid-template-columns:95px 1fr 90px; gap:30px; align-items:center; padding:30px; border:1px solid #314f7d; background:linear-gradient(110deg,#11243e,#0a1729); border-radius:16px; margin-top:35px; }
.detail-number { color:var(--blue); font-size:13px; letter-spacing:.1em; }
.workflow-detail .eyebrow { font-size:9px; margin-bottom:8px; }
.workflow-detail h3 { margin-bottom:8px; }
.workflow-detail .detail-text { font-size:14px; margin:0; }
.workflow-detail>.icon { width:55px; height:55px; color:var(--blue); justify-self:end; }

/* FAQ indicators + smooth open/close height animation supplied by site.js. */
.faq-layout { align-items:start; grid-template-columns:.85fr 1.3fr; gap:65px; }
.faq-list { display:grid; gap:12px; min-width:0; }
.faq-list details { border:1px solid var(--edge); background:#0d1b2d; border-radius:11px; overflow:hidden; transition:border-color .25s; }
.faq-list details[open] { border-color:#5279ae; }
.faq-list summary { list-style:none; cursor:pointer; display:flex; align-items:center; gap:14px; padding:22px; font-size:14px; line-height:1.5; font-weight:500; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-number { font-size:10px; color:#86a6d5; }
.faq-list summary>span:nth-child(2) { flex:1; }
.faq-list summary i { width:24px; height:24px; border:1px solid #42618c; border-radius:50%; position:relative; flex-shrink:0; transition:transform .3s; }
.faq-list summary i::before,.faq-list summary i::after { content:''; background:var(--ice); position:absolute; width:10px; height:1px; top:10px; left:6px; }
.faq-list summary i::after { transform:rotate(90deg); }
.faq-list details[open] summary i { transform:rotate(45deg); }
.faq-answer { padding:0 25px 24px 49px; }
.faq-answer p { font-size:14px; line-height:1.8; margin:0; }
.inline-cta { margin-top:55px; padding:30px 0 0; border-top:1px solid var(--edge); display:flex; justify-content:space-between; align-items:center; gap:30px; }
.inline-cta h3 { font-size:26px; margin-bottom:9px; }
.inline-cta p { font-size:14px; margin:0; }
.inline-cta .button { flex-shrink:0; }
.cta-section { background:linear-gradient(180deg,#091321,#07101d); overflow:hidden; }
.cta-panel { display:flex; justify-content:space-between; gap:50px; align-items:center; position:relative; }
.cta-panel h2 { font-size:clamp(34px,4vw,60px); }
.cta-panel>div:first-child { max-width:820px; }
.cta-panel p:not(.eyebrow) { max-width:660px; font-size:16px; margin-bottom:0; }
.cta-actions { display:flex; flex-direction:column; align-items:flex-start; gap:22px; flex-shrink:0; position:relative; z-index:1; }
.cta-lines { position:absolute; width:100%; height:100px; bottom:-90px; left:0; pointer-events:none; opacity:.5; fill:none; stroke:#6fa7ff; stroke-width:1; }
.draw-path { stroke-dasharray:1; stroke-dashoffset:1; transition:stroke-dashoffset 1.8s ease; }
.in-view .draw-path { stroke-dashoffset:0; }

/* Services and organization-specific narrative. */
.model-grid .card { padding:30px; }
.model-grid h3 { font-size:30px; }
.model-grid .check-list { margin-bottom:30px; }
.model-grid .check-list li { font-size:12px; }
.model-grid .card>.button,.model-grid .card>.text-link { margin-top:auto; }
.model-grid .featured { background:linear-gradient(145deg,#1c355c,#102039); border-color:#6594d8; position:relative; }
.card-badge { display:block; font-size:8px; color:var(--ice); letter-spacing:.13em; border-bottom:1px solid #40628e; padding-bottom:14px; margin-bottom:22px; }
.delivery-timeline { list-style:none; padding:0; margin:0; }
.delivery-timeline li { display:flex; gap:25px; padding-bottom:33px; position:relative; }
.delivery-timeline li:last-child { padding-bottom:0; }
.delivery-timeline li:not(:last-child)::before { content:''; position:absolute; width:1px; background:#365783; left:22px; top:45px; bottom:0; }
.delivery-timeline li>span { display:grid; place-items:center; width:45px; height:45px; flex-shrink:0; border-radius:50%; border:1px solid #4a73aa; color:var(--ice); background:#0d1c31; font-size:11px; }
.delivery-timeline h3 { font-size:21px; margin-bottom:9px; }
.delivery-timeline p { font-size:14px; margin:0; }
.audience-row { display:grid; grid-template-columns:40px .9fr 1.2fr 30px; gap:25px; align-items:center; padding:32px 16px; border-top:1px solid var(--edge); transition:background .3s; }
.audience-row:last-child { border-bottom:1px solid var(--edge); }
.audience-row:hover { background:rgba(70,122,210,.06); }
.audience-row h3 { font-size:22px; margin:0; }
.audience-row p { font-size:14px; margin:0 0 8px; }
.audience-row small { color:var(--blue); font-size:9px; letter-spacing:.07em; }
.audience-row>.icon { color:var(--blue); transition:transform .25s; }
.audience-row:hover>.icon { transform:translateX(4px); }
.audience-open { display:grid; place-items:center; width:38px; height:38px; border:1px solid #436ba0; border-radius:50%; background:rgba(43,80,134,.17); color:#a6caff; padding:0; justify-self:end; transition:background .25s,border-color .25s,transform .25s; }
.audience-open>.icon { width:18px; height:18px; }
.audience-open:is(:hover,:focus-visible) { background:#264b7e; border-color:#90baff; transform:translateX(3px); }
body.dialog-open { overflow:hidden; }
.audience-dialog { color:var(--text); width:min(750px,calc(100% - 32px)); max-height:calc(100vh - 40px); max-height:calc(100dvh - 40px); margin:auto; padding:0; border:1px solid #587fb8; border-radius:20px; background:radial-gradient(ellipse at 100% 0,rgba(62,117,211,.2),transparent 50%),#0b192c; box-shadow:0 35px 110px rgba(0,0,0,.55); overflow:auto; overscroll-behavior:contain; }
.audience-dialog::backdrop { background:rgba(2,8,18,.8); backdrop-filter:blur(7px); }
.dialog-topbar { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:15px 24px; position:sticky; top:0; z-index:1; border-bottom:1px solid #2f4f7c; background:#0d1c31; }
.dialog-topbar>.eyebrow { font-size:8px; margin:0; }
.dialog-close { width:35px; height:35px; border:1px solid #4e719f; border-radius:50%; color:#c8ddfa; background:#172c49; padding:0; display:grid; place-items:center; }
.dialog-close>span { font-size:25px; line-height:1; margin-top:-2px; }
.dialog-close:hover { background:#294b7a; border-color:#93bbf4; }
.dialog-body { padding:32px 40px 38px; }
.dialog-glyph { display:grid; place-items:center; width:48px; height:48px; background:linear-gradient(145deg,#254c80,#172e4e); color:#aacfff; border:1px solid #527aac; border-radius:13px; margin-bottom:22px; }
.dialog-glyph>.icon { width:25px; height:25px; }
.dialog-body h2 { font-size:34px; letter-spacing:-.035em; line-height:1.18; margin-bottom:17px; }
.dialog-intro { font-size:14px; line-height:1.85; color:#adbfda; margin:0 0 23px; }
.dialog-focus { padding:14px 17px; border:1px solid #355c90; border-left:3px solid #80b1ff; border-radius:0 8px 8px 0; background:#142b4a; color:#c2dafa; font-size:13px; line-height:1.7; }
.dialog-points { display:grid; gap:22px; margin:27px 0; }
.dialog-points>div { display:flex; gap:17px; }
.dialog-points>div>span { font-size:10px; color:var(--blue); letter-spacing:.1em; padding-top:4px; }
.dialog-points h3 { font-size:17px; margin:0 0 7px; }
.dialog-points p { font-size:13px; line-height:1.8; margin:0; color:#a6bddb; }
.dialog-approach { border-top:1px solid var(--edge); padding-top:22px; }
.dialog-approach .eyebrow { font-size:8px; margin:0 0 10px; }
.dialog-approach>p:last-child { font-size:12px; line-height:1.85; margin:0; color:#9eb5d4; }
.dialog-actions { margin-top:27px; display:flex; flex-wrap:wrap; align-items:center; gap:18px 24px; }
.dialog-actions .text-link { font-size:11px; }
.inline-note { display:flex; align-items:center; gap:20px; border-top:1px solid var(--edge); margin-top:35px; padding-top:25px; }
.inline-note>.icon { color:var(--blue); }
.inline-note p { flex:1; margin:0; font-size:14px; }
.brand-story-visual { min-height:380px; display:grid; place-items:center; position:relative; border:1px solid #243e63; border-radius:20px; background:radial-gradient(ellipse at 50% 30%,rgba(76,129,223,.14),transparent 70%),#0c1a2e; padding:35px; overflow:hidden; }
.brand-plaque { display:grid; grid-template-columns:auto 1fr; gap:12px 7px; align-items:center; position:relative; z-index:2; }
.brand-plaque>span { font-size:94px; color:#c1d9ff; line-height:1; font-weight:600; letter-spacing:-.07em; }
.brand-plaque strong { display:flex; flex-direction:column; gap:5px; font-size:30px; line-height:1.1; font-weight:500; letter-spacing:-.03em; padding-top:5px; }
.brand-plaque strong>span:first-child { font-size:43px; letter-spacing:-.045em; }
.brand-plaque strong>span:last-child { font-size:23px; color:#d2e0f4; }
.brand-plaque small { grid-column:1/-1; font-size:9px; letter-spacing:.15em; text-align:center; color:#8faed8; }
.brand-story-lines { position:absolute; inset:0; }
.brand-story-lines i { position:absolute; width:400px; height:400px; top:-50px; left:calc(50% - 200px); border:1px solid #233f66; border-radius:50%; }
.brand-story-lines i:nth-child(2) { width:490px; height:490px; left:calc(50% - 245px); top:-95px; }
.brand-story-lines i:nth-child(3) { width:580px; height:580px; left:calc(50% - 290px); top:-140px; }
.capability-tags { display:flex; flex-wrap:wrap; gap:9px; justify-content:center; position:relative; z-index:2; }
.capability-tags span { font-size:10px; padding:10px 13px; background:#152a47; color:#adc8ed; border:1px solid #355480; border-radius:999px; }

/* Resources: original blue editorial artwork, search and topic filtering. */
.article-card { border:1px solid var(--edge); border-radius:16px; background:#0d1b2f; min-width:0; display:flex; flex-direction:column; }
.article-cover { height:200px; position:relative; display:block; overflow:hidden; background:radial-gradient(ellipse at 75% 25%,#284f88,#112540 70%); }
.cover-1 { background:radial-gradient(ellipse at 30% 80%,#2b4b82,#101e35 75%); }
.cover-2 { background:linear-gradient(130deg,#162b4b,#254577); }
.article-cover-grid { position:absolute; inset:0; background-image:linear-gradient(rgba(130,174,240,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(130,174,240,.07) 1px,transparent 1px); background-size:25px 25px; mask-image:linear-gradient(120deg,transparent,#000); }
.article-cover::before,.article-cover::after { content:''; position:absolute; width:250px; height:250px; border:1px solid #476d9f; border-radius:50%; right:-55px; top:-105px; opacity:.5; transition:transform .6s; }
.article-cover::after { width:300px; height:300px; right:-80px; top:-130px; }
.article-card:hover .article-cover::after { transform:scale(1.08); }
.article-cover-icon { position:absolute; left:30px; top:34px; width:78px; height:78px; display:grid; place-items:center; border:1px solid #6087be; border-radius:15px; background:rgba(84,134,211,.12); transform:rotate(-6deg); transition:transform .4s; }
.article-cover-icon .icon { width:40px; height:40px; color:#c9ddfb; }
.article-card:hover .article-cover-icon { transform:rotate(0) translateY(-4px); }
.cover-number { position:absolute; right:25px; bottom:29px; font-size:52px; color:rgba(191,218,255,.32); letter-spacing:-.07em; }
.cover-label { position:absolute; left:30px; bottom:29px; color:#9bb7df; font-size:8px; letter-spacing:.12em; }
.article-card-copy { padding:26px; display:flex; flex-direction:column; flex:1; }
.article-card-copy .eyebrow { font-size:9px; letter-spacing:.1em; display:flex; align-items:center; gap:12px; justify-content:space-between; margin-bottom:17px; }
.reading-time { color:#8aa2c3; letter-spacing:0; text-transform:none; font-weight:400; white-space:nowrap; }
.article-card h3 { font-size:22px; line-height:1.3; }
.article-card h3 a:hover { color:var(--ice); }
.article-card-copy>p:not(.eyebrow) { font-size:13px; }
.article-card-copy>.text-link { margin-top:auto; padding-top:15px; }
.resource-hero .split { grid-template-columns:1.4fr .8fr; }
.editorial-art { position:relative; height:290px; }
.editorial-sheet { width:215px; height:265px; position:absolute; top:5px; left:25px; background:linear-gradient(140deg,#223f68,#102039); border:1px solid #577bad; border-radius:15px; transform:rotate(-8deg); padding:30px; box-shadow:0 22px 50px rgba(0,0,0,.22); }
.editorial-sheet>.icon { width:45px; height:45px; color:var(--ice); margin-bottom:18px; }
.editorial-sheet i { height:5px; width:100%; display:block; background:#4770a9; margin-bottom:10px; border-radius:3px; }
.editorial-sheet i:nth-of-type(2) { width:75%; }.editorial-sheet i:nth-of-type(3) { width:85%; }
.editorial-sheet>span { display:block; font-size:11px; line-height:1.5; letter-spacing:.12em; margin-top:28px; color:#b7cff1; }
.editorial-stamp { position:absolute; right:0; bottom:15px; width:125px; height:125px; padding:18px; background:#1d3860; border:1px solid #6293d9; border-radius:12px; color:#c5dcff; font-size:43px; transform:rotate(6deg); line-height:1.1; }
.editorial-stamp small { display:block; font-size:7px; line-height:1.7; letter-spacing:.13em; margin-top:8px; }
.resource-controls { display:flex; justify-content:space-between; align-items:center; gap:25px; margin-bottom:35px; }
.filter-buttons { display:flex; gap:8px; flex-wrap:wrap; }
.filter-buttons button { background:transparent; padding:10px 14px; font-size:11px; border:1px solid #314c74; border-radius:999px; color:#a9c2e5; }
.filter-buttons button[aria-pressed="true"] { border-color:#8db8f7; background:#23426c; color:#edf4ff; }
.search-field { display:flex; gap:12px; align-items:center; padding:13px 16px; border:1px solid #344f75; border-radius:9px; background:#0e1d32; width:270px; max-width:100%; }
.search-field .icon { width:18px; height:18px; color:var(--blue); }
.search-field input { min-width:0; width:100%; border:0; color:#edf4ff; background:none; outline:0; font-size:12px; }
.search-field:focus-within { border-color:var(--ice); box-shadow:0 0 0 3px rgba(106,160,246,.1); }
.search-status { font-size:12px; margin-bottom:25px; color:#a2bde4; }
.empty-state { padding:55px; text-align:center; border:1px dashed #3d608e; border-radius:15px; background:#0b1a2e; }

/* Articles are full-length HTML, with readable typography and a sticky contents list. */
.article-heading { max-width:950px; }
.article-hero h1 { font-size:clamp(38px,4.6vw,66px); line-height:1.1; }
.article-heading .hero-description { max-width:850px; font-size:18px; }
.article-meta { display:flex; gap:24px; flex-wrap:wrap; font-size:11px; color:#9cb2d2; margin-top:30px; }
.article-meta span+span { border-left:1px solid #3a5173; padding-left:24px; }
.article-content-section { padding-top:65px; }
.article-layout { display:grid; grid-template-columns:235px minmax(0,760px); gap:80px; justify-content:space-between; align-items:start; }
.article-toc { position:sticky; top:115px; }
.article-toc .eyebrow { font-size:9px; }
.article-toc nav { display:flex; flex-direction:column; border-left:1px solid #2d476c; gap:0; margin-bottom:27px; }
.article-toc nav a { padding:11px 0 11px 18px; font-size:12px; line-height:1.6; color:#9eb5d5; position:relative; }
.article-toc nav a:hover,.article-toc nav a[aria-current] { color:var(--ice); }
.article-toc nav a[aria-current]::before { content:''; position:absolute; left:-1px; top:8px; bottom:8px; width:2px; background:var(--blue); }
.article-toc>.text-link { font-size:11px; }
.article-toc>.text-button { margin-top:20px; }
.article-body { min-width:0; }
.takeaway { border:1px solid #385b8d; border-left:3px solid var(--blue); background:#10233c; border-radius:0 12px 12px 0; padding:28px; margin-bottom:35px; }
.takeaway .eyebrow { font-size:9px; margin-bottom:12px; }
.takeaway>p:last-child { margin:0; color:#d0e1f9; font-size:17px; line-height:1.8; }
.article-body .article-lead { font-size:18px; color:#c0d1e8; line-height:1.9; }
.article-part { padding-top:26px; scroll-margin-top:110px; }
.article-body h2 { font-size:30px; line-height:1.25; letter-spacing:-.03em; margin:24px 0 22px; }
.article-body p,.article-body li { font-size:16px; line-height:1.95; color:#b7c8df; }
.article-body li { margin-bottom:11px; padding-left:5px; }
.article-body ul { padding-left:22px; margin:24px 0; }
.article-body li::marker { color:var(--blue); }
.article-next { margin-top:45px; padding-top:15px; border-top:1px solid var(--edge); }
.article-next .actions { align-items:flex-start; flex-direction:column; gap:15px; }
.article-sources { margin-top:45px; padding:26px; border:1px solid var(--edge); border-radius:12px; background:#0b192b; }
.article-sources h2 { font-size:20px; margin:0 0 15px; }
.article-sources p,.article-sources li { font-size:12px; }
.article-sources ul { margin-bottom:0; }
.article-sources a { text-decoration:underline; text-decoration-color:#4a6c9c; text-underline-offset:4px; }
.reading-progress { position:fixed; top:81px; left:0; right:0; height:2px; z-index:110; pointer-events:none; }
.reading-progress span { display:block; width:100%; height:100%; background:#91bcff; transform:scaleX(0); transform-origin:left; }

/* Real email handoff, with a copyable fallback rather than a false success state. */
.contact-intro { padding-bottom:65px; }
.contact-intro .hero-copy { max-width:1000px; }
.contact-intro .hero-description { max-width:720px; }
.contact-section { padding-top:75px; }
.contact-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:90px; align-items:start; }
.contact-copy { padding-top:20px; }
.contact-copy h2 { font-size:46px; }
.contact-agenda { list-style:none; margin:40px 0; padding:0; display:grid; gap:27px; }
.contact-agenda li { display:flex; align-items:start; gap:20px; }
.contact-agenda li>span { font-size:11px; color:var(--blue); padding-top:5px; }
.contact-agenda h3 { font-size:20px; margin-bottom:8px; }
.contact-agenda p { font-size:14px; margin:0; }
.contact-direct { border-top:1px solid var(--edge); padding-top:28px; display:flex; flex-direction:column; align-items:start; gap:12px; }
.contact-direct .eyebrow { font-size:9px; margin:0 0 8px; }
.contact-direct>a { color:var(--ice); font-size:17px; overflow-wrap:anywhere; }
.contact-direct small { color:#839fc6; font-size:11px; }
.demo-card { padding:34px; border:1px solid #476fa7; border-radius:18px; background:linear-gradient(140deg,#122642,#0c192c); box-shadow:0 24px 60px rgba(0,0,0,.2); }
.demo-card>.eyebrow { font-size:9px; }
.demo-card>h2 { font-size:30px; }
.demo-card>p:not(.eyebrow) { font-size:14px; }
#demo-form { margin-top:30px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
#demo-form label { display:block; font-size:12px; line-height:1.6; color:#bfd2ef; margin-bottom:19px; }
#demo-form label>span { color:var(--blue); }
#demo-form :is(input,textarea,select) { display:block; width:100%; margin-top:8px; min-height:46px; border:1px solid #345278; background:#09192d; border-radius:7px; padding:12px; color:#e7effb; font-size:13px; outline:none; transition:border-color .25s,box-shadow .25s; }
#demo-form textarea { resize:vertical; line-height:1.7; }
#demo-form :is(input,textarea,select):focus { border-color:var(--blue); box-shadow:0 0 0 3px rgba(103,158,246,.12); }
#demo-form .form-explainer { font-size:11px; line-height:1.8; color:#96b0d4; }
.demo-submit { width:100%; justify-content:space-between; }
.demo-submit .icon { width:19px; height:19px; }
.form-status { margin:15px 0 0; font-size:12px; color:var(--ice); }
.draft-fallback { border-top:1px solid var(--edge); margin-top:20px; padding-top:20px; }
.draft-fallback>p { font-size:12px; }
.copy-enquiry { display:block; margin-top:10px; }

/* Fine footer rules and link underlines, without heavy background motion. */
.site-footer { background:linear-gradient(120deg,#091728,#050c16); position:relative; }
.site-footer::before { content:''; position:absolute; top:0; left:7%; right:7%; height:1px; background:linear-gradient(90deg,transparent,#82b4ff,transparent); transform:scaleX(.2); transition:transform 1.5s; }
.site-footer.in-view::before { transform:scaleX(1); }
.footer-grid { padding-top:65px; padding-bottom:55px; display:grid; grid-template-columns:1.3fr .9fr 1fr; gap:38px; }
.footer-brand>.brand { display:flex; justify-content:flex-start; max-width:300px; }
.footer-brand>p { font-size:13px; margin-top:22px; line-height:1.8; max-width:300px; }
.footer-app-title { margin-top:6px; }.footer-brand>a:not(.brand) { display:block; }
.footer-store-badges { display:flex; flex-direction:column; align-items:flex-start; gap:12px; margin-top:18px; }
.store-badge { display:inline-flex; align-items:center; gap:10px; min-width:148px; padding:7px 16px 7px 12px; background:#000; border:1px solid #a6a6a6; border-radius:9px; color:#fff; line-height:1.1; transition:border-color .25s,transform .25s,box-shadow .25s; }
.store-badge:is(:hover,:focus-visible) { border-color:#82b4ff; transform:translateY(-2px); box-shadow:0 8px 22px rgba(130,180,255,.18); }
.store-badge:focus-visible { outline:2px solid #82b4ff; outline-offset:3px; }
.store-badge-icon { width:24px; height:24px; flex:none; }
.store-badge-text { display:flex; flex-direction:column; text-align:left; }
.store-badge-text small { font-size:9px; letter-spacing:.02em; color:#fff; line-height:1.2; }
.store-badge-text strong { font-size:16px; font-weight:600; color:#fff; line-height:1.15; letter-spacing:.01em; }
.footer-tag { color:#7d9cc7; font-size:8px; letter-spacing:.14em; }
.footer-grid>div:not(:first-child) { display:flex; flex-direction:column; align-items:start; }
.footer-grid h2 { font-size:10px; text-transform:uppercase; letter-spacing:.12em; color:#cbdbf2; margin:0 0 24px; line-height:1.6; }
.footer-grid>div:not(:first-child)>a { font-size:12px; line-height:1.6; margin-bottom:12px; color:#a9bfdc; position:relative; overflow-wrap:anywhere; }
.footer-grid>div:not(:first-child)>a::after { content:''; position:absolute; bottom:-3px; left:0; right:0; height:1px; background:var(--blue); transform:scaleX(0); transform-origin:left; transition:transform .25s; }
.footer-grid>div>a:is(:hover,:focus-visible)::after { transform:scaleX(1); }
.footer-small { font-size:11px; margin:13px 0 0; color:#7f9bbf; }
.footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:25px; border-top:1px solid var(--edge); padding-top:25px; padding-bottom:25px; font-size:10px; color:#8aa4c7; }
.footer-bottom p { font-size:10px; margin:0; }
.not-found { padding-top:50px; padding-bottom:50px; }
@keyframes flow-packet { to { stroke-dashoffset:-100; } }
@keyframes orbit { to { transform:rotate(360deg); } }
@keyframes data-flow { to { background-position:-200% 0; } }

@media(min-width:1500px) { .container { width:min(var(--max),calc(100% - 160px)); } }
@media(max-width:1100px) {
  .container { width:calc(100% - 80px); }
  .nav-container { width:calc(100% - 48px); gap:18px; }
  #main-nav { gap:18px; }
  .brand-word { font-size:15px; padding-left:8px; }.brand img { width:82px; }
  .split { gap:35px; }.hero-split { gap:25px; }
  .network-core { width:155px; height:155px; }.network-art { height:350px; }
  .network-node { font-size:9px; padding:11px; gap:7px; }.network-node .icon { width:16px; height:16px; }
  .core-mark { font-size:49px; }.network-core strong { font-size:15px; }.network-core small { font-size:7px; }
  .four { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .card { padding:23px; }.card h3 { font-size:20px; }
  .model-grid .card { padding:24px; }.model-grid h3 { font-size:25px; }
  .product-demo { gap:25px; padding:28px; }
  .product-panel img { height:290px; }
  .faq-layout { gap:35px; }.faq-list summary { padding:19px; }
  .article-layout { grid-template-columns:190px minmax(0,1fr); gap:45px; }
  .article-card-copy { padding:22px; }.article-card h3 { font-size:20px; }
  .resource-controls { align-items:start; }.filter-buttons { max-width:450px; }
  .contact-grid { gap:45px; grid-template-columns:1fr 1.2fr; }
  .demo-card { padding:26px; }
  .footer-grid { gap:24px; }
  .cta-panel { gap:35px; }.cta-actions { max-width:260px; }
}
@media(max-width:900px) {
  .site-header { height:76px; }.nav-container { gap:16px; }
  .menu-toggle { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:6px; width:38px; height:38px; border:1px solid #45628c; background:transparent; border-radius:7px; margin-left:auto; }
  .menu-toggle span { height:1px; width:17px; background:#d4e5ff; transition:transform .25s; }
  .menu-toggle[aria-expanded="true"] span:first-child { transform:translateY(3.5px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:last-child { transform:translateY(-3.5px) rotate(-45deg); }
  #main-nav { display:none; }
  .menu-open #main-nav { display:flex; position:absolute; left:0; right:0; top:76px; padding:20px 6vw; background:#0c1a2e; flex-direction:column; align-items:stretch; gap:2px; border-bottom:1px solid #365780; }
  #main-nav a { padding:14px 0; font-size:14px; }
  .three { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .three>.card:last-child:nth-child(3) { grid-column:1/-1; }
  .model-grid.three { grid-template-columns:1fr; }.model-grid.three>.card { grid-column:auto; }
  .workflow-steps { grid-template-columns:repeat(3,minmax(0,1fr)); row-gap:28px; }.workflow-track { display:none; }
  .workflow-step button { gap:18px; }
  .footer-grid { grid-template-columns:1fr 1fr; }.footer-brand { grid-column:1/-1; }.footer-brand>p { max-width:480px; }
  .footer-brand>.brand { max-width:480px; }
  .contact-grid { grid-template-columns:1fr 1.3fr; gap:30px; }.contact-copy h2 { font-size:36px; }
  .form-row { grid-template-columns:1fr; gap:0; }
  .reading-progress { top:75px; }
  .cta-panel { flex-direction:column; align-items:start; }.cta-actions { max-width:none; flex-direction:row; align-items:center; flex-wrap:wrap; }
}
@media(max-width:720px) {
  .workspace-demo { grid-template-columns:1fr; gap:30px; }
  .workspace-demo .product-tabs { flex-direction:row; max-width:none; }
  .workspace-demo .product-tabs button { flex:1; }
  .workspace-promise { display:none; }
  .audience-open { grid-column:3; grid-row:1; width:33px; height:33px; }
  .container { width:calc(100% - 44px); }
  .section { padding:70px 0; }.page-hero { padding-top:109px; padding-bottom:55px; }
  .breadcrumbs { margin-bottom:35px; }.hero-description { font-size:16px; }
  .split,.resource-hero .split { grid-template-columns:1fr; gap:40px; }
  .hero-split { gap:20px; }.hero-split .network-art { max-width:440px; width:100%; margin:auto; }
  h1 { font-size:clamp(38px,8vw,57px); }h2 { font-size:clamp(32px,7vw,45px); }
  .page-hero .eyebrow { font-size:9px; }.section-heading { margin-bottom:32px; }
  .section-intro { font-size:15px; }
  .network-art { max-width:450px; width:100%; margin:auto; height:350px; }
  .network-core { width:165px; height:165px; }.network-node { font-size:10px; }
  .product-demo { grid-template-columns:1fr; gap:30px; }.product-copy h3 { font-size:31px; }
  .product-panel img { height:320px; }.product-tabs { margin-top:22px; }
  .automation-grid { grid-template-columns:1fr; }.automation-card { padding:27px; }
  .heading-row { align-items:start; flex-direction:column; gap:22px; margin-bottom:32px; }
  .faq-layout { grid-template-columns:1fr; gap:30px; }.faq-layout .section-heading { margin-bottom:0; }
  .inline-cta { flex-direction:column; align-items:start; gap:23px; margin-top:38px; }
  .audience-row { grid-template-columns:26px 1fr 24px; gap:16px; padding:26px 0; }
  .audience-row h3 { font-size:21px; }.audience-row>div { grid-column:2; }.audience-row>.icon { grid-column:3; grid-row:1; }
  .inline-note { flex-wrap:wrap; }.inline-note p { flex-basis:80%; }
  .brand-story-visual { min-height:340px; order:2; }
  .resource-hero .split { gap:20px; }.editorial-art { max-width:345px; width:100%; margin:auto; height:290px; }
  .resource-controls { flex-direction:column; align-items:stretch; gap:22px; }.filter-buttons { max-width:none; }.search-field { width:100%; }
  .article-layout { grid-template-columns:1fr; gap:35px; }.article-toc { position:static; padding-bottom:25px; border-bottom:1px solid var(--edge); }
  .article-toc nav { display:grid; grid-template-columns:1fr 1fr; margin-bottom:15px; }.article-toc .text-button { margin-top:0; margin-left:20px; }
  .article-hero h1 { font-size:clamp(35px,7vw,48px); }.article-heading .hero-description { font-size:16px; }
  .article-body h2 { font-size:27px; }.article-body p,.article-body li { font-size:15px; }
  .article-body .article-lead { font-size:17px; }.article-part { padding-top:15px; }
  .takeaway { padding:24px; }.takeaway>p:last-child { font-size:16px; }
  .article-meta { gap:14px; font-size:10px; }.article-meta span+span { padding-left:14px; }
  .contact-grid { grid-template-columns:1fr; gap:40px; }.contact-copy { padding:0; }.contact-copy h2 { font-size:38px; }
  .contact-section { padding-top:55px; }.contact-agenda { margin:30px 0; }.form-row { grid-template-columns:1fr 1fr; gap:15px; }
  .demo-card { padding:30px; }
  .footer-grid { grid-template-columns:1fr 1fr; gap:35px; }.footer-bottom { flex-wrap:wrap; }.footer-bottom>span { display:none; }
  .footer-grid>div:not(:first-child)>a { font-size:12px; }
}
@media(max-width:480px) {
  .product-demo.workspace-demo { padding:20px 14px 14px; border-radius:15px; }
  .workspace-demo .product-copy { padding:4px 7px 0; }
  .workspace-demo .product-copy h3 { font-size:30px; }
  .workspace-demo .product-tabs { flex-direction:column; gap:8px; }
  .workspace-demo .product-tabs button { padding:13px; font-size:11px; }
  .workspace-toolbar { padding:14px; gap:9px; }
  .workspace-brand { gap:8px; }.workspace-brand img { width:51px; }.workspace-brand>span { display:none; }
  .preview-badge { font-size:7px; padding:5px 7px; }
  .workspace-panel { padding:19px 14px; min-height:0; }
  .workspace-title h4 { font-size:18px; }.workspace-title .eyebrow { font-size:7px; }.workspace-symbol { width:31px; height:31px; }
  .monitor-summary { gap:13px; margin-top:16px; padding:16px 0; }.reminder-dial { width:91px; height:91px; }
  .reminder-dial strong { font-size:23px; }.reminder-dial small { font-size:6px; }
  .workspace-panel h5 { font-size:17px; }.mini-label { font-size:6px; }.monitor-summary p,.signature-context p { font-size:10px; }
  .workspace-table-head { padding:11px 10px; font-size:6px; letter-spacing:.07em; }
  .workspace-row { padding:12px 10px; gap:8px; }.record-name { font-size:9px; gap:7px; }.record-name .icon { width:13px; height:13px; }.record-action { font-size:8px; max-width:86px; }
  .workspace-flow { gap:7px; margin-top:19px; }.workspace-flow>span { font-size:8px; gap:5px; }.workspace-flow .icon { width:12px; height:12px; }
  .workspace-caption { padding:11px 14px; font-size:7px; align-items:baseline; }
  .signature-preview { gap:13px; grid-template-columns:1fr 1fr; }.signature-paper { padding:13px; }.signature-line { font-size:7px; gap:5px; }.signature-line .icon { width:15px; height:15px; }
  .signature-stages small { font-size:8px; }.signature-stages strong { font-size:10px; }
  .audience-dialog { width:calc(100% - 20px); max-height:calc(100dvh - 24px); border-radius:15px; }
  .dialog-topbar { padding:12px 17px; }.dialog-topbar>.eyebrow { font-size:7px; }
  .dialog-body { padding:24px 22px; }.dialog-body h2 { font-size:27px; }.dialog-intro { font-size:13px; }
  .dialog-focus { font-size:12px; padding:13px; }.dialog-points h3 { font-size:16px; }.dialog-points p { font-size:12px; }
  .dialog-actions { align-items:stretch; flex-direction:column; }.dialog-actions .text-link { font-size:11px; }
  .brand-plaque strong>span:first-child { font-size:36px; }.brand-plaque strong>span:last-child { font-size:20px; }
  .container { width:calc(100% - 36px); }.section { padding:60px 0; }.page-hero { padding-top:104px; padding-bottom:45px; }
  .nav-container { width:calc(100% - 30px); gap:10px; }.nav-cta { padding:11px 13px; font-size:10px; }.nav-cta span { display:none; }
  .brand img { width:75px; height:33px; }.brand-word { font-size:13px; padding-left:7px; }.brand-word>span { display:none; }.brand { gap:5px; }
  .menu-toggle { width:34px; height:34px; }
  h1 { font-size:39px; }h2 { font-size:33px; }h3 { font-size:22px; }
  .hero-description { font-size:15px; }.eyebrow { font-size:9px; }
  .actions { gap:20px; }.actions .text-link { font-size:12px; }.button { font-size:12px; padding:14px 19px; gap:18px; }
  .grid.two,.grid.three,.grid.four { grid-template-columns:1fr; }.three>.card:last-child:nth-child(3) { grid-column:auto; }
  .card { padding:26px; }.card h3 { font-size:23px; }
  .capability-strip { justify-content:start; gap:15px; padding-top:30px; }
  .network-art { height:320px; }.network-core { width:144px; height:144px; }.network-node { padding:10px 8px; font-size:8px; gap:5px; }.network-node .icon { width:15px; height:15px; }.core-mark { font-size:45px; }.network-core strong { font-size:14px; }.network-core small { font-size:6px; }
  .node-0,.node-2 { left:0; }.node-1,.node-3 { right:0; }.visual-caption { font-size:6px; letter-spacing:.1em; }
  .workflow-steps { grid-template-columns:1fr 1fr; gap:30px 22px; }.workflow-step p { font-size:12px; }.workflow-detail { grid-template-columns:1fr; gap:16px; padding:25px; }.workflow-detail>.icon { display:none; }
  .product-demo { padding:23px; }.product-panel img { height:255px; }.product-tabs button { font-size:10px; padding:11px; }.mini-flow { font-size:8px; gap:8px; }
  .faq-list summary { padding:19px 16px; gap:10px; font-size:13px; }.faq-answer { padding:0 20px 22px 41px; }.faq-answer p { font-size:13px; }
  .cta-panel h2 { font-size:35px; }.cta-actions { flex-direction:column; align-items:start; gap:22px; }.cta-panel p:not(.eyebrow) { font-size:15px; }
  .brand-story-visual { padding:25px; }.brand-plaque strong { font-size:27px; }.brand-plaque>span { font-size:72px; }.capability-tags span { font-size:9px; }
  .article-cover { height:190px; }.article-card-copy { padding:25px; }.article-card h3 { font-size:23px; }
  .editorial-art { height:270px; }.editorial-sheet { left:10px; width:195px; height:245px; }.editorial-stamp { width:105px; height:105px; font-size:35px; }
  .filter-buttons { gap:7px; }.filter-buttons button { font-size:10px; padding:10px 13px; }.empty-state { padding:28px; }
  .article-toc nav { grid-template-columns:1fr; }.article-toc .text-button { display:block; margin-left:0; margin-top:12px; }
  .article-meta { gap:12px; font-size:9px; }.article-meta span+span { padding-left:12px; }.article-body h2 { font-size:25px; }
  .form-row { grid-template-columns:1fr; gap:0; }.demo-card { padding:24px; }.demo-card>h2 { font-size:27px; }
  .footer-grid { gap:32px 22px; padding-top:50px; }.footer-grid>div:last-child { grid-column:1/-1; }.footer-grid h2 { margin-bottom:18px; font-size:9px; }.footer-grid>div:not(:first-child)>a { font-size:11px; }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto!important; animation:none!important; transition:none!important; }
  .motion-ready .reveal { opacity:1; transform:none; }.draw-path { stroke-dashoffset:0; }
  .network-lines .packet { display:none; }.site-footer::before { transform:none; }
}
@media print {
  :root { color-scheme:light; }.site-header,.site-footer,.article-toc,.reading-progress,.cta-section,.article-content-section~section,.breadcrumbs { display:none!important; }
  body,.section,.page-hero { background:white!important; color:#111!important; }h1,h2,h3,p,li,a,span { color:#111!important; }
  .container { width:100%; }.section,.page-hero { padding:15px 0; }.article-layout { display:block; }.article-body { max-width:none; }
  .reveal { opacity:1!important; transform:none!important; }.takeaway,.article-sources { background:#f4f4f4; border-color:#888; }
  .article-body p,.article-body li { font-size:11pt; }.article-body h2 { font-size:17pt; break-after:avoid; }h1 { font-size:28pt!important; }
}

/* FONT-SIZE-ONLY UPDATE
   Existing content, page structure, artwork, colors and animation code are unchanged.
   Large H1/H2 and cinematic headline sizes deliberately keep their original rules.
   Boxes grow only where the larger supporting text needs room. */
@media screen {
  :root { --read-body:18px; --read-control:16px; --read-small:14px; --read-diagram:17px; }
  body { font-size:var(--read-body); }
  .section-intro,.hero-description,.body-copy { font-size:var(--read-body); }
  .eyebrow,.page-hero .eyebrow { font-size:14px; line-height:1.6; letter-spacing:.11em; }
  .breadcrumbs { font-size:15px; line-height:1.6; }
  #main-nav a { font-size:16px; }
  .brand-word>span { font-size:14px; line-height:1.2; letter-spacing:.04em; max-width:112px; }
  .button,.text-link,.text-button,.nav-cta { font-size:var(--read-control); line-height:1.5; }
  .button { min-height:52px; padding:15px 23px; max-width:100%; min-width:0; white-space:normal; overflow-wrap:anywhere; }
  .actions .text-link { font-size:var(--read-control); max-width:100%; min-width:0; overflow-wrap:anywhere; }
  .nav-cta { padding:12px 18px; }
  .index,.faq-number,.card-badge { font-size:14px; line-height:1.5; }
  .card { padding:32px; }
  .card h3,.article-card h3,.automation-card h3 { font-size:24px; line-height:1.35; }
  .card p,.article-card-copy>p:not(.eyebrow),.automation-card p,.audience-row p,.delivery-timeline p,.inline-note p,.inline-cta p { font-size:var(--read-body); line-height:1.8; }
  .check-list li,.model-grid .check-list li { font-size:17px; line-height:1.75; }
  .model-grid .card { padding:32px; }
  .model-grid h3 { font-size:32px; }
  .capability-strip { font-size:18px; line-height:1.7; gap:20px; padding-top:48px; }
  .capability-strip span { font-size:inherit; }
  .capability-strip i { flex-shrink:0; }
  .capability-tags span { font-size:15px; padding:12px 16px; }
  .brand-plaque small { font-size:14px; line-height:1.6; letter-spacing:.08em; }
  .brand-story-visual { min-height:420px; padding:38px; }
  .cta-panel p:not(.eyebrow) { font-size:var(--read-body); }
  .caption,.search-status,.reading-time { font-size:var(--read-small); line-height:1.7; }

  /* The capability strip and the Collect/Verify/Enroll/Monitor illustration. */
  .network-node { font-size:18px; min-height:58px; padding:16px 18px; gap:11px; max-width:46%; line-height:1.5; }
  .network-node .icon { width:22px; height:22px; }
  .network-core small { font-size:14px; line-height:1.5; max-width:82%; text-align:center; }
  .visual-caption { font-size:14px; line-height:1.65; letter-spacing:.06em; left:10px; right:10px; }
  .workflow-step button strong { font-size:20px; line-height:1.4; }
  .workflow-step p { font-size:16px; line-height:1.75; }
  .step-number { width:54px; height:54px; font-size:14px; }
  .workflow-track { top:42px; }
  .detail-number { font-size:16px; }
  .workflow-detail .eyebrow { font-size:14px; }
  .workflow-detail .detail-text { font-size:17px; line-height:1.75; }
  .workflow-detail { padding:34px; }
  .delivery-timeline li>span { font-size:14px; width:49px; height:49px; }
  .delivery-timeline h3 { font-size:24px; }
  .delivery-timeline li:not(:last-child)::before { left:24px; top:49px; }
  .audience-row small { font-size:14px; line-height:1.7; }
  .audience-row h3 { font-size:24px; line-height:1.35; }

  /* Product preview panels: same artwork and columns, taller rows and clearer text. */
  .product-copy>p:not(.eyebrow),.workspace-demo .product-copy>p:not(.eyebrow) { font-size:var(--read-body); line-height:1.8; }
  .product-tabs button,.workspace-demo .product-tabs button { font-size:16px; padding:15px 17px; line-height:1.5; }
  .workspace-demo .product-tabs { max-width:320px; }
  .workspace-promise { font-size:15px; line-height:1.7; }
  .workspace-promise strong { font-size:15px; }
  .workspace-toolbar { flex-wrap:wrap; row-gap:12px; padding:19px 24px; }
  .workspace-brand>span,.preview-badge { font-size:14px; line-height:1.5; letter-spacing:.05em; }
  .preview-badge { white-space:normal; }
  .workspace-panel { padding:30px; min-height:0; }
  .workspace-title { align-items:flex-start; }
  .workspace-title .eyebrow { font-size:14px; letter-spacing:.08em; line-height:1.6; }
  .workspace-title h4 { font-size:24px; line-height:1.35; }
  .workspace-panel h5 { font-size:23px; line-height:1.35; }
  .mini-label,.paper-label { font-size:14px; line-height:1.6; letter-spacing:.04em; }
  .monitor-summary p,.signature-context p { font-size:16px; line-height:1.75; }
  .reminder-dial { width:128px; height:128px; }
  .reminder-dial small { font-size:14px; line-height:1.4; letter-spacing:.04em; }
  .workspace-table-head { font-size:14px; line-height:1.5; letter-spacing:.04em; padding:15px 17px; align-items:flex-start; }
  .workspace-table-head>span { max-width:52%; }
  .workspace-row { padding:17px; align-items:flex-start; }
  .record-name { font-size:16px; line-height:1.6; min-width:0; }
  .record-action { font-size:15px; line-height:1.6; max-width:45%; }
  .workspace-flow { flex-wrap:wrap; row-gap:12px; }
  .workspace-flow>span { font-size:14px; line-height:1.6; }
  .workspace-flow i { min-width:12px; }
  .workspace-caption { font-size:14px; line-height:1.7; padding:15px 23px; align-items:baseline; }
  .signature-line { font-size:14px; line-height:1.6; }
  .signature-stages li { align-items:flex-start; }
  .signature-stages li>span { width:34px; height:34px; font-size:14px; }
  .signature-stages strong { font-size:16px; line-height:1.5; }
  .signature-stages small { font-size:14px; line-height:1.7; }
  .mini-flow { font-size:14px; line-height:1.6; flex-wrap:wrap; }
  .mini-flow i { min-width:15px; }

  /* Existing standalone illustrations, with room for readable labels. */
  .section-visual .visual-overline,.section-visual figcaption { font-size:14px; line-height:1.6; letter-spacing:.06em; }
  .dossier-visual { height:530px; }
  .dossier-file { padding:28px; }
  .dossier-profile strong { font-size:22px; }
  .dossier-profile div>span { font-size:15px; line-height:1.6; }
  .dossier-entry>span { font-size:14px; }
  .dossier-entry>strong { font-size:17px; }
  .dossier-entry { padding:19px 0; }
  .dossier-footer { font-size:14px; line-height:1.6; flex-wrap:wrap; }
  .dossier-check { width:22px; height:22px; font-size:14px; }
  .service-route-visual { height:490px; }
  .route-stop>span { width:38px; height:38px; font-size:14px; }
  .route-stop>strong { font-size:18px; line-height:1.5; }
  .route-legend { font-size:15px; line-height:1.6; bottom:48px; }
  .campus-visual { height:510px; }
  .campus-labels { font-size:15px; line-height:1.5; bottom:42px; }
  .identity-visual { height:520px; }
  .identity-values { bottom:52px; }
  .identity-values>span { font-size:16px; }
  .capability-visual { height:auto; min-height:620px; padding:27px 28px 85px; }
  .capability-top .visual-overline { font-size:14px; max-width:220px; }
  .capability-index-row { padding:22px 0; }
  .capability-index-row strong { font-size:22px; line-height:1.35; }
  .capability-index-row div>span { font-size:15px; line-height:1.6; }
  .capability-footnote { font-size:14px; line-height:1.6; flex-wrap:wrap; gap:10px 18px; }
  .capability-visual figcaption { font-size:14px; left:18px; right:18px; bottom:15px; }

  /* Animated panels: enlarge the label areas and their containers only. */
  .live-visual { height:620px; }
  .live-scene-top { padding:20px; align-items:flex-start; }
  .live-overline { font-size:14px; line-height:1.6; letter-spacing:.07em; flex:1; min-width:0; overflow-wrap:anywhere; }
  .motion-control { font-size:14px; padding:9px 11px; min-height:37px; }
  .motion-control-icon { font-size:15px; }
  .live-scene-caption { min-height:82px; padding:16px 20px; flex-wrap:wrap; gap:8px 16px; }
  .live-scene-caption>span,.live-scene-caption>small { font-size:14px; line-height:1.6; letter-spacing:.03em; }
  .aurora-stage { inset:82px 0 95px; }
  .aurora-brand { min-height:248px; }
  .aurora-brand strong { font-size:26px; }
  .aurora-values>span { font-size:16px; line-height:1.5; }
  .engine-stage { top:88px; height:365px; }
  .engine-label { font-size:16px; line-height:1.5; padding:10px 12px; }
  .engine-readout { bottom:105px; padding-top:18px; }
  .engine-readout>span:first-child { font-size:18px; line-height:1.4; }
  .engine-readout>strong { font-size:15px; line-height:1.6; }
  .library-visual { height:585px; }
  .library-stage { top:83px; height:350px; }
  .library-feature { padding:21px 23px; }
  .library-feature strong { font-size:24px; line-height:1.3; }
  .library-feature small { font-size:16px; line-height:1.65; }
  .library-topics { bottom:112px; font-size:15px; line-height:1.6; flex-wrap:wrap; }

  /* FAQ, popups, forms, resource cards and articles. */
  .faq-list summary { font-size:18px; line-height:1.6; padding:24px; }
  .faq-answer p { font-size:17px; line-height:1.8; }
  .faq-list summary i { width:28px; height:28px; }
  .faq-list summary i::before,.faq-list summary i::after { top:12px; left:8px; }
  .dialog-topbar>.eyebrow,.dialog-approach .eyebrow { font-size:14px; }
  .dialog-intro { font-size:18px; }
  .dialog-focus { font-size:16px; padding:17px 20px; }
  .dialog-points>div>span { font-size:14px; }
  .dialog-points h3 { font-size:21px; }
  .dialog-points p,.dialog-approach>p:last-child { font-size:17px; line-height:1.8; }
  .dialog-actions .text-link { font-size:16px; }
  .dialog-body { padding:36px 40px 40px; }
  .article-cover { min-height:220px; }
  .cover-label { font-size:14px; line-height:1.5; letter-spacing:.05em; max-width:60%; }
  .article-card-copy { padding:30px; }
  .article-card-copy .eyebrow { font-size:14px; flex-wrap:wrap; }
  .filter-buttons button { font-size:16px; padding:12px 16px; }
  .search-field { width:320px; min-height:50px; }
  .search-field input { font-size:16px; }
  .article-meta { font-size:15px; line-height:1.6; }
  .article-toc .eyebrow,.takeaway .eyebrow { font-size:14px; }
  .article-toc nav a { font-size:16px; line-height:1.7; }
  .article-toc>.text-link { font-size:15px; }
  .article-body p,.article-body li { font-size:18px; line-height:1.85; }
  .article-body .article-lead { font-size:19px; }
  .article-sources p,.article-sources li { font-size:16px; }
  .takeaway>p:last-child { font-size:18px; }
  .contact-agenda p,.demo-card>p:not(.eyebrow) { font-size:18px; }
  .contact-agenda h3 { font-size:24px; }
  .contact-agenda li>span,.contact-direct small { font-size:14px; }
  .contact-direct .eyebrow,.demo-card>.eyebrow { font-size:14px; }
  .demo-card { padding:38px; }
  #demo-form label { font-size:17px; }
  #demo-form :is(input,textarea,select) { font-size:17px; min-height:51px; padding:13px; }
  #demo-form .form-explainer,.form-status,.draft-fallback>p { font-size:15px; line-height:1.75; }
  .footer-brand>p { font-size:17px; }
  .footer-tag { font-size:14px; line-height:1.7; letter-spacing:.05em; }
  .footer-grid h2 { font-size:17px; line-height:1.5; letter-spacing:.06em; }
  .footer-grid>div:not(:first-child)>a { font-size:16px; line-height:1.7; }
  .footer-small,.footer-bottom,.footer-bottom p { font-size:14px; line-height:1.7; }

  /* The headline sizes in the first reference image are intentionally untouched. */
  body .cinematic .scene>p:not(.eyebrow) { font-size:18px; line-height:1.7; max-width:680px; }
  body .cinematic .scene>.eyebrow { font-size:14px; line-height:1.6; }
  body .cinematic .actions .text-link,body .cinematic .actions .button { font-size:16px; }
  body .cinematic .story-controls,body .cinematic .scroll-cue { font-size:14px; line-height:1.5; }

  @media(max-width:1100px) {
    .brand-word>span { max-width:95px; }
    .card,.model-grid .card { padding:28px; }
    .network-node { font-size:17px; min-height:54px; padding:14px; gap:9px; }
    .network-art { height:400px; }
    .network-core small { font-size:14px; }
    .product-demo { padding:29px; }
    .workspace-panel { padding:25px; }
    .record-name { font-size:16px; }.record-action { font-size:15px; }
    .service-route-visual { height:490px; }
    .route-stop>strong { font-size:17px; }.route-stop>span { width:36px; height:36px; }
    .campus-visual { height:510px; }
    .capability-visual { min-height:630px; }
    .demo-card { padding:30px; }
    .live-visual { height:625px; }
    .engine-stage { top:95px; height:350px; }
    .library-visual { height:600px; }.library-stage { top:95px; height:345px; }
    .live-scene-caption { min-height:88px; }
  }
  @media(max-width:900px) {
    #main-nav a { font-size:17px; }
    .workspace-demo { grid-template-columns:1fr; }
    .workspace-demo .product-tabs { max-width:none; flex-direction:row; }
    .workspace-demo .product-tabs button { flex:1; }
    .contact-grid { grid-template-columns:1fr; gap:40px; }
    .form-row { grid-template-columns:1fr 1fr; }
  }
  @media(max-width:720px) {
    .network-art { height:440px; }
    .network-node { font-size:17px; }
    .network-core small { font-size:14px; }
    .capability-strip { font-size:17px; gap:18px; }
    .audience-row h3 { font-size:24px; }
    .article-toc nav a { font-size:16px; }
    .article-heading .hero-description { font-size:18px; }
    .live-visual { height:625px; }
    .library-visual { height:600px; }
    .campus-labels { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); text-align:center; gap:12px; }
    .footer-grid>div:not(:first-child)>a { font-size:16px; }
  }
  @media(max-width:480px) {
    :root { --read-body:17px; --read-control:16px; }
    .nav-container { gap:8px; }
    .nav-cta { font-size:16px; padding:11px 10px; }
    .brand-word>span { display:none; }
    .brand-word { font-size:16px; }
    .card,.model-grid .card,.automation-card,.article-card-copy { padding:28px; }
    .card h3,.article-card h3,.automation-card h3 { font-size:24px; }
    .model-grid h3 { font-size:30px; }
    .check-list li { font-size:17px; }
    .network-art { height:420px; }
    .network-node { font-size:17px; padding:13px 12px; gap:8px; min-height:54px; max-width:46%; }
    .network-node .icon { width:19px; height:19px; }
    .network-core { width:164px; height:164px; }
    .network-core small { font-size:14px; }
    .visual-caption { font-size:14px; line-height:1.65; left:12px; right:12px; letter-spacing:.03em; }
    .workflow-step p { font-size:16px; }.workflow-detail .detail-text { font-size:17px; }
    .workflow-detail { padding:28px; }
    .product-demo.workspace-demo { padding:25px 17px 17px; }
    .workspace-demo .product-tabs { flex-direction:column; }
    .workspace-demo .product-tabs button { font-size:16px; padding:14px; }
    .workspace-panel { padding:22px 16px; }
    .workspace-toolbar { padding:17px; }
    .workspace-title h4 { font-size:23px; }.workspace-title .eyebrow { font-size:14px; }
    .workspace-title .workspace-symbol { width:36px; height:36px; }
    .monitor-summary { align-items:flex-start; gap:16px; flex-direction:column; }
    .reminder-dial { width:124px; height:124px; }
    .reminder-dial small { font-size:14px; }
    .workspace-panel h5 { font-size:22px; }.mini-label { font-size:14px; }
    .monitor-summary p,.signature-context p { font-size:17px; }
    .workspace-table-head { font-size:14px; padding:13px 12px; }
    .workspace-row { padding:16px 12px; gap:10px; }
    .record-name { font-size:15px; gap:8px; }.record-action { font-size:14px; max-width:44%; }
    .workspace-flow>span { font-size:14px; }.workspace-flow { gap:8px; }
    .workspace-caption { font-size:14px; padding:14px 17px; }
    .signature-preview { grid-template-columns:1fr; gap:22px; }
    .signature-paper { width:100%; max-width:230px; padding:21px; }
    .signature-line,.paper-label { font-size:14px; }
    .signature-stages strong { font-size:16px; }.signature-stages small { font-size:14px; }
    .mini-flow { font-size:14px; gap:9px; }
    .service-route-visual { height:505px; }
    .route-map { top:158px; height:230px; }
    .route-heading>strong { font-size:29px; }
    .route-stop { gap:6px; }.route-stop>strong { font-size:16px; }.route-stop>span { width:34px; height:34px; font-size:14px; }
    .route-legend { bottom:47px; font-size:14px; gap:10px; }.route-legend>span { max-width:48%; }
    .section-visual .visual-overline,.section-visual figcaption { font-size:14px; line-height:1.6; }
    .campus-visual { height:510px; }.campus-skyline { top:165px; height:245px; }.campus-labels { font-size:14px; bottom:44px; }
    .capability-visual { height:auto; min-height:680px; padding:24px 21px 100px; }
    .capability-index-row { padding:23px 0; gap:12px; }.capability-index-row strong { font-size:22px; }.capability-index-row div>span { font-size:15px; }
    .capability-top .visual-overline { font-size:14px; }.capability-visual figcaption { font-size:14px; bottom:16px; }
    .brand-plaque small { font-size:14px; }.capability-tags span { font-size:15px; }
    .live-visual { height:635px; }
    .live-scene-top { padding:17px; gap:8px; }
    .live-overline { font-size:14px; line-height:1.55; letter-spacing:.04em; }
    .motion-control { font-size:14px; padding:8px; }
    .live-scene-caption { min-height:90px; padding:15px 17px; }
    .live-scene-caption>span,.live-scene-caption>small { font-size:14px; text-align:left; }
    .aurora-stage { inset:100px 0 105px; }
    .aurora-brand { min-height:240px; }.aurora-brand strong { font-size:25px; }
    .aurora-values { display:grid; grid-template-columns:1fr 1fr; gap:10px 18px; bottom:15px; }
    .aurora-values>span { font-size:15px; }
    .engine-stage { top:100px; height:335px; }
    .engine-label { font-size:15px; padding:9px; }
    .engine-readout { bottom:113px; }.engine-readout>span:first-child { font-size:17px; }.engine-readout>strong { font-size:15px; }
    .library-visual { height:620px; }.library-stage { top:100px; height:350px; }
    .library-feature { padding:18px; gap:14px; }.library-feature strong { font-size:23px; }.library-feature small { font-size:15px; }
    .library-topics { font-size:14px; bottom:120px; gap:10px; }
    .faq-list summary { font-size:17px; padding:22px 18px; }.faq-answer p { font-size:17px; }
    .dialog-body { padding:28px 24px; }.dialog-topbar>.eyebrow { font-size:14px; }.dialog-intro { font-size:17px; }
    .dialog-focus { font-size:16px; }.dialog-points h3 { font-size:21px; }.dialog-points p,.dialog-approach>p:last-child { font-size:17px; }
    .dialog-actions .text-link { font-size:16px; }
    .article-meta { font-size:14px; gap:12px; }.article-meta span+span { padding-left:12px; }
    .article-body p,.article-body li { font-size:17px; }.article-body .article-lead { font-size:18px; }
    .article-sources p,.article-sources li { font-size:16px; }
    .cover-label { font-size:14px; left:25px; }.cover-number { right:22px; }
    .filter-buttons button { font-size:16px; padding:12px 15px; }
    .form-row { grid-template-columns:1fr; gap:0; }
    .demo-card { padding:28px 24px; }
    #demo-form label { font-size:17px; }#demo-form :is(input,textarea,select) { font-size:17px; }
    .footer-grid h2 { font-size:17px; }.footer-grid>div:not(:first-child)>a { font-size:16px; }
    body .cinematic .scene>p:not(.eyebrow) { font-size:17px; line-height:1.7; }
    body .cinematic .scene>.eyebrow { font-size:14px; letter-spacing:.1em; }
    body .cinematic .actions .text-link { font-size:16px; }
    body .cinematic .scroll-cue { font-size:14px; letter-spacing:.04em; }
  }
  /* Keep the original SVG paths attached to the enlarged corner labels. */
  @supports (container-type:inline-size) {
    .network-art { container-type:inline-size; --node-half:30.5px; }
    .node-0,.node-1 { top:calc(50% - min(25cqw,31.25%) - var(--node-half)); }
    .node-2,.node-3 { bottom:calc(50% - min(25cqw,31.25%) - var(--node-half)); }
    @media(max-width:1100px) { .network-art { --node-half:27.75px; } }
    @media(max-width:480px) { .network-art { --node-half:27px; } }
  }
}

/* Requested logo and first workflow-label refinements. */
.brand-plaque.brand-plaque-logo { display:flex; flex-direction:column; align-items:center; gap:25px; width:100%; max-width:470px; }
.brand-plaque-logo img { display:block; width:100%; height:auto; object-fit:contain; }
.brand-plaque-logo small { max-width:100%; }
.brand-story-visual:has(.brand-plaque-logo) { padding-inline:24px; }
.route-map .stop-collect { top:65%; }
@media(max-width:1100px) { .route-map .stop-collect { top:58%; } }
@media(max-width:480px) { .route-map .stop-collect { top:56%; } }
@supports(container-type:inline-size) {
  .route-map { container-type:inline-size; --collect-clearance:44px; }
  .route-map .stop-collect { top:calc(50% + min(19cqw,36.5384615%) - var(--collect-clearance)); }
  @media(max-width:1100px) { .route-map { --collect-clearance:42px; } }
  @media(max-width:480px) { .route-map { --collect-clearance:38px; } }
}

/* Requested readability/highlight update, limited to the Who We Serve list. */
@media screen {
  .audience-list .audience-row { padding-top:36px; padding-bottom:36px; }
  .audience-list .audience-row p { font-size:21px; line-height:1.75; color:#edf5ff; margin-bottom:13px; }
  .audience-list .audience-row small { display:block; font-size:17px; line-height:1.65; font-weight:500; letter-spacing:.025em; color:#b9d9ff; }
  @media(max-width:800px) {
    .audience-list .audience-row p { font-size:20px; }
    .audience-list .audience-row small { font-size:17px; }
  }
  @media(max-width:480px) {
    .audience-list .audience-row { padding-top:29px; padding-bottom:29px; }
    .audience-list .audience-row p { font-size:19px; line-height:1.75; }
    .audience-list .audience-row small { font-size:16px; line-height:1.7; }
  }
}

/* QWay logo spotlight: original-color wordmark on a luminous, high-contrast surface.
   These rules are scoped to this single About-page visual. */
.brand-story-visual.qway-highlight {
  position:relative;isolation:isolate;min-height:470px;padding:82px 28px 34px;
  grid-template-rows:1fr auto;gap:35px;overflow:hidden;border:1px solid #416d9e;
  border-radius:22px;background:radial-gradient(ellipse at 50% 35%,#1c426b 0,#0e2440 48%,#081729 100%);
  box-shadow:0 25px 55px rgba(0,0,0,.22),inset 0 1px 0 rgba(192,222,255,.1);
}
.qway-highlight .qway-motion-control {position:absolute;right:18px;top:17px;z-index:4;font-size:14px;}
.qway-ambient {position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 34%,rgba(117,184,255,.2),transparent 60%),repeating-linear-gradient(115deg,transparent 0 48px,rgba(145,192,249,.035) 49px 50px);}
.qway-frame {position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;}
.qway-frame rect {stroke:#436d99;stroke-width:1;vector-effect:non-scaling-stroke;}
.qway-frame .qway-border-light {stroke:#c0e1ff;stroke-width:2;stroke-linecap:round;stroke-dasharray:12 88;filter:drop-shadow(0 0 5px rgba(125,190,255,.7));}
.qway-highlight .brand-plaque-logo {position:relative;width:100%;max-width:510px;gap:28px;z-index:2;}
.qway-logo-surface {
  position:relative;isolation:isolate;overflow:hidden;width:100%;padding:34px 22px;
  border:1px solid #fff;border-radius:15px;background:#f5f9ff;
  box-shadow:0 20px 40px rgba(0,0,0,.28),0 0 45px rgba(110,176,255,.15),inset 0 1px 0 #fff;
  transform:perspective(950px) rotateY(calc(var(--motion-x,0) * 3deg)) rotateX(calc(var(--motion-y,0) * -2deg));
  transition:transform .35s ease-out,box-shadow .35s ease;
}
.qway-logo-surface::before {content:'';position:absolute;inset:-30%;z-index:0;pointer-events:none;background:linear-gradient(110deg,transparent 25%,rgba(170,207,250,.34) 45%,#fff 52%,transparent 70%);transform:translateX(-100%);}
.qway-highlight .qway-logo-surface img {position:relative;z-index:1;display:block;width:100%;height:auto;object-fit:contain;filter:none;}
.qway-highlight .brand-plaque-logo small {color:#d4e7ff;font-size:14px;line-height:1.7;letter-spacing:.12em;text-align:center;}
.qway-highlight .capability-tags {z-index:2;gap:10px;}
.qway-highlight .capability-tags span {font-size:15px;line-height:1.5;padding:12px 17px;border:1px solid #517cae;border-radius:999px;background:rgba(16,42,72,.86);color:#d1e6ff;box-shadow:inset 0 1px 0 rgba(171,210,255,.08);}
.qway-highlight:hover .qway-logo-surface {box-shadow:0 24px 45px rgba(0,0,0,.3),0 0 60px rgba(126,191,255,.22),inset 0 1px 0 #fff;}
.qway-highlight.live-initialized .qway-border-light {animation:qway-frame-trace 9s linear infinite;animation-play-state:paused;}
.qway-highlight.live-initialized .qway-logo-surface::before {animation:qway-surface-shine 8s ease-in-out infinite;animation-play-state:paused;}
.qway-highlight.live-initialized .qway-ambient {animation:qway-ambient-breathe 7s ease-in-out infinite alternate;animation-play-state:paused;}
.qway-highlight.live-initialized.is-running .qway-border-light,.qway-highlight.live-initialized.is-running .qway-logo-surface::before,.qway-highlight.live-initialized.is-running .qway-ambient {animation-play-state:running;}
@keyframes qway-frame-trace {to{stroke-dashoffset:-100;}}
@keyframes qway-surface-shine {0%,15%{transform:translateX(-100%);opacity:0}30%{opacity:1}65%,100%{transform:translateX(100%);opacity:0}}
@keyframes qway-ambient-breathe {to{opacity:.48;}}
@media(max-width:800px) {.brand-story-visual.qway-highlight {min-height:430px;max-width:580px;width:100%;margin:auto;}}
@media(max-width:480px) {
 .brand-story-visual.qway-highlight {min-height:390px;padding:74px 20px 27px;gap:29px;}
 .qway-logo-surface {padding:28px 14px;border-radius:12px;}
 .qway-highlight .brand-plaque-logo {gap:24px;}
 .qway-highlight .brand-plaque-logo small {font-size:14px;letter-spacing:.06em;}
 .qway-highlight .capability-tags {gap:9px;}
 .qway-highlight .capability-tags span {font-size:14px;padding:11px 14px;}
 .qway-highlight .qway-motion-control {right:14px;top:14px;}
}
@media(prefers-reduced-motion:reduce) {
  .qway-highlight *,.qway-highlight *::before {animation:none!important;transition:none!important;}
  .qway-logo-surface {transform:none;}
}

/* QWay kinetic sculpture: an open composition, without a card or rectangular plaque. */
.qway-sculpture {
  position:relative;isolation:isolate;width:100%;min-width:0;height:535px;margin:0;
  padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:hidden;
  container-type:inline-size;container-name:qway-sculpture;
}
.qway-sculpture-control.motion-control {position:absolute;right:6px;top:4px;z-index:5;border:0;background:transparent;box-shadow:none;color:#abc7eb;padding:9px 10px;font-size:14px;}
.qway-sculpture-control.motion-control:hover {color:#fff;background:transparent;border:0;}
.qway-sculpture-glow {position:absolute;inset:7% 0 13%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 54%,rgba(58,113,199,.14),transparent 65%);}
.qway-sculpture-canvas,.qway-sculpture-fallback {position:absolute;inset:0;width:100%;height:calc(100% - 110px);pointer-events:none;mask-image:radial-gradient(ellipse at 50% 47%,#000 52%,transparent 96%);}
.qway-sculpture.has-sculpture-canvas .qway-sculpture-fallback {display:none;}
.qway-sculpture-wordmark {
  position:absolute;left:6%;right:6%;top:calc(47% - 51.7px);z-index:3;
  transform:translateY(-50%) perspective(900px) rotateY(calc(var(--motion-x,0) * 3deg)) rotateX(calc(var(--motion-y,0) * -2deg));
  transition:transform .4s ease-out;background:none;border:0;border-radius:0;padding:0;box-shadow:none;
}
.qway-sculpture-wordmark::before {
  content:'';position:absolute;left:50%;top:50%;width:116%;height:155px;z-index:-1;
  transform:translate(-50%,-50%);pointer-events:none;
  background:radial-gradient(ellipse 49% 46% at center,rgba(252,254,255,.98) 0%,rgba(245,250,255,.97) 70%,rgba(215,235,255,.72) 82%,rgba(116,170,239,.12) 94%,transparent 100%);
  filter:blur(13px);
}
.qway-sculpture-wordmark img {display:block;width:100%;height:auto;object-fit:contain;position:relative;filter:drop-shadow(0 1px 0 rgba(255,255,255,.65)) drop-shadow(0 0 12px rgba(228,243,255,.6));}
.qway-sculpture-caption {position:absolute;bottom:65px;left:16px;right:16px;z-index:3;text-align:center;color:#c5ddfb;font-size:14px;line-height:1.7;letter-spacing:.12em;text-shadow:0 2px 6px #05101e;}
.qway-sculpture-tags {position:absolute;bottom:20px;left:12px;right:12px;z-index:3;display:flex;justify-content:center;align-items:center;gap:15px 23px;flex-wrap:wrap;}
.qway-sculpture-tags>span {display:inline-flex;align-items:center;gap:9px;color:#c3dbfa;font-size:15px;line-height:1.6;padding:0;background:none;border:0;border-radius:0;box-shadow:none;}
.qway-sculpture-tags>span::before {content:'';width:14px;height:1px;flex-shrink:0;background:linear-gradient(90deg,transparent,#93c4ff);}
@media(max-width:1100px) {.qway-sculpture{height:510px}.qway-sculpture-wordmark{left:4%;right:4%}.qway-sculpture-tags{gap:13px 17px}.qway-sculpture-tags>span{font-size:14px;gap:7px}}
@media(max-width:720px) {.qway-sculpture{height:515px;max-width:580px;order:2;margin:auto}.qway-sculpture-wordmark{left:5%;right:5%}}
@media(max-width:480px) {
 .qway-sculpture{height:500px}
 .qway-sculpture-wordmark{left:4%;right:4%}
 .qway-sculpture-wordmark::before{height:127px;filter:blur(11px)}
 .qway-sculpture-caption{font-size:14px;letter-spacing:.04em;left:10px;right:10px}
 .qway-sculpture-tags{bottom:18px;gap:12px 20px;left:5px;right:5px}
 .qway-sculpture-tags>span{font-size:14px;gap:7px}
 .qway-sculpture-control.motion-control{right:0;top:0}
}
@container qway-sculpture (max-width:430px) {
 .qway-sculpture-canvas,.qway-sculpture-fallback{height:calc(100% - 145px)}
 .qway-sculpture-wordmark{top:calc(47% - 68.15px)}
 .qway-sculpture-caption{bottom:100px}
 .qway-sculpture-tags{bottom:12px}
}
@media(prefers-reduced-motion:reduce) {.qway-sculpture-wordmark{transform:translateY(-50%);transition:none}}

/* QWay editorial signature: crisp branding, curved geometry and restrained detail. */
.qway-signature {width:100%;min-width:0;max-width:580px;margin:0 auto;padding:12px 0;}
.qway-signature-stage {position:relative;isolation:isolate;padding:25px 16px 26px;}
.qway-signature-disc {
  position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;
  width:100%;aspect-ratio:1.38;border-radius:50%;padding:40px 24px;
  background:linear-gradient(145deg,#fff 15%,#f2f7fd 72%,#deebfb);
  border:1px solid #fff;box-shadow:0 18px 36px rgba(0,0,0,.12);
}
.qway-signature-disc img {display:block;width:100%;max-width:440px;height:auto;object-fit:contain;filter:none;margin:25px 0 22px;}
.qway-signature-kicker {font-size:11px;font-weight:600;line-height:1.6;letter-spacing:.19em;color:#526b88;text-align:center;}
.qway-signature-rule {width:34px;height:2px;background:#2676c6;transition:width .45s ease;}
.qway-signature-note {margin-top:16px;color:#36516e;text-align:center;font-size:16px;font-weight:400;line-height:1.5;letter-spacing:.015em;}
.qway-signature-arc {position:absolute;inset:8px 0 10px;border:1px solid #29496d;border-radius:50%;pointer-events:none;}
.qway-signature-arc::after {content:'';position:absolute;inset:-1px;border:2px solid transparent;border-top-color:#70acfa;border-radius:50%;}
.qway-signature-marker {position:absolute;right:8%;bottom:17%;width:9px;height:9px;border-radius:50%;background:#84baff;box-shadow:0 0 0 6px #0b1c30;}
.qway-signature-caption {margin:26px 0 22px;text-align:center;color:#a6c6ee;font-size:12px;line-height:1.7;font-weight:500;letter-spacing:.13em;}
.qway-signature-services {display:grid;grid-template-columns:1fr 1.12fr 1fr;gap:18px;list-style:none;padding:0;margin:0 14px;}
.qway-signature-services li {display:flex;flex-direction:column;gap:9px;border-top:1px solid #294563;padding-top:14px;color:#e1edff;font-size:16px;line-height:1.6;}
.qway-signature-services li>span {color:#7ea6d8;font-size:11px;line-height:1.5;font-weight:500;letter-spacing:.12em;}
@media(hover:hover) and (pointer:fine) {.qway-signature:hover .qway-signature-rule {width:62px;}}
@media(max-width:1100px) {
 .qway-signature-stage {padding:23px 13px;}
 .qway-signature-disc {aspect-ratio:1.2;padding:32px 19px;}
 .qway-signature-services {gap:12px;margin-inline:4px;}
 .qway-signature-services li {font-size:15px;}
}
@media(max-width:720px) {.qway-signature {max-width:490px;}.qway-signature-disc {aspect-ratio:1.38;}}
@media(max-width:480px) {
 .qway-signature-stage {padding:20px 10px;}
 .qway-signature-disc {aspect-ratio:1.15;padding:30px 17px;}
 .qway-signature-disc img {margin:22px 0 18px;}
 .qway-signature-kicker {font-size:10px;letter-spacing:.12em;}
 .qway-signature-note {font-size:15px;}
 .qway-signature-caption {font-size:11px;letter-spacing:.09em;margin-top:20px;}
 .qway-signature-services {gap:10px;}
 .qway-signature-services li {font-size:14px;}
}
@media(prefers-reduced-motion:reduce) {.qway-signature-rule {transition:none;}}

/* AelfaCred redesign: illustrative dashboard, metrics and animated mobile preview */
:root { --aelfa-cyan:#62d7e8; --aelfa-blue:#4d8dff; --aelfa-panel:#101c2c; }
h1 span,h2 span,h3 span,.section-heading h2 span { color:inherit !important; }
.intro-metrics { padding-top:54px; padding-bottom:56px; }
.section-heading { max-width:850px; }
.section-heading h2 { margin:0 0 16px; }
.section-heading .section-intro { max-width:760px; }
.metric-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:32px; }
.metric-card { display:flex; flex-direction:column; gap:8px; padding:22px 24px; border:1px solid rgba(148,181,220,.2); border-radius:18px; background:linear-gradient(145deg,rgba(23,39,60,.92),rgba(10,20,34,.88)); box-shadow:0 18px 48px rgba(0,0,0,.14); }
.metric-value { font-size:clamp(28px,4vw,42px); line-height:1; font-weight:750; letter-spacing:-.04em; color:#fff; }
.metric-card>span:last-child { color:#b7c6d9; font-size:13px; }
.metric-note,.mock-disclaimer { font-size:11px; color:#8799b0; margin-top:12px; }
.dashboard-grid { display:grid; grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr); gap:42px; align-items:center; }
.dashboard-copy h2,.mobile-product-copy h2 { font-size:clamp(30px,4vw,48px); line-height:1.1; letter-spacing:-.04em; margin:0 0 18px; }
.dashboard-copy>p:not(.eyebrow),.mobile-product-copy>p:not(.eyebrow) { color:#bac8d9; line-height:1.8; }
.dashboard-mock { border:1px solid rgba(129,166,209,.28); background:#f8fbff; color:#15253b; border-radius:20px; padding:16px; box-shadow:0 28px 80px rgba(0,0,0,.32); transform:perspective(1200px) rotateY(-4deg); transition:transform .7s cubic-bezier(.2,.8,.2,1),box-shadow .7s; }
.dashboard-mock:hover { transform:perspective(1200px) rotateY(0) translateY(-5px); box-shadow:0 34px 90px rgba(0,0,0,.4); }
.mock-top { display:flex; align-items:center; gap:6px; padding:4px 2px 14px; border-bottom:1px solid #e1e8f1; font-size:12px; }
.mock-top strong { margin-left:8px; font-size:13px; }.mock-dot { width:7px;height:7px;border-radius:50%;background:#a8b7c8; }.mock-badge { margin-left:auto; font-size:8px; letter-spacing:.12em; padding:5px 7px; border-radius:5px; color:#1764b2; background:#e6f2ff; }
.mock-stats { display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:14px 0; }.mock-stats>div { padding:12px 10px;border:1px solid #e3eaf3;border-radius:10px;background:#fff; }.mock-stats small { display:block;font-size:8px;color:#6e8095;letter-spacing:.05em; }.mock-stats b { display:block;font-size:25px;margin:8px 0; }.mini-line { display:block;width:80%;height:4px;border-radius:5px;background:#3d9d78; }.mini-line.teal { background:#2cb7c8; }.mini-line.orange { background:#efa53c; }
.mock-lower { display:grid;grid-template-columns:1.1fr .9fr;gap:10px; }.mock-panel { padding:13px;border:1px solid #e3eaf3;border-radius:10px;background:white; }.mock-panel h3 { font-size:12px;margin:0 0 15px;color:#172a43; }.mock-panel p { font-size:9px;color:#63748a;margin:8px 0 14px; }.mock-panel p b { float:right;color:#263c56; }.mock-bar { height:6px;background:#e7eef6;border-radius:6px;overflow:hidden; }.mock-bar span { display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,#2879ef,#4fc7d6); }.mock-expiry p { display:flex;align-items:center;gap:6px;line-height:1.4; }.mock-expiry p i { width:7px;height:7px;border-radius:50%;background:#42b889;flex:none; }.mock-expiry p b { font-size:8px;color:#397b69; }
.mobile-product-grid { display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center; }.mobile-points { display:grid;gap:10px;margin-top:26px; }.mobile-points span { border-bottom:1px solid rgba(160,190,224,.16);padding:10px 0;color:#c7d4e3;font-size:13px; }
.phone-stage { min-height:600px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;isolation:isolate; }.phone-glow { position:absolute;width:370px;height:370px;border-radius:50%;background:radial-gradient(circle,rgba(49,133,255,.28),rgba(51,204,219,.08) 45%,transparent 70%);filter:blur(10px);z-index:-1;animation:phoneGlow 7s ease-in-out infinite alternate; }.phone-frame { position:relative;width:276px;height:548px;border:8px solid #283444;border-radius:42px;padding:7px;background:#080d16;box-shadow:0 35px 80px rgba(0,0,0,.45),inset 0 0 0 1px #56667b;transform:rotate(-2deg);transition:transform .6s; }.phone-frame:hover { transform:rotate(0deg) translateY(-6px); }.phone-island { position:absolute;z-index:4;top:10px;left:50%;transform:translateX(-50%);width:84px;height:21px;border-radius:20px;background:#080d16; }.phone-screen { position:relative;height:100%;overflow:hidden;border-radius:29px;background:linear-gradient(180deg,#f9fbff,#edf4fb);color:#132842;padding:18px 14px 52px; }.phone-status { display:flex;justify-content:space-between;font-size:9px;font-weight:700;padding:0 3px 20px; }.phone-brand { display:flex;align-items:center;justify-content:space-between;margin-bottom:23px;font-size:10px;color:#647890; }.phone-brand img { width:95px;height:auto;object-fit:contain; }.phone-slide { position:absolute;inset:70px 14px 55px;opacity:0;transform:translateX(28px) scale(.98);pointer-events:none;transition:opacity .55s,transform .65s cubic-bezier(.2,.8,.2,1); }.phone-slide.is-active { opacity:1;transform:translateX(0) scale(1);pointer-events:auto; }.phone-kicker { font-size:8px;letter-spacing:.1em;color:#3984d8;font-weight:800;margin:0 0 9px; }.phone-slide h3 { font-size:23px;line-height:1.12;margin:0 0 7px;color:#172c47; }.phone-sub { font-size:10px;color:#7c8ca1;margin-bottom:20px; }.phone-stat { display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid #e2eaf4;border-radius:11px;padding:14px 12px;margin:9px 0;font-size:10px;color:#63748a; }.phone-stat b { font-size:20px;color:#172c47; }.phone-task { display:flex;align-items:center;gap:9px;padding:13px 9px;margin-top:10px;background:#fff;border:1px solid #e1e9f3;border-radius:10px; }.phone-task>i { width:8px;height:8px;background:#31b88a;border-radius:50%;flex:none; }.phone-task>i.yellow { background:#f1b544; }.phone-task>i.pink { background:#e97b9b; }.phone-task>i.green { background:#31b88a; }.phone-task div { display:grid;gap:4px;min-width:0; }.phone-task b { font-size:10px;color:#263c56; }.phone-task small { font-size:8px;color:#8392a6; }.phone-task>span { margin-left:auto;color:#90a3ba; }.phone-ring { width:104px;height:104px;border-radius:50%;margin:18px auto;display:grid;place-items:center;background:conic-gradient(#42c9c8 0 36%,#498df0 36% 68%,#f0b45b 68% 84%,#e97b9b 84%);position:relative; }.phone-ring:before { content:"";position:absolute;inset:11px;border-radius:50%;background:#f6f9fd; }.phone-ring span { position:relative;display:grid;text-align:center;font-size:22px;font-weight:800; }.phone-ring small { font-size:8px;font-weight:500;color:#73849a; }.phone-progress { height:7px;background:#dce7f3;border-radius:7px;margin:22px 0 7px;overflow:hidden; }.phone-progress span { display:block;height:100%;background:linear-gradient(90deg,#3488f0,#4cc7cf);border-radius:7px; }.phone-progress-label { display:flex;justify-content:space-between;font-size:8px;color:#788ba1; }.phone-progress-label b { color:#334c67; }.phone-nav { position:absolute;bottom:0;left:0;right:0;height:47px;background:#fff;border-top:1px solid #e1eaf4;display:flex;justify-content:space-around;align-items:center;color:#3479c9;font-size:13px; }.phone-nav span { display:grid;justify-items:center;gap:2px; }.phone-nav small { font-size:7px;color:#8a9bb0; }.phone-controls { display:flex;gap:10px;margin-top:20px; }.phone-dot { width:9px;height:9px;border:0;border-radius:50%;padding:0;background:#5e7188;cursor:pointer;transition:transform .25s,background .25s; }.phone-dot.is-active { background:#70dce5;transform:scale(1.35); }.phone-caption { color:#9fb0c5;font-size:11px;margin-top:12px; }.phone-stage:after { content:"";position:absolute;inset:5% -12% 0;border:1px solid rgba(120,174,226,.08);border-radius:50%;transform:rotate(-24deg);z-index:-2;pointer-events:none; }
@keyframes phoneGlow { from{transform:scale(.9);opacity:.65}to{transform:scale(1.08);opacity:1} }
.workflow-story .section-heading { text-align:center;margin-left:auto;margin-right:auto; }.story-track { display:grid;grid-template-columns:repeat(4,1fr);gap:14px; }.story-track article { position:relative;padding:24px;border:1px solid rgba(144,180,220,.2);border-radius:16px;background:rgba(19,34,53,.62);transition:transform .35s,border-color .35s; }.story-track article:hover { transform:translateY(-6px);border-color:rgba(98,215,232,.6); }.story-track article>span { color:#69d5e4;font-size:12px;font-weight:800; }.story-track h3 { margin:17px 0 9px; }.story-track p { color:#aebfd2;font-size:13px;line-height:1.7; }
.lifecycle-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:18px; }.lifecycle-card { position:relative;padding:28px;border:1px solid rgba(138,175,219,.2);border-radius:18px;background:linear-gradient(145deg,rgba(23,40,61,.85),rgba(9,19,32,.75));transition:transform .35s,border-color .35s; }.lifecycle-card:hover { transform:translateY(-7px);border-color:rgba(98,215,232,.55); }.lifecycle-number { position:absolute;right:22px;top:20px;color:#6b809b;font-size:12px;font-weight:800; }.lifecycle-icon { width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:rgba(71,153,255,.15);color:#72dce8;font-size:25px;margin-bottom:24px; }.lifecycle-card h3 { font-size:21px;margin:0 0 12px; }.lifecycle-card p,.lifecycle-card li { color:#b4c4d6;font-size:13px;line-height:1.75; }.lifecycle-card ul { padding-left:17px;margin:15px 0 0; }.audience-service-grid .card { min-height:180px; }
@media(max-width:900px) { .dashboard-grid,.mobile-product-grid { grid-template-columns:1fr; }.dashboard-grid { gap:30px; }.dashboard-copy { max-width:700px; }.phone-stage { min-height:610px; }.lifecycle-grid { grid-template-columns:1fr; }.lifecycle-card { padding:24px; }.story-track { grid-template-columns:repeat(2,1fr); } }
@media(max-width:600px) { .metric-row { grid-template-columns:1fr;gap:10px; }.metric-card { padding:18px 20px; }.dashboard-mock { padding:10px;transform:none;border-radius:14px; }.mock-stats { gap:5px; }.mock-stats>div { padding:9px 7px; }.mock-stats small { font-size:7px; }.mock-stats b { font-size:20px; }.mock-lower { grid-template-columns:1fr; }.mock-expiry { display:none; }.mobile-product-grid { gap:18px; }.phone-frame { width:260px;height:520px; }.phone-stage { min-height:575px; }.story-track { grid-template-columns:1fr; }.section-heading h2 { font-size:30px; }.lifecycle-card h3 { font-size:19px; } }
@media(prefers-reduced-motion:reduce) { .phone-glow,.phone-frame,.dashboard-mock,.story-track article,.lifecycle-card { animation:none!important;transition:none!important; } }
.cinematic em,.route-heading em,.campus-heading em,.identity-lockup em { color:#fff !important; }


/* Testimonial section: placeholder content is explicitly marked until approved customer quotes are supplied. */
.testimonial-section .section-heading { max-width:780px; margin:0 auto 34px; text-align:center; }
.testimonial-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.testimonial-card { display:flex; flex-direction:column; min-height:280px; padding:26px; border:1px solid rgba(137,177,222,.22); border-radius:18px; background:linear-gradient(145deg,rgba(23,40,61,.9),rgba(10,20,34,.86)); box-shadow:0 18px 45px rgba(0,0,0,.12); transition:transform .35s,border-color .35s,box-shadow .35s; }
.testimonial-card:hover { transform:translateY(-6px); border-color:rgba(100,216,233,.58); box-shadow:0 24px 55px rgba(0,0,0,.2); }
.testimonial-stars { margin-bottom:18px; color:#73dce7; letter-spacing:.15em; font-size:13px; }
.testimonial-quote { flex:1; margin:0 0 24px; color:#e5edf7; font-size:15px; line-height:1.8; }
.testimonial-person { display:flex; align-items:center; gap:12px; padding-top:17px; border-top:1px solid rgba(137,177,222,.16); }
.testimonial-avatar { display:grid; place-items:center; width:42px; height:42px; border-radius:50%; color:#eaf7ff; background:linear-gradient(135deg,#317ee8,#31b9c8); font-size:12px; font-weight:800; }
.testimonial-person strong,.testimonial-person small { display:block; }
.testimonial-person strong { color:#fff; font-size:13px; }
.testimonial-person small { margin-top:4px; color:#9fb2c8; font-size:10px; line-height:1.5; }
@media(max-width:900px) { .testimonial-grid { grid-template-columns:1fr; } .testimonial-card { min-height:0; } }
@media(prefers-reduced-motion:reduce) { .testimonial-card { transition:none!important; } }


/* Single-line heading alignment requested for the AelfaCred pages. Keep long headings
   on one visual line while scaling type to the available viewport. */
.single-line-heading {
  white-space: nowrap;
  width: max-content;
  max-width: 100%;
  font-size: clamp(13px, 2.65vw, 36px);
  line-height: 1.18;
  letter-spacing: -.035em;
  text-wrap: nowrap;
}
.section-heading:has(.single-line-heading) { max-width: 100%; }
.cta-panel h2.single-line-heading { font-size: clamp(13px, 2.35vw, 34px); }
.home-hero-title { max-width: 100%; font-size: clamp(38px, 5.1vw, 74px); line-height: 1.02; letter-spacing: -.055em; }
.page-hero h1.single-line-heading:not(.about-hero-title) { font-size:clamp(18px,2.6vw,34px); }
.home-hero-title em { white-space: nowrap; font-style: normal; }
.about-page-hero .hero-split { grid-template-columns: minmax(0,1fr); }
.about-page-hero .hero-copy { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); column-gap:clamp(22px,4vw,60px); align-items:start; }
.about-page-hero .hero-copy>.eyebrow { grid-column:1/-1; }
.about-page-hero .hero-copy h1 { grid-column:1; font-size:clamp(22px,2.2vw,30px); margin:0; }
.about-page-hero .hero-copy .hero-description { grid-column:2; grid-row:2; margin:0; max-width:620px; }
.about-page-hero .hero-copy .actions { grid-column:1/-1; }
.about-page-hero .hero-split>.network-art,
.about-page-hero .hero-split>.live-hero,
.about-page-hero .hero-split>.hero-visual { display:none; }
@media(max-width:900px) {
  .single-line-heading { font-size:clamp(13px,2.8vw,25px); }
  .home-hero-title { font-size:clamp(36px,7vw,58px); }
  .about-page-hero .hero-copy { grid-template-columns:1fr 1fr; column-gap:22px; }
}
@media(max-width:600px) {
  .single-line-heading { font-size:clamp(12px,3.3vw,17px); letter-spacing:-.025em; }
  .home-hero-title { font-size:clamp(31px,8.2vw,42px); line-height:1.08; }
  .about-page-hero .hero-copy { grid-template-columns:1fr; row-gap:16px; }
  .about-page-hero .hero-copy h1 { grid-column:1; font-size:clamp(24px,7vw,34px); white-space:normal; }
  .about-page-hero .hero-copy .hero-description { grid-column:1; grid-row:auto; }
  .about-page-hero .hero-copy .actions { grid-column:1; }
}


/* Refined two-metric layout: state coverage + provider records */
.intro-metrics .metric-row {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: 900px;
  gap: 22px;
  margin: 32px auto 0;
}
.intro-metrics .metric-card {
  position: relative;
  isolation: isolate;
  min-height: 126px;
  justify-content: center;
  overflow: hidden;
  padding: 26px 30px;
  border: 1px solid rgba(113, 173, 255, .34);
  background:
    radial-gradient(circle at 90% 8%, rgba(55, 135, 255, .17), transparent 38%),
    linear-gradient(135deg, rgba(20, 38, 61, .98), rgba(8, 17, 30, .98));
  box-shadow: 0 14px 34px rgba(0, 0, 0, .2), inset 0 1px 0 rgba(255, 255, 255, .045);
  transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
  animation: metricRise .75s cubic-bezier(.2,.8,.2,1) both;
}
.intro-metrics .metric-card:nth-child(2) { animation-delay: .14s; }
.intro-metrics .metric-card::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -65%;
  left: -45%;
  width: 42%;
  height: 230%;
  transform: rotate(24deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.11), transparent);
  animation: metricSweep 5.5s ease-in-out infinite;
  pointer-events: none;
}
.intro-metrics .metric-card:hover {
  transform: translateY(-6px);
  border-color: rgba(117, 190, 255, .75);
  box-shadow: 0 22px 48px rgba(0, 0, 0, .28), 0 0 24px rgba(45, 132, 255, .13);
}
.intro-metrics .metric-value {
  display: block;
  width: fit-content;
  font-size: clamp(34px, 4.2vw, 48px);
  line-height: 1.02;
  background: linear-gradient(110deg, #fff 15%, #c5e4ff 48%, #fff 78%);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  text-shadow: 0 0 26px rgba(88, 166, 255, .13);
}
.intro-metrics .metric-card > span:last-child {
  font-size: 14px;
  letter-spacing: .01em;
}
.intro-metrics .metric-note { max-width: 900px; margin-left: auto; margin-right: auto; }
@keyframes metricRise {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes metricSweep {
  0%, 35% { left: -55%; opacity: 0; }
  48% { opacity: 1; }
  68%, 100% { left: 125%; opacity: 0; }
}
@media (max-width: 600px) {
  .intro-metrics .metric-row { grid-template-columns: 1fr; gap: 12px; }
  .intro-metrics .metric-card { min-height: 108px; padding: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .intro-metrics .metric-card, .intro-metrics .metric-card::before {
    animation: none !important;
    transition: none !important;
  }
}


/* Static homepage hero: one message, no cinematic scene transitions or video. */
.home-static-hero {
  min-height: clamp(410px, 55vh, 610px);
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
  padding-top: clamp(72px, 10vh, 120px);
  padding-bottom: clamp(64px, 9vh, 110px);
  background:
    radial-gradient(ellipse at 82% 18%, rgba(65, 115, 185, .2), transparent 48%),
    linear-gradient(115deg, #07111e 0%, #0b1a2c 58%, #091321 100%);
}
.home-static-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .26;
  background: linear-gradient(110deg, transparent 40%, rgba(123, 170, 231, .08) 62%, transparent 80%);
}
.home-static-hero-copy { position: relative; z-index: 1; max-width: 980px; }
.home-static-hero .home-hero-title {
  max-width: 900px;
  margin: 22px 0 0;
  font-size: clamp(44px, 6.3vw, 82px);
  line-height: 1.02;
  letter-spacing: -.055em;
  color: #f4f7fc;
}
.home-static-hero .home-hero-title em { font-style: normal; white-space: nowrap; }
.metric-intro-copy { max-width: 900px; margin: 0 auto; text-align: center; }
.metric-intro-copy .section-intro { max-width: 800px; margin-left: auto; margin-right: auto; }
.about-story-section .container.split { grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); align-items: center; gap: clamp(28px, 5vw, 70px); }
.about-story-section .container.split > div:first-child { min-width: 0; }
.about-story-section .container.split > .qway-pendant,
.about-story-section .container.split > .qway-pendant-wrap { min-width: 0; width: 100%; }
.metric-value.is-rolling { font-variant-numeric: tabular-nums; }
@media (max-width: 800px) {
  .home-static-hero { min-height: 360px; }
  .home-static-hero .home-hero-title { font-size: clamp(38px, 9vw, 58px); }
  .about-story-section .container.split { grid-template-columns: 1fr; }
}
@media (max-width: 420px) {
  .home-static-hero .home-hero-title { font-size: clamp(34px, 9vw, 44px); }
}


/* Single-scene homepage hero: preserve the looping video, remove cinematic transitions. */
.hero-single { height: auto !important; min-height: 0; }
.hero-single .hero-single-pin {
  position: relative;
  height: min(860px, 100svh);
  min-height: 650px;
  overflow: hidden;
  display: flex;
  align-items: center;
}
.hero-single .hero-single-content {
  position: relative;
  top: auto;
  left: auto;
  width: min(1320px, 88vw);
  max-width: 1320px;
  margin: 0 auto;
  padding: 0;
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
  pointer-events: auto;
}
.hero-single .hero-single-content h1 {
  max-width: 100%;
  margin: 0 0 26px;
  font-size: clamp(36px, 4.2vw, 60px);
  line-height: 1.04;
  letter-spacing: -.055em;
  text-wrap: balance;
}
.hero-single .hero-single-content > p:not(.eyebrow) { max-width: 700px; }
.hero-single .hero-single-content .eyebrow { margin-bottom: 24px; }
.hero-single .scene { transition: none !important; animation: none !important; }
.hero-single .hero-single-content h1 em { color: #f4f7fc; }
@media (min-width: 1200px) {
  .hero-single .hero-single-content h1 { white-space: nowrap; font-size: clamp(42px, 4.15vw, 60px); }
}
@media (max-width: 800px) {
  .hero-single .hero-single-pin { min-height: 620px; height: 88svh; }
  .hero-single .hero-single-content { width: 86vw; }
  .hero-single .hero-single-content h1 { font-size: clamp(35px, 6.6vw, 52px); white-space: normal; }
}
@media (max-width: 480px) {
  .hero-single .hero-single-pin { min-height: 650px; height: auto; padding: 100px 0 76px; }
  .hero-single .hero-single-content h1 { font-size: clamp(34px, 9vw, 43px); line-height: 1.06; }
  .hero-single .hero-single-content .actions { flex-wrap: wrap; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-single .scene { transition: none !important; animation: none !important; }
}

/* Targeted visual corrections requested from the latest reference screenshots. */
.process-intro-section .container.split { grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); gap:clamp(30px,4.5vw,70px); }
.process-intro-section .section-heading h2 { font-size:clamp(30px,3.25vw,44px); line-height:1.08; letter-spacing:-.045em; }
.process-intro-section .process-heading-line { display:block; white-space:nowrap; }
.process-intro-section .process-heading-second { margin-top:2px; }

/* Keep the About Us title on two clean lines; do not overlap the copy column. */
.about-page-hero .hero-copy h1 { font-size:clamp(30px,3.1vw,42px); line-height:1.08; grid-row:2; max-width:100%; }
.about-page-hero .hero-copy .hero-description { grid-row:2; align-self:start; }
.about-page-hero .hero-copy .actions { grid-row:3; }

/* About story: visual on the left, narrative on the right. */
.about-story-section .container.split { grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); }
.about-story-section .about-pendant-column { grid-column:1; grid-row:1; min-width:0; }
.about-story-section .about-story-copy { grid-column:2; grid-row:1; min-width:0; }
.about-story-section .about-pendant-column .qway-pendant { max-width:100%; }

/* Mobile phone UI: keep the logo/header clear of every animated screen. */
.phone-slide { inset:104px 14px 55px; }
.phone-brand { position:relative; z-index:2; min-height:30px; gap:10px; }
.phone-brand img { width:82px; max-width:48%; flex:0 1 auto; }
.phone-brand span { flex:0 0 auto; }

/* The reporting feature cards now have their own descriptive section heading. */
#reporting-capabilities .section-heading { max-width:900px; }

/* Wide contact layouts use a single line; narrower screens may wrap naturally. */
.contact-single-line-title { max-width:100%; font-size:clamp(30px,4.1vw,58px); line-height:1.08; letter-spacing:-.05em; white-space:nowrap; }
@media (max-width:1100px) {
  .process-intro-section .container.split { grid-template-columns:minmax(0,1fr) minmax(0,.9fr); gap:28px; }
  .process-intro-section .section-heading h2 { font-size:clamp(28px,3.2vw,38px); }
  .contact-single-line-title { white-space:normal; }
}
@media (max-width:900px) {
  .process-intro-section .container.split { grid-template-columns:1fr; }
  .process-intro-section .process-heading-line { white-space:normal; }
  .about-story-section .container.split { grid-template-columns:1fr; }
  .about-story-section .about-pendant-column,.about-story-section .about-story-copy { grid-column:1; grid-row:auto; }
  .about-story-section .about-pendant-column { order:0; }
  .about-story-section .about-story-copy { order:1; }
  .about-page-hero .hero-copy { grid-template-columns:1fr 1fr; }
  .about-page-hero .hero-copy h1 { font-size:clamp(28px,4vw,38px); grid-row:2; }
  .about-page-hero .hero-copy .hero-description { grid-row:2; }
}
@media (max-width:600px) {
  .process-intro-section .section-heading h2 { font-size:clamp(28px,7vw,36px); }
  .process-intro-section .process-heading-line { white-space:normal; }
  .about-page-hero .hero-copy { grid-template-columns:1fr; row-gap:16px; }
  .about-page-hero .hero-copy h1 { grid-row:auto; font-size:clamp(29px,8vw,36px); }
  .about-page-hero .hero-copy .hero-description { grid-row:auto; }
  .about-page-hero .hero-copy .actions { grid-row:auto; }
  .phone-slide { inset:100px 12px 52px; }
  .phone-brand { margin-bottom:16px; }
  .contact-single-line-title { font-size:clamp(32px,8vw,46px); white-space:normal; }
}


/* About Us hero: use the polished side-by-side composition from the supplied reference.
   Keep the existing copy, restore the animated visual card on the right, and avoid overlap. */
.about-page-hero .hero-split {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(360px, .98fr);
  align-items: center;
  gap: clamp(36px, 5vw, 76px);
}
.about-page-hero .hero-copy {
  display: block;
  min-width: 0;
  max-width: 650px;
}
.about-page-hero .hero-copy > .eyebrow { margin-bottom: 22px; }
.about-page-hero .hero-copy h1 {
  display: block;
  grid-column: auto;
  grid-row: auto;
  max-width: 640px;
  margin: 0 0 20px;
  font-size: clamp(38px, 4.35vw, 64px);
  line-height: 1.03;
  letter-spacing: -.055em;
  white-space: normal;
  text-wrap: balance;
}
.about-page-hero .hero-copy h1 span { color: var(--accent, #72a7ff); }
.about-page-hero .hero-copy .hero-description {
  grid-column: auto;
  grid-row: auto;
  max-width: 570px;
  margin: 0;
  font-size: clamp(14px, 1.15vw, 17px);
  line-height: 1.8;
}
.about-page-hero .hero-copy .actions {
  grid-column: auto;
  grid-row: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 26px;
}
.about-page-hero .hero-split > .network-art,
.about-page-hero .hero-split > .live-hero,
.about-page-hero .hero-split > .hero-visual,
.about-page-hero .hero-split > .section-visual { display: block; }
.about-page-hero .hero-split > .live-hero { width: 100%; min-width: 0; }
.about-page-hero .hero-split > .network-art { width: 100%; min-width: 0; }
@media (max-width: 900px) {
  .about-page-hero .hero-split { grid-template-columns: minmax(0, 1fr) minmax(280px, .9fr); gap: 28px; }
  .about-page-hero .hero-copy h1 { font-size: clamp(34px, 4.2vw, 46px); }
}
@media (max-width: 680px) {
  .about-page-hero .hero-split { grid-template-columns: minmax(0, 1fr); gap: 30px; }
  .about-page-hero .hero-copy { max-width: none; }
  .about-page-hero .hero-copy h1 { font-size: clamp(36px, 9vw, 48px); line-height: 1.06; }
  .about-page-hero .hero-copy .hero-description { max-width: 100%; }
  .about-page-hero .hero-split > .live-hero,
  .about-page-hero .hero-split > .network-art,
  .about-page-hero .hero-split > .hero-visual,
  .about-page-hero .hero-split > .section-visual { width: 100%; max-width: 100%; }
}


/* Supplied high-resolution dashboard/report screenshots with smooth 2.6s crossfades. */
.dashboard-image-shell { overflow:hidden; transform:none; }
.dashboard-image-shell:hover { transform:translateY(-3px); }
.image-rotator { position:relative; isolation:isolate; }
.image-rotator-slide { position:absolute; inset:0; margin:0; opacity:0; transform:translateX(18px) scale(.985); pointer-events:none; transition:opacity .65s ease,transform .8s cubic-bezier(.2,.75,.25,1); }
.image-rotator-slide.is-active { position:relative; opacity:1; transform:translateX(0) scale(1); pointer-events:auto; }
.image-rotator-slide img { display:block; width:100%; height:100%; object-fit:contain; object-position:center; }
.dashboard-rotator { height:clamp(220px,25vw,360px); margin-top:12px; background:#eaf1fa; border:1px solid #d9e4f2; border-radius:12px; overflow:hidden; }
.dashboard-rotator .image-rotator-slide { display:flex; flex-direction:column; background:#f7faff; }
.dashboard-rotator .image-rotator-slide img { flex:1; min-height:0; object-fit:contain; }
.image-rotator-slide figcaption { padding:8px 12px; color:#647991; background:#f8fbff; font-size:10px; letter-spacing:.02em; border-top:1px solid #e1e9f3; }
.rotator-progress { position:absolute; bottom:0; left:0; right:0; height:3px; background:rgba(95,137,187,.14); z-index:3; overflow:hidden; }
.rotator-progress span { display:block; width:100%; height:100%; transform-origin:left; background:linear-gradient(90deg,#2c7cf2,#43cbd1); }
@keyframes rotatorProgress { from { transform:scaleX(0); } to { transform:scaleX(1); } }
.report-image-gallery { border:1px solid rgba(128,169,218,.25); border-radius:22px; padding:16px; background:linear-gradient(145deg,rgba(17,34,57,.92),rgba(6,16,29,.95)); box-shadow:0 28px 80px rgba(0,0,0,.22); margin:28px 0 36px; }
.report-gallery-top { display:flex; align-items:center; gap:12px; padding:4px 4px 14px; color:#dceaff; font-size:12px; }
.report-gallery-top>span:first-child { color:#78aefb; font-size:9px; letter-spacing:.13em; font-weight:800; }
.report-gallery-top strong { font-size:14px; }
.report-gallery-top .mock-badge { margin-left:auto; }
.report-gallery-stage { height:clamp(260px,50vw,620px); position:relative; border:1px solid rgba(130,169,218,.22); border-radius:12px; overflow:hidden; background:#edf3fb; }
.report-gallery-stage .image-rotator-slide { display:flex; flex-direction:column; }
.report-gallery-stage .image-rotator-slide img { flex:1; min-height:0; object-fit:contain; }
.report-gallery-stage .image-rotator-slide figcaption { padding:10px 14px; font-size:11px; }
.report-gallery-note { margin:12px 4px 0; color:#9eb3cc; font-size:11px; }
.phone-slide { display:flex; flex-direction:column; gap:7px; overflow:hidden; }
.phone-slide h3 { font-size:clamp(17px,2vw,21px); margin-bottom:0; }
.phone-sub { margin-bottom:8px; }
.phone-dashboard-shot { width:100%; height:clamp(115px,15vw,190px); object-fit:contain; background:#fff; border:1px solid #dce6f2; border-radius:9px; box-shadow:0 7px 18px rgba(34,63,99,.1); }
.phone-screen .phone-brand { margin-bottom:15px; }
.phone-stage .phone-caption { text-align:center; }
.image-rotator:hover .rotator-progress span { animation-play-state:paused !important; }
@media(max-width:900px) {
  .dashboard-rotator { height:clamp(230px,45vw,360px); }
  .report-gallery-stage { height:clamp(240px,54vw,480px); }
  .phone-dashboard-shot { height:170px; }
}
@media(max-width:600px) {
  .dashboard-rotator { height:250px; }
  .dashboard-rotator .image-rotator-slide img { object-fit:contain; }
  .report-image-gallery { padding:10px; border-radius:15px; }
  .report-gallery-stage { height:270px; }
  .report-gallery-top { flex-wrap:wrap; }
  .report-gallery-top strong { flex:1; }
  .phone-dashboard-shot { height:150px; }
  .phone-slide { inset:104px 12px 52px; }
}
@media(prefers-reduced-motion:reduce) {
  .image-rotator-slide { transition:none !important; transform:none !important; }
  .rotator-progress span { animation:none !important; }
}

/* Refined mobile product carousel: larger, legible phone screens and clear active states. */
.mobile-product-grid { align-items:center; }
.phone-stage { min-height:660px; }
.phone-frame { width:320px; height:620px; padding:8px; border-radius:46px; }
.phone-screen { border-radius:34px; padding:18px 12px 54px; }
.phone-brand { margin-bottom:12px; }
.phone-brand img { width:104px; max-height:31px; }
.phone-slide { inset:104px 12px 54px; gap:6px; }
.phone-slide h3 { font-size:21px; line-height:1.12; }
.phone-sub { margin-bottom:7px; line-height:1.35; }
.phone-dashboard-shot { display:block; width:100%; height:clamp(220px, 25vw, 290px); object-fit:cover; object-position:top center; background:#f7faff; border:1px solid #d5e2f2; border-radius:12px; box-shadow:0 10px 26px rgba(34,63,99,.13); }
.phone-slide { opacity:0; visibility:hidden; }
.phone-slide.is-active { opacity:1; visibility:visible; }
.phone-dot { min-width:10px; min-height:10px; }
.phone-stage:hover .phone-frame { box-shadow:0 35px 90px rgba(0,0,0,.5),0 0 0 1px rgba(107,166,255,.35),inset 0 0 0 1px #56667b; }

/* Reporting gallery: editorial two-view showcase with a distinctive caption rail. */
.report-story-gallery { max-width:1180px; margin:34px auto 0; padding:22px; border:1px solid rgba(111,163,230,.28); border-radius:24px; background:linear-gradient(145deg,rgba(19,39,66,.96),rgba(7,15,27,.98)); box-shadow:0 28px 70px rgba(0,0,0,.22); }
.report-story-gallery .report-gallery-top { padding:4px 4px 18px; }
.report-story-gallery .report-gallery-top strong { font-size:16px; }
.report-story-stage { height:auto; min-height:0; aspect-ratio:16/9; border:1px solid rgba(141,181,231,.24); border-radius:16px; background:#f8fbff; box-shadow:0 16px 36px rgba(0,0,0,.2); }
.report-story-stage .image-rotator-slide { display:grid; grid-template-rows:minmax(0,1fr) auto; background:#f8fbff; }
.report-story-stage .image-rotator-slide img { width:100%; height:100%; min-height:0; object-fit:contain; background:#f8fbff; padding:8px; }
.report-story-stage .image-rotator-slide figcaption { display:grid; grid-template-columns:auto 1fr; gap:4px 16px; align-items:center; padding:14px 20px; background:#fff; border-top:1px solid #dce6f2; }
.report-story-stage .image-rotator-slide figcaption span { grid-row:span 2; color:#2878d9; font-size:10px; letter-spacing:.12em; font-weight:800; }
.report-story-stage .image-rotator-slide figcaption strong { color:#193452; font-size:13px; }
.report-story-stage .image-rotator-slide figcaption small { color:#7488a2; font-size:10px; }
.report-story-stage .rotator-progress { position:absolute; left:0; right:0; top:0; height:3px; z-index:3; background:rgba(48,128,247,.12); }
.report-story-stage .rotator-progress span { display:block; height:100%; width:0; background:linear-gradient(90deg,#3185f6,#35c4cc); }
.report-story-gallery .report-gallery-note { padding:0 4px; }
@media (max-width:760px) {
  .phone-stage { min-height:620px; }
  .phone-frame { width:min(310px, 88vw); height:600px; }
  .phone-dashboard-shot { height:220px; object-fit:cover; }
  .report-story-gallery { padding:12px; border-radius:18px; }
  .report-story-stage { aspect-ratio:4/5; }
  .report-story-stage .image-rotator-slide img { padding:5px; object-fit:contain; }
  .report-story-stage .image-rotator-slide figcaption { padding:10px 12px; gap:4px 10px; }
  .report-story-stage .image-rotator-slide figcaption strong { font-size:12px; }
  .report-story-stage .image-rotator-slide figcaption small { font-size:9px; }
}
@media (prefers-reduced-motion:reduce) {
  .phone-frame,.phone-slide,.image-rotator-slide { transition:none !important; }
}

/* Infographic storytelling: data is represented with native HTML/CSS rather than screenshot-heavy panels. */
.credential-flow,.about-lifecycle-infographic,.why-flow-infographic,.dashboard-infographic,.reporting-infographic{position:relative;overflow:hidden;border:1px solid rgba(115,166,224,.24);border-radius:22px;background:radial-gradient(ellipse at 85% 0%,rgba(48,112,196,.16),transparent 44%),linear-gradient(145deg,rgba(16,32,52,.96),rgba(7,17,30,.98));box-shadow:0 24px 70px rgba(0,0,0,.16)}
.credential-flow{margin-top:34px;padding:28px 30px 26px}.flow-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.flow-heading .eyebrow,.about-lifecycle-head .eyebrow{margin:0}.flow-note{font-size:11px;color:#93a9c4}.flow-stages{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:27px 0 0;padding:0;list-style:none}.flow-line{position:absolute;left:11%;right:11%;top:91px;height:1px;background:linear-gradient(90deg,#4789ed,#56d0d7,#4789ed);opacity:.6}.flow-line span{position:absolute;left:0;top:-2px;width:5px;height:5px;border-radius:50%;background:#80e7ed;box-shadow:0 0 14px #61d6e5;animation:flowTravel 5s linear infinite}.flow-stages li{position:relative;display:grid;justify-items:start;gap:8px;min-width:0;padding:0 4px}.flow-index{font-size:10px;letter-spacing:.12em;color:#7e9dc2}.flow-symbol{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:rgba(76,139,230,.14);border:1px solid rgba(106,168,245,.35);color:#8fc0ff;font-size:21px;box-shadow:0 0 0 5px rgba(73,137,224,.04)}.flow-stages strong{font-size:14px;color:#edf5ff}.flow-stages small{font-size:11px;color:#9eb2cb;line-height:1.5}
.dashboard-infographic{padding:24px;color:#182b43;background:#f5f9ff;border-color:#d7e5f7}.infographic-top,.infographic-subhead,.reporting-infographic-header,.reporting-infographic-foot{display:flex;align-items:center;justify-content:space-between;gap:15px}.infographic-top{padding-bottom:17px;border-bottom:1px solid #dbe6f3}.infographic-top .eyebrow{font-size:9px;margin:0 0 5px;color:#4e7db8}.infographic-top h3,.reporting-infographic-header h3{margin:0;font-size:21px;letter-spacing:-.035em;color:#142944}.sample-pill{font-size:9px;letter-spacing:.09em;font-weight:800;color:#3478c9;background:#e4f0ff;padding:7px 10px;border-radius:7px}.infographic-metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.infographic-stat{position:relative;min-height:118px;padding:14px;border:1px solid #dce6f2;border-radius:13px;background:#fff;overflow:hidden}.infographic-stat>span,.infographic-stat small{display:block;color:#71849e;font-size:10px}.infographic-stat strong{display:block;font-size:32px;letter-spacing:-.06em;color:#152c49;margin:7px 0 2px}.infographic-stat small{font-size:9px}.stat-spark{position:absolute;right:13px;bottom:15px;height:25px;display:flex;align-items:end;gap:3px}.stat-spark b{display:block;width:4px;border-radius:3px 3px 0 0;background:#4e91ed;animation:sparkLift 1.8s ease-in-out infinite alternate}.stat-spark b:nth-child(1){height:30%}.stat-spark b:nth-child(2){height:52%;animation-delay:.12s}.stat-spark b:nth-child(3){height:38%;animation-delay:.24s}.stat-spark b:nth-child(4){height:75%;animation-delay:.36s}.stat-spark b:nth-child(5){height:56%;animation-delay:.48s}.stat-spark b:nth-child(6){height:88%;animation-delay:.6s}.stat-spark b:nth-child(7){height:68%;animation-delay:.72s}.spark-teal b{background:#37b8c3}.spark-amber b{background:#e9ad50}.infographic-bottom{display:grid;grid-template-columns:1.1fr .9fr;gap:13px}.infographic-workflow,.infographic-deadlines{position:relative;min-width:0;padding:15px;border:1px solid #dce6f2;border-radius:13px;background:#fff;overflow:hidden}.infographic-subhead{margin-bottom:12px}.infographic-subhead strong{font-size:12px;color:#263d5b}.infographic-subhead>span{font-size:9px;color:#8a9bb0}.workflow-stack{display:grid;gap:7px}.workflow-stack>div{display:flex;align-items:center;gap:8px;padding:8px 9px;border-radius:8px;background:#f4f8fd;font-size:10px;color:#4e627d}.workflow-stack b{margin-left:auto;color:#397ac7;font-size:9px}.workflow-dot{width:7px;height:7px;border-radius:50%;background:#4a91ed;box-shadow:0 0 0 3px #e5f0ff}.workflow-stack>div:nth-child(2) .workflow-dot{background:#36b9c5}.workflow-stack>div:nth-child(3) .workflow-dot{background:#e9b052}.workflow-stack>div:nth-child(4) .workflow-dot{background:#48b78b}.deadline-row{display:flex;align-items:center;gap:7px;padding:10px 0;border-bottom:1px solid #edf1f7;font-size:9px;color:#637792}.deadline-row:last-of-type{border-bottom:0}.deadline-row i{width:6px;height:6px;border-radius:50%;background:#42b98b}.deadline-row b{margin-left:auto;color:#3b7e71;font-size:8px}.mini-network{position:absolute;right:10px;bottom:8px;width:72px;height:50px;opacity:.18}.mini-network:before,.mini-network:after{content:"";position:absolute;left:8px;right:8px;top:24px;height:1px;background:#3b8be8;transform:rotate(-25deg)}.mini-network:after{transform:rotate(25deg)}.mini-network span{position:absolute;width:7px;height:7px;border:1px solid #3888df;border-radius:50%;background:#e8f4ff}.mini-network span:nth-child(1){left:4px;top:22px}.mini-network span:nth-child(2){left:23px;top:7px}.mini-network span:nth-child(3){right:22px;top:34px}.mini-network span:nth-child(4){right:4px;top:19px}.mock-disclaimer{font-size:10px;color:#8294aa;margin:15px 0 0}.about-lifecycle-infographic{margin-top:28px;padding:25px 28px}.about-lifecycle-head{display:flex;align-items:start;justify-content:space-between;gap:30px}.about-lifecycle-head p{max-width:420px;margin:0;color:#afc0d5;font-size:13px;line-height:1.7}.about-lifecycle-track{display:grid;grid-template-columns:1fr 30px 1fr 30px 1fr;gap:10px;align-items:center;margin-top:23px}.about-lifecycle-track article{display:grid;gap:6px;padding:16px;border:1px solid rgba(126,170,224,.2);border-radius:13px;background:rgba(30,53,81,.48)}.about-lifecycle-track article>span{color:#70b5ff;font-size:10px;font-weight:800}.about-lifecycle-track strong{color:#f0f6ff;font-size:14px}.about-lifecycle-track small{color:#9eb1c9;font-size:10px}.about-lifecycle-track>i{color:#65d5e2;text-align:center;font-style:normal;font-size:20px}.why-flow-infographic{margin-top:30px;padding:28px}.why-flow-infographic>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:25px}.why-flow-infographic .eyebrow{margin:0;flex:0 0 auto}.why-flow-infographic h3{max-width:490px;margin:0;font-size:clamp(18px,2.3vw,26px);line-height:1.25;letter-spacing:-.03em}.why-flow-infographic ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:25px 0 0;padding:0;list-style:none}.why-flow-infographic li{display:grid;gap:7px;padding:16px;border-top:1px solid rgba(119,170,226,.45);background:linear-gradient(180deg,rgba(45,90,145,.13),transparent);min-width:0}.why-flow-infographic li>span{color:#75b7ff;font-size:10px}.why-flow-infographic li strong{font-size:13px;color:#edf5ff}.why-flow-infographic li small{font-size:10px;line-height:1.5;color:#9fb2c9}
.reporting-infographic{padding:clamp(20px,3vw,34px);margin:0 0 34px}.reporting-infographic-header{align-items:start;padding-bottom:22px;border-bottom:1px solid rgba(128,173,226,.2)}.reporting-infographic-header .eyebrow{margin:0 0 8px;color:#83b9ff}.reporting-infographic-header h3{color:#f0f6ff;font-size:clamp(22px,3vw,32px)}.reporting-infographic-header p{margin:8px 0 0;font-size:11px;color:#9eb3cd}.reporting-orbit{position:relative;display:grid;place-items:center;width:100px;height:100px;flex:none;border:1px solid rgba(94,169,255,.55);border-radius:50%;color:#cde5ff;font-size:10px;font-weight:800;text-align:center;background:radial-gradient(circle,rgba(50,126,220,.28),rgba(12,28,49,.4) 70%);box-shadow:0 0 0 9px rgba(57,125,210,.06),0 0 30px rgba(53,133,230,.1)}.reporting-orbit i{position:absolute;width:7px;height:7px;border-radius:50%;background:#74b8ff;box-shadow:0 0 12px #4d9bf4}.reporting-orbit i:nth-of-type(1){top:5px;left:20px}.reporting-orbit i:nth-of-type(2){right:0;top:50px;background:#6ce0e5}.reporting-orbit i:nth-of-type(3){bottom:8px;left:20px;background:#e8b35b}.reporting-visual-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin-top:20px}.report-visual-card{min-width:0;padding:21px;border:1px solid rgba(132,174,224,.22);border-radius:15px;background:rgba(8,20,35,.56)}.report-visual-title{display:flex;align-items:center;gap:12px;margin-bottom:18px}.report-visual-title>span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:rgba(65,137,229,.17);color:#82baff;font-size:10px}.report-visual-title strong{font-size:14px;color:#eef5ff}.status-flow{position:relative;display:grid;gap:0}.status-flow:before{content:"";position:absolute;top:12px;bottom:12px;left:11px;width:1px;background:linear-gradient(#579af2,#5ed1d9,#e6b25d)}.status-flow>div{position:relative;display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0;color:#b6c7db;font-size:11px}.status-node{position:relative;z-index:1;width:8px;height:8px;border-radius:50%;background:#5b9af0;box-shadow:0 0 0 4px #122941}.status-flow>div:nth-child(2) .status-node{background:#5bd0d9}.status-flow>div:nth-child(3) .status-node{background:#eab45c}.status-flow>div:nth-child(4) .status-node{background:#5ab98f}.status-flow b{font-size:9px;font-weight:600;color:#8dbaff}.report-visual-card>small{display:block;margin-top:14px;color:#8399b4;font-size:9px;line-height:1.5}.action-ring{display:grid;place-items:center;width:132px;height:132px;margin:6px auto 18px;border-radius:50%;background:conic-gradient(#53c9d0 0 28%,#4b91ed 28% 64%,#e8b45b 64% 83%,rgba(111,154,204,.2) 83%);position:relative;animation:orbitBreath 5s ease-in-out infinite}.action-ring:before{content:"";position:absolute;inset:9px;border-radius:50%;background:#0c1a2c;border:1px solid rgba(130,176,229,.18)}.action-ring>div{position:relative;display:grid;justify-items:center;gap:2px}.action-ring strong{font-size:30px;color:#f1f7ff;letter-spacing:-.06em}.action-ring span{font-size:9px;color:#a4bad4}.action-checks{display:grid;gap:10px}.action-checks span{display:flex;align-items:center;gap:8px;font-size:10px;color:#afc1d7}.action-checks i{width:6px;height:6px;border-radius:50%;background:#5bc29b;box-shadow:0 0 0 3px rgba(91,194,155,.1)}.reporting-infographic-foot{justify-content:flex-start;flex-wrap:wrap;padding-top:18px;margin-top:20px;border-top:1px solid rgba(128,173,226,.18);font-size:10px;color:#9eb3cc}.reporting-infographic-foot span{display:flex;align-items:center;gap:6px;margin-right:12px}.reporting-infographic-foot i{width:6px;height:6px;border-radius:50%;background:#63a8f5}.reporting-infographic-foot span:nth-child(2) i{background:#57c9d0}.reporting-infographic-foot span:nth-child(3) i{background:#eab45c}.reporting-infographic-foot b{margin-left:auto;color:#7e9ab9;font-weight:500}
@keyframes flowTravel{0%{left:0;opacity:0}10%{opacity:1}90%{opacity:1}100%{left:100%;opacity:0}}@keyframes sparkLift{from{transform:scaleY(.78);transform-origin:bottom;opacity:.7}to{transform:scaleY(1);transform-origin:bottom;opacity:1}}@keyframes orbitBreath{0%,100%{transform:rotate(-4deg) scale(1)}50%{transform:rotate(4deg) scale(1.035)}}
@media(max-width:900px){.infographic-bottom,.reporting-visual-grid{grid-template-columns:1fr}.about-lifecycle-head,.why-flow-infographic>div:first-child{display:grid;gap:12px}.about-lifecycle-head p{max-width:none}.why-flow-infographic ol{grid-template-columns:repeat(2,minmax(0,1fr))}.reporting-orbit{width:78px;height:78px}.flow-stages{gap:12px}.flow-stages strong{font-size:12px}}
@media(max-width:600px){.credential-flow{padding:21px 17px}.flow-heading{align-items:start;flex-direction:column;gap:7px}.flow-line{display:none}.flow-stages{grid-template-columns:1fr 1fr;gap:20px 12px;margin-top:22px}.flow-stages li{padding:12px;border:1px solid rgba(119,170,226,.16);border-radius:12px;background:rgba(25,45,69,.35)}.flow-stages small{font-size:10px}.dashboard-infographic{padding:14px}.infographic-top h3{font-size:17px}.infographic-metric-grid{gap:7px}.infographic-stat{padding:10px 8px;min-height:100px}.infographic-stat>span{font-size:8px}.infographic-stat strong{font-size:25px}.infographic-stat small{font-size:8px}.stat-spark{right:8px;bottom:10px;gap:2px}.stat-spark b{width:3px}.infographic-subhead{align-items:start;flex-direction:column;gap:4px}.workflow-stack>div{font-size:9px}.deadline-row{font-size:9px}.about-lifecycle-infographic,.why-flow-infographic{padding:20px 17px}.about-lifecycle-track{grid-template-columns:1fr;gap:8px}.about-lifecycle-track>i{transform:rotate(90deg)}.about-lifecycle-track article{padding:13px}.why-flow-infographic ol{grid-template-columns:1fr 1fr;gap:7px}.why-flow-infographic li{padding:12px 9px}.why-flow-infographic h3{font-size:20px}.reporting-infographic{padding:18px 14px}.reporting-infographic-header{gap:10px}.reporting-infographic-header h3{font-size:21px}.reporting-infographic-header p{max-width:210px;font-size:10px}.reporting-orbit{width:64px;height:64px;font-size:8px;box-shadow:0 0 0 5px rgba(57,125,210,.06)}.report-visual-card{padding:15px 12px}.report-visual-title strong{font-size:12px}.status-flow>div{grid-template-columns:12px minmax(0,1fr);gap:8px;font-size:10px}.status-flow b{grid-column:2;margin-top:-5px}.reporting-infographic-foot{gap:10px;font-size:9px}.reporting-infographic-foot b{width:100%;margin-left:0}}
@media(prefers-reduced-motion:reduce){.flow-line span,.stat-spark b,.action-ring{animation:none!important;transition:none!important}}

/* Data-led infographic system: more visible metrics without inventing performance claims. */
.metric-row { grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)); }
.metric-value, .infographic-stat strong, .action-ring strong, .why-metric-value { font-variant-numeric: tabular-nums; }
.metric-value.is-rolling, .infographic-stat strong.is-rolling, .action-ring strong.is-rolling, .why-metric-value.is-rolling { animation: metricNumberFocus .55s ease-out both; }
@keyframes metricNumberFocus { 0% { filter: brightness(1.7); text-shadow: 0 0 22px rgba(99,176,255,.65); } 100% { filter: brightness(1); } }
.infographic-stat strong { display: inline-block; }
.infographic-stat strong.is-rolling { color: #1764b2; }
.why-metrics { position: relative; overflow: hidden; }
.why-metrics::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .42; background: radial-gradient(ellipse at 12% 15%, rgba(52,130,239,.12), transparent 36%), radial-gradient(ellipse at 92% 78%, rgba(75,204,214,.08), transparent 34%); }
.why-metrics > .container { position: relative; z-index: 1; }
.why-metrics-intro { max-width: 850px; margin-bottom: 30px; }
.why-metrics-intro h2 { margin: 0 0 14px; font-size: clamp(28px, 3.7vw, 44px); line-height: 1.08; letter-spacing: -.04em; }
.why-metrics-intro h2 span { color: #8bbcff !important; }
.why-metrics-intro > p:last-child { max-width: 720px; color: #b5c6da; line-height: 1.8; }
.why-metrics-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 13px; align-items: stretch; }
.why-metric-card { position: relative; display: flex; min-width: 0; min-height: 190px; flex-direction: column; align-items: flex-start; justify-content: center; overflow: hidden; isolation: isolate; padding: 22px 18px; border: 1px solid rgba(122,173,238,.26); border-radius: 17px; background: linear-gradient(145deg, rgba(18,37,60,.96), rgba(8,18,31,.97)); box-shadow: 0 16px 38px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.035); transition: transform .32s ease, border-color .32s ease, box-shadow .32s ease; }
.why-metric-card::after { content: ""; position: absolute; z-index: -1; top: -80%; left: -60%; width: 45%; height: 250%; transform: rotate(24deg); background: linear-gradient(90deg, transparent, rgba(255,255,255,.1), transparent); animation: metricSweep 6.5s ease-in-out infinite; pointer-events: none; }
.why-metric-card:hover { transform: translateY(-5px); border-color: rgba(111,187,255,.72); box-shadow: 0 24px 48px rgba(0,0,0,.24), 0 0 22px rgba(50,135,240,.12); }
.why-metric-card.core-metric { border-color: rgba(105,170,255,.42); background: radial-gradient(circle at 100% 0%, rgba(47,122,228,.18), transparent 48%), linear-gradient(145deg, #142945, #091626); }
.why-metric-orbit { position: absolute; top: 15px; right: 15px; width: 30px; height: 30px; border: 1px solid rgba(112,184,255,.3); border-radius: 50%; }
.why-metric-orbit::before, .why-metric-orbit::after { content: ""; position: absolute; inset: 5px; border: 1px solid rgba(112,184,255,.32); border-radius: 50%; }
.why-metric-orbit::after { inset: 11px; background: #76b9ff; box-shadow: 0 0 12px rgba(118,185,255,.8); }
.why-metric-value { position: relative; display: block; margin: 10px 0 13px; font-size: clamp(29px, 3vw, 42px); line-height: 1; font-weight: 780; letter-spacing: -.055em; color: #e7f3ff; text-shadow: 0 0 24px rgba(91,160,255,.18); }
.why-metric-card strong { position: relative; font-size: 12px; line-height: 1.45; color: #eaf2fc; }
.why-metric-card small { margin-top: 8px; font-size: 9px; line-height: 1.4; color: #8da5c0; }
.why-metric-index { font-size: 9px; letter-spacing: .12em; font-weight: 800; color: #79b5ff; }
.why-metric-spark { display: flex; align-items: end; gap: 4px; height: 18px; width: 100%; margin-top: 15px; opacity: .72; }
.why-metric-spark i { display: block; flex: 1; height: 30%; border-radius: 3px 3px 0 0; background: linear-gradient(180deg, #6be0e7, #4388ed); animation: sampleBars 1.5s ease-in-out infinite alternate; transform-origin: bottom; }
.why-metric-spark i:nth-child(2) { height: 64%; animation-delay: .1s; }.why-metric-spark i:nth-child(3) { height: 45%; animation-delay: .2s; }.why-metric-spark i:nth-child(4) { height: 90%; animation-delay: .3s; }.why-metric-spark i:nth-child(5) { height: 55%; animation-delay: .4s; }.why-metric-spark i:nth-child(6) { height: 75%; animation-delay: .5s; }.why-metric-spark i:nth-child(7) { height: 38%; animation-delay: .6s; }
@keyframes sampleBars { from { transform: scaleY(.72); opacity: .55; } to { transform: scaleY(1); opacity: 1; } }
.why-metric-note { position: relative; }
@media (max-width: 1050px) { .why-metrics-grid { grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media (max-width: 680px) { .why-metrics-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; }.why-metric-card { min-height: 165px; padding: 18px 15px; }.why-metric-value { font-size: clamp(28px, 8vw, 36px); }.why-metric-card strong { font-size: 11px; } }
@media (max-width: 390px) { .why-metrics-grid { grid-template-columns: 1fr; }.why-metric-card { min-height: 138px; } }
@media (prefers-reduced-motion: reduce) { .why-metric-card, .why-metric-card::after, .why-metric-spark i, .metric-value.is-rolling, .infographic-stat strong.is-rolling, .action-ring strong.is-rolling, .why-metric-value.is-rolling { animation: none !important; transition: none !important; } }

/* AelfaCred features: connected editorial infographic instead of a standard card grid. */
.feature-infographic-section { overflow:hidden; }
.feature-infographic-heading { max-width:900px; margin-bottom:54px; }
.feature-infographic-heading .section-heading { margin-bottom:0; }
.feature-infographic-heading .section-intro { max-width:660px; }
.feature-journey { position:relative; display:grid; gap:0; isolation:isolate; }
.feature-journey::before { content:""; position:absolute; z-index:-1; left:35px; top:44px; bottom:44px; width:1px; background:linear-gradient(180deg,transparent,#315783 8%,#70a8ff 48%,#315783 92%,transparent); }
.feature-journey-item { position:relative; display:grid; grid-template-columns:72px minmax(0, .9fr) minmax(320px, 1.1fr); gap:28px; align-items:center; padding:36px 0 42px; border-bottom:1px solid rgba(83,119,164,.23); }
.feature-journey-item:last-child { border-bottom:0; }
.feature-journey-marker { align-self:stretch; display:flex; flex-direction:column; align-items:center; gap:18px; }
.feature-journey-marker>span { display:grid; place-items:center; width:44px; height:44px; border:1px solid #4775ad; border-radius:50%; color:#a8cbff; background:#0b1728; font-size:11px; font-weight:700; box-shadow:0 0 0 7px rgba(70,125,195,.07),0 0 26px rgba(77,147,255,.13); }
.feature-journey-marker>i { display:grid; place-items:center; width:30px; height:30px; color:#75aaff; }
.feature-journey-marker .icon { width:22px; height:22px; }
.feature-journey-copy { padding:4px 0 10px; }
.feature-kicker { margin:0 0 13px !important; color:#78aaff !important; font-size:9px !important; font-weight:700; letter-spacing:.16em; }
.feature-journey-copy h3 { margin:0 0 13px; font-size:clamp(22px,2.1vw,30px); line-height:1.18; letter-spacing:-.035em; }
.feature-journey-copy>p:not(.feature-kicker) { margin:0; max-width:490px; color:#b5c6dc; font-size:14px; line-height:1.85; }
.feature-checklist { list-style:none; display:grid; gap:8px; margin:17px 0 0; padding:0; color:#c4d5eb; font-size:12px; }
.feature-checklist li::before { content:"✓"; color:#7bb0ff; margin-right:9px; }
.feature-journey-visual { position:relative; min-height:200px; padding:22px; border:1px solid rgba(91,136,193,.3); border-radius:18px; background:radial-gradient(ellipse at 80% 0%,rgba(50,100,165,.19),transparent 58%),linear-gradient(140deg,rgba(17,36,61,.8),rgba(8,19,34,.8)); box-shadow:inset 0 1px rgba(255,255,255,.035); transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease; }
.feature-journey-visual::before { content:""; position:absolute; inset:8px; border:1px solid rgba(93,140,197,.1); border-radius:12px; pointer-events:none; }
.feature-journey-item:hover .feature-journey-visual { transform:translateY(-3px); border-color:rgba(112,171,255,.68); box-shadow:0 15px 40px rgba(0,0,0,.18),0 0 28px rgba(67,133,222,.08); }
.form-visual,.attestation-visual,.expiry-visual,.esign-visual { position:relative; z-index:1; }
.form-visual-top { display:flex; align-items:center; gap:6px; padding-bottom:15px; border-bottom:1px solid rgba(106,147,195,.25); color:#bcd0e9; font-size:10px; }
.form-visual-top i { width:5px; height:5px; border-radius:50%; background:#6a9be0; }
.form-visual-top span { margin-left:7px; }
.form-visual-top b { margin-left:auto; color:#85b5ff; font-size:8px; letter-spacing:.1em; }
.form-field { display:grid; grid-template-columns:100px 1fr auto; align-items:center; gap:10px; margin-top:13px; color:#91a9c8; font-size:9px; }
.filled-line { display:block; height:5px; border-radius:8px; background:linear-gradient(90deg,#3c77bd,#82b6ff); box-shadow:0 0 10px rgba(86,155,247,.13); animation:feature-fill 1.3s ease both; }
.line-wide { width:92%; }.line-mid { width:70%; }
.form-field em { color:#72d8b0; font-size:8px; font-style:normal; }
.form-progress { height:4px; margin-top:18px; border-radius:5px; background:#1b2d44; overflow:hidden; }
.form-progress span { display:block; height:100%; width:82%; border-radius:inherit; background:linear-gradient(90deg,#3b78ce,#61d1d2); }
.form-visual>small { display:block; margin-top:9px; color:#7894b8; font-size:8px; }
.attestation-visual { display:grid; grid-template-columns:130px 1fr; align-items:center; gap:20px; min-height:160px; }
.attestation-ring { width:112px; height:112px; border-radius:50%; display:flex; flex-direction:column; justify-content:center; align-items:center; position:relative; background:conic-gradient(#67b4ff 0 72%,#203b5c 72% 100%); color:#d8e8ff; }
.attestation-ring::before { content:""; position:absolute; inset:7px; border-radius:50%; background:#0d1b2e; }
.attestation-ring span,.attestation-ring strong { z-index:1; text-align:center; }.attestation-ring span { font-size:9px; letter-spacing:.16em; color:#83b4ff; }.attestation-ring strong { margin-top:6px; font-size:16px; line-height:1.1; }
.attestation-tasks { display:grid; gap:13px; }.attestation-tasks>span { display:grid; grid-template-columns:14px 1fr; column-gap:6px; color:#74b6ff; font-size:12px; }.attestation-tasks b { font-size:10px; font-weight:600; color:#d7e5f8; }.attestation-tasks small { grid-column:2; margin-top:3px; color:#7f9bbd; font-size:8px; }.attestation-tasks .task-done { color:#68d5a9; }.attestation-tasks .task-current { color:#f4c56c; }
.expiry-scale { display:flex; align-items:center; gap:7px; color:#83a1c5; font-size:7px; letter-spacing:.06em; margin:0 0 16px; }.expiry-scale i { flex:1; height:1px; background:linear-gradient(90deg,#31547d,#6799d6); }
.expiry-row { display:grid; grid-template-columns:10px minmax(0,1fr) auto; align-items:center; gap:9px; padding:9px 0; border-top:1px solid rgba(101,141,190,.16); }.expiry-dot { width:7px; height:7px; border-radius:50%; box-shadow:0 0 12px currentColor; }.expiry-dot.urgent { color:#f0a45c; background:currentColor; }.expiry-dot.soon { color:#76b7ff; background:currentColor; }.expiry-dot.later { color:#65d3b0; background:currentColor; }.expiry-row b,.expiry-row small { display:block; }.expiry-row b { color:#d8e6f8; font-size:10px; font-weight:500; }.expiry-row small { margin-top:3px; color:#7f9abb; font-size:8px; }.expiry-row em { color:#9fc2ee; font-size:8px; font-style:normal; }
.esign-visual { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:24px; align-items:center; min-height:160px; }.esign-document { padding:14px; border:1px solid rgba(101,145,199,.35); border-radius:9px; background:rgba(19,41,67,.8); transform:rotate(-2deg); }.esign-doc-head { display:flex; justify-content:space-between; margin-bottom:16px; color:#8ba9ce; font-size:7px; letter-spacing:.12em; }.esign-doc-head b { color:#82b4ff; }.esign-document>i { display:block; height:3px; width:95%; margin-top:8px; background:#294766; border-radius:5px; }.esign-document>i.short { width:64%; }.signature-scribble { margin-top:14px; color:#a5ccff; font-family:cursive; font-size:20px; font-style:italic; border-bottom:1px dashed #4a739f; }.esign-document small { display:block; margin-top:5px; color:#7894b8; font-size:7px; }.esign-route { display:flex; flex-direction:column; gap:9px; }.esign-route>span { display:flex; align-items:center; gap:7px; color:#83b5ff; font-size:10px; }.esign-route b { color:#c9d9ed; font-weight:500; }.esign-route i { height:14px; width:1px; margin-left:5px; background:#41638a; }.esign-route .route-done:first-letter { color:#68d6ab; }.esign-route .route-pending { color:#f2c66e; }
.feature-journey-footer { display:flex; align-items:center; gap:12px; margin:14px 0 0 72px; color:#7d9fc9; font-size:8px; letter-spacing:.13em; }.feature-journey-footer>i { height:1px; flex:1; background:linear-gradient(90deg,#315783,transparent); }.journey-pulse { width:6px; height:6px; border-radius:50%; background:#79b1ff; box-shadow:0 0 0 5px rgba(94,159,244,.1),0 0 15px #4b92e8; animation:feature-pulse 2s ease-in-out infinite; }
@keyframes feature-fill { from { width:0; opacity:.4; } to { opacity:1; } } @keyframes feature-pulse { 50% { box-shadow:0 0 0 9px rgba(94,159,244,0),0 0 20px #4b92e8; } }
@media (max-width:900px) { .feature-journey-item { grid-template-columns:58px minmax(0,1fr); gap:20px; }.feature-journey-visual { grid-column:2; width:100%; }.feature-journey::before { left:28px; }.feature-journey-footer { margin-left:58px; } }
@media (max-width:560px) { .feature-infographic-heading { margin-bottom:30px; }.feature-journey-item { grid-template-columns:42px minmax(0,1fr); gap:13px; padding:26px 0 30px; }.feature-journey::before { left:20px; }.feature-journey-marker>span { width:36px; height:36px; box-shadow:0 0 0 4px rgba(70,125,195,.07); }.feature-journey-marker>i { display:none; }.feature-journey-copy h3 { font-size:22px; }.feature-journey-copy>p:not(.feature-kicker) { font-size:13px; line-height:1.75; }.feature-journey-visual { grid-column:2; min-height:0; padding:16px; border-radius:14px; }.attestation-visual { grid-template-columns:90px 1fr; gap:12px; }.attestation-ring { width:82px; height:82px; }.attestation-ring strong { font-size:13px; }.attestation-ring span { font-size:7px; }.form-field { grid-template-columns:75px 1fr auto; gap:6px; font-size:8px; }.expiry-row { grid-template-columns:8px minmax(0,1fr) auto; gap:6px; }.expiry-row b { font-size:9px; }.expiry-row em { font-size:7px; }.esign-visual { gap:12px; }.esign-document { padding:10px; }.signature-scribble { font-size:16px; }.feature-journey-footer { margin-left:0; flex-wrap:wrap; font-size:7px; }.feature-journey-footer>i { min-width:22px; } }
@media (prefers-reduced-motion: reduce) { .journey-pulse,.filled-line { animation:none !important; } .feature-journey-visual { transition:none; } }


/* Live infographic motion: moving signal traces, data pulses, and interactive focus. */
.feature-journey-item { transition: background .35s ease, border-color .35s ease; border-radius: 14px; }
.feature-journey-item:hover, .feature-journey-item:focus-within { background:linear-gradient(90deg,rgba(21,48,79,.10),rgba(27,67,111,.14),rgba(21,48,79,.04)); }
.feature-journey-item:hover .feature-journey-marker>span, .feature-journey-item:focus-within .feature-journey-marker>span { border-color:#8fc1ff; box-shadow:0 0 0 7px rgba(70,125,195,.10),0 0 34px rgba(77,147,255,.28); }
.feature-live-graph { position:relative; margin-top:17px; padding:10px 12px 8px; overflow:hidden; border:1px solid rgba(83,137,201,.24); border-radius:10px; background:linear-gradient(110deg,rgba(5,15,29,.72),rgba(13,31,51,.7)); }
.feature-live-graph::after { content:""; position:absolute; z-index:0; top:0; bottom:0; left:-25%; width:22%; background:linear-gradient(90deg,transparent,rgba(94,174,255,.08),transparent); transform:skewX(-18deg); animation:feature-scan 4.2s ease-in-out infinite; pointer-events:none; }
.feature-live-graph-head,.feature-graph-baseline { display:flex; align-items:center; justify-content:space-between; gap:10px; position:relative; z-index:1; color:#7296c0; font-size:7px; letter-spacing:.1em; }
.feature-live-graph-head span { display:flex; align-items:center; gap:6px; color:#a9c9f0; }
.feature-live-graph-head span i,.feature-graph-baseline b { display:inline-block; width:5px; height:5px; border-radius:50%; background:#65d8c2; box-shadow:0 0 10px rgba(101,216,194,.7); animation:feature-data-pulse 1.8s ease-in-out infinite; }
.feature-live-graph-head small { color:#617fa4; font-size:6px; }
.feature-live-graph svg { display:block; position:relative; z-index:1; width:100%; height:42px; overflow:visible; margin:4px 0 1px; }
.feature-graph-grid { fill:none; stroke:rgba(105,145,190,.16); stroke-width:.7; stroke-dasharray:2 4; }
.feature-graph-line { fill:none; stroke:rgba(77,137,213,.34); stroke-width:2; }
.feature-graph-trail { fill:none; stroke:url(#featureGraphGlow0); stroke-width:1.7; stroke-linecap:round; stroke-dasharray:18 9 3 9; animation:feature-graph-dash 3.8s linear infinite; }
.feature-journey-item:nth-child(2) .feature-graph-trail { stroke:url(#featureGraphGlow1); animation-duration:3.1s; }
.feature-journey-item:nth-child(3) .feature-graph-trail { stroke:url(#featureGraphGlow2); animation-duration:4.4s; }
.feature-journey-item:nth-child(4) .feature-graph-trail { stroke:url(#featureGraphGlow3); animation-duration:3.5s; }
.feature-graph-point { fill:#d4f5ff; stroke:#5faaff; stroke-width:1.6; filter:drop-shadow(0 0 4px rgba(104,182,255,.95)); }
.feature-graph-baseline { font-size:6px; color:#6889af; }
.feature-graph-baseline span:last-child { display:flex; align-items:center; gap:5px; }
.feature-graph-baseline b { width:4px; height:4px; }
.feature-journey-item:hover .feature-graph-trail, .feature-journey-item:focus-within .feature-graph-trail { stroke-width:2.6; animation-duration:1.8s; }
.feature-journey-item:hover .feature-live-graph::after, .feature-journey-item:focus-within .feature-live-graph::after { animation-duration:1.8s; }
.feature-journey-visual { overflow:hidden; }
@keyframes feature-graph-dash { to { stroke-dashoffset:-120; } }
@keyframes feature-scan { 0%,10% { left:-25%; opacity:0; } 25% { opacity:1; } 85%,100% { left:115%; opacity:0; } }
@keyframes feature-data-pulse { 50% { opacity:.45; box-shadow:0 0 2px rgba(101,216,194,.35); } }
@media (max-width:560px) { .feature-live-graph { margin-top:13px; padding:8px 9px 7px; }.feature-live-graph svg { height:36px; }.feature-live-graph-head,.feature-graph-baseline { font-size:6px; } }
@media (prefers-reduced-motion:reduce) { .feature-live-graph::after,.feature-graph-trail,.feature-live-graph-head span i,.feature-graph-baseline b { animation:none!important; }.feature-graph-trail { stroke-dasharray:none; }.feature-graph-point animateMotion { display:none; } }

/* Professional readability pass for the feature journey and live workflow visuals. */
.feature-infographic-heading { max-width: 1080px; margin-bottom: 44px; }
.feature-infographic-heading .section-intro { max-width: 780px; font-size: 16px; line-height: 1.75; }
.feature-journey-item { grid-template-columns: 64px minmax(0, .88fr) minmax(390px, 1.12fr); gap: 30px; padding: 38px 0 42px; }
.feature-journey-marker>span { width: 46px; height: 46px; font-size: 13px; }
.feature-journey-marker .icon { width: 24px; height: 24px; }
.feature-kicker { font-size: 11px !important; letter-spacing: .14em; margin-bottom: 12px !important; }
.feature-journey-copy h3 { font-size: clamp(24px, 2.25vw, 32px); line-height: 1.16; margin-bottom: 14px; }
.feature-journey-copy>p:not(.feature-kicker) { max-width: 540px; font-size: 15px; line-height: 1.8; color: #c1d0e2; }
.feature-checklist { gap: 9px; margin-top: 18px; font-size: 13px; line-height: 1.55; }
.feature-journey-visual { min-height: 248px; padding: 26px; border-radius: 20px; background: radial-gradient(ellipse at 82% 5%,rgba(68,133,218,.24),transparent 52%),linear-gradient(145deg,rgba(19,42,70,.94),rgba(7,18,32,.96)); box-shadow: inset 0 1px rgba(255,255,255,.06), 0 16px 36px rgba(0,0,0,.12); }
.feature-journey-visual::before { inset: 9px; border-radius: 14px; border-color: rgba(115,163,222,.16); }
.form-visual-top { gap: 8px; padding-bottom: 16px; font-size: 13px; }
.form-visual-top i { width: 6px; height: 6px; }
.form-visual-top b { font-size: 10px; }
.form-field { grid-template-columns: minmax(96px,.7fr) minmax(70px,1.2fr) auto; gap: 12px; margin-top: 15px; font-size: 12px; }
.filled-line { height: 6px; }
.form-field em { font-size: 10px; white-space: nowrap; }
.form-progress { height: 5px; margin-top: 20px; }
.form-visual>small { margin-top: 11px; font-size: 11px; line-height: 1.5; }
.attestation-visual { grid-template-columns: 132px minmax(0,1fr); gap: 22px; min-height: 174px; }
.attestation-ring { width: 122px; height: 122px; box-shadow: 0 0 0 8px rgba(92,166,255,.05), 0 0 28px rgba(76,150,241,.12); }
.attestation-ring span { font-size: 10px; }
.attestation-ring strong { font-size: 19px; }
.attestation-tasks { gap: 15px; }
.attestation-tasks>span { grid-template-columns: 18px 1fr; column-gap: 8px; font-size: 14px; }
.attestation-tasks b { font-size: 12px; }
.attestation-tasks small { margin-top: 4px; font-size: 10px; line-height: 1.4; }
.expiry-scale { gap: 9px; font-size: 10px; margin-bottom: 18px; }
.expiry-row { grid-template-columns: 10px minmax(0,1fr) auto; gap: 11px; padding: 12px 0; }
.expiry-dot { width: 8px; height: 8px; }
.expiry-row b { font-size: 12px; }
.expiry-row small { margin-top: 4px; font-size: 10px; }
.expiry-row em { font-size: 10px; white-space: nowrap; }
.esign-visual { gap: 20px; min-height: 174px; }
.esign-document { padding: 17px; border-radius: 11px; }
.esign-doc-head { margin-bottom: 18px; font-size: 10px; }
.esign-document>i { height: 4px; margin-top: 10px; }
.signature-scribble { margin-top: 16px; font-size: 24px; }
.esign-document small { margin-top: 7px; font-size: 10px; }
.esign-route { gap: 10px; }
.esign-route>span { gap: 9px; font-size: 12px; }
.esign-route b { font-size: 12px; }
.esign-route i { height: 15px; }
.feature-live-graph { margin-top: 20px; padding: 13px 15px 11px; border-radius: 12px; border-color: rgba(96,157,224,.34); background: linear-gradient(115deg,rgba(4,14,27,.9),rgba(15,34,56,.88)); box-shadow: inset 0 1px rgba(255,255,255,.035); }
.feature-live-graph-head { font-size: 10px; letter-spacing: .08em; }
.feature-live-graph-head span { gap: 8px; }
.feature-live-graph-head span i { width: 7px; height: 7px; }
.feature-live-graph-head small { font-size: 9px; }
.feature-live-graph svg { height: 66px; margin: 9px 0 5px; }
.feature-graph-grid { stroke: rgba(124,164,209,.2); stroke-dasharray: 3 5; }
.feature-graph-line { stroke: rgba(92,154,230,.48); stroke-width: 2.4; }
.feature-graph-trail { stroke-width: 2.4; stroke-dasharray: 24 10 4 10; }
.feature-graph-point { r: 4; }
.feature-graph-baseline { font-size: 9px; letter-spacing: .05em; }
.feature-graph-baseline b { width: 6px; height: 6px; }
.feature-journey-footer { margin-top: 22px; font-size: 10px; letter-spacing: .12em; }
.journey-pulse { flex: 0 0 7px; width: 7px; height: 7px; }
@media (max-width: 1100px) {
  .feature-journey-item { grid-template-columns: 56px minmax(0,.92fr) minmax(320px,1.08fr); gap: 22px; }
  .feature-journey-visual { padding: 22px; }
}
@media (max-width: 900px) {
  .feature-journey-item { grid-template-columns: 56px minmax(0,1fr); gap: 20px; padding: 32px 0 36px; }
  .feature-journey-copy { grid-column: 2; }
  .feature-journey-visual { grid-column: 2; min-height: 250px; width: 100%; }
  .feature-journey::before { left: 27px; }
  .feature-journey-footer { margin-left: 56px; }
}
@media (max-width: 560px) {
  .feature-infographic-heading { margin-bottom: 28px; }
  .feature-infographic-heading .section-intro { font-size: 14px; }
  .feature-journey-item { grid-template-columns: 38px minmax(0,1fr); gap: 12px; padding: 25px 0 29px; }
  .feature-journey::before { left: 18px; }
  .feature-journey-marker>span { width: 36px; height: 36px; font-size: 11px; }
  .feature-journey-marker>i { display: none; }
  .feature-journey-copy h3 { font-size: clamp(22px,6vw,27px); }
  .feature-journey-copy>p:not(.feature-kicker) { font-size: 14px; line-height: 1.75; }
  .feature-journey-visual { grid-column: 2; min-height: 0; padding: 17px; border-radius: 15px; }
  .form-visual-top { font-size: 11px; }
  .form-visual-top b { font-size: 9px; }
  .form-field { grid-template-columns: 78px minmax(0,1fr); gap: 8px; font-size: 10px; }
  .form-field em { grid-column: 2; justify-self: end; margin-top: -4px; font-size: 9px; }
  .form-visual>small { font-size: 10px; }
  .attestation-visual { grid-template-columns: 86px minmax(0,1fr); gap: 12px; min-height: 130px; }
  .attestation-ring { width: 82px; height: 82px; }
  .attestation-ring strong { font-size: 13px; }
  .attestation-ring span { font-size: 8px; }
  .attestation-tasks { gap: 10px; }
  .attestation-tasks>span { grid-template-columns: 13px 1fr; font-size: 11px; }
  .attestation-tasks b { font-size: 10px; }
  .attestation-tasks small { font-size: 9px; }
  .expiry-scale { font-size: 8px; gap: 5px; }
  .expiry-row { grid-template-columns: 8px minmax(0,1fr); gap: 8px; padding: 10px 0; }
  .expiry-row em { grid-column: 2; font-size: 9px; }
  .expiry-row b { font-size: 11px; }
  .expiry-row small { font-size: 9px; }
  .esign-visual { grid-template-columns: minmax(0,1fr) minmax(0,.9fr); gap: 12px; min-height: 135px; }
  .esign-document { padding: 10px; }
  .esign-doc-head { font-size: 8px; margin-bottom: 12px; }
  .signature-scribble { font-size: 18px; }
  .esign-document small { font-size: 8px; }
  .esign-route>span,.esign-route b { font-size: 10px; }
  .feature-live-graph { margin-top: 16px; padding: 10px 10px 9px; }
  .feature-live-graph-head { font-size: 8px; }
  .feature-live-graph-head small { font-size: 7px; }
  .feature-live-graph svg { height: 52px; }
  .feature-graph-baseline { font-size: 7px; }
  .feature-journey-footer { margin-left: 0; font-size: 8px; flex-wrap: wrap; }
}
@media (prefers-reduced-motion: reduce) {
  .feature-live-graph::after, .feature-graph-trail, .feature-live-graph-head span i, .feature-graph-baseline b, .journey-pulse, .filled-line { animation: none !important; }
  .feature-graph-trail { stroke-dasharray: none; }
  .feature-journey-visual, .feature-journey-item { transition: none !important; }
}


/* PowerPoint-inspired Slide Zoom: connected stage navigation, spotlight states, and accessible zoom dialog. */
.feature-zoom-nav { display:grid; grid-template-columns:minmax(190px,.62fr) minmax(0,1.8fr); gap:28px; align-items:center; margin:0 0 24px 64px; padding:20px 22px; border:1px solid rgba(102,153,215,.25); border-radius:18px; background:linear-gradient(110deg,rgba(13,29,49,.92),rgba(10,22,38,.72)); box-shadow:inset 0 1px rgba(255,255,255,.035); }
.feature-zoom-kicker { display:block; color:#79adff; font-size:10px; font-weight:800; letter-spacing:.16em; }
.feature-zoom-nav-intro p { margin:8px 0 0; color:#b7c8dd; font-size:13px; line-height:1.55; }
.feature-zoom-nav-stages { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.feature-zoom-stage { position:relative; display:grid; grid-template-columns:1fr auto; gap:8px; align-items:center; min-height:64px; padding:11px 12px; border:1px solid rgba(100,145,199,.24); border-radius:12px; background:rgba(13,30,50,.75); color:#dce9fb; text-align:left; cursor:pointer; transition:transform .28s ease,border-color .28s ease,background .28s ease,box-shadow .28s ease; }
.feature-zoom-stage:hover,.feature-zoom-stage[aria-pressed="true"] { transform:translateY(-2px); border-color:#6baaff; background:linear-gradient(145deg,rgba(32,70,115,.75),rgba(11,28,48,.95)); box-shadow:0 8px 24px rgba(25,95,173,.15),inset 0 1px rgba(255,255,255,.06); }
.feature-zoom-stage-number { grid-column:1/-1; color:#78b5ff; font-size:10px; font-weight:800; letter-spacing:.13em; }
.feature-zoom-stage-name { font-size:12px; font-weight:650; line-height:1.3; }
.feature-zoom-stage-arrow { color:#83b8ff; font-size:16px; transition:transform .25s ease; }
.feature-zoom-stage:hover .feature-zoom-stage-arrow,.feature-zoom-stage[aria-pressed="true"] .feature-zoom-stage-arrow { transform:translate(2px,-2px); }
.feature-journey-item { position:relative; transition:background .35s ease,border-color .35s ease,transform .35s ease; }
.feature-journey-item.is-zoom-active { background:linear-gradient(90deg,rgba(25,56,91,.13),rgba(30,77,128,.15),rgba(25,56,91,.035)); }
.feature-journey-item.is-zoom-active .feature-journey-visual { transform:scale(1.018); border-color:rgba(119,180,255,.72); box-shadow:0 18px 44px rgba(0,0,0,.2),0 0 32px rgba(69,139,228,.13),inset 0 1px rgba(255,255,255,.06); }
.feature-journey-item.is-zoom-active .feature-journey-marker>span { border-color:#8fc1ff; box-shadow:0 0 0 7px rgba(70,125,195,.12),0 0 32px rgba(77,147,255,.3); }
.feature-zoom-trigger { position:relative; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:18px; width:100%; margin-top:16px; padding:11px 13px; border:1px solid rgba(111,169,239,.28); border-radius:10px; color:#c9ddf7; background:rgba(29,61,98,.28); font:inherit; font-size:12px; font-weight:700; text-align:left; cursor:pointer; transition:background .25s ease,border-color .25s ease,transform .25s ease; }
.feature-zoom-trigger span:last-child { color:#8fc0ff; font-size:17px; }
.feature-zoom-trigger:hover,.feature-zoom-trigger:focus-visible { transform:translateY(-1px); border-color:#81b7ff; background:rgba(42,88,143,.38); outline:none; }
.feature-journey-marker>span[role="button"] { cursor:zoom-in; }
.feature-zoom-dialog { width:min(1080px,calc(100vw - 36px)); max-width:none; max-height:min(88vh,900px); padding:0; overflow:auto; border:1px solid rgba(121,174,239,.45); border-radius:24px; color:#f2f7ff; background:#071321; box-shadow:0 36px 120px rgba(0,0,0,.68),0 0 80px rgba(54,119,195,.15); }
.feature-zoom-dialog[open] { animation:feature-slide-zoom-in .48s cubic-bezier(.2,.75,.2,1) both; }
.feature-zoom-dialog::backdrop { background:rgba(2,7,14,.78); backdrop-filter:blur(12px); animation:feature-backdrop-in .35s ease both; }
.feature-zoom-dialog-shell { padding:clamp(20px,3.4vw,38px); background:radial-gradient(ellipse at 92% 0%,rgba(48,100,164,.18),transparent 40%),linear-gradient(145deg,#0b1b2e,#06101c 68%); }
.feature-zoom-dialog-top { display:flex; align-items:center; justify-content:space-between; gap:18px; padding-bottom:18px; border-bottom:1px solid rgba(113,155,207,.22); }
.feature-zoom-close { display:grid; place-items:center; flex:0 0 42px; width:42px; height:42px; border:1px solid rgba(131,177,232,.35); border-radius:50%; color:#dceaff; background:rgba(28,55,87,.45); font-size:28px; line-height:1; cursor:pointer; }
.feature-zoom-close:hover { background:rgba(62,111,172,.55); border-color:#86bbff; }
.feature-zoom-dialog-content { display:grid; grid-template-columns:minmax(230px,.78fr) minmax(0,1.22fr); align-items:center; gap:clamp(22px,4vw,48px); padding:clamp(24px,4vw,46px) 0; }
.feature-zoom-dialog-index { display:inline-block; margin-bottom:14px; color:#78b5ff; font-size:11px; font-weight:800; letter-spacing:.16em; }
.feature-zoom-dialog-copy h2 { margin:0 0 16px; font-size:clamp(28px,3.6vw,46px); line-height:1.08; letter-spacing:-.045em; }
.feature-zoom-dialog-description { margin:0; color:#bdcce0; font-size:clamp(14px,1.4vw,17px); line-height:1.8; }
.feature-zoom-dialog-tip { display:flex; align-items:center; gap:9px; margin-top:24px; color:#809bbd; font-size:11px; line-height:1.5; }
.feature-zoom-tip-dot { width:7px; height:7px; flex:0 0 7px; border-radius:50%; background:#62d7cb; box-shadow:0 0 14px rgba(98,215,203,.65); }
.feature-zoom-dialog-visual { min-width:0; perspective:1200px; animation:feature-zoom-content-in .55s cubic-bezier(.2,.75,.2,1) both; }
.feature-zoom-clone { width:100%; min-height:300px; padding:clamp(18px,3vw,30px); border-color:rgba(112,171,255,.5); border-radius:18px; box-shadow:0 20px 60px rgba(0,0,0,.25),0 0 34px rgba(62,131,216,.1); transform-origin:center; }
.feature-zoom-clone .feature-live-graph { margin-top:24px; }
.feature-zoom-clone .feature-live-graph svg { height:90px; }
.feature-zoom-clone .form-field,.feature-zoom-clone .expiry-row { font-size:13px; }
.feature-zoom-clone .attestation-tasks>span,.feature-zoom-clone .esign-route>span { font-size:14px; }
.feature-zoom-dialog-footer { display:flex; align-items:center; justify-content:space-between; gap:14px; padding-top:18px; border-top:1px solid rgba(113,155,207,.22); }
.feature-zoom-dialog-footer button { padding:10px 14px; border:1px solid rgba(111,169,239,.3); border-radius:9px; color:#d8e8fb; background:rgba(22,47,76,.48); font:inherit; font-size:12px; font-weight:700; cursor:pointer; }
.feature-zoom-dialog-footer button:hover:not(:disabled) { border-color:#80b6ff; background:rgba(42,83,132,.55); }
.feature-zoom-dialog-footer button:disabled { opacity:.35; cursor:not-allowed; }
.feature-zoom-progress { color:#88a5c9; font-size:11px; letter-spacing:.1em; }
body.feature-zoom-is-open { overflow:hidden; }
@keyframes feature-slide-zoom-in { from { opacity:0; transform:scale(.82) translateY(20px); filter:blur(6px); } to { opacity:1; transform:scale(1) translateY(0); filter:blur(0); } }
@keyframes feature-zoom-content-in { from { opacity:.4; transform:scale(.88) translateY(8px); } to { opacity:1; transform:scale(1) translateY(0); } }
@keyframes feature-backdrop-in { from { opacity:0; } to { opacity:1; } }
@media(max-width:1100px) { .feature-zoom-nav { grid-template-columns:1fr; gap:14px; margin-left:56px; }.feature-zoom-nav-stages { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media(max-width:900px) { .feature-zoom-nav { margin-left:56px; }.feature-zoom-dialog-content { grid-template-columns:1fr; }.feature-zoom-dialog-copy { max-width:720px; }.feature-zoom-clone { min-height:0; }.feature-zoom-clone .feature-live-graph svg { height:70px; } }
@media(max-width:600px) { .feature-zoom-nav { margin-left:0; padding:16px; border-radius:14px; }.feature-zoom-nav-stages { grid-template-columns:repeat(2,minmax(0,1fr)); }.feature-zoom-stage { min-height:62px; padding:10px; }.feature-zoom-stage-name { font-size:11px; }.feature-zoom-dialog { width:calc(100vw - 18px); max-height:92vh; border-radius:18px; }.feature-zoom-dialog-shell { padding:17px; }.feature-zoom-dialog-top { padding-bottom:12px; }.feature-zoom-close { flex-basis:36px; width:36px; height:36px; font-size:24px; }.feature-zoom-dialog-content { gap:20px; padding:22px 0; }.feature-zoom-dialog-copy h2 { font-size:29px; }.feature-zoom-dialog-description { font-size:14px; line-height:1.7; }.feature-zoom-clone { padding:15px; border-radius:13px; }.feature-zoom-clone .feature-live-graph { margin-top:16px; }.feature-zoom-clone .feature-live-graph svg { height:50px; }.feature-zoom-dialog-footer { flex-wrap:wrap; }.feature-zoom-dialog-footer button { font-size:11px; padding:9px 10px; }.feature-zoom-progress { order:3; width:100%; text-align:center; }.feature-journey-item.is-zoom-active .feature-journey-visual { transform:none; } }
@media(prefers-reduced-motion:reduce) { .feature-zoom-stage,.feature-zoom-trigger,.feature-journey-item,.feature-journey-visual { transition:none!important; }.feature-zoom-dialog[open],.feature-zoom-dialog::backdrop,.feature-zoom-dialog-visual { animation:none!important; } }

/* Scroll-synchronized presentation focus: preserve normal flow and the original timeline geometry. */
.feature-journey-item .feature-journey-copy,
.feature-journey-item .feature-journey-marker>span,
.feature-journey-item .feature-journey-visual {
  transition: transform .58s cubic-bezier(.2,.75,.2,1), opacity .58s ease,
    border-color .58s ease, box-shadow .58s ease, background-color .58s ease;
}
.feature-journey-item .feature-journey-copy { transform: translateY(10px); opacity: .9; }
.feature-journey-item .feature-journey-visual { transform: scale(.975); opacity: .94; cursor: zoom-in; }
.feature-journey-item.is-zoom-active .feature-journey-copy { transform: translateY(0); opacity: 1; }
.feature-journey-item.is-zoom-active .feature-journey-visual { transform: scale(1); opacity: 1; }
.feature-journey-item.is-zoom-active .feature-graph-trail { animation-play-state: running; }
.feature-journey-item:not(.is-zoom-active) .feature-graph-trail { animation-play-state: paused; }
.feature-journey-item .feature-journey-visual:focus-visible { outline: 2px solid #8fc1ff; outline-offset: 4px; }
.feature-journey-item.is-zoom-active .feature-journey-marker>span { transform: scale(1.12); }
@media (max-width: 900px) {
  .feature-journey-item .feature-journey-copy { transform: translateY(6px); }
  .feature-journey-item .feature-journey-visual { transform: scale(.99); }
  .feature-journey-item.is-zoom-active .feature-journey-visual { transform: scale(1); }
}
@media (max-width: 560px) {
  .feature-journey-item .feature-journey-copy { transform: none; opacity: 1; }
  .feature-journey-item .feature-journey-visual { transform: none; opacity: 1; }
  .feature-journey-item.is-zoom-active .feature-journey-marker>span { transform: scale(1.06); }
}
@media (prefers-reduced-motion: reduce) {
  .feature-journey-item .feature-journey-copy,
  .feature-journey-item .feature-journey-marker>span,
  .feature-journey-item .feature-journey-visual { transform: none !important; opacity: 1 !important; transition: none !important; }
  .feature-journey-item .feature-graph-trail { animation: none !important; }
}

/* New live workflow navigator: straight data rail and clickable feature destinations. */
.feature-journey-item[id^="feature-stage-"] { scroll-margin-top: 108px; }
.feature-live-nav { position:relative; margin:34px 0 0 72px; padding:23px 22px 20px; overflow:hidden; border:1px solid rgba(103,154,219,.28); border-radius:18px; background:radial-gradient(ellipse at 50% 0%,rgba(42,99,163,.15),transparent 58%),linear-gradient(130deg,rgba(10,25,43,.96),rgba(6,16,29,.98)); box-shadow:inset 0 1px rgba(255,255,255,.035),0 16px 36px rgba(0,0,0,.12); }
.feature-live-nav-head { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:24px; }
.feature-live-nav-kicker { color:#7cb5ff; font-size:10px; font-weight:800; letter-spacing:.16em; }
.feature-live-nav-head p { margin:0; color:#94aac5; font-size:12px; line-height:1.5; }
.feature-live-nav-stages { position:relative; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.feature-live-nav-rail { position:absolute; left:calc(12.5% + 22px); right:calc(12.5% + 22px); top:91px; height:2px; background:linear-gradient(90deg,rgba(65,112,172,.42),rgba(94,157,231,.72),rgba(65,112,172,.42)); pointer-events:none; }
.feature-live-nav-rail::before { content:""; position:absolute; inset:-3px 0; background:linear-gradient(90deg,transparent,rgba(86,171,255,.22),transparent); filter:blur(5px); }
.feature-live-nav-rail span { position:absolute; z-index:1; top:-3px; left:0; width:36px; height:8px; border-radius:10px; background:linear-gradient(90deg,transparent,#7bd8ff,#8bbaff,transparent); box-shadow:0 0 14px rgba(104,190,255,.8); animation:feature-rail-packet 4.8s linear infinite; }
.feature-live-nav-rail i { position:absolute; top:-4px; width:10px; height:10px; border:1px solid #6aa8ef; border-radius:50%; background:#0a1a2d; box-shadow:0 0 0 4px rgba(78,143,218,.09); }
.feature-live-nav-rail i:nth-of-type(1) { left:0; }.feature-live-nav-rail i:nth-of-type(2) { left:33.333%; }.feature-live-nav-rail i:nth-of-type(3) { left:66.666%; }.feature-live-nav-rail i:nth-of-type(4) { right:0; }
.feature-live-nav-link { position:relative; z-index:2; display:flex; min-height:104px; flex-direction:column; align-items:flex-start; justify-content:flex-start; gap:9px; padding:17px 14px 15px; border:1px solid rgba(95,143,199,.24); border-radius:12px; color:#e4efff; text-decoration:none; background:linear-gradient(155deg,rgba(20,43,70,.92),rgba(8,21,36,.94)); transition:transform .28s ease,border-color .28s ease,background .28s ease,box-shadow .28s ease; }
.feature-live-nav-link::before { content:""; position:absolute; top:-5px; left:calc(50% - 5px); width:8px; height:8px; border:1px solid #77b5ff; border-radius:50%; background:#0a1a2d; box-shadow:0 0 0 4px rgba(78,143,218,.09); }
.feature-live-nav-link:hover,.feature-live-nav-link:focus-visible,.feature-live-nav-link.is-active { transform:translateY(-3px); border-color:rgba(118,181,255,.78); background:linear-gradient(150deg,rgba(30,67,108,.95),rgba(9,26,45,.98)); box-shadow:0 10px 28px rgba(0,0,0,.2),0 0 24px rgba(61,133,222,.12),inset 0 1px rgba(255,255,255,.05); outline:none; }
.feature-live-nav-link.is-active::before { background:#a4d8ff; box-shadow:0 0 0 5px rgba(80,160,246,.13),0 0 18px rgba(102,186,255,.8); }
.feature-live-nav-step { color:#7db6ff; font-size:9px; font-weight:800; letter-spacing:.12em; }
.feature-live-nav-link strong { max-width:100%; padding-right:16px; font-size:13px; font-weight:650; line-height:1.4; }
.feature-live-nav-arrow { position:absolute; right:12px; bottom:12px; color:#86baff; font-size:16px; transition:transform .25s ease; }
.feature-live-nav-link:hover .feature-live-nav-arrow,.feature-live-nav-link:focus-visible .feature-live-nav-arrow,.feature-live-nav-link.is-active .feature-live-nav-arrow { transform:translate(2px,-2px); }
@keyframes feature-rail-packet { from { left:0; } to { left:calc(100% - 36px); } }
@media(max-width:900px) { .feature-live-nav { margin-left:56px; }.feature-live-nav-rail { top:91px; } }
@media(max-width:600px) { .feature-live-nav { margin:28px 0 0; padding:18px 14px 14px; border-radius:15px; }.feature-live-nav-head { align-items:flex-start; flex-direction:column; gap:7px; margin-bottom:17px; }.feature-live-nav-stages { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }.feature-live-nav-rail { display:none; }.feature-live-nav-link { min-height:95px; padding:14px 12px; }.feature-live-nav-link::before { display:none; }.feature-live-nav-link strong { font-size:12px; }.feature-journey-item[id^="feature-stage-"] { scroll-margin-top:82px; } }
@media(prefers-reduced-motion:reduce) { .feature-live-nav-rail span { animation:none!important; left:calc(50% - 18px); }.feature-live-nav-link { transition:none!important; } }

/* Section-specific infographic redesign — deliberately scoped to the four feature panels.
   The workflow navigator (.feature-live-nav) below/after these panels is not changed. */
.feature-journey-item {
  --feature-accent: #71b5ff;
  --feature-accent-rgb: 113,181,255;
  position: relative;
  grid-template-columns: 64px minmax(0,.92fr) minmax(360px,1.08fr);
  gap: 28px;
  margin: 0 0 18px;
  padding: 28px 24px 30px 0;
  border: 1px solid rgba(83,119,164,.20);
  border-radius: 20px;
  background: linear-gradient(112deg,rgba(11,25,43,.22),rgba(11,25,43,.03) 45%,rgba(var(--feature-accent-rgb),.035));
  transition: background .45s ease,border-color .45s ease,box-shadow .45s ease;
}
.feature-journey-item:last-child { margin-bottom: 0; }
.feature-journey-item:nth-child(1) { --feature-accent:#71b5ff; --feature-accent-rgb:113,181,255; }
.feature-journey-item:nth-child(2) { --feature-accent:#6bd8d0; --feature-accent-rgb:107,216,208; }
.feature-journey-item:nth-child(3) { --feature-accent:#f0c16b; --feature-accent-rgb:240,193,107; }
.feature-journey-item:nth-child(4) { --feature-accent:#9caeff; --feature-accent-rgb:156,174,255; }
.feature-journey-item:nth-child(even) { grid-template-columns:64px minmax(360px,1.08fr) minmax(0,.92fr); }
.feature-journey-item:nth-child(even) .feature-journey-visual { grid-column:2; grid-row:1; }
.feature-journey-item:nth-child(even) .feature-journey-copy { grid-column:3; grid-row:1; }
.feature-journey-item .feature-journey-marker { position:relative; z-index:1; }
.feature-journey-item .feature-journey-marker>span {
  color:var(--feature-accent); border-color:rgba(var(--feature-accent-rgb),.62);
  box-shadow:0 0 0 6px rgba(var(--feature-accent-rgb),.055),0 0 22px rgba(var(--feature-accent-rgb),.13);
  transition:transform .45s cubic-bezier(.2,.75,.2,1),box-shadow .45s ease,border-color .45s ease;
}
.feature-journey-item .feature-journey-marker>i { color:var(--feature-accent); }
.feature-journey-item .feature-kicker { color:var(--feature-accent)!important; }
.feature-journey-item .feature-journey-copy { padding:7px 4px 8px; }
.feature-journey-item .feature-journey-copy h3 { max-width:520px; font-size:clamp(23px,2.05vw,31px); }
.feature-journey-item .feature-journey-visual {
  min-width:0; min-height:256px; padding:25px; overflow:hidden; isolation:isolate;
  border-color:rgba(var(--feature-accent-rgb),.30); border-radius:17px;
  background:radial-gradient(ellipse at 86% 0%,rgba(var(--feature-accent-rgb),.13),transparent 53%),linear-gradient(145deg,rgba(16,36,60,.97),rgba(7,18,32,.98));
  box-shadow:inset 0 1px rgba(255,255,255,.055),0 13px 35px rgba(0,0,0,.13);
  transform-origin:center center;
}
.feature-journey-item .feature-journey-visual::before { inset:8px; border-color:rgba(var(--feature-accent-rgb),.12); border-radius:11px; }
.feature-journey-item .feature-journey-visual::after {
  content:""; position:absolute; z-index:-1; right:-58px; top:-68px; width:190px; height:190px;
  border:1px solid rgba(var(--feature-accent-rgb),.12); border-radius:50%;
  box-shadow:0 0 0 18px rgba(var(--feature-accent-rgb),.025),0 0 0 38px rgba(var(--feature-accent-rgb),.018);
  pointer-events:none; transition:transform .7s ease,opacity .7s ease;
}
.feature-journey-item.is-zoom-active,
.feature-journey-item:hover,
.feature-journey-item:focus-within {
  border-color:rgba(var(--feature-accent-rgb),.36);
  background:linear-gradient(112deg,rgba(14,32,54,.45),rgba(11,25,43,.10) 45%,rgba(var(--feature-accent-rgb),.065));
  box-shadow:0 15px 40px rgba(0,0,0,.08),inset 0 1px rgba(255,255,255,.025);
}
.feature-journey-item.is-zoom-active .feature-journey-visual,
.feature-journey-item:hover .feature-journey-visual,
.feature-journey-item:focus-within .feature-journey-visual {
  border-color:rgba(var(--feature-accent-rgb),.68);
  box-shadow:0 17px 42px rgba(0,0,0,.19),0 0 30px rgba(var(--feature-accent-rgb),.09),inset 0 1px rgba(255,255,255,.06);
}
.feature-journey-item.is-zoom-active .feature-journey-visual::after,
.feature-journey-item:hover .feature-journey-visual::after { transform:scale(1.13); opacity:.9; }
.feature-journey-item .feature-live-graph { position:relative; z-index:1; margin-top:20px; padding:12px 13px 8px; border:1px solid rgba(var(--feature-accent-rgb),.17); border-radius:10px; background:rgba(4,13,24,.42); }
.feature-journey-item .feature-live-graph-head { color:rgba(190,214,242,.78); }
.feature-journey-item .feature-live-graph-head>span>i { background:var(--feature-accent); box-shadow:0 0 11px rgba(var(--feature-accent-rgb),.7); }
.feature-journey-item .feature-graph-grid { stroke:rgba(var(--feature-accent-rgb),.09); }
.feature-journey-item .feature-graph-line { stroke:rgba(var(--feature-accent-rgb),.24); }
.feature-journey-item .feature-graph-trail { stroke:var(--feature-accent); filter:drop-shadow(0 0 4px rgba(var(--feature-accent-rgb),.35)); }
.feature-journey-item .feature-graph-point { fill:#d7f5ff; filter:drop-shadow(0 0 4px var(--feature-accent)); }
.feature-journey-item .feature-graph-baseline { color:#7695b9; }

/* 01 — Application preparation: field-completion scan and populated form rails. */
.feature-journey-1 .form-visual { padding:3px 2px 0; }
.feature-journey-1 .form-visual-top { padding-bottom:13px; }
.feature-journey-1 .form-visual-top b { padding:4px 7px; border:1px solid rgba(107,216,208,.22); border-radius:5px; color:#7be0c5; background:rgba(107,216,208,.07); }
.feature-journey-1 .form-field { padding:8px 9px; margin-top:8px; border:1px solid rgba(113,181,255,.10); border-radius:7px; background:rgba(45,79,117,.13); }
.feature-journey-1 .filled-line { position:relative; height:4px; background:linear-gradient(90deg,#3f83d2,var(--feature-accent)); animation:credential-field-fill 1.35s cubic-bezier(.2,.7,.2,1) both; }
.feature-journey-1 .form-field:nth-of-type(3) .filled-line { animation-delay:.14s; }
.feature-journey-1 .form-field:nth-of-type(4) .filled-line { animation-delay:.28s; }
.feature-journey-1 .form-progress { height:5px; margin-top:15px; background:rgba(113,181,255,.12); }
.feature-journey-1 .form-progress span { background:linear-gradient(90deg,#4c8fe6,#70d9d0); box-shadow:0 0 12px rgba(113,181,255,.28); animation:credential-progress 1.5s ease-out both; }

/* 02 — CAQH maintenance: breathing progress ring and a clear three-step checkpoint. */
.feature-journey-2 .attestation-visual { grid-template-columns:132px minmax(0,1fr); gap:20px; }
.feature-journey-2 .attestation-ring { background:conic-gradient(var(--feature-accent) 0 72%,rgba(107,216,208,.13) 72% 100%); box-shadow:0 0 0 7px rgba(107,216,208,.045),0 0 24px rgba(107,216,208,.08); animation:caqh-ring-breathe 3.6s ease-in-out infinite; }
.feature-journey-2 .attestation-ring::after { content:""; position:absolute; inset:-8px; border:1px dashed rgba(107,216,208,.35); border-radius:50%; animation:caqh-orbit 22s linear infinite; }
.feature-journey-2 .attestation-ring span { color:var(--feature-accent); }
.feature-journey-2 .attestation-tasks { gap:10px; }
.feature-journey-2 .attestation-tasks>span { position:relative; padding:8px 9px; border:1px solid rgba(107,216,208,.12); border-radius:7px; background:rgba(107,216,208,.035); }
.feature-journey-2 .attestation-tasks .task-current { border-color:rgba(107,216,208,.33); background:rgba(107,216,208,.075); box-shadow:inset 2px 0 var(--feature-accent); }

/* 03 — Expiration review: urgency-coded renewal rows with animated time rails. */
.feature-journey-3 .expiry-visual { padding:3px 1px 0; }
.feature-journey-3 .expiry-scale { margin-bottom:13px; padding:8px 10px; border:1px solid rgba(240,193,107,.14); border-radius:7px; background:rgba(240,193,107,.035); }
.feature-journey-3 .expiry-row { position:relative; padding:13px 10px; margin-top:7px; border:1px solid rgba(115,150,188,.12); border-radius:8px; background:rgba(17,37,60,.58); }
.feature-journey-3 .expiry-row::after { content:""; position:absolute; left:27px; right:16px; bottom:0; height:2px; border-radius:2px; transform-origin:left; transform:scaleX(.68); background:linear-gradient(90deg,var(--feature-accent),transparent); opacity:.65; }
.feature-journey-3 .expiry-row:nth-of-type(2)::after { transform:scaleX(.42); opacity:.5; }
.feature-journey-3 .expiry-row:nth-of-type(3)::after { transform:scaleX(.86); opacity:.34; }
.feature-journey-3 .expiry-row em { padding:4px 6px; border-radius:5px; background:rgba(240,193,107,.08); color:#f2ce8d; }
.feature-journey-3 .expiry-dot { animation:expiry-status-pulse 2.8s ease-in-out infinite; }
.feature-journey-3 .expiry-row:nth-of-type(3) .expiry-dot { animation-delay:.4s; }

/* 04 — E-sign completion: document focus, signature draw, and signer-route progress. */
.feature-journey-4 .esign-visual { grid-template-columns:minmax(0,1fr) minmax(0,.9fr); gap:25px; }
.feature-journey-4 .esign-document { position:relative; padding:17px; border-color:rgba(156,174,255,.34); background:linear-gradient(150deg,rgba(27,48,82,.88),rgba(10,24,42,.95)); box-shadow:0 9px 24px rgba(0,0,0,.16); transform:rotate(-1.3deg); transition:transform .45s ease,border-color .45s ease; }
.feature-journey-4.is-zoom-active .esign-document,.feature-journey-4:hover .esign-document { transform:rotate(0) translateY(-2px); border-color:rgba(156,174,255,.7); }
.feature-journey-4 .signature-scribble { display:inline-block; padding-right:8px; border-bottom-color:rgba(156,174,255,.55); clip-path:inset(0 100% 0 0); animation:signature-reveal 1.5s .3s ease-out forwards; }
.feature-journey-4 .esign-route { position:relative; gap:12px; }
.feature-journey-4 .esign-route::before { content:""; position:absolute; left:5px; top:7px; bottom:7px; width:1px; background:linear-gradient(180deg,#69d7b0,#79b9ff,rgba(156,174,255,.25)); }
.feature-journey-4 .esign-route>span { position:relative; z-index:1; padding:8px 9px; border:1px solid rgba(156,174,255,.12); border-radius:7px; background:#0c1b2e; }
.feature-journey-4 .esign-route .route-pending { border-color:rgba(156,174,255,.36); background:rgba(156,174,255,.07); }

@keyframes credential-field-fill { from { width:0; opacity:.35; } to { opacity:1; } }
@keyframes credential-progress { from { width:0; } to { width:82%; } }
@keyframes caqh-ring-breathe { 0%,100% { filter:drop-shadow(0 0 0 rgba(107,216,208,0)); } 50% { filter:drop-shadow(0 0 9px rgba(107,216,208,.22)); } }
@keyframes caqh-orbit { to { transform:rotate(360deg); } }
@keyframes expiry-status-pulse { 0%,100% { box-shadow:0 0 0 0 rgba(240,193,107,0); } 50% { box-shadow:0 0 0 4px rgba(240,193,107,.09); } }
@keyframes signature-reveal { to { clip-path:inset(0 0 0 0); } }

@media(max-width:1100px) {
  .feature-journey-item,.feature-journey-item:nth-child(even) { grid-template-columns:54px minmax(0,1fr); gap:20px; padding:25px 20px 27px 0; }
  .feature-journey-item .feature-journey-copy,.feature-journey-item:nth-child(even) .feature-journey-copy { grid-column:2; grid-row:auto; }
  .feature-journey-item .feature-journey-visual,.feature-journey-item:nth-child(even) .feature-journey-visual { grid-column:2; grid-row:auto; width:100%; }
  .feature-journey-item .feature-journey-visual { min-height:240px; }
  .feature-journey-item:nth-child(even) .feature-journey-copy { order:0; }
  .feature-journey-item:nth-child(even) .feature-journey-visual { order:1; }
}
@media(max-width:600px) {
  .feature-journey-item,.feature-journey-item:nth-child(even) { grid-template-columns:38px minmax(0,1fr); gap:12px; padding:19px 10px 21px 0; margin-bottom:12px; border-radius:14px; }
  .feature-journey-item .feature-journey-copy { padding:4px 2px 5px; }
  .feature-journey-item .feature-journey-copy h3 { font-size:clamp(21px,5.8vw,26px); }
  .feature-journey-item .feature-journey-visual { min-height:0; padding:16px; border-radius:13px; }
  .feature-journey-item .feature-live-graph { margin-top:15px; padding:9px 9px 6px; }
  .feature-journey-item .feature-live-graph svg { height:42px; }
  .feature-journey-2 .attestation-visual { grid-template-columns:84px minmax(0,1fr); gap:12px; }
  .feature-journey-2 .attestation-ring { width:76px; height:76px; }
  .feature-journey-2 .attestation-tasks>span { padding:7px 6px; }
  .feature-journey-3 .expiry-row { grid-template-columns:8px minmax(0,1fr); }
  .feature-journey-3 .expiry-row em { grid-column:2; justify-self:start; margin-top:4px; }
  .feature-journey-4 .esign-visual { grid-template-columns:minmax(0,1fr) minmax(0,.85fr); gap:12px; }
  .feature-journey-4 .esign-document { padding:10px; }
  .feature-journey-4 .esign-route>span { padding:7px 6px; font-size:9px; }
}
@media(prefers-reduced-motion:reduce) {
  .feature-journey-item .form-progress span,.feature-journey-item .filled-line,.feature-journey-2 .attestation-ring,.feature-journey-2 .attestation-ring::after,.feature-journey-3 .expiry-dot,.feature-journey-4 .signature-scribble { animation:none!important; }
  .feature-journey-item .signature-scribble { clip-path:none; }
}
@media(min-width:1101px) { .feature-journey::before { left:31px; } }
@media(min-width:601px) and (max-width:1100px) { .feature-journey::before { left:26px; } }

/* Homepage visual-template update: larger centered metrics, platform story,
   testimonials, and a more generous footer. Existing copy and behavior remain intact. */
.home-page #intro.intro-metrics {
  padding-top: clamp(76px, 8vw, 132px);
  padding-bottom: clamp(76px, 8vw, 132px);
  background: radial-gradient(ellipse at 50% 42%, rgba(25, 75, 135, .10), transparent 62%);
}
.home-page #intro .section-heading {
  max-width: 1120px;
  margin: 0 auto;
  text-align: center;
}
.home-page #intro .section-heading .single-line-heading {
  width: auto;
  max-width: 100%;
  white-space: normal;
  font-size: clamp(30px, 3.15vw, 52px);
  line-height: 1.14;
  letter-spacing: -.045em;
}
.home-page #intro .section-heading .section-intro {
  max-width: 1080px;
  margin: 0 auto;
  font-size: clamp(17px, 1.35vw, 23px);
  line-height: 1.8;
}
.home-page #intro .eyebrow { font-size: clamp(12px, .8vw, 16px); letter-spacing: .12em; }
.home-page #intro .metric-row {
  max-width: 1210px;
  gap: clamp(18px, 2vw, 30px);
  margin-top: clamp(42px, 4.2vw, 70px);
}
.home-page #intro .metric-card {
  min-height: clamp(150px, 12vw, 205px);
  padding: clamp(28px, 3vw, 48px);
  border-radius: 26px;
  box-shadow: 0 22px 65px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.055);
}
.home-page #intro .metric-value { font-size: clamp(48px, 4.5vw, 76px); }
.home-page #intro .metric-card > span:last-child { font-size: clamp(16px, 1.1vw, 21px); }
.home-page #intro .metric-note { max-width: 1210px; margin-top: 22px; font-size: clamp(12px, .82vw, 15px); }

.home-page #connected {
  padding-top: clamp(76px, 8vw, 130px);
  padding-bottom: clamp(76px, 8vw, 130px);
  background: radial-gradient(ellipse at 50% 25%, rgba(31, 86, 151, .12), transparent 65%);
}
.home-page #connected > .container > .section-heading {
  max-width: 1120px;
  margin: 0 auto clamp(42px, 4vw, 66px);
  text-align: center;
}
.home-page #connected > .container > .section-heading .eyebrow { font-size: clamp(12px, .85vw, 16px); letter-spacing: .12em; }
.home-page #connected > .container > .section-heading h2 {
  width: auto;
  max-width: 100%;
  white-space: normal;
  font-size: clamp(34px, 3.25vw, 58px);
  line-height: 1.12;
  letter-spacing: -.045em;
}
.home-page #connected > .container > .section-heading > p:not(.eyebrow) {
  max-width: 1040px;
  margin: 0 auto;
  font-size: clamp(17px, 1.3vw, 23px);
  line-height: 1.75;
}
.home-page #connected .grid.three { gap: clamp(18px, 1.7vw, 28px); }
.home-page #connected .grid.three .card {
  min-height: clamp(280px, 24vw, 390px);
  padding: clamp(26px, 2.6vw, 48px);
  border-radius: 22px;
  background: linear-gradient(145deg, rgba(20, 40, 66, .96), rgba(8, 19, 33, .96));
  box-shadow: 0 18px 55px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.035);
  transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}
.home-page #connected .grid.three .card:hover {
  transform: translateY(-7px);
  border-color: rgba(102, 174, 255, .62);
  box-shadow: 0 26px 62px rgba(0,0,0,.25), 0 0 30px rgba(57,135,255,.08);
}
.home-page #connected .grid.three .card h3 { font-size: clamp(22px, 1.65vw, 31px); line-height: 1.25; margin-bottom: 16px; }
.home-page #connected .grid.three .card p { font-size: clamp(15px, 1.05vw, 20px); line-height: 1.8; }
.home-page #connected .grid.three .card-top { margin-bottom: clamp(24px, 2vw, 36px); }
.home-page #connected .grid.three .card-top .icon { width: clamp(28px, 2.5vw, 42px); height: clamp(28px, 2.5vw, 42px); }
.home-page #connected .credential-flow {
  position: relative;
  margin-top: clamp(28px, 2.4vw, 42px);
  padding: clamp(24px, 2.5vw, 44px);
  border-radius: 24px;
  border: 1px solid rgba(93, 151, 218, .42);
  background: radial-gradient(ellipse at 50% 0%, rgba(50,105,174,.16), transparent 70%), linear-gradient(135deg, rgba(17,34,55,.96), rgba(7,17,30,.96));
  box-shadow: 0 22px 60px rgba(0,0,0,.17), inset 0 1px 0 rgba(255,255,255,.04);
  overflow: hidden;
}
.home-page #connected .flow-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:30px; }
.home-page #connected .flow-heading .eyebrow { font-size: clamp(11px, .78vw, 15px); }
.home-page #connected .flow-note { font-size: clamp(11px, .75vw, 14px); color:#9bb5d5; }
.home-page #connected .flow-stages { gap: clamp(12px, 2vw, 34px); }
.home-page #connected .flow-stages li { min-width:0; }
.home-page #connected .flow-symbol { width: clamp(46px, 4.2vw, 72px); height: clamp(46px, 4.2vw, 72px); font-size: clamp(22px, 2.2vw, 36px); border-radius: 18px; box-shadow: 0 0 0 7px rgba(57,125,210,.045); }
.home-page #connected .flow-index { font-size: clamp(11px, .8vw, 15px); }
.home-page #connected .flow-stages strong { font-size: clamp(15px, 1.15vw, 21px); }
.home-page #connected .flow-stages small { font-size: clamp(12px, .9vw, 17px); line-height:1.6; }
.home-page #connected .flow-line { top: clamp(150px, 10vw, 200px); }

.home-page .testimonial-section {
  padding-top: clamp(78px, 8vw, 132px);
  padding-bottom: clamp(78px, 8vw, 132px);
}
.home-page .testimonial-section .section-heading { max-width: 1160px; margin-bottom: clamp(40px, 4vw, 66px); }
.home-page .testimonial-section .section-heading .eyebrow { }
.home-page .testimonial-section .section-heading h2 { line-height:1.15; }
.home-page .testimonial-section .section-heading .section-intro { max-width: 1000px; margin-inline:auto; line-height:1.8; }
.home-page .testimonial-grid { gap: clamp(18px, 1.8vw, 30px); }
.home-page .testimonial-card {
  min-height: clamp(360px, 30vw, 520px);
  padding: clamp(26px, 2.8vw, 52px);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(20,39,61,.98), rgba(8,18,31,.97));
  box-shadow: 0 22px 60px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.035);
}
.home-page .testimonial-stars { margin-bottom: clamp(20px, 2vw, 34px); }
.home-page .testimonial-quote { line-height:1.8; margin-bottom: clamp(26px, 2.5vw, 42px); }
.home-page .testimonial-person { gap: clamp(14px, 1.3vw, 22px); padding-top: clamp(20px, 2vw, 32px); }
.home-page .testimonial-avatar { width: clamp(56px, 5.3vw, 92px); height: clamp(56px, 5.3vw, 92px); }
.home-page .testimonial-person strong { }
.home-page .testimonial-person small { }

/* App-store strip: Apple badge, AelfaCred brand mark, and Google Play badge. */
.home-app-downloads {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: clamp(14px, 1.6vw, 24px);
  margin-top: clamp(28px, 3vw, 44px);
  flex-wrap: wrap;
}
.home-app-downloads .store-badge { min-width: 192px; min-height: 64px; padding: 11px 17px; border-radius: 12px; gap: 12px; }
.home-app-downloads .store-badge-icon { width: 30px; height: 30px; }
.home-app-downloads .store-badge-text small { font-size: 11px; }
.home-app-downloads .store-badge-text strong { font-size: 20px; }
.home-app-brand {
  display: grid;
  place-items: center;
  width: 82px;
  height: 82px;
  padding: 10px;
  border: 1px solid rgba(116,169,237,.34);
  border-radius: 50%;
  background: radial-gradient(circle at 30% 20%, rgba(75,145,242,.22), rgba(8,20,36,.96));
  box-shadow: 0 0 0 7px rgba(70,130,210,.05), 0 10px 30px rgba(0,0,0,.2);
}
.home-app-brand img { display:block; width:100%; height:auto; object-fit:contain; }

/* Larger footer typography and breathing room inspired by the supplied reference. */
.site-footer .footer-grid { padding-top: clamp(72px, 7vw, 112px); padding-bottom: clamp(62px, 6vw, 96px); gap: clamp(28px, 3.3vw, 58px); }
.site-footer .footer-brand>.brand img { width: clamp(132px, 10vw, 180px); height:auto; }
.site-footer .footer-brand>p { max-width: 410px; font-size: clamp(16px, 1.12vw, 21px); line-height:1.8; margin-top:24px; }
.site-footer .footer-tag { font-size: clamp(11px, .8vw, 15px); letter-spacing:.08em; display:block; margin-top:24px; }
.site-footer .footer-app-title { font-size: clamp(17px, 1.2vw, 22px); margin-top:12px; }
.site-footer .footer-store-badges { gap:14px; margin-top:18px; }
.site-footer .store-badge { min-width: 190px; min-height: 58px; padding:10px 15px; border-radius:11px; }
.site-footer .store-badge-icon { width:29px; height:29px; }
.site-footer .store-badge-text small { font-size:10px; }
.site-footer .store-badge-text strong { font-size:19px; }
.site-footer .footer-grid h2 { font-size: clamp(14px, 1.05vw, 19px); letter-spacing:.07em; margin-bottom: clamp(22px, 2.3vw, 36px); }
.site-footer .footer-grid>div:not(:first-child)>a { font-size: clamp(15px, 1.05vw, 20px); line-height:1.75; margin-bottom: clamp(12px, 1.1vw, 20px); }
.site-footer .footer-small { font-size: clamp(14px, .95vw, 18px); line-height:1.8; margin-top:22px; }
.site-footer .footer-bottom { padding-top:30px; padding-bottom:30px; font-size: clamp(13px, .9vw, 17px); gap:20px; }
.site-footer .footer-bottom p { font-size:inherit; }

@media (max-width: 900px) {
  .home-page #connected .grid.three .card { min-height: 0; }
  .home-page .testimonial-card { min-height: 0; }
  .home-page .testimonial-grid { grid-template-columns: 1fr; max-width: 760px; margin-inline:auto; }
  .home-page #connected .flow-heading { align-items:flex-start; flex-direction:column; gap:8px; }
  .site-footer .footer-grid { grid-template-columns:1fr 1fr; }
  .site-footer .footer-brand { grid-column:1/-1; }
  .site-footer .footer-brand>p { max-width:600px; }
}
@media (max-width: 600px) {
  .home-page #intro .section-heading .single-line-heading { font-size:clamp(28px, 8vw, 36px); }
  .home-page #intro .section-heading .section-intro { font-size:16px; }
  .home-page #intro .metric-row { grid-template-columns:1fr; }
  .home-page #connected > .container > .section-heading h2 { font-size:clamp(30px, 8vw, 38px); }
  .home-page #connected .flow-stages { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 14px; }
  .home-page #connected .flow-line { display:none; }
  .home-page #connected .flow-stages li { align-items:flex-start; }
  .home-page .testimonial-card { padding:26px; }
  .home-app-downloads { display:grid; grid-template-columns:1fr; justify-items:start; gap:14px; }
  .home-app-brand { width:68px; height:68px; margin-left:62px; }
  .home-app-downloads .store-badge { min-width:190px; }
  .site-footer .footer-grid { grid-template-columns:1fr; gap:30px; }
  .site-footer .footer-brand { grid-column:auto; }
  .site-footer .footer-bottom { align-items:flex-start; flex-direction:column; gap:12px; }
}
@media (prefers-reduced-motion: reduce) {
  .home-page #connected .grid.three .card,
  .home-page #intro .metric-card,
  .home-page #intro .metric-card::before,
  .home-page .testimonial-card { animation:none!important; transition:none!important; }
}

/* Dedicated app download feature — intentionally separate from the hero. */
.home-page .app-download-section {
  position: relative;
  overflow: hidden;
  padding-block: clamp(58px, 7vw, 108px);
  isolation: isolate;
}
.home-page .app-download-section::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 8% 5%;
  pointer-events: none;
  background: radial-gradient(ellipse at 50% 48%, rgba(40,116,219,.16), transparent 62%);
}
.home-page .app-download-panel {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(260px, .85fr) minmax(0, 1.15fr);
  align-items: center;
  gap: clamp(28px, 4vw, 64px);
  padding: clamp(30px, 4.5vw, 68px);
  border: 1px solid rgba(103,164,239,.32);
  border-radius: 28px;
  background: linear-gradient(125deg, rgba(17,36,59,.97), rgba(7,17,31,.98) 65%, rgba(13,32,54,.98));
  box-shadow: 0 24px 75px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.055);
}
.home-page .app-download-panel::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -45% auto -45% -30%;
  width: 36%;
  transform: rotate(18deg);
  background: linear-gradient(90deg, transparent, rgba(95,174,255,.12), transparent);
  animation: app-panel-sheen 8s ease-in-out infinite;
  pointer-events: none;
}
.home-page .app-download-copy { position: relative; z-index: 1; max-width: 560px; }
.home-page .app-download-copy .eyebrow { color: #80b6ff; font-size: clamp(11px, .8vw, 14px); letter-spacing: .14em; font-weight: 750; }
.home-page .app-download-copy h2 { margin: 14px 0 16px; font-size: clamp(30px, 3vw, 48px); line-height: 1.1; letter-spacing: -.045em; }
.home-page .app-download-copy h2 span { color: #86baff; }
.home-page .app-download-copy > p:last-child { color: #b6c8de; max-width: 440px; font-size: clamp(15px, 1vw, 18px); line-height: 1.75; }
.home-page .app-download-badges {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(12px, 1.5vw, 24px);
  margin: 0;
  min-width: 0;
  flex-wrap: wrap;
}
.home-page .app-download-badges .store-badge {
  position: relative;
  min-width: clamp(170px, 14vw, 208px);
  min-height: 72px;
  padding: 13px 17px;
  border: 1px solid rgba(220,234,250,.68);
  border-radius: 14px;
  background: linear-gradient(145deg, #050608, #11151b);
  box-shadow: 0 8px 22px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.09);
  transition: transform .32s cubic-bezier(.2,.8,.2,1), box-shadow .32s, border-color .32s, background .32s;
}
.home-page .app-download-badges .store-badge::after {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(115deg, rgba(99,179,255,.0), rgba(99,179,255,.85), rgba(76,226,235,.15), rgba(99,179,255,0));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0;
  transition: opacity .3s ease;
  pointer-events: none;
}
.home-page .app-download-badges .store-badge:is(:hover,:focus-visible) {
  transform: translateY(-6px) scale(1.025);
  border-color: #8dc5ff;
  box-shadow: 0 16px 34px rgba(24,105,214,.24), 0 0 26px rgba(69,164,255,.12);
  background: linear-gradient(145deg, #101b2a, #050608 72%);
}
.home-page .app-download-badges .store-badge:is(:hover,:focus-visible)::after { opacity: 1; }
.home-page .app-download-badges .store-badge:focus-visible { outline: 2px solid #91c7ff; outline-offset: 5px; }
.home-page .app-download-badges .store-badge-icon { width: 32px; height: 32px; filter: drop-shadow(0 0 8px rgba(95,180,255,.13)); }
.home-page .app-download-badges .store-badge-text small { font-size: 10px; letter-spacing: .025em; }
.home-page .app-download-badges .store-badge-text strong { font-size: clamp(17px, 1.25vw, 21px); }
.home-page .app-download-badges .home-app-brand {
  width: 70px; height: 70px; flex: 0 0 70px; padding: 12px;
  border-color: rgba(117,181,255,.5);
  box-shadow: 0 0 0 7px rgba(70,130,210,.06), 0 0 34px rgba(61,146,255,.18), inset 0 0 20px rgba(89,153,244,.08);
  animation: app-brand-float 5s ease-in-out infinite;
}
.home-page .app-download-footnote {
  grid-column: 1 / -1;
  display: flex; align-items: center; justify-content: center; gap: 9px;
  margin: -8px 0 0; color: #8fa8c4; font-size: 12px; letter-spacing: .035em;
}
.home-page .app-download-footnote span { color: #64d9ff; text-shadow: 0 0 12px rgba(100,217,255,.6); }
.home-page .app-download-orbit { position: absolute; z-index: -1; border: 1px solid rgba(95,162,244,.11); border-radius: 50%; pointer-events: none; }
.home-page .app-download-orbit-one { width: 340px; height: 340px; right: 8%; top: -210px; box-shadow: 0 0 0 24px rgba(95,162,244,.018), 0 0 0 48px rgba(95,162,244,.014); }
.home-page .app-download-orbit-two { width: 220px; height: 220px; right: 13%; bottom: -165px; border-color: rgba(84,219,239,.12); box-shadow: 0 0 0 20px rgba(84,219,239,.018); }
@keyframes app-panel-sheen { 0%, 15% { left: -35%; opacity: 0; } 35% { opacity: .8; } 60%, 100% { left: 115%; opacity: 0; } }
@keyframes app-brand-float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-5px); } }
@media (max-width: 900px) {
  .home-page .app-download-panel { grid-template-columns: 1fr; text-align: center; justify-items: center; }
  .home-page .app-download-copy > p:last-child { margin-inline: auto; }
  .home-page .app-download-badges { justify-content: center; }
  .home-page .app-download-footnote { margin-top: 0; }
}
@media (max-width: 600px) {
  .home-page .app-download-panel { padding: 28px 18px; border-radius: 22px; gap: 26px; }
  .home-page .app-download-copy h2 { font-size: clamp(28px, 8vw, 38px); }
  .home-page .app-download-badges { display: flex; flex-direction: column; width: 100%; gap: 13px; }
  .home-page .app-download-badges .store-badge { width: min(100%, 260px); min-width: 0; justify-content: flex-start; }
  .home-page .app-download-badges .home-app-brand { order: -1; width: 62px; height: 62px; flex-basis: 62px; }
  .home-page .app-download-footnote { text-align: center; line-height: 1.6; }
  .home-page .app-download-orbit-one { right: -100px; }
}
@media (prefers-reduced-motion: reduce) {
  .home-page .app-download-panel::before,
  .home-page .app-download-badges .home-app-brand { animation: none !important; }
  .home-page .app-download-badges .store-badge { transition: none !important; }
}



/* Service page: detailed service offering cards and the shared premium testimonial treatment. */
.service-offerings-section { position:relative; overflow:hidden; }
.service-offerings-section::before { content:""; position:absolute; inset:8% 0; pointer-events:none; background:radial-gradient(ellipse at 50% 28%,rgba(52,127,222,.09),transparent 62%); }
.service-offerings-grid { position:relative; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(16px,1.7vw,26px); align-items:stretch; }
.service-offering-card { position:relative; display:flex; flex-direction:column; min-width:0; padding:clamp(22px,2.1vw,34px); border:1px solid rgba(126,169,221,.28); border-radius:20px; background:linear-gradient(145deg,rgba(20,39,61,.94),rgba(8,18,31,.96)); box-shadow:0 18px 46px rgba(0,0,0,.14),inset 0 1px 0 rgba(255,255,255,.035); transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease; }
.service-offering-card::after { content:""; position:absolute; left:22px; right:22px; top:0; height:2px; background:linear-gradient(90deg,transparent,#63baff,transparent); opacity:.65; }
.service-offering-card:hover { transform:translateY(-6px); border-color:rgba(100,216,233,.62); box-shadow:0 26px 56px rgba(0,0,0,.23),0 0 28px rgba(62,142,230,.08); }
.service-offering-number { position:absolute; top:23px; right:24px; color:#80a9da; font-size:11px; letter-spacing:.13em; font-weight:800; }
.service-offering-icon { display:grid; place-items:center; width:48px; height:48px; margin-bottom:24px; border-radius:14px; border:1px solid rgba(94,164,242,.34); background:linear-gradient(145deg,rgba(59,139,236,.2),rgba(18,47,77,.45)); color:#69d8e9; font-size:25px; box-shadow:0 0 0 6px rgba(57,125,210,.045); }
.service-offering-card h3 { max-width:95%; margin:0 0 13px; color:#f4f8ff; font-size:clamp(20px,1.45vw,25px); line-height:1.3; letter-spacing:-.025em; }
.service-offering-card p { margin:0 0 17px; color:#b8c9dc; font-size:15px; line-height:1.75; }
.service-offering-card ul { margin:0; padding-left:18px; display:grid; gap:11px; color:#c5d4e5; font-size:14px; line-height:1.7; }
.service-offering-card li::marker { color:#68cce8; }
.service-offerings-action { display:flex; align-items:center; justify-content:space-between; gap:22px; margin-top:30px; padding:24px clamp(22px,2.5vw,38px); border:1px solid rgba(103,159,225,.24); border-radius:18px; background:linear-gradient(110deg,rgba(18,38,61,.8),rgba(8,18,31,.92)); }
.service-offerings-action p { margin:0; color:#8bbaff; font-size:clamp(16px,1.2vw,20px); font-weight:750; letter-spacing:.035em; }
.service-offerings-action .button { flex-shrink:0; }
.service-support-cta .cta-panel { align-items:center; }
.service-support-cta .cta-panel h2 { max-width:760px; }
.service-support-cta .cta-panel p { max-width:680px; }
.service-support-cta .cta-actions { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.service-support-cta .button-secondary { border:1px solid rgba(132,177,235,.5); background:rgba(11,26,44,.6); color:#e8f2ff; }
.service-support-cta .button-secondary:hover { background:rgba(52,115,195,.2); border-color:#80b9ff; }

/* Use the homepage's premium, spacious testimonial cards consistently across every page. */
.testimonial-section { padding-top:clamp(76px,7.5vw,124px); padding-bottom:clamp(76px,7.5vw,124px); }
.testimonial-section .section-heading { max-width:1160px; margin:0 auto clamp(38px,4vw,62px); text-align:center; }
.testimonial-section .section-heading .testimonial-brandline { margin-bottom:10px; color:#7fb3ff; font-size:clamp(11px,.82vw,15px); letter-spacing:.13em; }
.testimonial-section .section-heading .eyebrow:not(.testimonial-brandline) { font-size:clamp(11px,.85vw,15px); }
.testimonial-section .section-heading h2 { font-size:clamp(32px,3.15vw,54px); line-height:1.15; }
.testimonial-section .section-heading .section-intro { max-width:1000px; margin-inline:auto; font-size:clamp(16px,1.15vw,21px); line-height:1.8; }
.testimonial-grid { gap:clamp(18px,1.8vw,30px); }
.testimonial-card { min-height:clamp(330px,29vw,500px); padding:clamp(25px,2.65vw,48px); border-radius:24px; background:linear-gradient(145deg,rgba(20,39,61,.98),rgba(8,18,31,.97)); box-shadow:0 22px 60px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.035); }
.testimonial-stars { font-size:clamp(22px,2vw,34px); margin-bottom:clamp(18px,2vw,32px); }
.testimonial-quote { font-size:clamp(17px,1.3vw,23px); line-height:1.8; margin-bottom:clamp(24px,2.5vw,40px); }
.testimonial-person { gap:clamp(14px,1.3vw,22px); padding-top:clamp(19px,2vw,31px); margin-top:auto; }
.testimonial-avatar { width:clamp(56px,5.1vw,88px); height:clamp(56px,5.1vw,88px); font-size:clamp(15px,1.25vw,22px); flex-shrink:0; }
.testimonial-person strong { font-size:clamp(16px,1.2vw,22px); }
.testimonial-person small { font-size:clamp(12px,.88vw,15px); }
@media(max-width:1000px) {
  .service-offerings-grid { grid-template-columns:1fr; max-width:780px; margin-inline:auto; }
  .service-offering-card { min-height:0; }
  .service-offerings-action { align-items:flex-start; flex-direction:column; }
  .testimonial-grid { grid-template-columns:1fr; max-width:780px; margin-inline:auto; }
  .testimonial-card { min-height:0; }
}
@media(max-width:600px) {
  .service-offering-card { padding:22px; }
  .service-offering-card p { font-size:14px; }
  .service-offering-card ul { font-size:13px; }
  .service-offerings-action { padding:20px; }
  .service-support-cta .cta-actions { align-items:stretch; flex-direction:column; }
  .service-support-cta .cta-actions .button { justify-content:center; }
}
@media(prefers-reduced-motion:reduce) {
  .service-offering-card { transition:none!important; }
  .service-offering-card:hover { transform:none!important; }
}


/* Keep the workflow connector behind the icon tiles so it never draws across them. */
.credential-flow .flow-line { z-index: 0; pointer-events: none; }
.credential-flow .flow-stages { position: relative; z-index: 1; }
.credential-flow .flow-stages li { position: relative; z-index: 1; }
.credential-flow .flow-symbol { position: relative; z-index: 2; isolation: isolate; background-color: #142d49; background-image: linear-gradient(145deg, rgba(39, 75, 116, .98), rgba(17, 37, 61, .99)); }
@media (max-width: 600px) { .credential-flow .flow-line { display: none; } }


/* ===== Home redesign (matches supplied reference designs) ===== */
.home-page #intro .metric-row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.home-page #intro .metric-card { justify-content: center; align-items: flex-start; text-align: left; gap: clamp(6px, .8vw, 12px); }
@media (max-width: 900px) { .home-page #intro .metric-row { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .home-page #intro .metric-row { grid-template-columns: 1fr; } }

.credential-flow .flow-heading .eyebrow b { color: #3d8bff; font-weight: inherit; }
.credential-flow .flow-stages { gap: 0; }
.credential-flow .flow-stages li { padding: 0 4px; }
.credential-flow .flow-row { display: flex; align-items: center; width: 100%; }
.credential-flow .flow-symbol .icon { width: 52%; height: 52%; }
.credential-flow .flow-dash { flex: 1; height: 0; margin: 0 12px 0 14px; border-top: 1.5px dashed rgba(86, 160, 240, .75); }
@media (max-width: 600px) { .credential-flow .flow-dash { display: none; } .credential-flow .flow-stages { gap: 20px 12px; } }

.home-page .app-download-copy h2 { max-width: 460px; }


.testimonial-section .section-heading .eyebrow:not(.testimonial-brandline) { font-size: clamp(16px, 1.35vw, 24px); letter-spacing: .16em; margin-bottom: 14px; }

/* Blue accent words in the redesigned Home headings */
.home-page #connected h2 span,
.home-page .app-download-copy h2 span,
.home-page .dashboard-copy h2 span,
.home-page .cta-section h2 span,
.home-page .process-intro-section .process-heading-second {
  background: linear-gradient(90deg, #6cc3ff 0%, #4a97f5 55%, #3b82ee 100%);
  -webkit-background-clip: text; background-clip: text;
  color: transparent !important; -webkit-text-fill-color: transparent;
}

/* Workflow strip: dotted connectors sit between the icon tiles */
.home-page #connected .credential-flow .flow-stages { gap: 0; }
.credential-flow .flow-dash { margin: 0 6px 0 16px; }

/* "AelfaCred on Mobile" panel: larger two-line heading */
.home-page .app-download-copy { max-width: 620px; }
.home-page .app-download-copy h2 { max-width: none; margin: 0 0 22px; font-size: clamp(42px, 5.2vw, 76px); line-height: 1.04; }
.home-page .app-download-copy > p:last-child { max-width: 470px; font-size: clamp(16px, 1.4vw, 21px); line-height: 1.7; }
.home-page .app-download-panel { padding-block: clamp(40px, 5.5vw, 84px); }

/* Home CTA: two-line description */
.home-page .cta-section .cta-panel p:not(.eyebrow) { max-width: 780px; }

/* Dashboard section: keep "Spreadsheet Tracking" on one line like the reference */
@media (min-width: 901px) {
  .home-page .dashboard-grid { grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); }
  .home-page .dashboard-copy h2 { font-size: clamp(30px, 3.3vw, 46px); }
  .home-page .dashboard-copy h2 span { white-space: nowrap; }
}

/* Platform: sub-heading under "One Platform. Complete Visibility." */
.feature-section-subtitle { margin: clamp(34px, 4vw, 60px) 0 0; text-align: left; font-size: clamp(24px, 2.4vw, 36px); line-height: 1.15; letter-spacing: -.035em; color: #fff; }

/* About page stats use the same template as the Home page stats */
/* Homepage visual-template update: larger centered metrics, platform story,
   testimonials, and a more generous footer. Existing copy and behavior remain intact. */
#about-metrics.intro-metrics{
  padding-top: clamp(76px, 8vw, 132px);
  padding-bottom: clamp(76px, 8vw, 132px);
  background: radial-gradient(ellipse at 50% 42%, rgba(25, 75, 135, .10), transparent 62%);
}
#about-metrics .section-heading{
  max-width: 1120px;
  margin: 0 auto;
  text-align: center;
}
#about-metrics .section-heading .single-line-heading{
  width: auto;
  max-width: 100%;
  white-space: normal;
  font-size: clamp(30px, 3.15vw, 52px);
  line-height: 1.14;
  letter-spacing: -.045em;
}
#about-metrics .section-heading .section-intro{
  max-width: 1080px;
  margin: 0 auto;
  font-size: clamp(17px, 1.35vw, 23px);
  line-height: 1.8;
}
#about-metrics .eyebrow{ font-size: clamp(12px, .8vw, 16px); letter-spacing: .12em; }
#about-metrics .metric-row{
  max-width: 1210px;
  gap: clamp(18px, 2vw, 30px);
  margin-top: clamp(42px, 4.2vw, 70px);
}
#about-metrics .metric-card{
  min-height: clamp(150px, 12vw, 205px);
  padding: clamp(28px, 3vw, 48px);
  border-radius: 26px;
  box-shadow: 0 22px 65px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.055);
}
#about-metrics .metric-value{ font-size: clamp(48px, 4.5vw, 76px); }
#about-metrics .metric-card > span:last-child{ font-size: clamp(16px, 1.1vw, 21px); }
#about-metrics .metric-note{ max-width: 1210px; margin-top: 22px; font-size: clamp(12px, .82vw, 15px); }
@media (max-width: 600px){#about-metrics .section-heading .single-line-heading{ font-size:clamp(28px, 8vw, 36px); }#about-metrics .section-heading .section-intro{ font-size:16px; }#about-metrics .metric-row{ grid-template-columns:1fr; }}
/* ===== Home redesign (matches supplied reference designs) ===== */
#about-metrics .metric-row{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
#about-metrics .metric-card{ justify-content: center; align-items: flex-start; text-align: left; gap: clamp(6px, .8vw, 12px); }
@media (max-width: 900px){#about-metrics .metric-row{ grid-template-columns: repeat(2, minmax(0, 1fr)); }}
@media (max-width: 600px){#about-metrics .metric-row{ grid-template-columns: 1fr; }}
#about-metrics .metric-row{margin-left:auto;margin-right:auto}
#about-metrics .section-heading .single-line-heading{margin-left:auto;margin-right:auto}

/* LEGIBILITY UPDATE: larger type for infographics, flow steps, mobile section, testimonials, feature journey and service cards */
.reporting-infographic .eyebrow{font-size:15px;letter-spacing:.12em}
.reporting-infographic-header h3{font-size:clamp(28px,3vw,40px)}
.reporting-infographic-header p{max-width:none;font-size:17px;line-height:1.6}
.reporting-orbit span{font-size:13px}
.report-visual-title{gap:14px}
.report-visual-title>span{width:40px;height:40px;font-size:15px;border-radius:11px}
.report-visual-title strong{font-size:21px}
.status-flow>div{font-size:18px;padding:13px 0;gap:14px}
.status-flow b{font-size:15px}
.report-visual-card>small{font-size:15px;line-height:1.6}
.action-ring strong{font-size:42px}
.action-ring span{font-size:14px}
.action-checks span{font-size:17px;gap:11px}
.reporting-infographic-foot{font-size:16px;gap:22px}
.reporting-infographic-foot b{font-size:16px}
.credential-flow .flow-heading .eyebrow{font-size:17px}
.credential-flow .flow-index{font-size:16px}
.credential-flow .flow-stages strong{font-size:21px}
.credential-flow .flow-stages small{font-size:17px;line-height:1.5}
.credential-flow .flow-note{font-size:16px}
.mobile-points span{font-size:19px;padding:14px 0}
.phone-caption{font-size:16px}
.testimonial-avatar{font-size:20px}
.testimonial-person strong{font-size:21px}
.testimonial-person small{font-size:16px;line-height:1.5}
.feature-kicker{font-size:14px!important;letter-spacing:.14em}
.feature-journey-copy h3{font-size:clamp(28px,2.6vw,38px)}
.feature-journey-copy>p:not(.feature-kicker){max-width:none;font-size:19px;line-height:1.7}
.feature-live-nav-kicker{font-size:15px}
.feature-live-nav-head p{font-size:17px}
.feature-live-nav-step{font-size:14px}
.feature-live-nav-link strong{font-size:18px}
.service-offering-number{font-size:15px}
.service-offering-card h3{font-size:clamp(25px,1.9vw,31px)}
.service-offering-card p{font-size:18px;line-height:1.7}
.service-offering-card ul{font-size:17px;line-height:1.65;gap:13px}

/* ===== Layout revision: centered metrics, centered workflow strip, relocated workflow navigator ===== */

/* Home metric cards: numbers and labels centered */
.home-page #intro .metric-card { align-items: center; justify-content: center; text-align: center; }
.home-page #intro .metric-value { margin-left: auto; margin-right: auto; text-align: center; }
.home-page #intro .metric-card > span:last-child { text-align: center; }

/* Home "record to renewal" strip: heading removed, every stage centered */
.credential-flow { --sym: 42px; }
.home-page #connected .credential-flow { --sym: clamp(46px, 4.2vw, 72px); }
.credential-flow .flow-stages { margin-top: 0; }
.credential-flow .flow-stages li { justify-items: center; text-align: center; }
.credential-flow .flow-row { position: relative; justify-content: center; }
.credential-flow .flow-dash {
  position: absolute; top: 50%; left: calc(50% + var(--sym) / 2 + 14px);
  width: calc(100% + 8px - var(--sym) - 28px); flex: none; margin: 0;
}
@media (max-width: 600px) {
  .credential-flow .flow-dash { display: none; }
  .home-page #connected .flow-stages li { align-items: center; }
}

/* Platform workflow navigator: no heading, sits under "What the Platform Does" */
.feature-live-nav { margin: 34px 0 clamp(40px, 5vw, 64px); }
.feature-live-nav-rail { top: 22px; }
@media (max-width: 900px) { .feature-live-nav { margin-left: 0; } .feature-live-nav-rail { top: 22px; } }
@media (max-width: 600px) { .feature-live-nav { margin: 28px 0 36px; } }
.feature-live-nav-rail i { display: none; }

/* ===== Reporting page: sample stats ===== */
.report-stat-row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.report-stat { position: relative; padding: 28px 22px; text-align: center; overflow: hidden; border: 1px solid rgba(113, 173, 255, .34); border-radius: 18px;
  background: radial-gradient(circle at 90% 8%, rgba(55, 135, 255, .17), transparent 40%), linear-gradient(135deg, rgba(20, 38, 61, .98), rgba(8, 17, 30, .98)); }
.report-stat strong { display: block; font-size: clamp(46px, 5vw, 68px); font-weight: 780; line-height: 1; letter-spacing: -.05em; font-variant-numeric: tabular-nums;
  background: linear-gradient(110deg, #fff 15%, #c5e4ff 55%, #fff 85%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.report-stat span { display: block; margin-top: 12px; font-size: 18px; color: #bccce0; }
.report-stat-note { margin: 16px 0 6px; text-align: center; font-size: 15px; color: #8fa7c3; }
#reporting-capabilities .reporting-visual-grid { margin-top: 18px; }
#reporting-capabilities .status-flow > div { font-size: 17px; }
#reporting-capabilities .status-flow b { font-size: 15px; }
#reporting-capabilities .report-visual-title strong { font-size: 20px; }
#reporting-capabilities .report-visual-title > span { width: 36px; height: 36px; font-size: 13px; }
#reporting-capabilities .action-checks { display: grid; gap: 14px; }
@media (max-width: 700px) { .report-stat-row { grid-template-columns: 1fr; } }

/* ===== Platform workflow navigator: segmented glass dock ===== */
.feature-live-nav.stage-nav { position: relative; margin: 36px 0 clamp(44px, 5vw, 68px); padding: 8px; overflow: hidden; border-radius: 26px;
  border: 1px solid rgba(116, 172, 240, .34);
  background: radial-gradient(ellipse 70% 120% at 50% -30%, rgba(52, 124, 224, .26), transparent 65%), linear-gradient(145deg, rgba(16, 36, 64, .95), rgba(6, 15, 29, .98));
  box-shadow: 0 26px 64px rgba(0, 0, 0, .38), 0 0 40px rgba(40, 110, 220, .1), inset 0 1px 0 rgba(255, 255, 255, .07); }
.feature-live-nav.stage-nav::before { content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 0;
  background: linear-gradient(100deg, transparent 30%, rgba(130, 195, 255, .1) 50%, transparent 70%); transform: translateX(-100%); animation: stageSheen 8s ease-in-out infinite; }
.stage-nav .feature-live-nav-stages { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; }
.stage-nav .feature-live-nav-link { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 16px; min-height: 0;
  padding: 22px 22px; border: 0; border-radius: 19px; background: transparent; color: #eaf3ff; text-decoration: none; overflow: hidden;
  transition: background .3s ease, transform .3s ease, box-shadow .3s ease; }
.stage-nav .feature-live-nav-link::before { content: ""; position: absolute; left: 22%; right: 22%; top: 0; width: auto; height: 3px; border: 0; border-radius: 0 0 4px 4px;
  background: linear-gradient(90deg, transparent, #7cc6ff, transparent); box-shadow: 0 0 16px rgba(110, 190, 255, .9); opacity: 0; transform: scaleX(.4); transition: opacity .3s ease, transform .35s ease; }
.stage-nav .feature-live-nav-link + .feature-live-nav-link::after { content: ""; position: absolute; left: 0; top: 24%; bottom: 24%; width: 1px; background: linear-gradient(transparent, rgba(130, 180, 240, .28), transparent); }
.stage-nav .stage-node { position: relative; display: grid; place-items: center; width: 54px; height: 54px; border-radius: 50%; color: #8cc4ff;
  border: 1px solid rgba(124, 184, 255, .45); background: radial-gradient(circle at 35% 30%, rgba(76, 148, 236, .4), rgba(14, 34, 62, .9));
  transition: transform .3s ease, color .3s ease, background .3s ease, box-shadow .3s ease; }
.stage-nav .stage-node .icon { width: 26px; height: 26px; }
.stage-nav .stage-text { display: grid; gap: 5px; min-width: 0; }
.stage-nav .feature-live-nav-step { font-size: 13px; font-weight: 800; letter-spacing: .13em; color: #7db8ff; }
.stage-nav .feature-live-nav-link strong { padding: 0; font-size: 19px; font-weight: 650; line-height: 1.3; color: #fff; }
.stage-nav .feature-live-nav-arrow { position: static; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; font-size: 15px; color: #8cc4ff;
  border: 1px solid rgba(124, 184, 255, .3); background: rgba(40, 90, 160, .18); transition: transform .3s ease, background .3s ease, color .3s ease; }
.stage-nav .feature-live-nav-link:hover, .stage-nav .feature-live-nav-link:focus-visible { transform: none; background: linear-gradient(160deg, rgba(60, 128, 220, .2), rgba(20, 50, 96, .3)); box-shadow: none; }
.stage-nav .feature-live-nav-link:hover .stage-node, .stage-nav .feature-live-nav-link:focus-visible .stage-node { transform: scale(1.08); box-shadow: 0 0 22px rgba(80, 160, 255, .5); }
.stage-nav .feature-live-nav-link:hover .feature-live-nav-arrow, .stage-nav .feature-live-nav-link:focus-visible .feature-live-nav-arrow { transform: translate(2px, -2px); background: rgba(70, 140, 230, .35); color: #fff; }
.stage-nav .feature-live-nav-link:hover::before, .stage-nav .feature-live-nav-link:focus-visible::before { opacity: .6; transform: scaleX(1); }
.stage-nav .feature-live-nav-link:focus-visible { outline: 2px solid #8cc4ff; outline-offset: -3px; }
.stage-nav .feature-live-nav-link.is-active { background: linear-gradient(160deg, rgba(52, 122, 222, .42), rgba(16, 42, 82, .6));
  box-shadow: inset 0 0 0 1px rgba(128, 192, 255, .55), 0 10px 30px rgba(30, 100, 220, .28); }
.stage-nav .feature-live-nav-link.is-active::before { opacity: 1; transform: scaleX(1); }
.stage-nav .feature-live-nav-link.is-active .stage-node { color: #fff; border-color: rgba(170, 215, 255, .8); background: linear-gradient(135deg, #58b0ff, #2a68e0); box-shadow: 0 0 24px rgba(80, 165, 255, .7); }
.stage-nav .feature-live-nav-link.is-active .stage-node::after { content: ""; position: absolute; inset: -6px; border-radius: 50%; border: 1px solid rgba(120, 190, 255, .6); animation: stagePulse 2.4s ease-out infinite; }
.stage-nav .feature-live-nav-link.is-active .feature-live-nav-step { color: #b9dcff; }
.stage-nav .feature-live-nav-link.is-active .feature-live-nav-arrow { color: #fff; background: rgba(90, 160, 245, .45); border-color: rgba(170, 215, 255, .6); }
@keyframes stageSheen { 0%, 55% { transform: translateX(-100%); } 85%, 100% { transform: translateX(100%); } }
@keyframes stagePulse { from { transform: scale(.9); opacity: .9; } to { transform: scale(1.35); opacity: 0; } }
@media (max-width: 1000px) {
  .stage-nav .feature-live-nav-stages { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px; }
  .stage-nav .feature-live-nav-link + .feature-live-nav-link::after { display: none; }
}
@media (max-width: 600px) {
  .feature-live-nav.stage-nav { margin: 28px 0 38px; border-radius: 20px; padding: 6px; }
  .stage-nav .feature-live-nav-stages { grid-template-columns: 1fr; }
  .stage-nav .feature-live-nav-link { padding: 16px 16px; gap: 14px; }
  .stage-nav .stage-node { width: 46px; height: 46px; }
  .stage-nav .feature-live-nav-link strong { font-size: 18px; }
}
@media (prefers-reduced-motion: reduce) { .feature-live-nav.stage-nav::before, .stage-nav .stage-node::after { animation: none !important; } }


/* Workflow strip: running connector lines between the icon tiles */
.credential-flow .flow-dash { height:2px; margin-top:-1px; border-top:0; background:repeating-linear-gradient(90deg,rgba(86,160,240,.85) 0 7px,transparent 7px 13px); background-size:13px 2px; animation:flowDashRun .9s linear infinite; }
.credential-flow .flow-dash::after { content:""; position:absolute; top:50%; left:0; width:34px; height:3px; margin-top:-1.5px; border-radius:3px; background:linear-gradient(90deg,transparent,#8fe9f0 60%,#fff); box-shadow:0 0 12px 2px rgba(97,214,229,.7); opacity:0; animation:flowPulseRun 2.6s ease-in-out infinite; }
.credential-flow .flow-stages li:nth-child(2) .flow-dash::after { animation-delay:.85s; }
.credential-flow .flow-stages li:nth-child(3) .flow-dash::after { animation-delay:1.7s; }
@keyframes flowDashRun { to { background-position:13px 0; } }
@keyframes flowPulseRun { 0% { left:0; opacity:0; } 12% { opacity:1; } 80% { opacity:1; } 100% { left:calc(100% - 34px); opacity:0; } }
@media(prefers-reduced-motion:reduce) { .credential-flow .flow-dash,.credential-flow .flow-dash::after { animation:none!important; } .credential-flow .flow-dash::after { display:none; } }

/* Layout tightening after removing captions (engine hero, service route, phone stage). */
.live-visual.engine-visual { height: 505px; }
@media (max-width: 1100px) { .live-visual.engine-visual { height: 495px; } }
@media (max-width: 480px) { .live-visual.engine-visual { height: 485px; } }
.section-visual.service-route-visual { height: auto; padding: 8px 0 28px; }
.service-route-visual .route-map { position: relative; top: auto; left: auto; right: auto; }

/* Contact page: hero + split layout */
.contact-intro .hero-copy h1.contact-single-line-title { margin-bottom:10px; }
.contact-subline { font-size:24px; line-height:1.3; font-weight:600; letter-spacing:-.02em; color:var(--blue); margin:0 0 24px; }
.contact-grid.contact-split { display:grid; grid-template-columns:1fr 1fr; gap:34px; align-items:stretch; }
.contact-map-card, .contact-grid.contact-split .demo-card { display:flex; flex-direction:column; min-width:0; border:1px solid #476fa7; border-radius:18px; background:linear-gradient(140deg,#122642,#0c192c); box-shadow:0 24px 60px rgba(0,0,0,.2); }
.contact-map-card { padding:14px; gap:18px; }
.contact-map-frame { flex:1; min-height:340px; border-radius:12px; overflow:hidden; border:1px solid #345278; background:#09192d; }
.contact-map-frame iframe { display:block; width:100%; height:100%; min-height:340px; border:0; filter:invert(.92) hue-rotate(180deg) saturate(.8) brightness(.95); }
.contact-details { padding:6px 16px 16px; }
.contact-details-label { font-size:11px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--blue); margin:0 0 14px; }
.contact-detail-list { list-style:none; margin:0; padding:0; display:grid; gap:14px; }
.contact-detail-list li { display:flex; align-items:center; gap:14px; padding:14px 16px; border:1px solid #2b476f; border-radius:12px; background:rgba(9,25,45,.7); }
.contact-detail-icon { flex:none; width:42px; height:42px; display:grid; place-items:center; border-radius:10px; color:var(--blue); border:1px solid #314c74; background:rgba(84,137,227,.08); }
.contact-detail-list small { display:block; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:#96b0d4; margin-bottom:2px; }
.contact-detail-list a { font-size:17px; color:#fff; text-decoration:none; overflow-wrap:anywhere; }
.contact-detail-list a:hover { color:var(--blue); }
.contact-grid.contact-split .demo-card { padding:34px; }
.contact-grid.contact-split .demo-card>h2 { margin-bottom:0; }
.contact-grid.contact-split #demo-form { margin-top:24px; flex:1; display:flex; flex-direction:column; }
.interest-other[hidden], .draft-fallback[hidden] { display:none; }
#demo-form .demo-submit { width:100%; justify-content:center; text-align:center; margin-top:auto; }
@media (max-width:900px) {
  .contact-grid.contact-split { grid-template-columns:1fr; }
  .contact-map-frame, .contact-map-frame iframe { min-height:280px; }
  .contact-subline { font-size:21px; }
}

/* Home "AelfaCred On Mobile": hide the round logo on phones, keep on desktop */
@media (max-width: 768px) {
  .home-page .app-download-badges .home-app-brand { display: none !important; }
}

/* Reporting page stats: same template as About/Home */
#reporting-metrics.intro-metrics{
  padding-top: clamp(76px, 8vw, 132px);
  padding-bottom: clamp(76px, 8vw, 132px);
  background: radial-gradient(ellipse at 50% 42%, rgba(25, 75, 135, .10), transparent 62%);
}
#reporting-metrics .section-heading{
  max-width: 1120px;
  margin: 0 auto;
  text-align: center;
}
#reporting-metrics .section-heading .single-line-heading{
  width: auto;
  max-width: 100%;
  white-space: normal;
  font-size: clamp(30px, 3.15vw, 52px);
  line-height: 1.14;
  letter-spacing: -.045em;
}
#reporting-metrics .section-heading .section-intro{
  max-width: 1080px;
  margin: 0 auto;
  font-size: clamp(17px, 1.35vw, 23px);
  line-height: 1.8;
}
#reporting-metrics .eyebrow{ font-size: clamp(12px, .8vw, 16px); letter-spacing: .12em; }
#reporting-metrics .metric-row{
  max-width: 1210px;
  gap: clamp(18px, 2vw, 30px);
  margin-top: clamp(42px, 4.2vw, 70px);
}
#reporting-metrics .metric-card{
  min-height: clamp(150px, 12vw, 205px);
  padding: clamp(28px, 3vw, 48px);
  border-radius: 26px;
  box-shadow: 0 22px 65px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.055);
}
#reporting-metrics .metric-value{ font-size: clamp(48px, 4.5vw, 76px); }
#reporting-metrics .metric-card > span:last-child{ font-size: clamp(16px, 1.1vw, 21px); }
#reporting-metrics .metric-note{ max-width: 1210px; margin-top: 22px; font-size: clamp(12px, .82vw, 15px); }
#reporting-metrics .metric-row{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
#reporting-metrics .metric-card{ justify-content: center; align-items: flex-start; text-align: left; gap: clamp(6px, .8vw, 12px); }
#reporting-metrics .metric-row{margin-left:auto;margin-right:auto}
#reporting-metrics .section-heading .single-line-heading{margin-left:auto;margin-right:auto}
@media (max-width: 600px){#reporting-metrics .section-heading .single-line-heading{ font-size:clamp(28px, 8vw, 36px); }#reporting-metrics .section-heading .section-intro{ font-size:16px; }#reporting-metrics .metric-row{ grid-template-columns:1fr; }}

@media (max-width: 900px){#reporting-metrics .metric-row{ grid-template-columns: repeat(2, minmax(0, 1fr)); }}

@media (max-width: 600px){#reporting-metrics .metric-row{ grid-template-columns: 1fr; }}

#reporting-metrics .metric-card{align-items:center;text-align:center}
#reporting-metrics .metric-value{margin-left:auto;margin-right:auto}
#about-metrics .metric-card{align-items:center;text-align:center}
#about-metrics .metric-value{margin-left:auto;margin-right:auto}

.audience-service-grid > .card:last-child:nth-child(odd){grid-column:1 / -1}

/* Platform hero: bulleted feature list */
.hero-bullets { list-style:none; margin:0; padding:0; display:grid; gap:12px; }
.hero-bullets li { position:relative; padding-left:26px; }
.hero-bullets li::before { content:""; position:absolute; left:2px; top:.72em; width:8px; height:8px; border-radius:50%; background:#4f9dff; box-shadow:0 0 0 4px rgba(79,157,255,.16); }

/* FAQ sections: "FREQUENTLY ASKED QUESTIONS" uses the standard section h2 size and colour */
.faq-heading h2 { overflow-wrap:anywhere; }
