/* Signal-led diagrams and the shared visual language of the public sections. */
.signal-flow .flow-scene { height:335px; }
.signal-flow .document-preview,.signal-flow .document-echo { top:2%; }
.signal-flow .flow-endpoint { top:59%; }
.signal-flow .route-label-out { left:36%; top:64%; }
.signal-flow .route-label-in { left:36%; top:85%; }
.signal-line { fill:none; stroke:#75dfc047; stroke-width:1.25; }
.signal-line-return { stroke:#bbf3df45; }
.flow-routes marker path { fill:none; stroke:#8fcdb6; stroke-width:1; }
.signal-burst { opacity:0; }
.signal-streak { stroke:#91f2ce; stroke-width:2; stroke-linecap:round; filter:drop-shadow(0 0 4px #75dfc070); opacity:.55; }
.signal-in .signal-streak { stroke:#d5ffef; }.signal-in .signal-head { fill:#dcfff3; }
.signal-flow .sifen-orbit > span { border-style:solid; border-color:#75dfc02b; }
/* Editorial section headings and framed customer identities. */
.section-heading .eyebrow::before,.pricing-heading .eyebrow::before,.faq-section .eyebrow::before { content:''; width:20px; height:2px; background:#65be96; flex-shrink:0; }
.customer-logos a { border:1px solid transparent; border-radius:9px; padding:6px; transition:border-color .25s,background .25s,translate .25s; }
.customer-logos a:hover { background:#fff; border-color:#dce8df; translate:0 -3px; }
.customer-logos img { transition:filter .35s,opacity .35s,scale .35s; }.customer-logos a:hover img { scale:1.04; }
.process-section { position:relative; }
.process-grid { gap:20px; }
.process-card { display:block; padding:24px; border-radius:19px; background:linear-gradient(150deg,#fff,#f7faf5); border-color:#d6e4d9; overflow:hidden; }
.process-card .step-number { position:absolute; top:23px; left:24px; font-size:12px; color:#537c62; letter-spacing:.02em; }
.process-tag { position:absolute; right:24px; top:26px; font-size:7px; letter-spacing:.1em; color:#607c67; }
.process-card .process-illustration { position:relative; height:165px; margin:42px -7px 23px; border:1px solid #deebdf; border-radius:12px; background:radial-gradient(circle at 45% 35%,#dcefe0,transparent 67%),linear-gradient(120deg,#f0f7ee,#edf3e8); overflow:hidden; }
.process-illustration::before { content:''; position:absolute; inset:0; background-image:radial-gradient(#8eaf9738 .8px,transparent .8px); background-size:14px 14px; mask-image:radial-gradient(ellipse,#000,transparent 78%); pointer-events:none; }
.signature-illustration > .icon { width:67px; height:76px; stroke:#6c9b7e; filter:drop-shadow(3px 4px 1px #b6d1bb30); }.signature-illustration .signature-stroke { font-size:25px; margin-left:-19px; margin-top:16px; }
.signature-illustration .mini-seal { width:28px; height:28px; background:#c2e7cc; box-shadow:0 0 0 5px #ccebd54a; }
.process-illustration .illustration-caption { position:absolute; bottom:13px; left:0; right:0; width:auto; height:auto; border:0; border-radius:0; background:none; box-shadow:none; font:500 6px var(--body); letter-spacing:.1em; color:#5d7c65; text-align:center; display:block; }
.exchange-illustration > span:not(.illustration-caption),.exchange-illustration > strong { position:relative; z-index:1; width:59px; height:62px; background:#fff; box-shadow:0 8px 18px #305f3420; border:1px solid #ccdfce; border-radius:12px; }
.exchange-illustration > strong { background:#d1ead7; border-color:#a8d1b5; }
.process-transfer { width:60px; display:grid; gap:10px; }.process-transfer i { height:1px; background:#89b69b70; position:relative; overflow:hidden; }.process-transfer i::after { content:''; position:absolute; width:18px; height:1px; background:#37845c; translate:-20px 0; }
.motion-ready .process-card.is-in-view .process-transfer i::after { animation:transfer-line 1.8s linear infinite; }.motion-ready .process-card.is-in-view .process-transfer i:nth-child(2)::after { animation-direction:reverse; animation-delay:-.9s; }
.response-illustration > span { font-size:12px; background:#e4f5e7; border-color:#b8d9c3; box-shadow:0 6px 18px #428f5820; }.response-illustration > small { font-size:7px; color:#5b7a63; }
.response-files { display:flex; gap:8px; margin-top:4px; }.response-files i { display:flex; align-items:center; gap:5px; font-style:normal; font-size:6px; background:#ffffffd4; border:1px solid #d5e5d7; border-radius:5px; padding:4px 8px; color:#53785f; }.response-files .icon { width:11px; height:11px; }
.process-card h3 { font-size:21px; }.process-card > p { min-height:64px; font-size:12px; }.process-card .process-link { border-top:1px solid #dfebdf; padding-top:17px; margin-top:21px; font-size:10px; }.process-card .process-link .icon { transition:translate .3s; }.process-card:hover .process-link .icon { translate:3px -3px; }
.process-card:hover { background:linear-gradient(150deg,#fff,#eff8ed); box-shadow:0 22px 50px -34px #225c3d90; }
/* Product showcase: depth without moving the user's focus or replacing real data. */
.product-section { background:radial-gradient(ellipse at 80% 15%,#2c64524d,transparent 55%),#103d37; }
.product-heading h2 span { color:#9fd5bb; }
.product-tabs button { border-radius:12px; }.product-tabs button[aria-selected="true"] { border-color:#75dfc06b; background:linear-gradient(105deg,#75dfc026,#75dfc009); }
.workspace-preview { position:relative; border-radius:17px; border-width:6px; border-color:#91d5ba26; box-shadow:0 35px 80px -35px #001a17a0; }
.workspace-top { background:#f0f6ef; border-radius:10px 10px 0 0; }
.preview-metrics > div { border-radius:10px; background:linear-gradient(125deg,#eef6eb,#f6f9f0); }
.workspace-note { position:absolute; display:flex; align-items:center; gap:10px; right:-16px; bottom:-23px; padding:12px 17px; border:1px solid #b8d7c2; border-radius:11px; background:#f5fff4; box-shadow:0 12px 30px #06281c38; color:#224a31; pointer-events:none; }
.workspace-note > .icon { width:25px; height:25px; padding:4px; border-radius:50%; background:#d9f1df; color:#3c8f59; }.workspace-note > span { font-size:9px; font-weight:550; }.workspace-note small { display:block; font-size:7px; font-weight:400; color:#5d8065; margin-top:2px; }
.motion-ready .product-section.is-in-view .workspace-note { animation:note-hover 5s ease-in-out infinite; }
.feature-row { border-top:0; padding-top:0; gap:16px; margin-top:65px; }
.feature-row > div { position:relative; display:block; border:1px solid #75dfc026; border-radius:14px; padding:25px; background:radial-gradient(220px at var(--glow-x,20%) var(--glow-y,20%),#75dfc00f,transparent 80%),#75dfc005; transition:border-color .3s,background .3s; }
.feature-row > div:hover { border-color:#75dfc065; background:radial-gradient(230px at var(--glow-x,50%) var(--glow-y,50%),#75dfc01b,transparent 80%),#75dfc008; }
.feature-index { position:absolute; right:23px; top:29px; font-size:7px; letter-spacing:.08em; color:#a6cdb6; }.feature-row .icon { margin-bottom:19px; }.feature-row h3 { font-size:16px; }.feature-row p { font-size:12px; color:#bfd8c8; line-height:1.8; }
/* A tailored illustration changes with each industry tab. */
.business-layout { grid-template-columns:.65fr 1.35fr; gap:48px; }
.business-options button { padding:20px 15px 20px 0; transition:padding .25s,color .25s; }.business-options button[aria-selected="true"] { padding-left:15px; border-left:2px solid #65b68a; background:linear-gradient(90deg,#e6f3e7,transparent 80%); }
.business-panel { display:grid; grid-template-columns:minmax(0,1fr) 155px; align-items:center; gap:30px; padding:34px 30px; border-radius:18px; background:linear-gradient(130deg,#f2f8ed,#e8f3e4); min-height:325px; }
.business-content { position:relative; }.business-panel h3 { font-size:25px; }.business-panel .business-index { position:absolute; right:22px; bottom:14px; font-size:10px; opacity:.7; }
.business-panel p { font-size:12px; }.business-panel .module-tags { margin-top:20px; }.module-tags span { background:#ffffff7d; border-color:#c4dbbf; }
.business-scene { position:relative; min-width:0; padding:14px 12px; background:#ffffff87; border:1px solid #cfdfc9; border-radius:12px; box-shadow:0 12px 24px -20px #35633d70; transform:rotate(2deg); }
.business-scene-label { display:flex; align-items:center; gap:5px; font-size:5.5px; letter-spacing:.1em; color:#607d5d; }.business-scene-label i { width:4px; height:4px; border-radius:50%; background:#5baf7f; }
.business-symbol { height:94px; display:grid; place-items:center; position:relative; margin:8px 0 10px; background:radial-gradient(ellipse,#d5ead3,transparent 70%); }
.business-symbol > .icon { width:47px; height:47px; stroke-width:1.1; color:#4e865d; }.business-symbol > span { position:absolute; width:45px; height:5px; bottom:10px; background:#42724518; border-radius:50%; filter:blur(2px); }
.business-operations { display:grid; gap:6px; }.business-operations > span { display:flex; align-items:center; justify-content:space-between; gap:6px; font-size:6.5px; border:1px solid #dbe7d4; background:#f6faf1; border-radius:4px; padding:6px; color:#5b7a56; }.business-operations .icon { width:9px; height:9px; color:#479068; }
.motion-ready .business-panel.is-in-view .business-symbol > .icon { animation:business-float 5s ease-in-out infinite; }
/* Plans keep the existing prices and conditions; only their presentation changes. */
.pricing-section { position:relative; background:radial-gradient(ellipse at 15% 25%,#dcebd450,transparent 60%),#f0f5ec; }
.price-card { border-radius:17px; padding:32px 27px; background:linear-gradient(145deg,#fff,#f8fbf3); border-color:#d0e0cc; }
.plan-icon { position:absolute; top:24px; right:24px; display:grid; place-items:center; width:33px; height:33px; background:#edf5e8; border:1px solid #d9e6d1; border-radius:9px; color:#578562; rotate:4deg; transition:rotate .3s,translate .3s; }.plan-icon .icon { width:17px; height:17px; }.price-card:hover .plan-icon { rotate:-5deg; translate:0 -3px; }
.price-card h3 { margin-top:30px; }.price-card > .plan-number { display:block; padding-right:39px; min-height:13px; font-size:7px; }
.price-card.featured { background:radial-gradient(circle at 90% 0,#34735b65,transparent 60%),#123e3a; border-color:#2c7158; border-top-color:#75dfc0; box-shadow:0 25px 50px -30px #153e3280; }
.featured .plan-icon { background:#75dfc019; border-color:#75dfc03b; color:#b1e7c7; }.price-card.featured .button { box-shadow:0 4px 18px #75dfc012; }
.price-card ul { padding-top:23px; }.pricing-note { background:#ffffff70; border-radius:12px; padding:21px; }
/* Native, keyboard-friendly accordions receive an animated opening/closing height. */
.faq-section { gap:65px; }.faq-list { counter-reset:faq; }.faq-list details { counter-increment:faq; background:#fff; border:1px solid #dce7db; border-radius:12px; margin-bottom:11px; overflow:hidden; transition:border-color .25s,background .25s; }.faq-list details:first-child { border-top:1px solid #dce7db; }.faq-list details[open] { background:#f2f8ee; border-color:#bed4bc; }
.faq-list summary { padding:21px 21px 21px 51px; position:relative; gap:13px; font-size:12px; }.faq-list summary::before { content:counter(faq,decimal-leading-zero); position:absolute; left:21px; top:24px; color:#71906c; font-size:8px; }.faq-list summary .icon { flex-shrink:0; }
.faq-list details > p { font-size:11px; padding:0 28px 24px 51px; color:#5d755d; line-height:1.9; }
.faq-contact { max-width:345px; display:flex; align-items:center; gap:11px; border:1px solid #d6e5d3; border-radius:12px; padding:17px 15px; margin-top:28px; background:linear-gradient(120deg,#eef7e9,#fbfcf8); }
.faq-contact-icon { display:grid; place-items:center; width:33px; height:33px; border-radius:9px; background:#dfeeda; color:#517957; flex-shrink:0; }.faq-contact-icon .icon { width:18px; height:18px; }.faq-contact > span:nth-child(2) { font-size:11px; font-weight:500; }.faq-contact small { display:block; font-size:9px; font-weight:400; margin-top:4px; color:#668063; }.faq-contact > .icon { width:16px; height:16px; margin-left:auto; color:#517e58; transition:translate .3s; }.faq-contact:hover > .icon { translate:3px -3px; }
.contact-card { border:1px solid #70d4ab; border-radius:22px; background:radial-gradient(ellipse at 20% 30%,#b8f2cd80,transparent 65%),#75dfc0; }
.contact-signoff { color:#23694d; }
.contact-card .contact-orbit { width:500px; height:100%; right:-40px; top:0; transform:rotate(-9deg); color:#347c54; mask-image:linear-gradient(90deg,transparent,#000 25%); }
.contact-card .contact-orbit > span { inset:auto; left:-40px; top:35%; width:600px; height:1px; border:0; background:#39875428; border-radius:0; }
.contact-card .contact-orbit > span:nth-child(2) { top:69%; }
.motion-ready .contact-card.is-in-view .contact-orbit > span:first-child { animation:none; }
.contact-orbit > span::after { content:''; position:absolute; width:65px; height:1px; background:#347e4d66; left:0; top:0; opacity:0; }.motion-ready .contact-card.is-in-view .contact-orbit > span::after { animation:contact-signal 4s linear infinite; }.motion-ready .contact-card.is-in-view .contact-orbit > span:nth-child(2)::after { animation-direction:reverse; animation-delay:-2s; }
.contact-orbit > .icon { width:200px; height:200px; opacity:.09; bottom:-55px; right:110px; }
.contact-node { position:absolute; border:1px solid #428a5b38; border-radius:6px; padding:7px 13px; font:500 7px var(--body); letter-spacing:.1em; color:#427f58; background:#a5ebc16b; transform:rotate(9deg); }
.node-sales { top:21%; right:65px; }.node-stock { top:77%; right:240px; }.node-cash { top:66%; right:25px; }
.footer-top nav a { position:relative; }.footer-top nav a::after { content:''; position:absolute; bottom:-4px; height:1px; left:0; right:0; background:#87bea2; transform:scaleX(0); transform-origin:left; transition:transform .25s; }.footer-top nav a:hover::after { transform:scaleX(1); }
@keyframes transfer-line { to { translate:80px 0; } }
@keyframes business-float { 0%,100% { translate:0 0; rotate:-2deg; }50% { translate:0 -4px; rotate:2deg; } }
@keyframes contact-signal { 0% { translate:0 0; opacity:0; }12%,87% { opacity:1; }100% { translate:550px 0; opacity:0; } }
@media(max-width:1150px) {
    .business-layout { grid-template-columns:.55fr 1.45fr; gap:30px; }.business-panel { gap:20px; padding:28px 23px; grid-template-columns:minmax(0,1fr) 132px; }.business-panel h3 { font-size:23px; }.business-symbol { height:86px; }
    .feature-index { font-size:6px; right:18px; }.feature-row > div { padding:22px 18px; }.feature-row h3 { font-size:15px; }.plan-icon { width:30px; height:30px; right:20px; }.price-card { padding:30px 22px; }.price-card > .plan-number { font-size:6.5px; }
}
@media(max-width:900px) {
    .process-card { padding:21px 18px; }.process-card .step-number { left:20px; }.process-tag { right:18px; font-size:6px; }.process-card .process-illustration { margin:42px -5px 20px; height:150px; }.process-card h3 { font-size:17px; }.process-card > p { font-size:11px; min-height:77px; }
    .process-transfer { width:35px; }.exchange-illustration > span:not(.illustration-caption),.exchange-illustration > strong { width:46px; height:53px; font-size:8px; }.process-illustration .illustration-caption { font-size:4.5px; }.response-files { gap:5px; }.response-files i { font-size:5px; padding:4px 5px; }
    .business-layout { grid-template-columns:1fr; gap:25px; }.business-options { display:flex; gap:12px; }.business-options button { flex:1; min-width:0; font-size:12px; padding:15px 8px; }.business-options button[aria-selected="true"] { padding-left:11px; }.business-options button > .icon { width:14px; height:14px; }.business-panel { grid-template-columns:minmax(0,1fr) 165px; min-height:290px; padding:30px; gap:30px; }
    .business-symbol { height:95px; }.business-panel h3 { font-size:26px; }.feature-row { gap:12px; }.feature-row > div { padding:21px 17px; }.feature-index { position:static; display:block; margin-bottom:12px; font-size:6px; }.feature-row .icon { margin-bottom:12px; }
    .workspace-note { right:5px; bottom:-23px; }.price-card { padding:27px 18px; }.plan-icon { right:16px; top:21px; width:28px; height:28px; }.plan-icon .icon { width:14px; height:14px; }.price-card > .plan-number { font-size:5.8px; padding-right:32px; }.faq-section { gap:30px; }.faq-list summary { padding-left:43px; padding-right:17px; font-size:11px; }.faq-list summary::before { left:17px; }.faq-list details > p { padding-left:43px; padding-right:22px; }.faq-contact { padding:13px 11px; }.faq-contact > span:nth-child(2) { font-size:10px; }
}
@media(max-width:600px) {
    .signal-flow .flow-scene { height:292px; }
    .signal-flow .document-preview,.signal-flow .document-echo { top:3%; }
    .signal-flow .route-label-out { left:32%; top:64%; }
    .signal-flow .route-label-in { left:32%; top:85%; }
    .signal-flow .flow-status strong { font-size:10px; }
    .process-grid { grid-auto-flow:column; grid-template-columns:none; grid-auto-columns:87%; overflow-x:auto; gap:14px; padding:4px 1px 17px; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:#b4d2ba transparent; }
    .process-card { padding:23px; scroll-snap-align:start; }.process-card .step-number { left:23px; }.process-tag { right:23px; font-size:7px; }.process-card .process-illustration { height:156px; margin:39px -5px 22px; min-height:0; }.process-card h3 { font-size:20px; margin-top:0; }.process-card > p { min-height:54px; font-size:11px; }.process-card .process-link { margin-top:18px; padding-top:15px; font-size:10px; }
    .signature-illustration .signature-stroke { font-size:24px; }.signature-illustration .mini-seal { width:27px; height:27px; }.exchange-illustration > span:not(.illustration-caption),.exchange-illustration > strong { width:54px; height:58px; font-size:9px; }.process-transfer { width:55px; }.process-illustration .illustration-caption { font-size:5.5px; }.response-illustration > span { font-size:11px; padding:10px 14px; }.response-files i { font-size:6px; padding:4px 8px; }
    .workspace-preview { border-radius:12px; border-width:4px; }.workspace-note { padding:9px 11px; gap:8px; bottom:-20px; right:8px; border-radius:8px; }.workspace-note > .icon { width:20px; height:20px; }.workspace-note > span { font-size:7px; }.workspace-note small { font-size:5.5px; }
    .feature-row { margin-top:46px; gap:12px; }.feature-row > div { display:grid; grid-template-columns:40px minmax(0,1fr); gap:0 15px; padding:20px; }.feature-row > div > .icon { grid-column:1; grid-row:1 / span 3; margin:3px 0 0; }.feature-index { grid-column:2; margin-bottom:5px; font-size:6px; }.feature-row h3 { grid-column:2; font-size:14px; }.feature-row p { grid-column:2; font-size:11px; margin-top:6px; }
    .business-options { display:grid; grid-template-columns:1fr 1fr; gap:0 15px; }.business-options button { font-size:11px; }.business-panel { grid-template-columns:1fr; padding:27px 22px 31px; gap:24px; }.business-panel h3 { font-size:24px; }.business-panel p { font-size:12px; }.business-panel .module-tags { gap:6px; margin-top:18px; }.business-panel .business-index { bottom:10px; right:17px; }
    .business-scene { display:grid; grid-template-columns:85px minmax(0,1fr); gap:8px 13px; padding:14px; transform:rotate(0); }.business-scene-label { grid-column:1 / -1; font-size:6px; }.business-symbol { grid-column:1; grid-row:2; height:87px; margin:0; }.business-symbol > .icon { width:46px; height:46px; }.business-operations { grid-column:2; grid-row:2; gap:5px; align-content:center; }.business-operations > span { font-size:7px; padding:5px 7px; }
    .price-card { padding:29px 25px; }.price-card > .plan-number { font-size:7px; padding-right:43px; }.plan-icon { width:34px; height:34px; right:24px; top:24px; }.plan-icon .icon { width:18px; height:18px; }.price-card h3 { margin-top:27px; }.pricing-note { padding:17px; }
    .faq-section { gap:28px; }.faq-contact { padding:15px; margin-top:23px; max-width:100%; }.faq-contact > span:nth-child(2) { font-size:11px; }.faq-list details { border-radius:10px; margin-bottom:10px; }.faq-list summary { font-size:11px; padding:21px 17px 21px 43px; }.faq-list details > p { font-size:11px; padding:0 21px 22px 43px; }
    .contact-card { border-radius:17px; }.contact-card .contact-orbit { right:-295px; opacity:.6; }.contact-node { display:none; }.contact-card .contact-orbit > .icon { right:190px; width:160px; height:160px; bottom:-20px; }
}
@media(prefers-reduced-motion:reduce) { .business-symbol > .icon,.workspace-note,.process-transfer i::after,.contact-orbit > span::after { animation:none !important; }.customer-logos a:hover,.process-card:hover,.price-card:hover { translate:none; } }
@media print { .workspace-note,.faq-contact,.business-scene,.plan-icon,.process-tag { display:none; }.process-grid { overflow:visible; display:grid; grid-auto-flow:row; grid-template-columns:repeat(3,1fr); }.process-card { break-inside:avoid; }.business-panel { display:block; }.feature-row > div { background:white; color:black; } }
