/* The status journey has five explicit stages, including Tilldelad. */
.journey-steps { grid-template-columns: repeat(5, minmax(0, 1fr)); }
@media (max-width: 640px) {
  .journey-steps { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}
/* Sales additions (2026-10-14): pain points, outcomes, trust strip, mail prompts. */
.pain { margin-top: clamp(64px, 6.5vw, 120px); padding-block: 8px 28px; }
.pain-list { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; padding: 0; margin: 0; }
.pain-list li { display: flex; gap: 12px; align-items: flex-start; padding: 18px 20px; border: 1px solid #263247; border-radius: 14px; background: linear-gradient(160deg, rgba(23, 34, 54, .72), rgba(16, 26, 43, .5)); font-size: 15px; line-height: 1.45; color: #dbe6f5; }
.pain-list .icon { flex: none; width: 18px; height: 18px; margin-top: 2px; color: var(--cyan); }
.outcomes { padding-block: 70px 60px; }
.outcome-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px 34px; }
.outcome-grid .feature-card p { font-size: 14px; line-height: 1.55; }
.outcome-note { margin-top: 30px; font-size: 13px; color: var(--muted); }
.trust-strip { list-style: none; display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin: 38px 0 0; padding: 0; }
.trust-strip li { display: inline-flex; align-items: center; gap: 9px; padding: 10px 16px; border: 1px solid #2a3a52; border-radius: 999px; background: rgba(16, 26, 43, .6); font-size: 13px; color: #c9d7ea; }
.trust-strip .icon { width: 15px; height: 15px; color: var(--cyan); flex: none; }
.faq-mail { margin-top: 28px; font-size: 14px; color: var(--muted); }
.faq-mail a { color: var(--cyan); font-weight: 600; text-decoration: none; border-bottom: 1px solid rgba(81, 220, 229, .35); }
.faq-mail a:hover { border-bottom-color: var(--cyan); }
.mail-lead { font-size: 13px; margin: 4px 0 12px; color: #b9c9dd; }
@media (max-width: 900px) {
  .pain-list { grid-template-columns: 1fr; }
  .outcome-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 24px; }
}
@media (max-width: 560px) {
  .pain { margin-top: 44px; padding-block: 0 18px; }
  .pain-list li { padding: 15px 16px; font-size: 14px; }
  .outcomes { padding-block: 46px 40px; }
  .outcome-grid { grid-template-columns: 1fr; gap: 6px; }
  .outcome-grid .feature-card { padding: 18px 0; }
  .trust-strip { justify-content: flex-start; }
  .trust-strip li { width: 100%; border-radius: 12px; }
}
/* Free trial note (shown after the demonstration steps; not a competing call to action) */
.trial-note { margin: 1rem 0 .4rem; padding: .75rem 1rem; border-left: 3px solid var(--accent, #4C8DFF); border-radius: 0 10px 10px 0; background: rgba(76, 141, 255, .08); font-size: .95rem; line-height: 1.5; opacity: .92; }

/* Free trial is the main action; the demo is the second */
.hero-fine { margin: .9rem 0 0; font-size: .86rem; line-height: 1.5; opacity: .78; }
.trial-cta { margin: 1.1rem 0 .4rem; }
@media (max-width: 520px) { .hero-actions { flex-direction: column; align-items: stretch; } .hero-actions .button { justify-content: center; } }

/* ── Pricing: System, Användare, Tillägg ───────────────────────────────── */
.pricing { padding-block: clamp(72px, 8vw, 132px) clamp(40px, 5vw, 72px); }
.pricing-head { text-align: center; max-width: 760px; margin-inline: auto; }
.pricing-head .eyebrow { margin-bottom: 18px; }
.pricing-lead { margin-top: 20px; font-size: clamp(16px, 1.4vw, 19px); }
.pricing-grid { display: grid; grid-template-columns: 1fr 1fr 1.2fr; gap: 22px; margin-top: clamp(40px, 5vw, 64px); align-items: stretch; }
.price-card { position: relative; display: flex; flex-direction: column; gap: 14px; padding: 34px 32px 30px; border: 1px solid var(--line); border-radius: 22px; overflow: hidden;
  background: radial-gradient(120% 80% at 0% 0%, #18304e55 0%, transparent 60%), linear-gradient(165deg, #152238 0%, #0b1322 100%);
  transition: transform .28s, border-color .28s, box-shadow .28s; }
.price-card::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 2px; background: linear-gradient(90deg, var(--blue), var(--cyan)); opacity: .75; }
.price-card:hover { transform: translateY(-6px); border-color: #3f6f98; box-shadow: 0 30px 70px -38px #38a9ff80; }
.price-card-addons { border-color: #2d5a86; background: radial-gradient(120% 80% at 100% 0%, #1d4a7a55 0%, transparent 60%), linear-gradient(165deg, #162a45 0%, #0b1322 100%); box-shadow: 0 34px 80px -46px #38a9ffa0; }
.price-tag { font: 600 10px/1 Consolas, monospace; letter-spacing: .2em; color: #72bdc8; }
.price-figure { display: flex; flex-direction: column; gap: 6px; margin-top: 6px; }
.price-figure strong { font-size: clamp(34px, 3.4vw, 48px); font-weight: 700; letter-spacing: -.045em; line-height: 1;
  background: linear-gradient(110deg, #ffffff 10%, #9fd0ff 60%, #67e3df 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.price-figure small { color: var(--muted); font-size: 13px; }
.price-card > p { font-size: 14.5px; line-height: 1.6; }
.price-points { list-style: none; margin: 8px 0 0; padding: 18px 0 0; border-top: 1px solid #22304a; display: grid; gap: 13px; }
.price-points li { display: flex; gap: 12px; align-items: flex-start; font-size: 14.5px; line-height: 1.45; color: var(--text); }
.price-points .icon { flex: none; width: 18px; height: 18px; margin-top: 1px; color: var(--cyan); }
.price-list-wrap { position: relative; margin-top: 6px; padding-top: 6px; border-top: 1px solid #22304a; max-height: 236px; overflow: hidden;
  -webkit-mask-image: linear-gradient(to bottom, #000 0, #000 52%, transparent 100%); mask-image: linear-gradient(to bottom, #000 0, #000 52%, transparent 100%); }
.price-list { list-style: none; margin: 0; padding: 0; }
.price-list li { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding: 13px 0; border-bottom: 1px solid #1f2d45; font-size: 14.5px; }
.pl-name { color: var(--text); }
.pl-price { color: var(--cyan); font-weight: 650; font-variant-numeric: tabular-nums; white-space: nowrap; }
.price-more { margin-top: auto; padding-top: 14px; font-size: 13px; font-weight: 650; color: var(--cyan); }
.price-more::after { content: "\2192"; margin-left: 8px; transition: margin-left .2s; }
.price-more:hover::after { margin-left: 13px; }
.pricing-foot { display: flex; justify-content: center; gap: 14px; flex-wrap: wrap; margin-top: clamp(32px, 4vw, 52px); }
.pricing-fine { max-width: 700px; margin: 22px auto 0; text-align: center; font-size: 12.5px; line-height: 1.6; opacity: .8; }
@media (max-width: 1020px) { .pricing-grid { grid-template-columns: 1fr; max-width: 560px; margin-inline: auto; } .price-list-wrap { max-height: 250px; } }
@media (max-width: 560px) { .price-card { padding: 28px 22px 24px; } .pricing-foot .button { width: 100%; } }
@media (prefers-reduced-motion: reduce) { .price-card, .price-card:hover { transition: none; transform: none; } }
@media (min-width: 1021px) { .price-card > p { min-height: 3.3em; } }

/* Gradient treatment only on the Tillägg card; System and Användare stay flat */
.price-card { background: linear-gradient(180deg, #121c2e 0%, #0e1625 100%); }
.price-card::before { background: #2a3a55; opacity: 1; }
.price-card .price-figure strong { background: none; -webkit-background-clip: border-box; background-clip: border-box; color: #ffffff; }
.price-card-addons { background: radial-gradient(120% 80% at 100% 0%, #1d4a7a66 0%, transparent 60%), linear-gradient(165deg, #172c49 0%, #0b1322 100%); }
.price-card-addons::before { background: linear-gradient(90deg, var(--blue), var(--cyan)); opacity: .9; }
.price-card-addons .price-figure strong { background: linear-gradient(110deg, #ffffff 10%, #9fd0ff 60%, #67e3df 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.price-card:hover { box-shadow: none; border-color: #36506f; }
.price-card-addons:hover { box-shadow: 0 30px 70px -38px #38a9ff80; border-color: #3f6f98; }
.price-list-wrap { max-height: 225px; }
.price-tagrow { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.price-count { padding: 5px 11px; border-radius: 999px; font-size: 11.5px; font-weight: 650; letter-spacing: .01em; color: #bfe9f4; background: #38a9ff1f; border: 1px solid #38a9ff40; white-space: nowrap; }

.price-tagrow { display: contents; }
.price-card-addons .price-count { position: absolute; top: 24px; right: 26px; }
@media (max-width: 380px) { .price-card-addons .price-count { position: static; align-self: flex-start; } }

/* Add-on cards 4-6 and the "and many more" card */
.addon-3 > .icon { color: #5ad5b1; }
.rut-chips { position: absolute; right: 0; bottom: 20px; display: flex; gap: 6px; }
.rut-chips span { font: 600 10px Consolas, monospace; letter-spacing: .1em; padding: 5px 8px; border-radius: 6px; border: 1px solid #2a3b57; color: #8fa3bf; }
.rut-chips span.on { color: #5ad5b1; border-color: #2c6f61; background: #5ad5b114; }
.addon-4 > .icon { color: #eac16b; }
.live-chip { position: absolute; right: 0; bottom: 20px; display: inline-flex; align-items: center; gap: 8px; font: 600 10px Consolas, monospace; letter-spacing: .14em; color: #8fe0c6; padding: 5px 10px; border-radius: 999px; border: 1px solid #2c6f61; background: #5ad5b114; }
.live-chip i { width: 7px; height: 7px; border-radius: 50%; background: #5ad5b1; box-shadow: 0 0 0 0 #5ad5b180; animation: livePulse 1.8s ease-out infinite; }
@keyframes livePulse { 0% { box-shadow: 0 0 0 0 #5ad5b180; } 80%, 100% { box-shadow: 0 0 0 9px #5ad5b100; } }
.addon-card-more { border-color: #2d5a86; background: radial-gradient(120% 90% at 100% 0%, #1d4a7a66 0%, transparent 60%), linear-gradient(150deg, #172c49, #0b1322); }
.addon-card-more:hover { border-color: #5a95c4; }
.addon-5 { justify-content: center; }
.more-figure { font-size: clamp(54px, 5vw, 76px); font-weight: 700; letter-spacing: -.05em; line-height: 1;
  background: linear-gradient(110deg, #ffffff 10%, #9fd0ff 55%, #67e3df 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
@media (prefers-reduced-motion: reduce) { .live-chip i { animation: none; } }
#contactForm .hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }

/* Bilingual product roadmap over cinematic Sweden artwork. */
.roadmap{background:#030b17;color:#edf6ff;padding:clamp(40px,5vw,72px) 0;position:relative;z-index:1;overflow:hidden;isolation:isolate;border-block:1px solid #214257}
.roadmap-inner{max-width:var(--max,1240px);margin:0 auto;padding:0 clamp(16px,4vw,40px)}
.roadmap-head{max-width:720px;margin:0 auto clamp(32px,5vw,56px);text-align:center}
.roadmap-eyebrow{font-size:11px;font-weight:700;letter-spacing:.19em;text-transform:uppercase;color:#2f6bff;margin:0 0 18px}
.roadmap h2{font-size:clamp(28px,4.4vw,46px);line-height:1.1;letter-spacing:-.02em;margin:0 0 16px;color:#0d1626}
.roadmap-lead{font-size:clamp(15px,1.6vw,17px);line-height:1.6;color:#4a5870;margin:0}
.roadmap-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.roadmap-item{position:relative;display:grid;grid-template-columns:auto 1fr;gap:6px 18px;align-items:start;padding:24px 24px 22px;border:1px solid #e3e9f3;border-radius:18px;background:linear-gradient(180deg,#fff,#f6f9ff);box-shadow:0 1px 2px rgba(13,22,38,.04),0 14px 34px -22px rgba(31,76,160,.35);transition:transform .2s ease,box-shadow .2s ease}
.roadmap-item:hover{transform:translateY(-2px);box-shadow:0 1px 2px rgba(13,22,38,.05),0 22px 44px -24px rgba(31,76,160,.45)}
.roadmap-no{font:700 13px/1 Consolas,"SFMono-Regular",monospace;color:#2f6bff;background:#e8f0ff;border-radius:10px;padding:9px 10px;letter-spacing:.04em}
.roadmap-item h3{margin:0 0 6px;font-size:18px;line-height:1.25;color:#0d1626;padding-right:92px}
.roadmap-item p{margin:0;font-size:14.5px;line-height:1.55;color:#4a5870}
.roadmap-chip{position:absolute;top:20px;right:20px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#0b6b56;background:#dff7ef;border:1px solid #bfeadb;border-radius:999px;padding:5px 10px}
.roadmap-note{text-align:center;margin:30px 0 0}
.roadmap-note a{display:inline-block;color:#1f4fd1;font-weight:700;text-decoration:none;border-bottom:2px solid rgba(47,107,255,.3);padding-bottom:2px}
.roadmap-note a:hover{border-bottom-color:#2f6bff}
@media (max-width:760px){.roadmap-list{grid-template-columns:1fr}.roadmap-item{padding:20px 18px}.roadmap-item h3{padding-right:0;margin-top:30px}.roadmap-item p{grid-column:1/-1}.roadmap-item>div{grid-column:1/-1}.roadmap-chip{top:16px;right:16px}}
@media (prefers-reduced-motion:reduce){.roadmap-item{transition:none}.roadmap-item:hover{transform:none}}
/* Cinematic Sweden roadmap. Opaque fallbacks preserve contrast without backdrop-filter. */
.roadmap-earth{position:absolute;inset:0;z-index:-3;pointer-events:none}
.roadmap-earth img{width:100%;height:100%;object-fit:cover;object-position:center 42%}
.roadmap::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(3,11,23,.93),rgba(3,11,23,.5) 40%,rgba(3,11,23,.05) 75%),linear-gradient(0deg,#030b17 0%,rgba(3,11,23,.7) 30%,transparent 70%,rgba(3,11,23,.35));pointer-events:none}
.roadmap::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(circle,#d8c49335 .8px,transparent 1px),linear-gradient(#d8c4930d 1px,transparent 1px),linear-gradient(90deg,#d8c4930d 1px,transparent 1px);background-size:18px 18px,90px 90px,90px 90px;mask-image:linear-gradient(90deg,#000,transparent 32%,transparent 70%,#000),linear-gradient(0deg,#000,transparent 20%,transparent 80%,#000);mask-composite:add}
.roadmap-inner{position:relative}
.roadmap-telemetry{display:flex;justify-content:space-between;gap:20px;font:11px/1.6 Consolas,monospace;letter-spacing:.14em;color:#d4c6a6;padding-bottom:22px;border-bottom:1px solid #d7bd8230}
.roadmap-telemetry>span:first-child{display:flex;align-items:center;gap:10px}
.roadmap-telemetry i{width:6px;height:6px;border-radius:50%;background:#ead3a1;box-shadow:0 0 12px #d9ba7770;flex:none}
.roadmap-head{max-width:530px;margin:64px 0 70px;text-align:left;min-height:270px}
.roadmap-eyebrow{color:#e1c994;font:11px/1.5 Consolas,monospace;letter-spacing:.18em;margin-bottom:20px}
.roadmap h2{color:#f3f9ff;font-size:clamp(34px,4.3vw,58px);line-height:1.06;letter-spacing:-.045em;text-wrap:balance;text-shadow:0 4px 35px #0009}
.roadmap-lead{color:#c5d7e6;font-size:16px;line-height:1.8;max-width:450px;text-shadow:0 2px 8px #000}
.roadmap-list{gap:14px}
.roadmap-item{padding:26px;gap:16px;border:1px solid #d6c09238;border-radius:14px;background:rgba(5,18,33,.5);box-shadow:inset 0 1px 0 #d4f6ff0a,0 12px 40px #0003;backdrop-filter:blur(5px);transition:border-color .25s,box-shadow .25s,transform .25s}
.roadmap-item:hover{border-color:#d7bd828a;box-shadow:inset 0 1px 0 #f1dca12b,0 0 24px #d7bd8214,0 16px 40px #0004;transform:translateY(-2px)}
.roadmap-no{font:12px/1.3 Consolas,monospace;color:#e6ce9a;background:#d6b9790b;border:1px solid #d6b97936;border-radius:6px;padding:8px}
.roadmap-item h3{color:#eff8ff;font-size:18px;padding-right:0;margin:0 0 10px}
.roadmap-item>div{min-width:0;padding-top:2px;padding-bottom:30px}
.roadmap-item p{color:#b5c9da;line-height:1.65;font-size:14px}
.roadmap-chip{top:auto;right:auto;bottom:18px;left:78px;color:#e4d0a6;background:#d6b9790b;border:1px solid #d6b97936;font:10px/1.3 Consolas,monospace;letter-spacing:.1em;padding:4px 8px;border-radius:4px}
.roadmap-note{margin-top:28px}
.roadmap-note a{color:#e1cfaa;font-size:14px;font-weight:500;border-bottom:1px solid #d6b97950;padding-bottom:5px}
.roadmap-note a:hover{color:#fff;border-color:#ead5ac}
.roadmap a:focus-visible{outline:2px solid #ead5ac;outline-offset:6px}
@media(min-width:761px){.roadmap-item{min-height:184px}}
@media(max-width:760px){
 .roadmap{padding-block:28px 44px}
 .roadmap-earth{height:740px}
 .roadmap-earth img{object-position:center top}
 .roadmap::before{background:linear-gradient(0deg,#030b17 0%,#030b17 40%,rgba(3,11,23,.3) 72%,rgba(3,11,23,.12)),linear-gradient(90deg,#030b1755,transparent)}
 .roadmap-telemetry{font-size:9px;letter-spacing:.07em;gap:12px;align-items:flex-start}
 .roadmap-telemetry>span:last-child{text-align:right;max-width:130px}
 .roadmap-head{margin:280px 0 32px;min-height:0;max-width:540px;padding-top:28px;background:linear-gradient(0deg,#030b17 70%,transparent);border-radius:12px}
 .roadmap h2{font-size:clamp(32px,7vw,44px)}
 .roadmap-lead{font-size:15px;line-height:1.75;max-width:100%}
 .roadmap-item{padding:20px;grid-template-columns:auto 1fr;gap:14px}
 .roadmap-item>div{grid-column:auto;padding-bottom:28px}
 .roadmap-item h3{margin-top:0}
 .roadmap-chip{top:auto;right:auto;bottom:18px;left:68px}
 .roadmap-note a{font-size:13px;overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){.roadmap-item,.roadmap-item:hover{transition:none;transform:none}}

/* Gold orbital finish: fading instrument patterns and translucent content. */
.roadmap-pattern{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;mask-image:linear-gradient(0deg,transparent,#000 12%,#000 86%,transparent)}
.roadmap-pattern::before{content:"";position:absolute;width:1000px;height:1000px;right:-290px;top:-260px;border:1px solid #d9c28a22;border-radius:50%;box-shadow:0 0 0 24px #d9c28a05,0 0 0 25px #d9c28a16,0 0 0 90px #d9c28a04,0 0 0 91px #d9c28a13,0 0 0 180px #d9c28a04,0 0 0 181px #d9c28a0d;mask-image:linear-gradient(110deg,transparent 38%,#000 75%)}
.roadmap-head{padding:24px;border:1px solid #d6c09220;border-radius:14px;background:rgba(3,11,23,.4);backdrop-filter:blur(5px);transition:box-shadow .25s,border-color .25s}

.roadmap-item:focus-within{border-color:#d7bd828a;box-shadow:inset 0 1px 0 #f1dca12b,0 0 24px #d7bd8214}
@media(max-width:760px){.roadmap-head{padding:20px;margin-top:280px;background:rgba(3,11,23,.58)}.roadmap-pattern::before{right:-650px;top:-150px}.roadmap-item{background:rgba(5,18,33,.6)}}
@media(hover:none){.roadmap-head{background:rgba(3,11,23,.62)}.roadmap-item{background:rgba(5,18,33,.64)}}
@media(prefers-reduced-motion:reduce){.roadmap-head{transition:none}}
/* A perfectly registered light layer: same image geometry, no second Earth render. */
.roadmap .roadmap-lights{position:absolute;inset:0;z-index:-3;pointer-events:none;width:100%;height:100%;object-fit:cover;object-position:center 42%;opacity:0;transition:opacity 950ms cubic-bezier(.2,.65,.3,1)}
@media(min-width:761px){.roadmap.is-discovering .roadmap-lights{opacity:1}}
.roadmap-item:focus-visible{outline:2px solid #e6ce9a;outline-offset:4px}
@media(max-width:760px){.roadmap .roadmap-lights{display:none}}
@media(prefers-reduced-motion:reduce){.roadmap .roadmap-lights{transition:none}}
/* Make room for the map while keeping faded cards available to pointer and keyboard. */
.roadmap .roadmap-item{transition:opacity .55s ease,border-color .25s,box-shadow .25s,transform .25s}
@media(min-width:761px){
 .roadmap .roadmap-list:has(.is-active) .roadmap-item:not(.is-active){opacity:.07}
 .roadmap .roadmap-list .roadmap-item.is-active{opacity:1}
}
@media(prefers-reduced-motion:reduce){.roadmap .roadmap-item{transition:none}}
/* Keep the handset and its UI in proportion when the surrounding layout narrows. */
.phone-wrap{--handset-scale:1;height:488px}
.phone{box-sizing:border-box;width:225px;height:488px;transform:scale(var(--handset-scale));transform-origin:top left;display:flex;flex-direction:column}
.phone-top{padding-bottom:14px;flex-shrink:0}
.phone-app{padding:5px 8px 12px;flex:1;min-height:0}
.phone-app>.demo-brand{margin-bottom:14px}
.phone-job{padding:11px;margin:11px 0}
.phone-job h4{margin-top:8px}
.phone-job .route{margin:12px 0}
.phone-time{padding:8px 0}
.phone-time strong{font-size:19px}
.phone-home{flex-shrink:0}
@media(max-width:1150px){.phone-wrap{--handset-scale:.911111;height:444.622px}}
@media(max-width:900px){.phone-wrap{--handset-scale:.822222;height:401.244px}}
