:root {
  color-scheme: light;
  --navy: #102c46;
  --navy-2: #183b5b;
  --blue: #2864e8;
  --ink: #1c2f45;
  --muted: #667b91;
  --line: #dce5ee;
  --canvas: #eff3ef;
  font-family: "Onest", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: var(--canvas);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}
* { box-sizing: border-box; }
html { min-width: 320px; scroll-behavior: smooth; scroll-padding-top: 85px; }
body { margin: 0; background: linear-gradient(180deg,#edf3f8 0%,#f8fafc 34%,#edf3f8 72%,#f7f9fb 100%); font-size: 14px; line-height: 1.55; }
main { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button { color: inherit; font: inherit; }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 3px solid #92b4ff; outline-offset: 3px; }
.section-wrap, .header-inner { width: min(1340px, calc(100% - 72px)); margin-inline: auto; }

/* Header */
.site-header { position: sticky; z-index: 30; top: 0; background: #f8fafc; border-bottom: 1px solid rgba(207,220,232,.82); }
.header-inner { min-height: 74px; display: flex; align-items: center; gap: 36px; }
.brand { display: inline-flex; align-items: center; gap: 10px; flex: none; }
.brand img { width: 36px; height: 36px; object-fit: contain; }
.brand span { display: grid; line-height: 1.1; }
.brand strong { color: var(--navy); font-size: 17px; letter-spacing: -.4px; }
.brand small { margin-top: 4px; color: #778a9e; font-size: 8px; letter-spacing: 1.2px; }
.main-nav { display: flex; align-items: center; gap: 27px; margin-left: auto; }
.main-nav a { color: #52677e; font-size: 12px; font-weight: 600; }
.main-nav a:hover, .footer-column a:hover, .footer-column button:hover { color: var(--blue); }
.button { min-height: 43px; display: inline-flex; align-items: center; justify-content: center; gap: 13px; padding: 0 18px; border: 1px solid transparent; border-radius: 5px; font-size: 12px; font-weight: 650; white-space: nowrap; transition: background-color .17s ease, transform .17s ease; }
.button:hover { transform: translateY(-1px); }
.button-primary { color: white; background: var(--blue); box-shadow: 0 8px 22px rgba(40,100,232,.2); }
.button-primary:hover { background: #1d52cf; }
.header-cta { min-height: 39px; margin-left: 2px; font-size: 11px; }
.nav-toggle { display: none; }

/* Hero and device mockups */
.hero { position: relative; min-height: 710px; overflow: hidden; color: white; background: #102c46; isolation: isolate; }
.hero-photo, .hero-shade { position: absolute; inset: 0; }
.hero-photo { z-index: -2; background-image: url("../images/logipulse/hero-logistics-20261005.jpg"); background-size: cover; background-position: center 57%; }
.hero-shade { z-index: -1; background: linear-gradient(90deg,rgba(7,26,44,.95) 0%,rgba(7,26,44,.86) 29%,rgba(7,26,44,.61) 54%,rgba(7,26,44,.4) 100%),linear-gradient(0deg,rgba(7,26,44,.62),transparent 45%); }
.hero::after { content: ""; position: absolute; z-index: -1; left: -4%; right: -4%; bottom: -64px; height: 105px; border-radius: 50% 50% 0 0 / 85% 85% 0 0; background: #edf3f8; }
.hero-layout { min-height: 710px; display: grid; grid-template-columns: minmax(330px,.76fr) minmax(570px,1.24fr); align-items: center; gap: clamp(26px,4vw,62px); padding-top: 49px; padding-bottom: 84px; }
.hero-copy { max-width: 505px; padding-bottom: 6px; }
.overline { display: flex; align-items: center; gap: 9px; margin: 0 0 13px; color: #667e96; font-size: 9px; font-weight: 750; letter-spacing: 1.4px; }
.hero .overline { color: #d2dfec; }
.status-dot { width: 7px; height: 7px; border-radius: 50%; background: #72c1a2; box-shadow: 0 0 0 4px rgba(114,193,162,.15); }
h1,h2,h3,p { margin-top: 0; }
.hero h1 { margin-bottom: 19px; color: white; font-size: clamp(43px,5.25vw,69px); font-weight: 650; line-height: 1.015; letter-spacing: -2.9px; }
.hero h1 span { color: #c4dbf5; }
.hero-lead { max-width: 450px; margin-bottom: 25px; color: rgba(242,247,252,.85); font-size: 14px; line-height: 1.75; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 21px; }
.text-link { display: inline-flex; align-items: center; gap: 8px; color: #e0e9f2; font-size: 11px; font-weight: 650; }
.text-link:hover { color: white; }
.hero-note { margin: 19px 0 0; color: rgba(226,237,247,.68); font-size: 9px; letter-spacing: .2px; }
.device-stage { position: relative; width: 100%; min-height: 488px; align-self: center; }
.laptop-device { position: absolute; right: 31px; bottom: 43px; width: min(100%,690px); filter: drop-shadow(0 22px 34px rgba(2,15,28,.35)); }
.laptop-lid { position: relative; padding: 13px 13px 15px; background: linear-gradient(135deg,#d8e0e8,#778797 38%,#dce4eb 75%,#8492a0); border-radius: 13px 13px 7px 7px; box-shadow: inset 0 0 0 1px rgba(255,255,255,.72),inset 0 0 0 3px rgba(36,53,70,.15); }
.laptop-camera { position: absolute; z-index: 3; top: 5px; left: 50%; width: 4px; height: 4px; border-radius: 50%; background: #526170; transform: translateX(-50%); }
.laptop-screen { display: flex; flex-direction: column; overflow: hidden; aspect-ratio: 1.62; background: #f4f7fa; border: 1px solid #25384b; border-radius: 5px; }
.laptop-base { position: relative; width: 108%; height: 15px; margin-left: -4%; background: linear-gradient(#ccd4dc,#8795a2 55%,#647381); clip-path: polygon(3% 0,97% 0,100% 78%,94% 100%,6% 100%,0 78%); border-radius: 0 0 9px 9px; }
.laptop-notch { position: absolute; top: 0; left: 44%; width: 12%; height: 5px; border-radius: 0 0 6px 6px; background: #9ba7b1; }
.app-browser-bar { height: 26px; flex: none; display: flex; align-items: center; gap: 9px; padding: 0 9px; color: #788998; background: #fff; border-bottom: 1px solid #e3e9ef; font-size: 7px; }
.browser-dots { display: flex; gap: 3px; }
.browser-dots i { width: 5px; height: 5px; border-radius: 50%; background: #d2dbe4; }
.browser-dots i:first-child { background: #e98d85; }.browser-dots i:nth-child(2) { background: #e8c86e; }.browser-dots i:nth-child(3) { background: #75bb8e; }
.browser-address { flex: 1; max-width: 280px; padding: 3px 10px; text-align: center; background: #f2f5f8; border-radius: 7px; }
.app-screen { min-height: 0; flex: 1; display: grid; grid-template-columns: 112px minmax(0,1fr); color: #344b62; background: #f4f7fa; font-size: 7px; }
.app-sidebar { display: flex; flex-direction: column; gap: 3px; overflow: hidden; padding: 10px 7px; color: #d8e3ee; background: linear-gradient(180deg,#12324f,#0e263d); }
.app-brand-mini { display: flex; align-items: center; gap: 5px; margin: 0 0 10px; color: white; font-size: 9px; font-weight: 700; }
.app-brand-mini img { width: 17px; height: 17px; object-fit: contain; }
.app-sidebar small { margin: 7px 4px 2px; color: #8ea7bf; font-size: 5px; font-weight: 750; letter-spacing: .7px; }
.app-sidebar span { padding: 5px 6px; border-radius: 2px; white-space: nowrap; }
.app-sidebar span.active { color: white; background: rgba(108,162,232,.22); }
.app-main-screen { min-width: 0; overflow: hidden; padding: 11px 13px; }
.app-breadcrumb { margin-bottom: 8px; color: #8292a3; font-size: 6px; }
.app-title-line { display: flex; align-items: center; justify-content: space-between; margin-bottom: 11px; }
.app-title-line small { color: #8596a6; font-size: 5px; letter-spacing: .7px; }
.app-title-line h2 { margin: 3px 0 0; color: #173653; font-size: 14px; letter-spacing: -.4px; }
.app-avatar { width: 19px; height: 19px; display: grid; place-items: center; color: white; background: #2864e8; border-radius: 50%; font-size: 8px; }
.app-tool-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 5px; }
.app-tool-grid > div { min-height: 48px; display: flex; flex-direction: column; justify-content: center; gap: 3px; padding: 5px 6px; background: white; border: 1px solid #e1e8ef; border-radius: 3px; }
.app-tool-grid b { color: #274560; font-size: 7px; }
.app-tool-grid small { color: #8594a3; font-size: 5px; }
.app-lower-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 7px; margin-top: 8px; }
.app-table-preview, .app-photo-preview { min-width: 0; overflow: hidden; background: white; border: 1px solid #e1e8ef; border-radius: 3px; }
.mini-section-title { display: flex; justify-content: space-between; gap: 4px; padding: 7px 7px 5px; color: #29445e; font-size: 6px; font-weight: 700; }
.mini-section-title span { color: #2864e8; font-size: 5px; font-weight: 500; }
.mini-row { min-height: 22px; display: grid; grid-template-columns: 42px minmax(0,1fr) 48px; gap: 4px; align-items: center; padding: 3px 7px; border-top: 1px solid #edf1f5; white-space: nowrap; }
.mini-row b { color: #526b83; font-size: 5px; }
.mini-row span { overflow: hidden; color: #526b83; font-size: 5px; text-overflow: ellipsis; }
.mini-row i { overflow: hidden; color: #8797a6; font-size: 5px; font-style: normal; text-overflow: ellipsis; }
.app-photo-preview { position: relative; min-height: 86px; }
.app-photo-preview img { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; }
.app-photo-preview span { position: absolute; inset: auto 0 0; padding: 15px 6px 6px; color: white; background: linear-gradient(transparent,rgba(8,27,45,.72)); font-size: 6px; }

.phone-device { position: absolute; z-index: 5; right: 0; bottom: 12px; width: 173px; height: 350px; padding: 7px; background: linear-gradient(120deg,#bec8d0,#4c5b69 20%,#d6dce1 56%,#566676); border: 1px solid rgba(235,243,250,.9); border-radius: 27px; box-shadow: 0 24px 42px rgba(2,14,26,.45),inset 0 0 0 1px rgba(255,255,255,.65); }
.phone-screen { position: relative; height: 100%; overflow: hidden; color: #213b55; background: #f4f7fa; border-radius: 21px; }
.phone-island { position: absolute; z-index: 2; top: 5px; left: 50%; width: 57px; height: 14px; border-radius: 10px; background: #16212a; transform: translateX(-50%); }
.phone-status { height: 26px; display: flex; align-items: center; justify-content: space-between; padding: 2px 12px 0; color: #263b4e; font-size: 6px; font-weight: 700; }
.phone-app-head { height: 30px; display: flex; align-items: center; gap: 5px; padding: 0 9px; background: white; border-bottom: 1px solid #e5ebf1; font-size: 8px; }
.phone-app-head img { width: 18px; height: 18px; object-fit: contain; }
.phone-app-head span { margin-left: auto; color: #71869a; font-size: 12px; }
.phone-greeting { padding: 10px 10px 6px; }
.phone-greeting small { color: #7c90a4; font-size: 5px; letter-spacing: .5px; }
.phone-greeting h3 { margin: 2px 0 0; color: #193956; font-size: 13px; }
.phone-map { position: relative; height: 111px; overflow: hidden; margin: 0 8px; border-radius: 6px; background: #d9e3ed; }
.phone-map::after { content: ""; position: absolute; inset: 40% 0 0; background: linear-gradient(transparent,rgba(13,35,56,.66)); }
.phone-map img { width: 100%; height: 100%; object-fit: cover; }
.phone-map b { position: absolute; z-index: 1; bottom: 8px; left: 8px; color: white; font-size: 8px; }
.phone-map-pin { position: absolute; z-index: 1; top: 33px; left: 55%; color: #2864e8; font-size: 17px; text-shadow: 0 1px white,1px 0 white,-1px 0 white,0 -1px white; }
.phone-card { display: flex; flex-direction: column; gap: 4px; margin: 8px; padding: 8px; background: white; border: 1px solid #e1e8ef; border-radius: 5px; }
.phone-card small { color: #8192a2; font-size: 5px; letter-spacing: .5px; }
.phone-card b { color: #26445f; font-size: 8px; }
.phone-card b span { padding-inline: 4px; color: #2864e8; }
.phone-card em { color: #8392a0; font-size: 6px; font-style: normal; }
.phone-actions { display: flex; gap: 4px; margin: 0 8px; }
.phone-actions span { flex: 1; padding: 6px 2px; color: #48627b; background: #e9eff5; border-radius: 3px; font-size: 5px; text-align: center; }
.phone-tabbar { position: absolute; right: 0; bottom: 0; left: 0; height: 27px; display: flex; justify-content: space-around; align-items: center; background: white; border-top: 1px solid #e1e8ef; }
.phone-tabbar i { color: #71869a; font-size: 11px; font-style: normal; }
.phone-side-button { position: absolute; top: 79px; left: -3px; width: 2px; height: 36px; border-radius: 3px 0 0 3px; background: #84929e; }
.device-note { position: absolute; right: 0; bottom: -1px; color: rgba(237,244,250,.74); font-size: 8px; text-align: right; }

/* One centered orbit, one shared visual system */
.orbit-section { position: relative; padding: 83px 0 92px; background: radial-gradient(ellipse at 50% 55%,#fff 0,#f5f8fb 38%,#edf3f8 78%); }
.section-heading { max-width: 700px; margin-bottom: 32px; }
.centered-heading { margin-right: auto; margin-left: auto; text-align: center; }
.centered-heading .overline { justify-content: center; }
.section-heading h2, .faq-intro h2 { margin-bottom: 9px; color: var(--navy); font-size: clamp(29px,3.5vw,43px); font-weight: 650; line-height: 1.13; letter-spacing: -1.5px; }
.section-heading > p:last-child, .faq-intro > p:not(.overline) { margin-bottom: 0; color: var(--muted); font-size: 12px; }
.orbit-stage { position: relative; isolation: isolate; width: min(100%,740px); aspect-ratio: 1; margin: 4px auto 0; }
.orbit-connectors { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; }
.orbit-connectors line { fill: none; stroke: var(--node-color,#61758a); stroke-width: .18; stroke-linecap: round; opacity: .62; }
.connector-1 { --node-color: #2864e8; }.connector-2 { --node-color: #0f9d91; }.connector-3 { --node-color: #b266bd; }.connector-4 { --node-color: #d98a27; }.connector-5 { --node-color: #368457; }.connector-6 { --node-color: #6468d6; }.connector-7 { --node-color: #d46c4a; }.connector-8 { --node-color: #218b9b; }.connector-9 { --node-color: #965bb3; }
.orbit-center { position: absolute; z-index: 3; top: 50%; left: 50%; width: 202px; height: 202px; display: flex; flex-direction: column; align-items: center; justify-content: center; background: linear-gradient(150deg,#fff,#f1f5fa); border: 1px solid #d7e2ed; border-radius: 50%; box-shadow: 0 15px 42px rgba(22,57,88,.13),inset 0 0 0 8px rgba(255,255,255,.74); transform: translate(-50%,-50%); }
.orbit-center img { width: 49px; height: 49px; object-fit: contain; margin-bottom: 5px; }
.orbit-center b { color: var(--navy); font-size: 18px; }
.orbit-center small { margin-top: 5px; color: #788b9f; font-size: 6px; font-weight: 700; letter-spacing: .7px; }
.orbit-node { position: absolute; z-index: 2; width: 138px; height: 138px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 12px; text-align: center; background: radial-gradient(circle at 50% 35%,var(--node-tint),#fff 76%); border: 2px solid #111a23; border-radius: 50%; box-shadow: 0 9px 27px rgba(27,61,92,.12),inset 0 0 0 5px rgba(255,255,255,.8); transform: translate(-50%,-50%); transition: box-shadow .18s ease,filter .18s ease; }
.orbit-node:hover { box-shadow: 0 13px 30px rgba(28,73,131,.18),inset 0 0 0 5px rgba(255,255,255,.8); filter: saturate(1.12); }
.node-glyph { width: 24px; height: 24px; flex: none; margin-bottom: 9px; fill: none; stroke: var(--node-color); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.orbit-node b { color: #28435d; font-size: 10px; line-height: 1.25; }
.orbit-node small { max-width: 102px; margin-top: 4px; color: #6e8091; font-size: 7px; line-height: 1.35; }
.node-1 { top: 13.5%; left: 50%; --node-color: #2864e8; --node-tint: #e7efff; }
.node-2 { top: 22%; left: 73.5%; --node-color: #0f9d91; --node-tint: #e4f6f2; }
.node-3 { top: 43.7%; left: 85.6%; --node-color: #b266bd; --node-tint: #f4eafa; }
.node-4 { top: 68.25%; left: 81.6%; --node-color: #d98a27; --node-tint: #fff1dc; }
.node-5 { top: 84.3%; left: 62.5%; --node-color: #368457; --node-tint: #e5f3e9; }
.node-6 { top: 84.3%; left: 37.5%; --node-color: #6468d6; --node-tint: #ebecff; }
.node-7 { top: 68.25%; left: 18.4%; --node-color: #d46c4a; --node-tint: #fff0e9; }
.node-8 { top: 43.7%; left: 14%; --node-color: #218b9b; --node-tint: #e5f5f7; }
.node-9 { top: 22%; left: 26.5%; --node-color: #965bb3; --node-tint: #f3eafb; }

/* Feature cards use the new photographic set */
.feature-detail-section { padding-top: 53px; padding-bottom: 91px; }
.feature-detail-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.detail-feature { min-width: 0; overflow: hidden; background: rgba(255,255,255,.75); border: 1px solid rgba(211,223,234,.9); border-radius: 8px; box-shadow: 0 10px 28px rgba(21,53,82,.045); }
.detail-feature-wide { grid-column: 1 / -1; display: grid; grid-template-columns: 1.1fr .9fr; align-items: stretch; }
.detail-image { position: relative; min-height: 245px; overflow: hidden; background: #dce5ed; }
.detail-feature-wide .detail-image { min-height: 362px; }
.detail-image > img { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; transition: transform .35s ease; }
.detail-feature:hover .detail-image > img { transform: scale(1.025); }
.detail-image::after { content: ""; position: absolute; inset: 45% 0 0; background: linear-gradient(transparent,rgba(9,29,48,.52)); pointer-events: none; }
.image-label { position: absolute; z-index: 1; top: 15px; left: 15px; padding: 6px 9px; color: white; background: rgba(16,44,70,.82); border-radius: 3px; font-size: 7px; font-weight: 750; letter-spacing: 1px; }
.route-glass { position: absolute; z-index: 2; right: 18px; bottom: 18px; width: 185px; padding: 13px 15px; color: #2a4560; background: rgba(255,255,255,.96); border: 1px solid rgba(255,255,255,.9); border-radius: 6px; box-shadow: 0 8px 25px rgba(8,25,42,.2); }
.route-glass small,.route-glass b,.route-glass span { display: block; }
.route-glass small { color: #8696a6; font-size: 7px; letter-spacing: .7px; }
.route-glass b { margin: 2px 0 7px; font-size: 11px; }
.route-glass hr { border: 0; border-top: 1px solid #e5ebf1; }
.route-glass span { margin-top: 6px; color: #6e8296; font-size: 7px; }
.detail-copy { padding: 22px 23px 25px; }
.detail-feature-wide .detail-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(25px,4vw,52px); }
.detail-number { display: block; margin-bottom: 10px; color: #74889b; font-size: 8px; font-weight: 750; letter-spacing: 1px; }
.detail-copy h3 { margin-bottom: 9px; color: var(--navy); font-size: clamp(17px,2vw,23px); line-height: 1.25; letter-spacing: -.5px; }
.detail-copy p { margin-bottom: 12px; color: #60758a; font-size: 11px; line-height: 1.7; }
.detail-copy small { color: #8494a3; font-size: 9px; line-height: 1.55; }
.detail-copy a { display: inline-flex; gap: 8px; align-items: center; margin-top: 5px; color: #2864e8; font-size: 10px; font-weight: 700; }

/* Complete feature directory */
.all-sections-section { position: relative; padding: 79px 0 87px; background: linear-gradient(135deg,#e8eff6 0%,#f4f7fa 50%,#eaf1f7 100%); border-block: 1px solid #dce5ee; }
.all-sections-section::before,.all-sections-section::after { content: ""; position: absolute; left: 0; right: 0; height: 34px; pointer-events: none; }
.all-sections-section::before { top: -1px; background: linear-gradient(180deg,#eef3f8,transparent); }
.all-sections-section::after { bottom: -1px; background: linear-gradient(0deg,#f7f9fb,transparent); }
.all-sections-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.section-card { position: relative; min-height: 232px; display: grid; grid-template-columns: minmax(0,1fr) minmax(130px,.64fr); gap: 14px; align-items: center; overflow: hidden; padding: 20px 21px; background: linear-gradient(135deg,#fff,var(--section-tint,#edf3fb)); border: 1px solid rgba(193,211,228,.95); border-radius: 13px; box-shadow: 0 10px 26px rgba(27,58,87,.045); transition: transform .2s ease,box-shadow .2s ease; }
.section-card::before { position: absolute; right: 14%; bottom: -44%; width: 210px; aspect-ratio: 1; content: ""; background: radial-gradient(circle,var(--section-tint,#dce8f7),transparent 70%); opacity: .78; }
.section-card:hover { transform: translateY(-3px); box-shadow: 0 18px 34px rgba(27,58,87,.1); }
.section-card-copy { position: relative; z-index: 1; }
.section-illustration { position: relative; z-index: 1; width: 100%; height: 180px; object-fit: contain; filter: drop-shadow(0 12px 14px rgba(27,48,69,.13)); }
.section-card-workspace { --section-tint: #e9f0ff; }.section-card-company { --section-tint: #e3f4ed; }.section-card-transport { --section-tint: #fff0df; }.section-card-expedition { --section-tint: #e4f4f5; }.section-card-system { --section-tint: #f1eafa; }.section-card-tools { --section-tint: #e8edff; }
.section-icon { width: 34px; height: 34px; display: grid; place-items: center; color: #2864e8; background: #eaf1ff; border-radius: 50%; font-size: 8px; font-weight: 750; }
.section-card h3 { margin: 1px 0 5px; color: var(--navy); font-size: 15px; }
.section-card p { margin: 0 0 10px; color: #657b90; font-size: 11px; line-height: 1.6; }
.section-tags { display: flex; flex-wrap: wrap; gap: 5px; }
.section-tags span { padding: 4px 7px; color: #4e657b; background: #f1f5f8; border: 1px solid #e6edf3; border-radius: 3px; font-size: 8px; }
.section-card-accent { background: linear-gradient(125deg,#f7fbff,#eaf2fd); border-color: #cbdced; }
.section-card-accent .section-icon { color: #fff; background: var(--blue); }

/* Advantages */
.advantages-section { position: relative; display: block; padding-top: 85px; padding-bottom: 94px; }
.advantages-heading { max-width: 760px; margin: 0 auto 33px; text-align: center; }
.advantages-heading h2 { margin-bottom: 12px; color: var(--navy); font-size: clamp(30px,3.7vw,45px); line-height: 1.1; letter-spacing: -1.5px; }
.advantages-heading p { margin: 0; color: #62778c; font-size: 13px; line-height: 1.7; }
.dark-link { color: #315372; }
.dark-link:hover { color: var(--blue); }
.advantage-flow { position: relative; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 13px; }
.advantage-flow::before { position: absolute; z-index: 0; top: 44px; right: 8%; left: 8%; height: 2px; content: ""; background: linear-gradient(90deg,#2864e8,#0f9d91,#b266bd,#d98a27,#368457); opacity: .48; }
.advantage-card { position: relative; z-index: 1; min-width: 0; min-height: 252px; padding: 18px 15px 16px; background: linear-gradient(155deg,#fff,var(--benefit-tint,#eff4fb)); border: 1px solid #cfdae5; border-radius: 14px; box-shadow: 0 9px 22px rgba(27,58,87,.055); }
.advantage-graphic { width: 72px; height: 72px; display: grid; place-items: center; margin: 0 0 16px; background: linear-gradient(145deg,#fff,var(--benefit-tint)); border: 2px solid #121a22; border-radius: 50%; box-shadow: 0 5px 15px rgba(27,58,87,.13),inset 0 0 0 4px rgba(255,255,255,.8); }
.advantage-graphic svg { width: 38px; height: 38px; fill: none; stroke: var(--benefit-color); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.advantage-card h3 { margin: 0 0 7px; color: #1c3b57; font-size: 13px; line-height: 1.3; }
.advantage-card p { min-height: 68px; margin: 0 0 12px; color: #687d91; font-size: 10px; line-height: 1.6; }
.advantage-link { color: var(--benefit-color); font-size: 9px; font-weight: 700; }
.advantage-link i { margin-left: 4px; font-style: normal; }
.advantage-one { --benefit-color: #2864e8; --benefit-tint: #e8efff; }.advantage-two { --benefit-color: #0f938b; --benefit-tint: #e4f5f0; }.advantage-three { --benefit-color: #b266bd; --benefit-tint: #f3eafa; }.advantage-four { --benefit-color: #c77a1f; --benefit-tint: #fff1de; }.advantage-five { --benefit-color: #39805a; --benefit-tint: #e7f3e9; }

/* Product screen gallery: illustrated product workflows */
.screens-section { padding: 81px 0 92px; background: linear-gradient(180deg,#e7eef5 0%,#f3f6f9 24%,#edf3f8 100%); border-block: 1px solid #dce5ee; }
.screens-heading { max-width: none; display: flex; align-items: end; justify-content: space-between; gap: 35px; margin-bottom: 29px; }
.screens-heading > div { max-width: 700px; }
.screens-heading .text-link { flex: none; margin-bottom: 3px; }
.screens-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; }
.screen-card { min-width: 0; overflow: hidden; padding: 13px; background: rgba(255,255,255,.9); border: 1px solid #d8e2eb; border-radius: 7px; box-shadow: 0 8px 21px rgba(22,51,78,.045); }
.screen-heading { min-height: 43px; display: flex; align-items: flex-start; gap: 9px; margin-bottom: 10px; }
.screen-index { display: none; }
.screen-heading h3 { margin: 0 0 2px; color: var(--navy); font-size: 11px; }
.screen-heading p { margin: 0; color: #7b8c9b; font-size: 8px; }
.screen-ui { position: relative; isolation: isolate; height: 167px; overflow: hidden; padding: 10px; color: #4e647a; background: #f4f7fa; border: 1px solid #e3e9ef; border-radius: 7px; font-size: 7px; cursor: pointer; }
.screen-ui:focus-visible { outline: 3px solid #92b4ff; outline-offset: 3px; }
.ui-top { height: 19px; display: flex; align-items: center; gap: 7px; margin: -3px -2px 9px; padding-bottom: 6px; color: #75879a; border-bottom: 1px solid #e0e7ee; font-size: 6px; }
.ui-top b { color: #26435e; font-size: 7px; }
.ui-top span { margin-left: auto; }
.ui-top i { width: 14px; height: 14px; display: grid; place-items: center; color: white; background: #2864e8; border-radius: 50%; font-size: 6px; font-style: normal; }
.ui-title { margin: 0 0 9px; color: #25425d; font-size: 10px; font-weight: 700; }
.ui-tiles { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 5px; }
.ui-tiles span { padding: 9px 7px; color: #486079; background: white; border: 1px solid #e3eaf0; border-radius: 3px; font-size: 7px; }
.ui-lines { display: flex; gap: 6px; margin-top: 9px; }
.ui-lines i { height: 20px; flex: 1; background: linear-gradient(90deg,#e4ebf2,#f7f9fb); border-radius: 3px; }
.ui-order { min-height: 28px; display: grid; grid-template-columns: 42px minmax(0,1fr) 56px; gap: 4px; align-items: center; border-bottom: 1px solid #e5ebf1; white-space: nowrap; }
.ui-order b { color: #3b5670; font-size: 6px; }.ui-order span { overflow: hidden; color: #566d83; font-size: 6px; text-overflow: ellipsis; }.ui-order i { color: #778b9d; font-size: 5px; font-style: normal; }
.ui-map { padding: 0; background: #dae4ec; }
.ui-map > img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.72); }
.ui-map::after { content: ""; position: absolute; inset: 35% 0 0; background: linear-gradient(transparent,rgba(12,33,54,.34)); }
.map-overlay-card { position: absolute; z-index: 2; left: 9px; bottom: 9px; display: flex; flex-direction: column; gap: 3px; padding: 7px 9px; background: rgba(255,255,255,.96); border-radius: 4px; box-shadow: 0 3px 10px #18324b33; }
.map-overlay-card b { color: #294660; font-size: 7px; }.map-overlay-card span,.map-overlay-card small { color: #72869a; font-size: 6px; }
.map-point { position: absolute; z-index: 2; width: 10px; height: 10px; background: #2864e8; border: 2px solid white; border-radius: 50%; box-shadow: 0 1px 5px #102c4666; }
.map-point-a { top: 29%; left: 34%; }.map-point-b { top: 54%; right: 29%; background: #e79656; }
.ui-route .ui-top { margin-bottom: 11px; }
.route-inputs { display: flex; align-items: center; gap: 7px; }.route-inputs span { flex: 1; padding: 7px 8px; color: #38546e; background: #fff; border: 1px solid #dee6ee; border-radius: 3px; font-size: 6px; }.route-inputs i { color: #2864e8; font-style: normal; }
.route-sketch { position: relative; height: 75px; margin: 8px 0 6px; overflow: hidden; background: repeating-linear-gradient(25deg,#eff4f7 0 12px,#e8eef3 13px 15px); border-radius: 3px; }
.route-sketch svg { width: 100%; height: 100%; }.route-sketch path { fill: none; stroke: #2864e8; stroke-width: 4; stroke-linecap: round; stroke-dasharray: 2 0; }
.route-sketch b { position: absolute; right: 5px; bottom: 4px; padding: 3px 5px; color: #526c84; background: white; border-radius: 2px; font-size: 5px; }
.ui-button { display: block; width: max-content; margin-left: auto; padding: 5px 8px; color: white; background: #2864e8; border-radius: 3px; font-size: 5px; }
.trip-route { height: 91px; display: flex; align-items: center; justify-content: space-between; gap: 6px; padding: 7px 3px; }
.trip-route > div { display: flex; flex-direction: column; gap: 4px; }.trip-route b { color: #38536e; font-size: 7px; }.trip-route small { color: #8a9aaa; font-size: 5px; }
.trip-origin,.trip-dest { width: 9px; height: 9px; flex: none; background: #2864e8; border: 2px solid white; border-radius: 50%; box-shadow: 0 0 0 1px #2864e8; }.trip-dest { background: #e49358; box-shadow: 0 0 0 1px #e49358; }.trip-track { height: 2px; flex: 1; background: linear-gradient(90deg,#2864e8,#e49358); }
.trip-foot { display: flex; justify-content: space-between; padding: 8px 4px 0; border-top: 1px solid #e0e7ee; color: #72869a; font-size: 6px; }
.plan-labels,.plan-row { display: grid; grid-template-columns: 80px repeat(4,1fr); gap: 4px; align-items: center; }
.plan-labels { height: 24px; color: #8292a1; font-size: 5px; }
.plan-row { height: 29px; border-top: 1px solid #e6ecf1; }.plan-row b { overflow: hidden; color: #4a627a; font-size: 5px; text-overflow: ellipsis; }.plan-row i { height: 10px; border-radius: 2px; background: #c9dcf5; }.plan-row:nth-child(3) i:nth-child(2),.plan-row:nth-child(4) i:nth-child(4) { background: #f1d5b6; }
.chart-title { color: #435c74; font-size: 7px; }
.chart-bars { height: 91px; display: flex; align-items: end; gap: 7px; padding: 8px 7px 2px; border-bottom: 1px solid #ced9e3; background: repeating-linear-gradient(0deg,transparent 0 21px,#e6edf3 22px 23px); }
.chart-bars i { width: 9px; height: var(--h,60%); background: #7ebda9; border-radius: 2px 2px 0 0; box-shadow: 7px 0 0 #e5bb8e; margin-right: 7px; }.chart-bars i:nth-child(3n) { --h: 43%; }.chart-bars i:nth-child(3n + 1) { --h: 73%; }.chart-bars i:nth-child(3n + 2) { --h: 57%; }
.chart-legend { display: flex; gap: 12px; margin-top: 8px; color: #8192a1; font-size: 5px; }.chart-legend span::before { content: ""; width: 5px; height: 5px; display: inline-block; margin-right: 4px; border-radius: 50%; background: #7ebda9; }.chart-legend span:nth-child(2)::before { background: #e5bb8e; }.chart-legend span:nth-child(3)::before { background: #b8c4cf; }
.company-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }.company-grid span { display: flex; flex-direction: column; gap: 5px; padding: 11px 8px; color: #3c5872; background: white; border: 1px solid #e1e8ef; border-radius: 3px; font-size: 7px; }.company-grid small { color: #8594a3; font-size: 5px; }
.ui-ai { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; background: #f4f7fa; }
.ai-card { width: 78%; display: flex; flex-direction: column; gap: 5px; padding: 8px; background: white; border: 1px solid #e1e8ef; border-radius: 4px; }.ai-card b { color: #38536d; font-size: 7px; }.ai-card span { color: #7e8e9e; font-size: 5px; }.ai-card i { width: max-content; padding: 4px 6px; color: white; background: #2864e8; border-radius: 2px; font-size: 5px; font-style: normal; }
.ai-chat-line { align-self: flex-end; padding: 6px 8px; color: white; background: #2864e8; border-radius: 7px 7px 2px 7px; font-size: 5px; }

/* FAQ and legal footer */
.faq-section { display: grid; grid-template-columns: minmax(230px,.62fr) minmax(0,1.38fr); gap: clamp(40px,8vw,120px); padding-top: 87px; padding-bottom: 89px; }
.faq-intro { align-self: start; }
.faq-intro h2 { font-size: clamp(34px,4vw,48px); }
.faq-intro > p:not(.overline) { margin-bottom: 14px; }
.faq-intro > a { color: #2864e8; font-size: 11px; font-weight: 650; }
.faq-list { display: grid; gap: 10px; }
.faq-list details { overflow: hidden; background: rgba(255,255,255,.82); border: 1px solid #d4e0eb; border-radius: 12px; box-shadow: 0 7px 20px rgba(27,58,87,.04); transition: border-color .2s ease,box-shadow .2s ease,background .2s ease; }
.faq-list details[open] { background: #fff; border-color: #a9c3e1; box-shadow: 0 12px 26px rgba(27,58,87,.08); }
.faq-list summary { min-height: 62px; display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 0 16px; color: #203e59; font-size: 12px; font-weight: 650; list-style: none; cursor: pointer; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { width: 23px; height: 23px; flex: none; display: grid; place-items: center; color: #2864e8; background: #e6eef8; border-radius: 50%; font-size: 15px; font-weight: 400; transition: transform .2s ease; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.faq-list details > p { max-width: 700px; margin: 0 54px 18px 16px; color: #61778c; font-size: 11px; line-height: 1.7; animation: faq-reveal .22s ease both; }
@keyframes faq-reveal { from { opacity: 0; transform: translateY(-5px); } to { opacity: 1; transform: translateY(0); } }
.site-footer { color: #d9e4ee; background: #102c46; }
.footer-main { display: grid; grid-template-columns: 1.35fr .8fr 1.1fr .9fr; gap: 38px; padding-top: 48px; padding-bottom: 38px; }
.footer-brand { margin-bottom: 12px; }
.footer-brand img { width: 33px; height: 33px; }
.footer-brand strong { color: white; font-size: 16px; }
.footer-brand small { color: #a4b8cc; font-size: 7px; }
.footer-brand-column > p { max-width: 220px; margin-bottom: 13px; color: #b2c4d4; font-size: 10px; }
.footer-column { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; }
.footer-column h3 { margin: 2px 0 5px; color: white; font-size: 10px; letter-spacing: .3px; }
.footer-column a,.footer-column button,.footer-column span { padding: 0; color: #bdcbd8; background: none; border: 0; font-size: 9px; text-align: left; }
.footer-column button { cursor: pointer; }
.footer-company b { color: #eef3f7; font-size: 10px; }
.footer-bottom { min-height: 48px; display: flex; align-items: center; gap: 19px; color: #9eb1c3; border-top: 1px solid rgba(255,255,255,.13); font-size: 8px; }
.footer-bottom span:first-child { margin-right: auto; }
.footer-bottom a { color: #d3dee8; }
.policy-dialog { position: relative; width: min(480px,calc(100% - 32px)); padding: 28px; color: var(--ink); background: #fff; border: 1px solid var(--line); border-radius: 9px; box-shadow: 0 25px 90px #0c243b55; }
.policy-dialog::backdrop { background: rgba(6,23,39,.56); backdrop-filter: blur(3px); }
.policy-dialog form { position: absolute; top: 12px; right: 12px; }
.policy-close { width: 30px; height: 30px; color: #536b82; background: #f0f4f8; border: 0; border-radius: 50%; font-size: 19px; cursor: pointer; }
.policy-dialog .overline { margin-top: 10px; }
.policy-dialog h2 { margin: 0 0 10px; color: var(--navy); font-size: 22px; }
.policy-dialog > p:not(.overline) { color: #61768a; font-size: 12px; line-height: 1.7; }
.policy-dialog > small { color: #718599; font-size: 10px; }
.policy-dialog > small a { color: var(--blue); }
.policy-draft-note { margin: 18px 0 0; padding-top: 12px; border-top: 1px solid #e4ebf1; font-size: 10px !important; }

@media (max-width: 1160px) {
  .section-wrap,.header-inner { width: min(100% - 48px,1000px); }
  .hero-layout { grid-template-columns: minmax(0,.75fr) minmax(0,1.25fr); gap: 25px; }
  .device-stage { min-height: 420px; }
  .laptop-device { right: 15px; width: calc(100% - 15px); }
  .phone-device { right: -6px; transform: scale(.88); transform-origin: bottom right; }
  .app-screen { grid-template-columns: 93px minmax(0,1fr); }
  .orbit-stage { width: min(100%,690px); }
  .orbit-node { width: 126px; height: 126px; }
  .orbit-center { width: 183px; height: 183px; }
  .footer-main { gap: 25px; }
}
@media (max-width: 900px) {
  .hero { min-height: 0; }
  .hero-layout { min-height: 0; grid-template-columns: 1fr; gap: 27px; padding-top: 53px; padding-bottom: 99px; }
  .hero-copy { max-width: 720px; }
  .hero h1 { font-size: clamp(47px,7vw,67px); }
  .device-stage { width: min(100%,760px); min-height: 490px; margin-inline: auto; }
  .laptop-device { right: 27px; width: calc(100% - 67px); }
  .phone-device { right: 0; width: 174px; height: 354px; transform: none; }
  .device-note { right: 4px; }
  .feature-detail-grid { gap: 12px; }
  .detail-feature-wide { grid-template-columns: 1fr 1fr; }
  .detail-feature-wide .detail-image { min-height: 320px; }
  .detail-feature-wide .detail-copy { padding: 24px; }
  .advantages-section { padding-top: 72px; padding-bottom: 77px; }
  .advantage-flow { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .advantage-flow::before { right: 10%; left: 10%; }
  .screens-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .faq-section { grid-template-columns: 1fr; gap: 26px; }
  .faq-intro { max-width: 600px; }
  .footer-main { grid-template-columns: 1.2fr 1fr 1fr; }
  .footer-company { grid-column: 2 / 4; }
}
@media (max-width: 640px) {
  html { scroll-padding-top: 68px; }
  .section-wrap,.header-inner { width: calc(100% - 36px); }
  .header-inner { min-height: 66px; gap: 12px; }
  .brand img { width: 32px; height: 32px; }
  .brand strong { font-size: 15px; }
  .main-nav { position: absolute; top: 65px; left: 0; right: 0; display: none; flex-direction: column; align-items: stretch; gap: 0; padding: 8px 18px 13px; background: white; border-bottom: 1px solid var(--line); box-shadow: 0 12px 22px #18324b12; }
  .menu-open .main-nav { display: flex; }
  .main-nav a { padding: 11px 4px; }
  .nav-toggle { width: 37px; height: 37px; display: flex; flex-direction: column; justify-content: center; gap: 5px; order: 3; margin-left: auto; padding: 8px; background: white; border: 1px solid var(--line); border-radius: 4px; }
  .nav-toggle span { width: 100%; height: 1px; background: #415b74; }
  .header-cta { display: none; }
  .hero-layout { padding-top: 44px; padding-bottom: 92px; }
  .hero h1 { font-size: clamp(43px,12vw,58px); letter-spacing: -2px; }
  .hero-lead { max-width: 470px; font-size: 12px; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 15px; }
  .device-stage { min-height: 315px; width: calc(100% + 8px); margin-left: -4px; }
  .laptop-device { right: 19px; bottom: 37px; width: calc(100% - 51px); }
  .laptop-lid { padding: 8px 8px 9px; border-radius: 9px 9px 4px 4px; }
  .laptop-camera { top: 3px; width: 3px; height: 3px; }
  .laptop-screen { border-radius: 3px; }
  .laptop-base { height: 9px; }
  .app-browser-bar { height: 16px; gap: 5px; padding: 0 5px; font-size: 5px; }
  .browser-dots i { width: 3px; height: 3px; }
  .browser-address { padding: 2px 5px; }
  .app-screen { grid-template-columns: 52px minmax(0,1fr); font-size: 5px; }
  .app-sidebar { gap: 1px; padding: 5px 3px; }
  .app-brand-mini { gap: 2px; margin-bottom: 4px; font-size: 5px; }
  .app-brand-mini img { width: 10px; height: 10px; }
  .app-sidebar small { margin: 4px 2px 1px; font-size: 3px; letter-spacing: .3px; }
  .app-sidebar span { padding: 3px 2px; }
  .app-main-screen { padding: 5px; }
  .app-breadcrumb { margin-bottom: 4px; font-size: 3px; }
  .app-title-line { margin-bottom: 4px; }.app-title-line small { font-size: 3px; }.app-title-line h2 { font-size: 7px; }.app-avatar { width: 11px; height: 11px; font-size: 5px; }
  .app-tool-grid { gap: 2px; }.app-tool-grid > div { min-height: 28px; padding: 3px; }.app-tool-grid b { font-size: 4px; }.app-tool-grid small { font-size: 3px; }
  .app-lower-grid { gap: 3px; margin-top: 4px; }.mini-section-title { padding: 3px; font-size: 4px; }.mini-section-title span { font-size: 3px; }.mini-row { min-height: 13px; grid-template-columns: 23px minmax(0,1fr) 28px; gap: 2px; padding: 1px 3px; }.mini-row b,.mini-row span,.mini-row i { font-size: 3px; }.app-photo-preview { min-height: 50px; }.app-photo-preview span { padding: 10px 3px 3px; font-size: 3px; }
  .phone-device { right: -1px; bottom: 5px; width: 112px; height: 228px; padding: 5px; border-radius: 21px; }
  .phone-screen { border-radius: 16px; }.phone-island { top: 4px; width: 38px; height: 10px; }.phone-status { height: 18px; padding-inline: 7px; font-size: 4px; }.phone-app-head { height: 20px; gap: 3px; padding-inline: 5px; font-size: 5px; }.phone-app-head img { width: 12px; height: 12px; }.phone-greeting { padding: 6px 6px 4px; }.phone-greeting small { font-size: 3px; }.phone-greeting h3 { font-size: 8px; }.phone-map { height: 72px; margin-inline: 5px; }.phone-map b { left: 5px; bottom: 5px; font-size: 5px; }.phone-map-pin { top: 24px; font-size: 10px; }.phone-card { gap: 3px; margin: 5px; padding: 5px; }.phone-card small { font-size: 3px; }.phone-card b { font-size: 5px; }.phone-card em { font-size: 4px; }.phone-actions { gap: 2px; margin-inline: 5px; }.phone-actions span { padding: 4px 1px; font-size: 3px; }.phone-tabbar { height: 19px; }.phone-tabbar i { font-size: 8px; }.phone-side-button { top: 51px; height: 23px; }
  .device-note { bottom: -4px; max-width: 210px; font-size: 6px; }
  .orbit-section { padding: 48px 0 53px; }
  .section-heading { margin-bottom: 24px; }
  .section-heading h2 { font-size: 30px; letter-spacing: -1px; }
  .orbit-stage { width: min(100%,420px); aspect-ratio: 1; display: block; padding: 0; }
  .orbit-connectors line { stroke-width: .38; }
  .orbit-center { width: 84px; height: 84px; }
  .orbit-center img { width: 25px; height: 25px; margin: 0 0 2px; }.orbit-center b { font-size: 11px; }.orbit-center small { max-width: 65px; margin-top: 2px; font-size: 4px; text-align: center; }
  .orbit-node,.node-1,.node-2,.node-3,.node-4,.node-5,.node-6,.node-7,.node-8,.node-9 { position: absolute; inset: auto; width: 64px; height: 64px; min-height: 0; padding: 4px; border-width: 1.5px; transform: translate(-50%,-50%); border-radius: 50%; }
  .orbit-node:hover,.node-1:hover,.node-2:hover,.node-3:hover,.node-4:hover,.node-5:hover,.node-6:hover,.node-7:hover,.node-8:hover,.node-9:hover { transform: translate(-50%,-50%); }
  .node-glyph { width: 14px; height: 14px; margin-bottom: 3px; }
  .orbit-node b { font-size: 6.5px; line-height: 1.05; }.orbit-node small { display: none; }
  .feature-detail-section { padding-top: 48px; padding-bottom: 55px; }
  .feature-detail-grid { grid-template-columns: 1fr; gap: 12px; }
  .detail-feature-wide { grid-column: auto; display: flex; flex-direction: column; }
  .detail-feature-wide .detail-image { min-height: 225px; }
  .detail-feature-wide .detail-copy { padding: 19px; }
  .detail-image { min-height: 210px; }.detail-copy { padding: 18px 19px; }.detail-copy h3 { font-size: 18px; }
  .all-sections-section { padding: 51px 0 56px; }
  .all-sections-grid { grid-template-columns: 1fr; gap: 9px; }
  .section-card { min-height: 190px; grid-template-columns: minmax(0,1fr) minmax(82px,.56fr); gap: 6px; padding: 14px; }.section-card h3 { font-size: 13px; }.section-card p { font-size: 10px; }.section-illustration { height: 142px; }
  .advantages-section { padding-top: 53px; padding-bottom: 58px; }
  .advantages-heading { margin-bottom: 24px; }.advantages-heading h2 { font-size: 33px; }.advantages-heading p { font-size: 11px; }
  .advantage-flow { grid-template-columns: 1fr; gap: 10px; padding-left: 0; }
  .advantage-flow::before { top: 38px; bottom: 38px; left: 36px; right: auto; width: 2px; height: auto; background: linear-gradient(180deg,#2864e8,#0f9d91,#b266bd,#d98a27,#368457); }
  .advantage-card { min-height: 0; padding: 15px 14px 15px 78px; }
  .advantage-graphic { position: absolute; top: 15px; left: 9px; width: 55px; height: 55px; margin: 0; }
  .advantage-graphic svg { width: 29px; height: 29px; }
  .advantage-card h3 { font-size: 12px; }.advantage-card p { min-height: 0; margin-bottom: 8px; font-size: 10px; }
  .screens-section { padding: 52px 0 58px; }
  .screens-heading { display: block; }.screens-heading .text-link { margin-top: 14px; }
  .screens-grid { grid-template-columns: 1fr; gap: 10px; }.screen-ui { height: 183px; }
  .faq-section { grid-template-columns: 1fr; gap: 19px; padding-top: 53px; padding-bottom: 58px; }
  .faq-intro h2 { font-size: 38px; }.faq-list summary { min-height: 56px; padding-inline: 12px; font-size: 11px; }.faq-list details > p { margin-inline: 12px 42px; }
  .footer-main { grid-template-columns: 1fr 1fr; gap: 28px 20px; padding-top: 34px; padding-bottom: 27px; }
  .footer-brand-column { grid-column: 1 / -1; }.footer-company { grid-column: auto; }
  .footer-bottom { min-height: 55px; flex-wrap: wrap; gap: 6px 12px; padding-block: 10px; }.footer-bottom span:first-child { width: 100%; }
  .policy-dialog { padding: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* Unified LogiPulse landing system */
:root {
  --canvas: #eff3ef;
  --ink: #183247;
  --muted: #617587;
  --line: #d6e0dc;
  --blue: #2364df;
  font-family: "Onest", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
html { scroll-behavior: smooth; scroll-padding-top: 82px; }
body {
  background-color: var(--canvas);
  background-image: radial-gradient(ellipse at 12% 22%,rgba(218,231,224,.62),transparent 33%),radial-gradient(ellipse at 88% 49%,rgba(221,231,235,.56),transparent 36%),linear-gradient(180deg,#eff3ef 0%,#f5f5f0 48%,#edf3ef 100%);
  background-attachment: scroll;
  font-family: "Onest", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body,button,input,select,textarea { font-family: "Onest", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.hero::after { background: var(--canvas); }
.orbit-section,.feature-detail-section,.all-sections-section,.advantages-section,.screens-section,.faq-section { background: transparent; border: 0; }
.all-sections-section::before,.all-sections-section::after { display: none; }
.site-header { background: rgba(248,250,247,.92); border-color: rgba(198,213,207,.72); }
.brand strong,.section-heading h2,.faq-intro h2,.detail-copy h3 { font-weight: 800; }
.hero-copy { animation: hero-rise .72s cubic-bezier(.2,.7,.25,1) both; }
.device-stage { animation: hero-device-in .95s .12s cubic-bezier(.2,.7,.25,1) both; }
@keyframes hero-rise { from { opacity: 0; transform: translateY(21px); } to { opacity: 1; transform: translateY(0); } }
@keyframes hero-device-in { from { opacity: 0; transform: translateY(18px) scale(.985); } to { opacity: 1; transform: translateY(0) scale(1); } }
.hero .button-primary,.lead-submit { background: #2864e8; }
.hero .button-primary:hover,.lead-submit:hover { background: #174fc7; }

/* Saturated, steady orbit */
.orbit-section { padding-top: 72px; padding-bottom: 80px; }
.orbit-stage { width: min(100%,760px); }
.orbit-connectors line { stroke-width: .27; opacity: .88; transition: opacity .25s ease; }
.connector-1 { --node-color:#28589c; }.connector-2 { --node-color:#27806f; }.connector-3 { --node-color:#ad493e; }
.connector-4 { --node-color:#b57a20; }.connector-5 { --node-color:#32724d; }.connector-6 { --node-color:#6754a0; }
.connector-7 { --node-color:#bd554b; }.connector-8 { --node-color:#237990; }.connector-9 { --node-color:#81513d; }
.orbit-node {
  background: var(--node-color);
  border: 2px solid #132a3b;
  box-shadow: 0 10px 22px rgba(23,45,60,.2),inset 0 0 0 4px rgba(255,255,255,.12);
  animation: orbit-drift 5.4s ease-in-out infinite;
  animation-delay: var(--float-delay,0s);
  will-change: auto;
}
.orbit-node:hover { box-shadow: 0 15px 28px rgba(23,45,60,.28),inset 0 0 0 4px rgba(255,255,255,.2); filter: brightness(1.06); }
.node-glyph { stroke: #fff; }
.orbit-node b { color: #fff; font-size: 10px; font-weight: 700; }
.orbit-node small { color: rgba(255,255,255,.9); font-size: 7px; }
.orbit-center { background: #fbfcf8; border: 2px solid #18384c; box-shadow: 0 18px 44px rgba(26,50,66,.17),inset 0 0 0 7px #e7eee9; }
.node-1 { --node-color:#28589c; --float-delay:-.4s; }.node-2 { --node-color:#27806f; --float-delay:-1s; }.node-3 { --node-color:#ad493e; --float-delay:-1.7s; }
.node-4 { --node-color:#b57a20; --float-delay:-2.4s; }.node-5 { --node-color:#32724d; --float-delay:-3.1s; }.node-6 { --node-color:#6754a0; --float-delay:-3.8s; }
.node-7 { --node-color:#bd554b; --float-delay:-4.5s; }.node-8 { --node-color:#237990; --float-delay:-5.2s; }.node-9 { --node-color:#81513d; --float-delay:-5.9s; }
@keyframes orbit-drift { 0%,100% { translate: 0 0; } 50% { translate: 0 -7px; } }

/* Feature narratives */
.feature-detail-section { padding-top: 44px; padding-bottom: 83px; }
.feature-detail-section > .section-heading { max-width: 880px; margin: 0 auto 35px; text-align: center; }
.feature-detail-section > .section-heading h2 { font-size: clamp(30px,4vw,48px); }
.detail-feature { overflow: hidden; border-color: rgba(193,209,202,.9); box-shadow: 0 14px 36px rgba(32,61,73,.07); transition: transform .3s ease,box-shadow .3s ease; }
.detail-feature:hover { transform: translateY(-4px); box-shadow: 0 20px 42px rgba(32,61,73,.12); }
.detail-copy { background: rgba(252,253,249,.88); }

/* Graphic section cards with real color, not pale glow */
.all-sections-section { padding: 75px 0 82px; }
.all-sections-section .section-heading { max-width: 850px; margin-bottom: 35px; }
.all-sections-grid { gap: 16px; }
.section-card {
  min-height: 248px;
  grid-template-columns: minmax(0,1fr) minmax(135px,.65fr);
  padding: 23px;
  color: #fff;
  background: var(--section-color,#28589c);
  border: 1px solid rgba(19,42,59,.2);
  box-shadow: 0 14px 30px rgba(28,52,66,.12);
}
.section-card::before { right: -7%; bottom: -72%; width: 300px; background: rgba(255,255,255,.12); filter: blur(2px); }
.section-card:hover { box-shadow: 0 20px 38px rgba(28,52,66,.2); }
.section-card-workspace { --section-color:#285b78; }.section-card-company { --section-color:#267461; }.section-card-transport { --section-color:#bd5e3b; }
.section-card-expedition { --section-color:#725295; }.section-card-system { --section-color:#287b90; }.section-card-tools { --section-color:#a96f24; }
.section-card-copy { max-width: 100%; }
.section-card h3 { color: #fff; font-size: 18px; font-weight: 800; }
.section-card p { color: rgba(255,255,255,.91); font-size: 11px; line-height: 1.65; }
.section-tags span { padding: 5px 8px; color: #fff; background: rgba(255,255,255,.13); border: 1px solid rgba(255,255,255,.38); border-radius: 5px; font-size: 8px; font-weight: 600; }
.section-illustration { height: 190px; padding: 8px; object-fit: contain; background: rgba(255,255,255,.93); border: 1px solid rgba(255,255,255,.55); border-radius: 13px; filter: drop-shadow(0 12px 16px rgba(10,28,38,.2)); }

/* Advantages as colorful, legible benefit tiles */
.advantages-section { padding-top: 72px; padding-bottom: 80px; }
.advantages-heading { max-width: 920px; margin-bottom: 36px; }
.advantages-heading h2 { font-size: clamp(31px,4vw,47px); font-weight: 800; }
.advantage-flow { gap: 14px; }
.advantage-flow::before { top: 43px; height: 3px; opacity: .85; }
.advantage-card {
  min-height: 268px;
  padding: 19px 16px;
  color: #fff;
  background: var(--benefit-color,#28589c);
  border: 1px solid rgba(13,34,48,.22);
  box-shadow: 0 14px 28px rgba(28,52,66,.14);
  transition: transform .25s ease,box-shadow .25s ease;
}
.advantage-card:hover { transform: translateY(-6px); box-shadow: 0 20px 34px rgba(28,52,66,.22); }
.advantage-graphic { background: rgba(255,255,255,.13); border-color: #12283a; box-shadow: inset 0 0 0 4px rgba(255,255,255,.08); }
.advantage-graphic svg { stroke: #fff; }
.advantage-card h3 { color: #fff; font-size: 14px; font-weight: 800; }
.advantage-card p { min-height: 70px; color: rgba(255,255,255,.88); font-size: 10px; }
.advantage-link { color: #fff; font-size: 9px; }
.advantage-one { --benefit-color:#28589c; --benefit-tint:#d8e5f1; }.advantage-two { --benefit-color:#27806f; --benefit-tint:#d9ece5; }
.advantage-three { --benefit-color:#ad493e; --benefit-tint:#f1ded7; }.advantage-four { --benefit-color:#a96f24; --benefit-tint:#f1e4ce; }.advantage-five { --benefit-color:#65508e; --benefit-tint:#e8def0; }

/* Always-available click-through function scenarios */
.screens-section { padding: 77px 0 84px; }
.screens-heading { margin-bottom: 33px; }
.screens-heading .section-heading,
.screens-heading h2 { font-weight: 800; }
.screen-card {
  padding: 14px;
  background: rgba(252,253,249,.95);
  border: 1px solid #d5e0da;
  border-top: 4px solid var(--screen-accent,#28589c);
  border-radius: 13px;
  box-shadow: 0 12px 26px rgba(32,61,73,.08);
  transition: transform .25s ease,box-shadow .25s ease;
}
.screen-card:hover { transform: translateY(-3px); box-shadow: 0 18px 34px rgba(32,61,73,.13); }
.screen-card:nth-child(6n + 1) { --screen-accent:#28589c; }.screen-card:nth-child(6n + 2) { --screen-accent:#27806f; }
.screen-card:nth-child(6n + 3) { --screen-accent:#ad493e; }.screen-card:nth-child(6n + 4) { --screen-accent:#a96f24; }
.screen-card:nth-child(6n + 5) { --screen-accent:#65508e; }.screen-card:nth-child(6n) { --screen-accent:#237990; }
.screen-heading h3 { font-size: 13px; font-weight: 800; }
.screen-heading p { color: #63798a; font-size: 9px; }
.screen-ui { cursor: default; }
.scenario-button {
  width: 100%; min-height: 37px; display: flex; align-items: center; justify-content: space-between;
  margin-top: 11px; padding: 0 12px; color: var(--screen-accent,#28589c); background: #f2f6f2;
  border: 1px solid rgba(30,70,88,.15); border-radius: 8px; font-size: 10px; font-weight: 700; cursor: pointer;
  transition: color .18s ease,background .18s ease,transform .18s ease;
}
.scenario-button:hover,.scenario-button.is-open { color: #fff; background: var(--screen-accent,#28589c); transform: translateY(-1px); }
.scenario-button span:last-child { font-size: 16px; line-height: 1; }
.scenario-result { margin-top: 9px; padding: 13px; color: #254257; background: #f0f5f0; border: 1px solid #d9e5dc; border-radius: 9px; animation: faq-reveal .2s ease both; }
.scenario-result[hidden] { display: none; }
.scenario-result-tag { display: block; margin-bottom: 4px; color: var(--screen-accent,#28589c); font-size: 8px; font-weight: 700; text-transform: uppercase; letter-spacing: .7px; }
.scenario-result strong { display: block; margin-bottom: 4px; color: #1b3b52; font-size: 11px; font-weight: 800; }
.scenario-result p { margin: 0; color: #546d7e; font-size: 10px; line-height: 1.55; }

/* A single, focused conversion panel */
.lead-section { padding: 28px 0 70px; }
.lead-layout {
  position: relative; display: grid; grid-template-columns: minmax(0,.9fr) minmax(390px,1.1fr); align-items: center; gap: clamp(36px,7vw,95px);
  overflow: hidden; padding: clamp(30px,5.4vw,72px); color: #fff; background: linear-gradient(125deg,#123e53 0%,#1b6670 57%,#287d71 100%); border-radius: 28px; box-shadow: 0 24px 55px rgba(23,62,72,.2);
}
.lead-layout::before,.lead-layout::after { position: absolute; content: ""; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; pointer-events: none; }
.lead-layout::before { width: 440px; aspect-ratio: 1; top: -260px; left: 29%; box-shadow: 0 0 0 34px rgba(255,255,255,.035),0 0 0 72px rgba(255,255,255,.025); }
.lead-layout::after { width: 190px; aspect-ratio: 1; right: 34%; bottom: -140px; background: rgba(255,255,255,.035); }
.lead-copy,.lead-form { position: relative; z-index: 1; }
.lead-kicker { display: flex; align-items: center; gap: 9px; margin-bottom: 17px; color: #c6e8da; font-size: 9px; font-weight: 700; letter-spacing: 1.15px; }
.lead-kicker span { width: 8px; height: 8px; background: #a3d5b4; border: 2px solid rgba(255,255,255,.65); border-radius: 50%; }
.lead-copy h2 { max-width: 550px; margin-bottom: 15px; color: #fff; font-size: clamp(31px,4.1vw,49px); font-weight: 800; line-height: 1.08; letter-spacing: -1.7px; }
.lead-intro { max-width: 490px; margin-bottom: 22px; color: rgba(242,250,247,.86); font-size: 13px; line-height: 1.75; }
.lead-points { display: grid; gap: 10px; margin-bottom: 26px; }
.lead-points span { display: flex; align-items: center; gap: 10px; color: rgba(255,255,255,.94); font-size: 11px; }
.lead-points i { width: 20px; height: 20px; display: grid; place-items: center; color: #164c55; background: #b6dfc8; border-radius: 50%; font-size: 11px; font-style: normal; font-weight: 800; }
.lead-email { display: flex; flex-direction: column; gap: 4px; color: rgba(232,245,240,.7); font-size: 9px; }
.lead-email b { color: #fff; font-size: 11px; }
.lead-form { padding: clamp(19px,3vw,31px); color: #19384c; background: #fbfcf9; border: 1px solid rgba(255,255,255,.75); border-radius: 18px; box-shadow: 0 20px 45px rgba(8,35,46,.2); }
.lead-form-heading { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 20px; }
.lead-form-heading > div:first-child > span { color: #378174; font-size: 8px; font-weight: 700; letter-spacing: 1px; }
.lead-form-heading h3 { margin: 5px 0 0; color: #173c52; font-size: 23px; font-weight: 800; }
.lead-form-mark { width: 42px; height: 42px; display: grid; place-items: center; color: #fff; background: linear-gradient(145deg,#2864e8,#167e73); border-radius: 13px; font-size: 11px; font-weight: 800; }
.lead-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.lead-fields label { display: grid; gap: 6px; color: #526b7b; font-size: 9px; font-weight: 650; }
.lead-fields input,.lead-fields select,.lead-fields textarea { width: 100%; min-height: 41px; padding: 10px 11px; color: #19384c; background: #fff; border: 1px solid #d7e1dd; border-radius: 7px; font-size: 10px; outline: none; transition: border-color .18s ease,box-shadow .18s ease; }
.lead-fields input:focus,.lead-fields select:focus,.lead-fields textarea:focus { border-color: #32867a; box-shadow: 0 0 0 3px rgba(50,134,122,.13); }
.lead-fields input::placeholder,.lead-fields textarea::placeholder { color: #a1afb5; }
.lead-fields select { appearance: none; background-image: linear-gradient(45deg,transparent 50%,#6d818b 50%),linear-gradient(135deg,#6d818b 50%,transparent 50%); background-position: calc(100% - 14px) 17px,calc(100% - 10px) 17px; background-size: 4px 4px,4px 4px; background-repeat: no-repeat; }
.lead-fields .lead-message-label { grid-column: 1 / -1; }
.lead-fields textarea { resize: vertical; min-height: 74px; }
.lead-consent { display: flex; align-items: flex-start; gap: 8px; margin: 13px 0; color: #6c7e88; font-size: 8px; line-height: 1.5; }
.lead-consent input { width: 14px; height: 14px; flex: none; margin: 0; accent-color: #287c70; }
.lead-submit { width: 100%; border: 0; border-radius: 8px; font-size: 11px; cursor: pointer; }
.lead-submit-note { margin: 10px 0 0; color: #7d9098; font-size: 8px; line-height: 1.5; text-align: center; }
.footer-contact-cta { display: inline-flex; margin-top: 2px; padding: 8px 11px; color: #fff; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.25); border-radius: 7px; font-size: 9px; font-weight: 700; }

/* FAQ, responsive behavior and gentle entrances */
.faq-section { padding-top: 65px; padding-bottom: 84px; }
.faq-list details { background: rgba(251,253,249,.8); border-color: #cfddd6; }
.faq-list details[open] { background: #fff; border-color: #72a99a; }
.faq-list summary span { color: #fff; background: #28786e; }
html.motion-ready [data-reveal] { opacity: 1; filter: none; transition: none; }
.section-card,.advantage-card,.screen-card,.detail-feature { will-change: auto; }
@media (max-width: 1160px) {
  .orbit-node { width: 126px; height: 126px; }
  .lead-layout { gap: 38px; padding: 40px; }
}
@media (max-width: 900px) {
  .lead-layout { grid-template-columns: 1fr; gap: 28px; }
  .lead-copy { max-width: 700px; }
}
@media (max-width: 640px) {
  html { scroll-padding-top: 68px; }
  .orbit-node,.node-1,.node-2,.node-3,.node-4,.node-5,.node-6,.node-7,.node-8,.node-9 { width: 64px; height: 64px; }
  .orbit-node small { display: none; }
  .orbit-center small { display: none; }
  .orbit-node b { font-size: 6.5px; }
  .section-card { min-height: 205px; grid-template-columns: minmax(0,1fr) minmax(82px,.56fr); padding: 15px; }
  .section-card h3 { font-size: 14px; }
  .section-card p { font-size: 9px; }
  .section-illustration { height: 146px; padding: 5px; }
  .advantage-card { min-height: 0; }
  .lead-section { padding: 8px 0 41px; }
  .lead-layout { width: calc(100% - 24px); gap: 23px; padding: 26px 17px; border-radius: 20px; }
  .lead-copy h2 { font-size: 34px; }
  .lead-intro { font-size: 11px; }
  .lead-form { padding: 17px 13px; border-radius: 14px; }
  .lead-form-heading h3 { font-size: 20px; }
  .lead-fields { grid-template-columns: 1fr; gap: 10px; }
  .lead-fields .lead-message-label { grid-column: auto; }
  .faq-section { padding-top: 42px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .orbit-node,.hero-copy,.device-stage { animation: none !important; }
  html.motion-ready [data-reveal] { opacity: 1; filter: none; transition: none; }
}

/* LogiPulse 2026 refresh: smooth motion, functional modules and clear conversion */
:root { --header-height: 82px; }
html { scroll-padding-top: var(--header-height); }
@media (max-width: 640px) { :root { --header-height: 68px; } }

.hero-actions { gap: 15px; }
.hero-actions .text-link { padding-inline: 5px; }
.header-cta { font-size: 12px; }

/* Nine features now form one readable, full-width dashboard-like grid. */
.orbit-section { padding: clamp(50px,6vw,76px) 0 clamp(58px,6vw,78px); }
.orbit-section .section-heading { max-width: 940px; margin-bottom: 29px; }
.orbit-section .section-heading h2 { font-weight: 800; }
.orbit-section .section-heading > p { margin: 0; }
.function-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; }
.function-card {
  --function-color: #245992;
  position: relative; isolation: isolate; min-width: 0; min-height: 132px;
  display: grid; grid-template-columns: 54px minmax(0,1fr) 24px; align-items: center; gap: 15px;
  overflow: hidden; padding: 20px 21px; color: #fff; background: var(--function-color);
  border: 1px solid rgba(12,31,44,.32); border-radius: 17px;
  box-shadow: 0 12px 25px rgba(22,49,66,.13); transition: transform .24s ease,box-shadow .24s ease,filter .24s ease;
}
.function-card::before { position: absolute; z-index: -1; content: ""; right: -42px; bottom: -74px; width: 180px; height: 180px; border: 1px solid rgba(255,255,255,.17); border-radius: 50%; box-shadow: 0 0 0 20px rgba(255,255,255,.045),0 0 0 42px rgba(255,255,255,.03); }
.function-card:hover { transform: translateY(-4px); box-shadow: 0 18px 34px rgba(22,49,66,.2); filter: saturate(1.07); }
.function-card-1 { --function-color: #245992; }.function-card-2 { --function-color: #147565; }.function-card-3 { --function-color: #a4493d; }
.function-card-4 { --function-color: #a66a1d; }.function-card-5 { --function-color: #34734c; }.function-card-6 { --function-color: #63518e; }
.function-card-7 { --function-color: #b55543; }.function-card-8 { --function-color: #23758a; }.function-card-9 { --function-color: #85523d; }
.function-icon { width: 52px; height: 52px; display: grid; place-items: center; color: #fff; background: rgba(11,26,37,.21); border: 1px solid rgba(255,255,255,.35); border-radius: 15px; }
.function-icon svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.function-card h3 { margin: 0 0 5px; color: #fff; font-size: 17px; line-height: 1.2; font-weight: 800; }
.function-card p { max-width: 300px; margin: 0; color: rgba(255,255,255,.9); font-size: 12px; line-height: 1.45; }
.function-arrow { align-self: start; padding-top: 3px; color: rgba(255,255,255,.84); font-size: 18px; transition: transform .2s ease; }
.function-card:hover .function-arrow { transform: translate(2px,-2px); }

/* Tabbed feature explorer follows the visual language of the product. */
.feature-explorer-section { padding: 25px 0 clamp(62px,7vw,94px); }
.feature-explorer-section .section-heading { max-width: 900px; margin: 0 auto 24px; }
.feature-explorer-section .section-heading h2 { font-weight: 800; }
.feature-explorer-section .section-heading p { margin: 0; }
.feature-explorer-tabs { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 9px; margin-bottom: 13px; }
.feature-explorer-tabs [role="tab"] {
  min-height: 62px; display: flex; align-items: center; justify-content: center; gap: 9px; padding: 10px 12px;
  color: #2d4e68; background: #e4ebe4; border: 1px solid #ced9d1; border-radius: 12px;
  font-size: 13px; font-weight: 700; line-height: 1.2; cursor: pointer; transition: color .2s ease,background .2s ease,transform .2s ease,border-color .2s ease;
}
.feature-explorer-tabs [role="tab"] span { width: 30px; height: 30px; flex: none; display: grid; place-items: center; color: #fff; background: #285f91; border-radius: 9px; font-size: 15px; }
.feature-explorer-tabs [role="tab"]:nth-child(2) span { background: #147565; }.feature-explorer-tabs [role="tab"]:nth-child(3) span { background: #a4493d; }
.feature-explorer-tabs [role="tab"]:nth-child(4) span { background: #a66a1d; }.feature-explorer-tabs [role="tab"]:nth-child(5) span { background: #63518e; }.feature-explorer-tabs [role="tab"]:nth-child(6) span { background: #23758a; }
.feature-explorer-tabs [role="tab"]:hover,.feature-explorer-tabs [role="tab"][aria-selected="true"] { color: #fff; background: #183b54; border-color: #183b54; transform: translateY(-2px); }
.feature-explorer-tabs [role="tab"]:focus-visible { outline: 3px solid #4e85ef; outline-offset: 3px; }
.feature-explorer-panel { min-height: 390px; display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); overflow: hidden; background: rgba(250,251,247,.92); border: 1px solid #d4ded7; border-radius: 22px; box-shadow: 0 18px 40px rgba(24,49,62,.09); }
.feature-explorer-copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(28px,4vw,52px); }
.feature-explorer-kicker { margin-bottom: 12px; color: #2b776c; font-size: 11px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; }
.feature-explorer-copy h3 { max-width: 530px; margin: 0 0 12px; color: #173b54; font-size: clamp(25px,3vw,37px); line-height: 1.13; letter-spacing: -1px; font-weight: 800; }
.feature-explorer-copy > p { max-width: 540px; margin: 0 0 17px; color: #526d7c; font-size: 14px; line-height: 1.7; }
.feature-explorer-points { display: grid; gap: 9px; margin: 0 0 23px; padding: 0; list-style: none; }
.feature-explorer-points li { display: flex; align-items: flex-start; gap: 9px; color: #314e62; font-size: 12px; line-height: 1.45; }
.feature-explorer-points li::before { content: "✓"; width: 19px; height: 19px; flex: none; display: grid; place-items: center; color: #fff; background: #28796c; border-radius: 6px; font-size: 11px; font-weight: 800; }
.feature-explorer-copy .text-link { font-size: 12px; }
.feature-explorer-visual { position: relative; min-height: 390px; overflow: hidden; background: #183850; }
.feature-explorer-visual::after { position: absolute; inset: 35% 0 0; content: ""; background: linear-gradient(transparent,rgba(8,28,43,.7)); pointer-events: none; }
.feature-explorer-visual > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .65s cubic-bezier(.2,.7,.25,1),opacity .3s ease; }
.feature-explorer-visual.is-changing > img { animation: explorer-image-in .55s ease both; }
@keyframes explorer-image-in { from { opacity: .45; transform: scale(1.04); } to { opacity: 1; transform: scale(1); } }
.feature-visual-glass { position: absolute; z-index: 2; right: clamp(18px,4vw,44px); bottom: clamp(18px,4vw,38px); min-width: min(270px,calc(100% - 36px)); display: grid; gap: 7px; padding: 17px 19px; color: #fff; background: rgba(17,45,63,.89); border: 1px solid rgba(255,255,255,.35); border-radius: 14px; box-shadow: 0 12px 35px rgba(3,17,29,.28); backdrop-filter: blur(12px); }
.feature-visual-glass > span { color: #a5d4c4; font-size: 9px; font-weight: 800; letter-spacing: 1px; }
.feature-visual-glass b { font-size: 18px; font-weight: 800; }.feature-visual-glass b i { padding: 0 7px; color: #a5d4c4; font-style: normal; }
.feature-visual-glass small { color: rgba(241,248,246,.82); font-size: 11px; }
.feature-visual-orbit { position: absolute; z-index: 1; top: 16%; left: 16%; width: 165px; aspect-ratio: 1; border: 1px solid rgba(255,255,255,.48); border-radius: 50%; animation: visual-orbit 18s linear infinite; }
.feature-visual-orbit::before,.feature-visual-orbit::after { position: absolute; content: ""; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; inset: 18px; }
.feature-visual-orbit::after { inset: 42px; }
.feature-visual-orbit span { position: absolute; width: 11px; height: 11px; background: #e3aa51; border: 2px solid #fff; border-radius: 50%; box-shadow: 0 0 18px rgba(255,255,255,.65); }
.feature-visual-orbit span:nth-child(1) { top: 6%; left: 55%; }.feature-visual-orbit span:nth-child(2) { right: 9%; bottom: 25%; background: #74c4a0; }.feature-visual-orbit span:nth-child(3) { bottom: 10%; left: 18%; background: #6da6ec; }
@keyframes visual-orbit { to { transform: rotate(360deg); } }

/* The AI section is a distinct editorial moment, with a real interactive example. */
.ai-feature-section { padding: 5px 0 clamp(65px,7vw,94px); }
.ai-feature-shell { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(0,.87fr) minmax(0,1.13fr); align-items: center; gap: clamp(35px,6vw,78px); overflow: hidden; padding: clamp(32px,5vw,66px); color: #fff; background: linear-gradient(118deg,#122a42 0%,#173e56 55%,#174a50 100%); border: 1px solid rgba(10,36,53,.55); border-radius: 28px; box-shadow: 0 24px 52px rgba(18,48,63,.2); }
.ai-feature-shell::before { position: absolute; z-index: -1; top: -230px; left: 10%; width: 440px; aspect-ratio: 1; content: ""; border: 1px solid rgba(150,210,195,.18); border-radius: 50%; box-shadow: 0 0 0 38px rgba(150,210,195,.035),0 0 0 80px rgba(150,210,195,.025); }
.ai-feature-kicker { display: flex; align-items: center; gap: 9px; margin: 0 0 16px; color: #a8decf; font-size: 11px; font-weight: 800; letter-spacing: 1.4px; }
.ai-feature-kicker span { width: 29px; height: 29px; display: grid; place-items: center; color: #15344a; background: #a8decf; border-radius: 9px; font-size: 18px; }
.ai-feature-copy h2 { max-width: 570px; margin: 0 0 14px; color: #fff; font-size: clamp(30px,4vw,49px); font-weight: 800; line-height: 1.08; letter-spacing: -1.7px; }
.ai-feature-copy > p:not(.ai-feature-kicker) { max-width: 525px; margin: 0 0 21px; color: rgba(239,247,246,.83); font-size: 14px; line-height: 1.7; }
.ai-feature-points { display: grid; gap: 10px; margin: 0 0 18px; }
.ai-feature-points span { display: flex; align-items: center; gap: 11px; color: rgba(248,251,250,.94); font-size: 12px; }
.ai-feature-points i { width: 27px; height: 27px; flex: none; display: grid; place-items: center; color: #bde6d8; background: rgba(152,218,197,.13); border: 1px solid rgba(163,221,203,.38); border-radius: 9px; font-size: 9px; font-style: normal; font-weight: 800; }
.ai-feature-note { display: block; max-width: 500px; color: rgba(232,243,240,.58); font-size: 10px; line-height: 1.55; }
.ai-demo-console { min-width: 0; overflow: hidden; color: #193c51; background: #f8faf6; border: 1px solid rgba(255,255,255,.65); border-radius: 19px; box-shadow: 0 20px 44px rgba(5,24,37,.28); }
.ai-console-top { min-height: 69px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 18px; border-bottom: 1px solid #dbe5df; }
.ai-console-brand { display: flex; align-items: center; gap: 10px; }
.ai-spark { width: 38px; height: 38px; display: grid; place-items: center; color: #fff; background: #245f8d; border-radius: 12px; font-size: 21px; }
.ai-console-brand > span:last-child { display: grid; gap: 2px; }.ai-console-brand b { font-size: 14px; font-weight: 800; }.ai-console-brand small { color: #708494; font-size: 9px; }
.ai-online { display: flex; align-items: center; gap: 6px; color: #527769; font-size: 8px; font-weight: 800; letter-spacing: .4px; }
.ai-online i { width: 7px; height: 7px; background: #3d9b75; border-radius: 50%; box-shadow: 0 0 0 4px rgba(61,155,117,.13); }
.ai-console-body { position: relative; min-height: 345px; padding: 21px; }
.ai-visualizer { position: absolute; top: 3px; right: 16px; width: 112px; height: 112px; }
.ai-visual-core { position: absolute; z-index: 2; inset: 33px; display: grid; place-items: center; color: #fff; background: linear-gradient(145deg,#225f91,#287b70); border: 1px solid rgba(255,255,255,.65); border-radius: 50%; box-shadow: 0 9px 19px rgba(31,93,123,.28); font-size: 18px; font-weight: 800; animation: ai-core-pulse 3.3s ease-in-out infinite; }
.ai-ring { position: absolute; inset: 17px; border: 1px solid rgba(39,120,112,.3); border-radius: 50%; animation: ai-ring 3.8s ease-out infinite; }
.ai-ring-two { animation-delay: 1.25s; }.ai-ring-three { animation-delay: 2.5s; }
.ai-particle { position: absolute; width: 7px; height: 7px; background: #d79836; border-radius: 50%; animation: ai-particle 5s linear infinite; }
.ai-particle-one { top: 13px; left: 56px; }.ai-particle-two { right: 7px; bottom: 31px; background: #32897c; animation-delay: -1.7s; }.ai-particle-three { bottom: 11px; left: 27px; background: #4278b7; animation-delay: -3.3s; }
@keyframes ai-ring { 0% { transform: scale(.55); opacity: .8; } 100% { transform: scale(1.45); opacity: 0; } }
@keyframes ai-core-pulse { 50% { transform: scale(1.06); box-shadow: 0 13px 26px rgba(31,93,123,.36); } }
@keyframes ai-particle { 0% { transform: rotate(0deg) translateX(36px) rotate(0deg); } 100% { transform: rotate(360deg) translateX(36px) rotate(-360deg); } }
.ai-sample-label { margin: 4px 0 8px; color: #758995; font-size: 9px; font-weight: 800; letter-spacing: 1px; }
.ai-query { max-width: 76%; margin-bottom: 19px; padding: 12px 15px; color: #fff; background: #2864df; border-radius: 13px 13px 4px 13px; font-size: 13px; font-weight: 650; line-height: 1.45; }
.ai-response-card { position: relative; z-index: 1; max-width: 94%; padding: 15px 16px; background: #edf3ee; border: 1px solid #d7e3db; border-radius: 4px 13px 13px 13px; }
.ai-response-card > span { display: block; margin-bottom: 5px; color: #548173; font-size: 8px; font-weight: 800; letter-spacing: .85px; }
.ai-response-card strong { display: block; margin-bottom: 5px; color: #1c4558; font-size: 14px; font-weight: 800; }
.ai-response-card p { margin: 0; color: #5b7180; font-size: 11px; line-height: 1.6; }
.ai-response-card.is-updating { animation: ai-answer-in .32s ease both; }
@keyframes ai-answer-in { from { opacity: .45; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } }
.ai-prompt-list { display: flex; flex-wrap: wrap; gap: 7px; padding: 12px 16px 15px; border-top: 1px solid #dbe5df; }
.ai-prompt { min-height: 34px; padding: 7px 11px; color: #37566a; background: #e8eee9; border: 1px solid #d0dbd3; border-radius: 9px; font-size: 10px; font-weight: 700; cursor: pointer; transition: color .18s ease,background .18s ease,transform .18s ease; }
.ai-prompt:hover,.ai-prompt.is-active { color: #fff; background: #236b70; transform: translateY(-1px); }
.ai-prompt:focus-visible { outline: 3px solid #74aaee; outline-offset: 2px; }

/* Concrete operating outcomes, without fabricated percentages or promises. */
.results-section { padding: 5px 0 clamp(64px,7vw,91px); }
.results-section .section-heading { max-width: 930px; margin: 0 auto 27px; }
.results-section .section-heading h2 { font-weight: 800; }
.results-section .section-heading p { font-size: 14px; line-height: 1.6; }
.results-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.result-card { min-width: 0; min-height: 195px; padding: 20px; color: #fff; background: var(--result-color); border: 1px solid rgba(14,39,54,.28); border-radius: 16px; box-shadow: 0 12px 25px rgba(23,49,65,.12); transition: transform .23s ease,box-shadow .23s ease; }
.result-card:hover { transform: translateY(-4px); box-shadow: 0 18px 32px rgba(23,49,65,.2); }
.result-card-blue { --result-color:#285b86; }.result-card-green { --result-color:#267461; }.result-card-orange { --result-color:#a56622; }.result-card-violet { --result-color:#62528c; }
.result-flow { min-height: 31px; display: flex; align-items: center; gap: 7px; margin-bottom: 18px; }
.result-flow b { padding: 5px 8px; color: #fff; background: rgba(12,29,41,.2); border: 1px solid rgba(255,255,255,.34); border-radius: 7px; font-size: 9px; font-weight: 700; }
.result-flow i { color: rgba(255,255,255,.8); font-size: 13px; font-style: normal; }
.result-card h3 { margin: 0 0 7px; color: #fff; font-size: 16px; line-height: 1.25; font-weight: 800; }
.result-card p { margin: 0; color: rgba(255,255,255,.88); font-size: 11px; line-height: 1.55; }
.results-cta { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 22px; padding: 16px 19px; background: rgba(250,252,248,.78); border: 1px solid #d6e0d8; border-radius: 14px; }
.results-cta p { margin: 0; color: #34556a; font-size: 13px; font-weight: 650; }
.results-cta .button { flex: none; }

/* A clearer lead step: users can select a presentation or trial request. */
.lead-layout { background: linear-gradient(125deg,#153c55 0%,#176b69 56%,#287e70 100%); }
.lead-form-heading > div:first-child > span { color: #347d71; }
.lead-fields .lead-intent-label { grid-column: 1 / -1; }
.lead-form-heading h3 { font-size: 22px; }
.lead-submit { min-height: 48px; font-size: 13px; }
.lead-submit-note { font-size: 9px; }
.section-card h3 { font-size: 20px; }
.section-card p { font-size: 13px; }
.section-tags { gap: 7px; }
.section-tags span { padding: 7px 10px; color: #fff; background: rgba(12,29,41,.2); border: 0; border-radius: 999px; font-size: 11px; font-weight: 700; }

@media (max-width: 1050px) {
  .function-card { min-height: 123px; grid-template-columns: 47px minmax(0,1fr) 18px; gap: 12px; padding: 17px; }
  .function-icon { width: 45px; height: 45px; }
  .function-card h3 { font-size: 15px; }
  .function-card p { font-size: 11px; }
  .feature-explorer-tabs { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .feature-explorer-tabs [role="tab"] { min-height: 54px; }
  .ai-feature-shell { gap: 32px; padding: 38px; }
  .results-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .function-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
  .function-card { min-height: 120px; }
  .feature-explorer-panel { grid-template-columns: 1fr; }
  .feature-explorer-copy { padding: 28px; }
  .feature-explorer-visual { min-height: 320px; }
  .ai-feature-shell { grid-template-columns: 1fr; padding: 30px; }
  .ai-feature-copy { max-width: 660px; }
  .ai-demo-console { width: min(100%,650px); margin-inline: auto; }
}
@media (max-width: 560px) {
  :root { --header-height: 68px; }
  .hero-actions { align-items: stretch; }
  .hero-actions .button-primary { min-height: 48px; white-space: normal; text-align: center; }
  .orbit-section { padding-block: 48px 55px; }
  .function-grid { grid-template-columns: 1fr; }
  .function-card { min-height: 108px; grid-template-columns: 48px minmax(0,1fr) 19px; padding: 16px; border-radius: 14px; }
  .function-icon { width: 44px; height: 44px; border-radius: 13px; }
  .function-card h3 { font-size: 16px; }
  .function-card p { font-size: 12px; }
  .feature-explorer-section { padding-top: 10px; }
  .feature-explorer-tabs { display: flex; overflow-x: auto; gap: 7px; margin-right: -18px; padding: 2px 18px 10px 0; scroll-snap-type: x mandatory; }
  .feature-explorer-tabs [role="tab"] { flex: 0 0 auto; min-height: 47px; justify-content: flex-start; padding: 8px 11px; font-size: 11px; scroll-snap-align: start; }
  .feature-explorer-tabs [role="tab"] span { width: 27px; height: 27px; }
  .feature-explorer-copy { padding: 22px 19px 25px; }
  .feature-explorer-copy h3 { font-size: 27px; }
  .feature-explorer-copy > p { font-size: 12px; }
  .feature-explorer-points li { font-size: 11px; }
  .feature-explorer-visual { min-height: 250px; }
  .feature-visual-orbit { width: 105px; }
  .feature-visual-glass { min-width: 220px; padding: 12px 14px; }
  .feature-visual-glass b { font-size: 15px; }
  .ai-feature-section { padding-bottom: 57px; }
  .ai-feature-shell { width: calc(100% - 20px); gap: 23px; padding: 24px 16px; border-radius: 20px; }
  .ai-feature-copy h2 { font-size: 33px; letter-spacing: -1.1px; }
  .ai-feature-copy > p:not(.ai-feature-kicker) { font-size: 12px; }
  .ai-feature-points span { align-items: flex-start; font-size: 11px; }
  .ai-demo-console { border-radius: 14px; }
  .ai-console-top { min-height: 60px; padding: 10px 12px; }
  .ai-online { font-size: 7px; }
  .ai-console-body { min-height: 315px; padding: 17px 13px; }
  .ai-visualizer { top: 3px; right: 3px; transform: scale(.8); transform-origin: top right; }
  .ai-query { max-width: 83%; font-size: 11px; }
  .ai-response-card { max-width: 100%; }
  .ai-response-card p { font-size: 10px; }
  .ai-prompt-list { gap: 6px; padding: 10px; }
  .ai-prompt { font-size: 9px; }
  .results-grid { grid-template-columns: 1fr; gap: 9px; }
  .result-card { min-height: 0; padding: 17px; }
  .result-flow { margin-bottom: 12px; }
  .results-cta { align-items: stretch; flex-direction: column; }
  .results-cta .button { white-space: normal; }
  .lead-fields .lead-intent-label { grid-column: auto; }
}
@media (prefers-reduced-motion: reduce) {
  .function-card,.feature-visual-orbit,.ai-ring,.ai-particle,.ai-visual-core { animation: none !important; transition-duration: .01ms !important; }
}

/* Stable scrolling and a calmer, consistent LogiPulse product language. */
body {
  background-attachment: scroll;
  background-image: linear-gradient(180deg,#f1f5f8 0%,#f7f9fb 42%,#eef3f8 100%);
}
.site-header { background: #f8fafc; backdrop-filter: none; -webkit-backdrop-filter: none; }
.section-card,.screen-card,.detail-feature { will-change: auto; }
html.motion-ready [data-reveal] { opacity: 1; filter: none; transition: none; }

/* Nine tools, grouped by the actual flow of a transport company. */
.orbit-section { padding: clamp(56px,7vw,88px) 0 clamp(60px,7vw,88px); }
.tools-intro { max-width: 820px; margin: 0 auto 32px; text-align: center; }
.tools-kicker { margin: 0 0 10px; color: #2864e8; font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.tools-intro h2 { margin: 0 auto 12px; color: #142f49; font-size: clamp(30px,4vw,48px); font-weight: 800; line-height: 1.12; letter-spacing: -.045em; }
.tools-intro > p:last-child { max-width: 650px; margin: 0 auto; color: #62778c; font-size: 15px; line-height: 1.65; }
.tools-overview { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.tool-group { min-width: 0; padding: 21px; background: #fff; border: 1px solid #d7e2ec; border-radius: 16px; box-shadow: 0 10px 28px rgba(26,52,76,.055); }
.tool-group-heading { min-height: 76px; display: flex; align-items: flex-start; gap: 13px; padding-bottom: 15px; border-bottom: 1px solid #e4ebf1; }
.tool-group-icon { width: 44px; height: 44px; flex: none; display: grid; place-items: center; color: #2864e8; background: #edf3ff; border-radius: 12px; }
.tool-group-icon svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.tool-group-heading > div { min-width: 0; }
.tool-group-heading > div > span { color: #8393a3; font-size: 9px; font-weight: 800; letter-spacing: .1em; }
.tool-group-heading h3 { margin: 4px 0 0; color: #1b344d; font-size: 17px; font-weight: 750; line-height: 1.3; }
.tool-list { display: grid; gap: 5px; padding-top: 8px; }
.tool-row { min-width: 0; display: grid; grid-template-columns: 36px minmax(0,1fr) 16px; align-items: center; gap: 11px; padding: 10px 8px; color: #25415b; border-radius: 10px; transition: background-color .18s ease,color .18s ease; }
.tool-row > svg { width: 34px; height: 34px; padding: 8px; color: #526f8b; background: #f1f5f8; border-radius: 9px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; transition: color .18s ease,background-color .18s ease; }
.tool-row > span { min-width: 0; display: grid; gap: 2px; }
.tool-row b { overflow: hidden; color: inherit; font-size: 12px; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.tool-row small { overflow: hidden; color: #718397; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.tool-row > i { color: #8b9aaa; font-size: 14px; font-style: normal; transition: color .18s ease,transform .18s ease; }
.tool-row:hover,.tool-row:focus-visible { color: #fff; background: #2864e8; }
.tool-row:hover > svg,.tool-row:focus-visible > svg { color: #2864e8; background: #fff; }
.tool-row:hover small,.tool-row:focus-visible small,.tool-row:hover > i,.tool-row:focus-visible > i { color: rgba(255,255,255,.82); }
.tool-row:hover > i,.tool-row:focus-visible > i { transform: translate(2px,-2px); }

/* Feature selector: brand-blue states, crisp icons, no image ornaments. */
.feature-explorer-tabs [role="tab"] { min-height: 58px; color: #39536d; background: #fff; border-color: #d7e2ec; transform: none; }
.feature-explorer-tabs [role="tab"] svg { width: 20px; height: 20px; flex: none; fill: none; stroke: #607991; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.feature-explorer-tabs [role="tab"]:hover,.feature-explorer-tabs [role="tab"][aria-selected="true"] { color: #fff; background: #2864e8; border-color: #2864e8; transform: none; }
.feature-explorer-tabs [role="tab"]:hover svg,.feature-explorer-tabs [role="tab"][aria-selected="true"] svg { stroke: #fff; }
.feature-explorer-panel { background: #fff; border-color: #d9e3ec; box-shadow: 0 14px 34px rgba(24,49,72,.07); }
.feature-explorer-kicker { color: #2864e8; }
.feature-explorer-points li::before { background: #2864e8; }
.feature-explorer-visual { background: #e8eef4; }
.feature-explorer-visual::after { display: none; }
.feature-explorer-visual > img { transition: none; }
.feature-explorer-visual.is-changing > img { animation: none; }

/* Section artwork is transparent; let the saturated card color show through. */
.section-card::before { display: none; }
.section-illustration { height: 190px; padding: 0; object-fit: contain; background: transparent; border: 0; border-radius: 0; filter: drop-shadow(0 10px 12px rgba(10,28,38,.12)); }

/* AI: product-like interface rather than a decorative sci-fi panel. */
.ai-feature-section { padding: 8px 0 clamp(62px,7vw,90px); }
.ai-feature-shell { grid-template-columns: minmax(0,.84fr) minmax(0,1.16fr); gap: clamp(28px,5vw,64px); padding: clamp(28px,4.5vw,58px); color: #1b344d; background: #fff; border: 1px solid #d7e2ec; border-radius: 22px; box-shadow: 0 16px 38px rgba(26,52,76,.08); }
.ai-feature-shell::before { display: none; }
.ai-feature-kicker { color: #2864e8; font-size: 10px; letter-spacing: .09em; }
.ai-feature-kicker span { width: 34px; height: 34px; color: #fff; background: #2864e8; border-radius: 10px; font-size: 13px; }
.ai-feature-copy h2 { color: #142f49; font-size: clamp(29px,3.4vw,43px); letter-spacing: -.04em; }
.ai-feature-copy > p:not(.ai-feature-kicker) { color: #63788d; font-size: 13px; }
.ai-capabilities { display: grid; gap: 0; margin: 18px 0 16px; border-top: 1px solid #e3eaf0; }
.ai-capabilities article { display: flex; align-items: flex-start; gap: 12px; padding: 13px 0; border-bottom: 1px solid #e3eaf0; }
.ai-capabilities article > svg { width: 34px; height: 34px; flex: none; padding: 8px; color: #2864e8; background: #edf3ff; border-radius: 9px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.ai-capabilities article > div { display: grid; gap: 3px; }
.ai-capabilities b { color: #1a3854; font-size: 12px; }
.ai-capabilities article span { color: #718496; font-size: 10px; line-height: 1.5; }
.ai-feature-note { color: #8292a1; font-size: 9px; }
.ai-demo-console { background: #fff; border: 1px solid #d7e2ec; border-radius: 16px; box-shadow: 0 14px 30px rgba(27,52,74,.09); }
.ai-console-top { min-height: 64px; background: #fbfcfe; border-bottom-color: #e2e9ef; }
.ai-console-brand { gap: 9px; }
.ai-console-brand img { width: 35px; height: 35px; object-fit: contain; }
.ai-console-brand b { color: #1b3650; font-size: 13px; }
.ai-console-brand small { color: #718398; font-size: 9px; }
.ai-context-label { padding: 6px 9px; color: #2864e8; background: #edf3ff; border-radius: 6px; font-size: 8px; font-weight: 800; letter-spacing: .06em; }
.ai-chat-preview { display: grid; gap: 9px; padding: 20px 20px 14px; }
.ai-message-label { display: block; color: #8393a3; font-size: 8px; font-weight: 800; letter-spacing: .08em; }
.ai-query { max-width: 86%; margin: 0 0 8px auto; padding: 11px 14px; background: #2864e8; border-radius: 12px 12px 3px 12px; font-size: 11px; }
.ai-response-card { max-width: none; padding: 15px; background: #f6f8fb; border-color: #e1e8ef; border-radius: 12px; }
.ai-answer-title-row { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 10px; }
.ai-answer-title-row > div { display: grid; gap: 4px; }
.ai-answer-mark { width: 30px; height: 30px; flex: none; display: grid; place-items: center; color: #fff; background: #2864e8; border-radius: 8px; }
.ai-answer-mark svg,.ai-source-note svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.ai-response-card strong { margin: 0; color: #1a3854; font-size: 12px; line-height: 1.4; }
.ai-response-card p { color: #526b81; font-size: 11px; line-height: 1.65; }
.ai-answer-next { display: grid; gap: 4px; margin-top: 12px; padding: 10px 12px; background: #eaf1fb; border-left: 3px solid #2864e8; border-radius: 0 7px 7px 0; }
.ai-answer-next span { color: #6b83a0; font-size: 7px; font-weight: 800; letter-spacing: .08em; }
.ai-answer-next b { color: #224a74; font-size: 10px; line-height: 1.5; }
.ai-source-note { display: flex; align-items: center; gap: 7px; color: #74879a; font-size: 9px; }
.ai-source-note svg { color: #438a70; }
.ai-prompt-list { border-top-color: #e2e9ef; }
.ai-prompt { color: #3b5873; background: #f6f8fb; border-color: #dbe5ee; }
.ai-prompt:hover,.ai-prompt.is-active { color: #fff; background: #2864e8; border-color: #2864e8; transform: none; }

/* Three leading product screens, followed by an accessible horizontal lane. */
.screens-section { padding: clamp(58px,7vw,84px) 0 clamp(64px,7vw,90px); background: transparent; border: 0; }
.screens-heading { margin-bottom: 26px; }
.screens-heading h2 { color: #142f49; font-weight: 800; }
.screens-heading > div > p:last-child { color: #63788d; font-size: 13px; }
.screens-featured { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); align-items: start; gap: 15px; }
.screens-featured .screen-card { width: auto; }
.screens-more { margin-top: 29px; padding-top: 21px; border-top: 1px solid #d6e1eb; }
.screens-more-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 14px; }
.screens-more-heading h3 { margin: 0 0 3px; color: #1d3a55; font-size: 15px; font-weight: 800; }
.screens-more-heading p { margin: 0; color: #7a8c9c; font-size: 10px; }
.screens-motion-toggle { min-height: 36px; display: inline-flex; align-items: center; gap: 8px; flex: none; padding: 0 12px; color: #3c5872; background: #fff; border: 1px solid #d3dfeb; border-radius: 8px; font-size: 10px; font-weight: 700; cursor: pointer; }
.screens-motion-toggle:hover { color: #2864e8; border-color: #2864e8; }
.screens-track-viewport { overflow-x: auto; overflow-y: hidden; overscroll-behavior-x: contain; scrollbar-width: none; scroll-behavior: auto; touch-action: pan-x; }
.screens-track-viewport::-webkit-scrollbar { display: none; }
.screens-track { display: flex; width: max-content; }
.screens-track-group { display: flex; flex: none; align-items: stretch; gap: 14px; width: max-content; padding-right: 14px; }
.screens-track-group .screen-card { flex: 0 0 min(430px,30vw); width: min(430px,30vw); }
.screens-featured .screen-card,.screens-track .screen-card { padding: 15px; background: #fff; border-color: #d5e0ea; border-radius: 12px; box-shadow: 0 9px 25px rgba(22,51,78,.06); }
.screens-featured .screen-heading h3,.screens-track .screen-heading h3 { font-size: 13px; }
.screens-featured .screen-heading p,.screens-track .screen-heading p { font-size: 9px; }
.screens-featured .screen-ui,.screens-track .screen-ui { height: 190px; border-color: #dce5ee; border-radius: 8px; }
.screens-featured .scenario-button,.screens-track .scenario-button { min-height: 36px; margin-top: 10px; padding-inline: 11px; color: #31516d; background: #f4f7fb; border-color: #dce5ee; }
.screens-featured .scenario-button:hover,.screens-track .scenario-button:hover,.screens-featured .scenario-button.is-open,.screens-track .scenario-button.is-open { color: #fff; background: #2864e8; border-color: #2864e8; }

/* A single clear trial conversion, in the product's blue and navy palette. */
.lead-section { padding: 20px 0 clamp(56px,7vw,84px); }
.lead-layout { grid-template-columns: minmax(0,.92fr) minmax(390px,1.08fr); gap: clamp(28px,5vw,68px); color: #fff; background: linear-gradient(125deg,#102c46 0%,#163e63 65%,#1d4f7f 100%); border: 1px solid rgba(15,48,78,.18); border-radius: 24px; box-shadow: 0 20px 48px rgba(18,49,78,.17); }
.lead-layout::before,.lead-layout::after { display: none; }
.lead-kicker { color: #b9d0ee; }
.lead-kicker span { background: #7da8ff; border: 0; box-shadow: 0 0 0 5px rgba(125,168,255,.14); }
.lead-copy h2 { max-width: 510px; font-size: clamp(30px,3.8vw,46px); }
.lead-intro { color: rgba(239,246,253,.8); }
.trial-journey { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 7px; margin: 22px 0 19px; }
.trial-journey > div { min-height: 42px; display: flex; align-items: center; justify-content: space-between; gap: 7px; padding: 0 10px; color: #eaf2ff; background: rgba(255,255,255,.08); border: 1px solid rgba(200,221,255,.22); border-radius: 8px; font-size: 9px; font-weight: 700; }
.trial-journey i { color: #8bb3ff; font-size: 13px; font-style: normal; }
.lead-assurance { max-width: 450px; margin: 0; color: rgba(230,240,252,.67); font-size: 10px; line-height: 1.6; }
.lead-form { background: #fff; border: 1px solid #dce5ee; box-shadow: 0 18px 40px rgba(5,24,37,.16); }
.lead-form-heading > div:first-child > span { color: #2864e8; }
.lead-form-heading h3 { color: #173653; }
.lead-form-heading p { margin: 6px 0 0; color: #718397; font-size: 10px; }
.lead-form-mark { background: #edf3ff; border-radius: 11px; }
.lead-form-mark img { width: 29px; height: 29px; object-fit: contain; }
.lead-fields label { color: #536a80; }
.lead-fields label { font-size: 10px; }
.lead-fields input,.lead-fields select { font-size: 12px; }
.lead-fields input,.lead-fields select { border-color: #d7e1eb; }
.lead-fields input:focus,.lead-fields select:focus { border-color: #2864e8; box-shadow: 0 0 0 3px rgba(40,100,232,.12); }
.lead-consent input { accent-color: #2864e8; }
.lead-submit { min-height: 48px; color: #fff; background: #2864e8; }
.lead-submit:hover { background: #1d52cf; }
.lead-submit-note { color: #8191a1; }

@media (max-width: 1050px) {
  .tools-overview { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .tools-overview .tool-group:last-child { grid-column: 1 / -1; }
  .screens-track-group .screen-card { flex-basis: min(410px,43vw); width: min(410px,43vw); }
}
@media (max-width: 760px) {
  .section-wrap,.header-inner { width: min(100% - 36px, 620px); }
  .tools-overview { grid-template-columns: 1fr; gap: 11px; }
  .tools-overview .tool-group:last-child { grid-column: auto; }
  .tool-group { padding: 16px; }
  .tool-group-heading { min-height: 67px; }
  .feature-explorer-tabs [role="tab"] { min-height: 50px; }
  .section-card { grid-template-columns: minmax(0,1fr) minmax(105px,.5fr); }
  .section-illustration { height: 150px; }
  .ai-feature-shell { grid-template-columns: 1fr; gap: 25px; padding: 28px; }
  .ai-feature-copy { max-width: none; }
  .ai-demo-console { width: 100%; }
  .screens-featured { grid-template-columns: 1fr; gap: 12px; }
  .screens-featured .screen-card { max-width: 560px; width: 100%; margin-inline: auto; }
  .screens-track-group .screen-card { flex-basis: min(460px,calc(100vw - 52px)); width: min(460px,calc(100vw - 52px)); }
  .lead-layout { grid-template-columns: 1fr; gap: 26px; }
}
@media (max-width: 560px) {
  .tools-intro { margin-bottom: 23px; text-align: left; }
  .tools-intro h2 { font-size: 32px; }
  .tools-intro > p:last-child { font-size: 12px; }
  .tool-group-heading h3 { font-size: 15px; }
  .tool-row { grid-template-columns: 34px minmax(0,1fr) 14px; gap: 9px; padding: 9px 5px; }
  .tool-row b { font-size: 13px; }
  .tool-row small { font-size: 11px; }
  .feature-explorer-tabs [role="tab"] { transform: none; }
  .feature-explorer-visual { min-height: 250px; }
  .section-card { min-height: 180px; grid-template-columns: minmax(0,1fr) minmax(78px,.43fr); gap: 8px; padding: 14px; }
  .section-illustration { height: 125px; }
  .section-card p { font-size: 11px; }
  .section-tags span { font-size: 9px; }
  .ai-feature-shell { width: calc(100% - 20px); padding: 22px 16px; }
  .ai-feature-copy h2 { font-size: 32px; }
  .ai-chat-preview { padding: 15px 12px 12px; }
  .ai-console-top { padding: 9px 11px; }
  .ai-context-label { font-size: 7px; }
  .ai-query { max-width: 94%; }
  .ai-response-card { max-width: 100%; padding: 12px; }
  .ai-prompt-list { padding: 10px; }
  .ai-prompt { font-size: 9px; }
  .screens-heading { align-items: flex-start; flex-direction: column; gap: 10px; }
  .screens-featured .screen-ui,.screens-track .screen-ui { height: 175px; }
  .screens-more-heading { align-items: flex-start; }
  .screens-more-heading p { max-width: 250px; line-height: 1.5; }
  .screens-more-heading p { font-size: 11px; }
  .screens-featured .scenario-button,.screens-track .scenario-button { font-size: 11px; }
  .lead-layout { width: calc(100% - 20px); padding: 23px 16px; border-radius: 19px; }
  .lead-copy h2 { font-size: 33px; }
  .trial-journey { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .lead-form { padding: 17px 13px; }
  .lead-fields { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .hero-copy,.device-stage,.orbit-node,.ai-ring,.ai-particle,.ai-visual-core { animation: none !important; }
  .tool-row,.screen-card,.button { transition: none !important; }
}

/* LogiPulse campaign art direction: one atmospheric canvas, saturated product surfaces. */
:root { --canvas:#07182b; --ink:#eef4fb; --muted:#b7c6d5; --line:rgba(170,198,227,.22); }
html { scroll-behavior:smooth; background:#07182b; }
body { position:relative; isolation:isolate; color:var(--ink); background:transparent; }
body::before {
  position:fixed; z-index:-1; inset:0; content:""; pointer-events:none;
  background-image:linear-gradient(180deg,rgba(4,15,28,.42),rgba(5,18,33,.66)),url("../images/generated/logipulse-site-atmosphere.jpg");
  background-size:cover; background-position:center 48%; background-repeat:no-repeat;
}
main > section,.orbit-section,.feature-explorer-section,.all-sections-section,.advantages-section,.ai-feature-section,.screens-section,.faq-section { background:transparent !important; }
.site-header { color:#f5f8fc; background:rgba(5,18,32,.9); border-bottom:1px solid rgba(171,198,227,.18); box-shadow:0 8px 26px rgba(0,0,0,.12); backdrop-filter:blur(16px); }
.brand strong,.main-nav a,.nav-toggle { color:#f4f7fb; }
.brand small,.main-nav a:hover { color:#a9bed3; }
.header-cta { color:#fff; background:#2864e8; }
.hero::after { display:none; }
.hero-shade { background:linear-gradient(90deg,rgba(4,17,30,.94),rgba(4,17,30,.79) 37%,rgba(4,17,30,.39) 74%,rgba(4,17,30,.18)),linear-gradient(0deg,rgba(4,17,30,.62),transparent 48%); }
.hero h1 { color:#fff; }
.hero-lead { color:rgba(239,246,253,.83); }
.device-stage { position:relative; min-height:510px; display:grid; place-items:center; }
.device-stage > .laptop-device,.device-stage > .phone-device { display:none !important; }
.hero-device-art { position:relative; display:block; width:100%; max-width:790px; height:auto; object-fit:contain; filter:drop-shadow(0 32px 36px rgba(0,0,0,.38)); }

.orbit-section { padding-top:clamp(56px,7vw,88px); padding-bottom:clamp(62px,7vw,90px); }
.tools-intro h2,.section-heading h2,.advantages-heading h2,.faq-intro h2,.screens-heading h2 { color:#f1f6fc; }
.tools-intro > p:last-child,.section-heading > p,.screens-heading > div > p:last-child,.faq-intro > p { color:#b7c7d8; }
.tools-intro { max-width:980px; margin-bottom:30px; text-align:center; }
.tools-intro h2 { font-size:clamp(34px,4.2vw,52px); letter-spacing:-.04em; }
.tools-intro > p:last-child { font-size:15px; }
.tools-kicker,.screens-kicker,.lead-kicker,.ai-feature-kicker,.section-heading .overline,.tools-intro .overline { display:none !important; }
.tools-overview { gap:16px; }
.tool-group { padding:19px; color:#eff5fb; background:linear-gradient(145deg,rgba(18,43,68,.96),rgba(9,26,45,.96)); border:1px solid rgba(160,194,227,.24); border-radius:17px; box-shadow:0 18px 38px rgba(0,0,0,.18); }
.tool-group-heading { min-height:72px; }
.tool-group-heading h3 { color:#f0f5fc; font-size:18px; }
.tool-group-icon { color:#fff; background:#2864e8; border-color:rgba(255,255,255,.2); }
.tool-row { color:#e3edf7; }
.tool-row > svg { color:#d7e7ff; background:rgba(255,255,255,.08); }
.tool-row small { color:#adbed0; }
.tool-row > i { color:#91a8bf; }
.tool-row:hover,.tool-row:focus-visible { color:#fff; background:#2864e8; }

.feature-explorer-section { padding:clamp(44px,6vw,72px) 0 clamp(62px,8vw,98px); }
.feature-explorer-section .section-heading { max-width:1000px; margin-bottom:28px; }
.feature-explorer-section .section-heading h2 { color:#f1f6fc; font-size:clamp(32px,4vw,50px); }
.feature-explorer-section .section-heading p { color:#b7c7d8; }
.feature-explorer-tabs { gap:10px; margin-bottom:14px; }
.feature-explorer-tabs [role="tab"] { min-height:64px; color:#e0ebf6; background:rgba(13,34,57,.94); border-color:rgba(159,191,222,.25); border-radius:12px; }
.feature-explorer-tabs [role="tab"]:hover,.feature-explorer-tabs [role="tab"][aria-selected="true"] { color:#fff; background:#2864e8; border-color:#2864e8; }
.feature-explorer-panel { height:470px; min-height:470px; grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr); align-items:stretch; color:#edf4fb; background:linear-gradient(135deg,rgba(14,36,60,.98),rgba(8,25,44,.98)); border:1px solid rgba(161,194,224,.25); border-radius:18px; box-shadow:0 22px 44px rgba(0,0,0,.2); }
.feature-explorer-copy { min-height:0; padding:clamp(28px,4vw,52px); }
.feature-explorer-copy h3 { color:#f5f8fc; font-size:clamp(28px,3.2vw,40px); }
.feature-explorer-copy > p { color:#bdccdb; font-size:14px; }
.feature-explorer-points li { color:#e1eaf4; font-size:13px; }
.feature-explorer-points li::before { background:#2864e8; }
.feature-explorer-visual { min-height:0; background:#142e47; }
.feature-explorer-visual > img { animation:feature-photo-drift 14s ease-in-out infinite alternate; }
.feature-explorer-visual:hover > img { animation-play-state:paused; }
@keyframes feature-photo-drift { from { transform:scale(1.015) translate3d(0,0,0); } to { transform:scale(1.075) translate3d(-.6%,.4%,0); } }

.all-sections-section { padding:clamp(60px,7vw,88px) 0; }
.all-sections-section .section-heading { margin-bottom:30px; }
.section-card { box-shadow:0 20px 40px rgba(0,0,0,.19); }
.section-illustration { filter:drop-shadow(0 12px 18px rgba(0,0,0,.2)); }
.advantages-heading h2 { color:#f1f6fc; }
.advantage-flow::before { opacity:.3; }
.advantage-card { box-shadow:0 18px 36px rgba(0,0,0,.22); }

.ai-feature-section { padding:clamp(42px,6vw,76px) 0; }
.ai-feature-shell { display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); gap:0; overflow:hidden; padding:0; color:#fff; background:linear-gradient(140deg,#102d4a,#0b2138); border:1px solid rgba(156,190,223,.23); border-radius:22px; box-shadow:0 26px 58px rgba(0,0,0,.28); }
.ai-feature-copy { max-width:none; padding:clamp(30px,4.5vw,58px); }
.ai-feature-copy h2 { color:#fff; font-size:clamp(30px,3.3vw,44px); }
.ai-feature-copy > p:not(.ai-feature-kicker) { color:#c3d1df; font-size:14px; line-height:1.7; }
.ai-capabilities { border-top-color:rgba(176,203,229,.18); }
.ai-capabilities article { border-bottom-color:rgba(176,203,229,.18); }
.ai-capabilities article > svg { color:#fff; background:#245db6; }
.ai-capabilities b { color:#fff; font-size:13px; }
.ai-capabilities article span { color:#c0cfde; font-size:11px; }
.ai-feature-note { color:#a9bdd0; font-size:10px; line-height:1.6; }
.ai-demo-console { display:flex; flex-direction:column; min-width:0; min-height:100%; color:#f2f6fc; background:#06111f; border:0; border-left:1px solid rgba(161,194,226,.16); border-radius:0; box-shadow:none; }
.ai-console-top { min-height:74px; padding:13px 20px; background:#091a2d; border-bottom:1px solid rgba(167,195,224,.16); }
.ai-console-brand b { color:#fff; font-size:15px; }
.ai-console-brand small { color:#aabed2; }
.ai-context-label { color:#c8dcff; background:#152e50; }
.ai-chat-preview { flex:1; gap:12px; padding:22px 24px 16px; }
.ai-message-label { color:#91a7be; font-size:9px; }
.ai-query { color:#fff; background:#2864e8; font-size:13px; line-height:1.55; }
.ai-response-card { padding:18px; color:#edf4fb; background:#101e2e; border:1px solid #26394f; border-radius:14px; }
.ai-answer-mark { background:#2864e8; }
.ai-response-card strong { color:#fff; font-size:15px; }
.ai-response-card p { color:#d1dce8; font-size:13px; line-height:1.7; }
.ai-answer-next { background:#172b41; border-left-color:#4e83f4; }
.ai-answer-next span { color:#99aec4; font-size:8px; }
.ai-answer-next b { color:#f4f7fb; font-size:12px; }
.ai-source-note { color:#9eafc1; font-size:10px; }
.ai-prompt-list { display:flex; flex-wrap:wrap; gap:8px; padding:14px 18px 18px; background:#091827; border-top:1px solid rgba(167,195,224,.14); }
.ai-prompt { color:#d4e0ed; background:#15263a; border:1px solid #2c4056; border-radius:999px; }
.ai-prompt:hover,.ai-prompt.is-active { color:#fff; background:#2864e8; border-color:#2864e8; }

.screens-section { padding:clamp(58px,7vw,88px) 0; }
.screens-heading { margin-bottom:24px; }
.screens-heading h2 { font-size:clamp(34px,4vw,49px); }
.screens-heading > div > p:last-child { color:#bac9d9; font-size:14px; }
.screens-track-viewport { overflow:hidden; padding:5px 0 14px; border-radius:17px; }
.screens-track { width:max-content; transform:translateZ(0); }
.screens-track-viewport.is-in-view .screens-track { animation:screens-lane 56s linear infinite; }
.screens-track-viewport:hover .screens-track,.screens-track-viewport:focus-within .screens-track { animation-play-state:paused; }
.screens-track-group { gap:15px; padding-right:15px; }
.screens-track-group .screen-card { flex:0 0 min(400px,31vw); width:min(400px,31vw); min-height:0; padding:14px; color:#edf4fb; background:linear-gradient(150deg,#102b47,#0b2036); border:1px solid rgba(160,194,225,.26); border-top:3px solid #3476f4; border-radius:15px; box-shadow:0 18px 35px rgba(0,0,0,.23); }
.screen-heading { min-height:55px; display:flex; align-items:center; }
.screen-heading h3 { color:#fff; font-size:16px !important; }
.screen-heading p { color:#b2c5d8 !important; font-size:11px !important; }
.screen-art { position:relative; overflow:hidden; aspect-ratio:4/3; background:#eaf0f5; border:1px solid rgba(205,222,238,.48); border-radius:9px; }
.screen-art img { position:absolute; display:block; width:300%; height:200%; max-width:none; object-fit:fill; animation:screen-image-drift 13s ease-in-out infinite alternate; }
.screen-art[data-frame="1"] img { top:0; left:0; transform-origin:16.666% 25%; }
.screen-art[data-frame="2"] img { top:0; left:-100%; transform-origin:50% 25%; }
.screen-art[data-frame="3"] img { top:0; left:-200%; transform-origin:83.333% 25%; }
.screen-art[data-frame="4"] img { top:-100%; left:0; transform-origin:16.666% 75%; }
.screen-art[data-frame="5"] img { top:-100%; left:-100%; transform-origin:50% 75%; }
.screen-art[data-frame="6"] img { top:-100%; left:-200%; transform-origin:83.333% 75%; }
.screens-track-viewport:hover .screen-art img,.screens-track-viewport:focus-within .screen-art img { animation-play-state:paused; }
@keyframes screens-lane { from { transform:translateX(0); } to { transform:translateX(-50%); } }
@keyframes screen-image-drift { from { scale:1; } to { scale:1.045; } }

.lead-section { padding:clamp(40px,6vw,74px) 0 clamp(68px,8vw,100px); }
.lead-layout { min-height:340px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:25px; padding:clamp(35px,6vw,76px); text-align:center; color:#fff; background:linear-gradient(130deg,rgba(7,24,42,.9),rgba(14,47,80,.92)); border:1px solid rgba(173,204,234,.3); border-radius:24px; box-shadow:0 28px 58px rgba(0,0,0,.28); }
.lead-layout h2 { max-width:900px; margin:0; color:#fff; font-size:clamp(36px,5vw,60px); line-height:1.08; letter-spacing:-.04em; }
.lead-submit { min-height:58px; width:auto; display:inline-flex; align-items:center; justify-content:center; gap:15px; padding:0 25px; color:#fff; background:#2864e8; border:0; border-radius:11px; font-size:15px; font-weight:800; text-decoration:none; box-shadow:0 12px 24px rgba(20,79,205,.28); }
.lead-submit:hover { color:#fff; background:#1e53c9; transform:translateY(-2px); }

.faq-intro h2 { color:#fff; }
.faq-intro > p { color:#bac9d9; }
.faq-intro > a { color:#8eb3ff; }
.faq-list details,.faq-list details[open] { color:#eaf1f8; background:rgba(12,31,52,.95); border-color:rgba(161,194,224,.22); }
.faq-list summary { color:#f0f5fb; }
.faq-list details p { color:#bdcad8; }
.faq-list summary span { color:#fff; background:#2864e8; }
.site-footer { color:#eaf1f8; background:#061626; border-top:1px solid rgba(156,191,224,.2); }
.site-footer p,.footer-column a,.footer-column button,.footer-column span,.footer-bottom { color:#b4c4d5; }
.footer-column h3,.footer-company b { color:#fff; }
.footer-bottom { border-top-color:rgba(166,195,224,.18); }
.policy-dialog { color:#edf4fb; background:#0c2136; border-color:rgba(155,192,227,.25); }
.policy-dialog h2 { color:#fff; }
.policy-dialog p,.policy-dialog small { color:#c0cedd; }

@media (max-width:1050px) {
  .device-stage { min-height:430px; }
  .screens-track-group .screen-card { flex-basis:min(390px,43vw); width:min(390px,43vw); }
}
@media (max-width:760px) {
  .device-stage { min-height:340px; }
  .hero-device-art { max-width:620px; }
  .feature-explorer-panel { height:auto; min-height:0; grid-template-columns:1fr; }
  .feature-explorer-copy { min-height:360px; }
  .feature-explorer-visual { min-height:340px; }
  .ai-feature-shell { grid-template-columns:1fr; }
  .ai-demo-console { min-height:510px; border-left:0; border-top:1px solid rgba(161,194,226,.16); }
  .screens-track-group .screen-card { flex-basis:min(430px,calc(100vw - 46px)); width:min(430px,calc(100vw - 46px)); }
}
@media (max-width:560px) {
  body::before { background-position:55% 48%; }
  .device-stage { min-height:260px; }
  .hero-device-art { width:calc(100% + 25px); max-width:none; margin-left:-8px; }
  .tools-intro { text-align:center; }
  .tools-intro h2 { font-size:32px; }
  .tools-intro > p:last-child { font-size:13px; }
  .feature-explorer-panel { border-radius:15px; }
  .feature-explorer-copy { min-height:0; padding:26px 21px; }
  .feature-explorer-copy h3 { font-size:29px; }
  .feature-explorer-visual { min-height:260px; }
  .ai-feature-shell { width:calc(100% - 20px); border-radius:17px; }
  .ai-feature-copy { padding:26px 21px; }
  .ai-feature-copy h2 { font-size:32px; }
  .ai-demo-console { min-height:500px; }
  .ai-chat-preview { padding:16px 14px 12px; }
  .ai-query { max-width:95%; font-size:12px; }
  .ai-response-card p { font-size:12px; }
  .ai-prompt { font-size:10px; }
  .screen-heading h3 { font-size:15px !important; }
  .lead-layout { width:calc(100% - 20px); min-height:285px; gap:20px; padding:32px 20px; }
  .lead-layout h2 { font-size:36px; }
  .lead-submit { width:100%; min-height:58px; padding-inline:14px; font-size:13px; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .feature-explorer-visual > img,.screen-art img,.screens-track-viewport.is-in-view .screens-track { animation:none !important; }
}

/* Keep the campaign continuous: tighter rhythm between sections, no oversized blank bands. */
.orbit-section { padding-top:clamp(42px,5vw,58px); padding-bottom:clamp(34px,4vw,48px); }
.feature-explorer-section { padding-top:clamp(30px,3.5vw,44px); padding-bottom:clamp(38px,4.5vw,54px); }
.all-sections-section { padding-top:clamp(38px,4.5vw,54px); padding-bottom:clamp(38px,4.5vw,54px); }
.ai-feature-section { padding-top:clamp(36px,4vw,48px); padding-bottom:clamp(28px,3.2vw,38px); }
.screens-section { padding-top:clamp(26px,3vw,36px); padding-bottom:clamp(42px,5vw,60px); }
.lead-section { padding-top:clamp(32px,3.8vw,46px); }

/* Lenis owns wheel and anchor interpolation; CSS remains a fallback if its script is unavailable. */
html:not(.lenis) { scroll-behavior:smooth; }
html.lenis,html.lenis body { height:auto; }
html.lenis.lenis-smooth { scroll-behavior:auto !important; }
html.lenis.lenis-stopped { overflow:hidden; }
.ai-feature-copy { padding-right:clamp(22px,3vw,40px); }
.ai-demo-console { border-left:0; }

/* High-contrast product panels and stable, easy-to-scan screen previews. */
.tool-group {
  color:#1b344e;
  background:#fff;
  border-color:#d8e3ef;
  box-shadow:0 16px 34px rgba(5,22,41,.14);
}
.tool-group-heading h3 { color:#173451; }
.tool-group-icon { color:#fff; background:#2864e8; border-color:#2864e8; }
.tool-row {
  min-height:62px;
  color:#213b56;
  background:#f5f8fc;
  border:1px solid #e2eaf3;
  border-radius:11px;
  transition:color .18s ease,background-color .18s ease,border-color .18s ease,transform .18s ease;
}
.tool-row > svg { color:#2864e8; background:#e7efff; }
.tool-row small { color:#657b92; }
.tool-row > i { color:#2864e8; }
.tool-row:hover,.tool-row:focus-visible { color:#fff; background:#2864e8; border-color:#2864e8; transform:translateY(-1px); }
.tool-row:hover small,.tool-row:focus-visible small,.tool-row:hover > i,.tool-row:focus-visible > i { color:#eaf1ff; }
.tool-row:hover > svg,.tool-row:focus-visible > svg { color:#fff; background:rgba(255,255,255,.16); }

.feature-explorer-tabs [role="tab"] {
  color:#203b58;
  background:#fff;
  border:1px solid #dce6f1;
  box-shadow:0 5px 14px rgba(9,31,55,.08);
  transition:color .2s ease,background-color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease;
}
.feature-explorer-tabs [role="tab"] svg { color:#2864e8; }
.feature-explorer-tabs [role="tab"]:hover { color:#1749b5; background:#f2f6ff; border-color:#9eb8f2; transform:translateY(-2px); }
.feature-explorer-tabs [role="tab"][aria-selected="true"] { color:#fff; background:#2864e8; border-color:#2864e8; box-shadow:0 9px 20px rgba(40,100,232,.22); }
.feature-explorer-tabs [role="tab"][aria-selected="true"] svg { color:#fff; }
.feature-explorer-panel {
  overflow:hidden;
  color:#1b344e;
  background:#fff;
  border-color:#d8e3ef;
  box-shadow:0 20px 42px rgba(5,22,41,.14);
}
.feature-explorer-copy h3 { color:#132f4b; }
.feature-explorer-copy > p { color:#536a81; }
.feature-explorer-points li { color:#29445e; }
.feature-explorer-points li::before { background:#2864e8; box-shadow:0 0 0 3px #e6eeff; }
.feature-explorer-copy,.feature-explorer-visual { transition:opacity .24s ease,transform .24s ease; }
.feature-explorer-panel.is-changing .feature-explorer-copy { opacity:.12; transform:translateY(9px); }
.feature-explorer-panel.is-changing .feature-explorer-visual { opacity:.4; transform:scale(.985); }
.feature-explorer-visual { background:#eaf0f8; }
.feature-explorer-visual > img { animation:none; }

.ai-feature-shell {
  color:#18334f;
  background:#fff;
  border-color:#d7e2ee;
  box-shadow:0 22px 48px rgba(5,22,41,.16);
}
.ai-feature-copy { color:#18334f; background:#fff; }
.ai-feature-copy h2 { color:#132f4b; }
.ai-feature-copy > p:not(.ai-feature-kicker) { color:#586e83; }
.ai-capabilities { border-top-color:#e0e8f1; }
.ai-capabilities article { border-bottom-color:#e0e8f1; }
.ai-capabilities article > svg { color:#2864e8; background:#e7efff; }
.ai-capabilities b { color:#1d3a57; }
.ai-capabilities article span,.ai-feature-note { color:#687d91; }
.ai-demo-console { color:#f2f6fc; background:#07182b; }

.screens-section > .section-wrap {
  width:100%;
  max-width:none;
  padding-inline:clamp(20px,4vw,64px);
}
.screens-track-viewport { padding:6px 0 16px; border-radius:0; }
.screens-track { transform:none; backface-visibility:hidden; }
.screens-track-viewport.is-in-view .screens-track { animation:screens-lane 58s linear infinite; }
.screens-track-group .screen-card {
  flex:0 0 clamp(320px,30vw,420px);
  width:clamp(320px,30vw,420px);
  padding:14px;
  color:#1c3651;
  background:#fff;
  border:1px solid #d9e3ee;
  border-top:3px solid #2864e8;
  border-radius:15px;
  box-shadow:0 15px 30px rgba(6,24,43,.15);
}
.screen-heading { min-height:55px; align-items:center; }
.screen-heading h3 { color:#173451; font-size:17px !important; }
.screen-heading p { color:#637a91 !important; font-size:11px !important; }
.screen-art {
  aspect-ratio:16 / 10;
  background:#e8eef5;
  border:1px solid #d6e0eb;
  border-radius:11px;
}
.screen-art::after {
  position:absolute;
  inset:42% 0 0;
  content:"";
  pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(7,24,43,.56));
}
.screen-art img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  max-width:100%;
  object-fit:cover;
  object-position:center;
  animation:none !important;
}
.screen-art-label {
  position:absolute;
  z-index:1;
  bottom:12px;
  left:12px;
  max-width:calc(100% - 24px);
  padding:7px 10px;
  overflow:hidden;
  color:#fff;
  background:rgba(9,30,53,.9);
  border:1px solid rgba(255,255,255,.22);
  border-radius:6px;
  font-size:9px;
  font-weight:800;
  letter-spacing:.1em;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}
@keyframes screens-lane {
  from { transform:translate3d(0,0,0); }
  to { transform:translate3d(-50%,0,0); }
}

.lead-layout {
  color:#18334f;
  background:#fff;
  border-color:#d7e2ee;
  box-shadow:0 22px 48px rgba(5,22,41,.16);
}
.lead-layout h2 { color:#132f4b; }
.lead-layout .lead-submit { color:#fff; background:#2864e8; }
.lead-layout .lead-submit:hover { color:#fff; background:#1e53c9; }

.faq-list details,.faq-list details[open] {
  color:#1c3651;
  background:#fff;
  border-color:#d8e3ef;
  box-shadow:0 10px 22px rgba(5,22,41,.1);
}
.faq-list summary { color:#173451; }
.faq-list details p { color:#5d7389; }
.faq-list summary span { color:#2864e8; background:#e8efff; }
.faq-list details[open] { border-color:#9db9f3; }

@media (max-width:1050px) {
  .screens-track-group .screen-card { flex-basis:min(390px,43vw); width:min(390px,43vw); }
}
@media (max-width:760px) {
  .screens-section > .section-wrap { padding-inline:20px; }
  .screens-track-group .screen-card { flex-basis:min(430px,calc(100vw - 40px)); width:min(430px,calc(100vw - 40px)); }
}
@media (max-width:560px) {
  .screens-section > .section-wrap { padding-inline:16px; }
  .screens-track-group .screen-card { flex-basis:calc(100vw - 32px); width:calc(100vw - 32px); }
}
@media (prefers-reduced-motion:reduce) {
  .feature-explorer-copy,.feature-explorer-visual,.feature-explorer-tabs [role="tab"],.tool-row { transition:none !important; }
  .feature-explorer-panel.is-changing .feature-explorer-copy,.feature-explorer-panel.is-changing .feature-explorer-visual { opacity:1; transform:none; }
  .screens-track-viewport.is-in-view .screens-track { animation:none !important; }
}

/* Language control, trial request and partner credits. */
.language-switcher { flex:none; display:inline-flex; align-items:center; }
.language-switcher select {
  min-width:58px;
  height:36px;
  padding:0 25px 0 10px;
  color:#f4f7fb;
  color-scheme:dark;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(190,213,236,.25);
  border-radius:9px;
  font:600 11px/1 "Onest",sans-serif;
  cursor:pointer;
}
.language-switcher select:focus-visible { outline:3px solid #92b4ff; outline-offset:3px; }
.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.footer-support { display:flex; align-items:center; justify-content:space-between; gap:28px; padding-top:20px; padding-bottom:22px; border-top:1px solid rgba(166,195,224,.18); }
.footer-support h3 { margin:0; color:#fff; font-size:14px; font-weight:650; letter-spacing:-.02em; }
.footer-support-logos { width:min(560px,62%); min-height:88px; display:flex; align-items:center; justify-content:space-around; gap:clamp(14px,3vw,34px); padding:12px 22px; background:#fff; border:1px solid rgba(215,226,238,.9); border-radius:12px; }
.footer-support-logos img { display:block; flex:1 1 0; width:calc(50% - 12px); max-width:235px; height:64px; object-fit:contain; }
.lead-copy { max-width:880px; display:grid; justify-items:center; gap:13px; }
.lead-copy > p { max-width:600px; margin:0; color:#5b7087; font-size:15px; }
.trial-dialog { position:relative; width:min(620px,calc(100% - 32px)); max-height:min(90vh,760px); overflow:auto; padding:clamp(26px,5vw,44px); color:#f4f7fb; background:linear-gradient(145deg,#0d2237,#153d60); border:1px solid rgba(174,205,235,.26); border-radius:22px; box-shadow:0 32px 100px rgba(3,15,27,.42); }
.trial-dialog::backdrop { background:rgba(5,17,30,.68); backdrop-filter:blur(7px); }
.trial-dialog-close { position:absolute; top:15px; right:15px; width:38px; height:38px; display:grid; place-items:center; color:#deebf8; background:rgba(255,255,255,.08); border:1px solid rgba(201,221,241,.2); border-radius:50%; font-size:24px; cursor:pointer; }
.trial-dialog-heading { max-width:480px; margin-bottom:25px; }
.trial-dialog-heading h2 { margin:0 35px 11px 0; color:#fff; font-size:clamp(28px,5vw,40px); line-height:1.12; letter-spacing:-.04em; }
.trial-dialog-heading p { margin:0; color:#bdcddd; font-size:14px; line-height:1.65; }
.trial-form > label:first-child { display:block; margin-bottom:8px; color:#e8f1fa; font-size:12px; font-weight:650; }
.trial-form-row { display:flex; gap:10px; }
.trial-form-row input[type="email"] { min-width:0; min-height:52px; flex:1; padding:0 15px; color:#18334e; background:#fff; border:1px solid #cbd9e6; border-radius:9px; font:500 14px/1.3 "Onest",sans-serif; }
.trial-form-row input[type="email"]::placeholder { color:#8292a2; }
.trial-form-row .button { min-height:52px; border-radius:9px; }
.trial-consent { display:flex; align-items:flex-start; gap:9px; margin-top:15px; color:#c5d4e2; font-size:11px; line-height:1.5; cursor:pointer; }
.trial-consent input { width:16px; height:16px; flex:none; margin:1px 0 0; accent-color:#68a0ff; }
.trial-trap { position:absolute!important; width:1px!important; height:1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; }
.trial-form-status { min-height:20px; margin:12px 0 0; color:#fff; font-size:12px; line-height:1.5; }
.trial-form-status[data-state="success"] { color:#a9e4c2; }
.trial-form-status[data-state="error"] { color:#ffb6ad; }
.trial-privacy-note { margin:8px 0 0; color:#a7bbce; font-size:10px; line-height:1.5; }
@media (max-width:1050px) {
  .header-inner { gap:20px; }
  .main-nav { gap:17px; }
}
@media (max-width:760px) {
  .footer-support { align-items:flex-start; flex-direction:column; }
  .footer-support-logos { width:min(560px,100%); }
}
@media (max-width:560px) {
  .language-switcher select { min-width:53px; height:34px; padding-left:8px; }
  .trial-dialog { padding:26px 19px 22px; border-radius:18px; }
  .trial-form-row { flex-direction:column; }
  .trial-form-row .button { width:100%; }
  .footer-support { gap:14px; }
  .footer-support-logos { padding:5px 7px; }
}

/* Crisp, shared vector language for the logistics feature set. */
.tool-group-icon svg { width:26px; height:26px; }
.tool-row { grid-template-columns:42px minmax(0,1fr) 16px; }
.tool-row > svg { width:40px; height:40px; padding:5px; }
.feature-explorer-tabs [role="tab"] svg { width:22px; height:22px; }
.ai-capabilities article > svg { width:36px; height:36px; padding:6px; }
.ai-answer-mark svg,.ai-source-note svg { width:19px; height:19px; }
.tool-group-icon svg,.tool-row > svg,.feature-explorer-tabs [role="tab"] svg,
.ai-capabilities article > svg,.ai-answer-mark svg,.ai-source-note svg {
  overflow:visible;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
}
@media (max-width:560px) {
  .tool-row { grid-template-columns:40px minmax(0,1fr) 14px; }
  .tool-row > svg { width:38px; height:38px; padding:5px; }
}
