/* Shared language selector: same-page links, no automatic redirects. */
header{gap:24px}
header .language-switch{display:flex;gap:3px;flex:0 0 auto;width:auto;order:0;padding:3px;border:1px solid #d3deed;border-radius:7px;background:#e7edf6;font-size:13px;line-height:1.4}
header .language-switch a{padding:7px 9px;border-radius:4px;color:#344253;box-shadow:none}
header .language-switch a[aria-current="page"]{background:#142e55;color:#fff}
header .language-switch a:hover{background:#d6e6fb;color:#142e55}
@media(max-width:1000px){header{height:auto;min-height:108px;flex-wrap:wrap;padding-top:18px;padding-bottom:14px;gap:12px 20px}header>nav:not(.language-switch){order:3;width:100%;justify-content:space-between}header .portal{margin-left:auto}header .language-switch{order:0}}
@media(max-width:420px){header{gap:10px}header .brand{width:135px}header .portal{font-size:13px}header .portal span{margin-left:4px}header .language-switch a{padding:7px}}
/* Montserrat typography: body 17/16, lead 19/17, headings 56/40, 44/34, 32/28, 26/24. */
:root{--bright-blue:#0866ed;--blue-label:#005bd6}
:root{--type-body:1.0625rem;--type-small:.875rem;--type-label:.8125rem;--type-card:1.625rem;--type-section:2rem;--type-hero:3.5rem;--type-detail:2.75rem;--muted:#4c5968}
html{font-size:100%}body{font-family:Montserrat,Arial,sans-serif;font-size:var(--type-body);font-weight:400;line-height:1.65}
h1,h2,h3,p{overflow-wrap:break-word}h1,h2,h3{font-family:inherit;font-weight:600;text-wrap:balance}
.hero h1{font-size:var(--type-hero);line-height:1.13;letter-spacing:-.035em;max-width:780px;margin:22px 0 24px}
.detailhero h1{font-size:var(--type-detail);line-height:1.16;letter-spacing:-.025em;margin:20px 0 24px}
.sectionheading h2,.choice h2,.start h2,.help h2,.comparison h2,.faq h2,.usecase h2{font-size:var(--type-section);line-height:1.25;letter-spacing:-.02em;font-weight:600}
.card h3,.benefits h2{font-size:var(--type-card);line-height:1.3;letter-spacing:-.015em;font-weight:600;margin:12px 0}
p,.choice p,.help p,.benefits p,.detailhero p{font-size:var(--type-body);line-height:1.7;font-weight:400;color:var(--muted)}
.hero p{font-size:1.1875rem;line-height:1.65;max-width:640px}.detailhero>div>p:not(.fine){font-size:1.125rem;line-height:1.7}.help p{color:#e9effb}
.card p{font-size:1rem;line-height:1.65;min-height:0;margin:14px 0 22px}.card p.product-role{font-size:1rem;font-weight:600;line-height:1.5;color:#2455a6;margin:0 0 4px;min-height:3em}
.cardcontent{padding:28px 26px 24px;display:flex;flex-direction:column;flex:1}.card{display:flex;flex-direction:column}.card .textlink{margin-top:auto;padding-top:12px;margin-bottom:22px;gap:12px}
.eyebrow,.cardcontent .eyebrow{font-size:var(--type-label);font-weight:600;line-height:1.5;letter-spacing:.07em;color:#536173}
nav,.portal,.button,.textlink,.store,.large .store,.back{font-size:.9375rem;font-weight:600;line-height:1.5}
.store,.large .store{font-size:.875rem;padding:11px 12px;gap:10px;min-height:44px;align-items:center}.button{min-height:48px}.stores{gap:8px}
.choices a,.start li{font-size:var(--type-body);line-height:1.65}.choices b{font-size:var(--type-small)}
.fine,.detailhero .fine,.platformnote,footer p,footer>a:not(.brand),footer small,.sectionheading>span{font-size:var(--type-small)!important;line-height:1.65}.benefits article>span{font-size:var(--type-small)}
.product-figure{margin:0;min-width:0}.product-figure .product-image.visual{display:flex;align-items:center;justify-content:center;position:relative;flex-shrink:0;overflow:hidden;text-decoration:none;height:auto;aspect-ratio:4/3;padding:0;background:#e6edf5}
.product-image img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .2s ease}.product-image:hover img{transform:scale(1.025)}
.image-expand{position:absolute;bottom:12px;right:12px;display:grid;place-items:center;width:32px;height:32px;background:#fff;border-radius:50%;color:#2455a6;box-shadow:0 2px 8px #0002;font-size:18px}
.product-figure figcaption{font-size:.8125rem;line-height:1.5;padding:10px 14px;background:#f4f7fa;color:#536173}.detailhero .product-figure{align-self:center;width:100%}.detailhero .product-figure .product-image{height:auto;border-radius:8px 8px 0 0}.detailhero .product-figure figcaption{border-radius:0 0 8px 8px}
.comparison,.faq,.usecase{margin:60px 20px}.comparison h2,.faq h2{margin:0 0 24px}.table-scroll{overflow-x:auto;border:1px solid #d6dbe1;border-radius:8px;background:#fff}.comparison table{border-collapse:collapse;width:100%;font-size:1rem;line-height:1.6;text-align:left}.comparison caption{text-align:left;padding:18px 22px;font-size:.875rem;color:#536173}.comparison th,.comparison td{padding:18px 22px;border-top:1px solid #d6dbe1;vertical-align:top}.comparison thead{background:#e7ecf2}.comparison th{font-weight:600}.comparison tbody th{white-space:nowrap;color:#2455a6}.comparison a{text-decoration:underline;text-underline-offset:4px}
.usecase{padding:32px 36px;background:#e5ebf2;border-radius:8px}.usecase h2{margin:12px 0 16px}.usecase p{max-width:70ch;margin:0}.faq details{border-top:1px solid #cbd2dc;padding:20px 0}.faq details:last-child{border-bottom:1px solid #cbd2dc}.faq summary{font-size:1.0625rem;font-weight:600;line-height:1.5;cursor:pointer;min-height:28px}.faq details p{max-width:70ch;margin:14px 0 0}.faq summary:focus-visible{outline:3px solid #2455a6;outline-offset:5px}
@media(max-width:1100px) and (min-width:721px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card:last-child{grid-column:1/-1;max-width:calc(50% - 7px);width:100%;justify-self:center}.detailhero{grid-template-columns:1fr}.detailhero>div{max-width:740px}.detailhero .product-figure{max-width:700px;justify-self:center}.hero h1{font-size:3.25rem}.choices a{gap:14px}}
@media(max-width:720px){:root{--type-body:1rem;--type-hero:2.5rem;--type-detail:2.125rem;--type-section:1.75rem;--type-card:1.5rem}.hero h1{font-size:var(--type-hero)}.hero p,.detailhero>div>p:not(.fine){font-size:1.0625rem}.detailhero h1{font-size:var(--type-detail)}.sectionheading h2{max-width:100%}.cardcontent{padding:26px 24px}.card p.product-role{min-height:0}.choices a{font-size:1rem;flex-wrap:wrap}.choices b{font-size:.875rem}.help h2{font-size:var(--type-section)}.hero .eyebrow{font-size:var(--type-label)}nav{font-size:.875rem}footer{align-items:flex-start}.hero{padding-bottom:180px}.detailhero .fine{max-width:100%}.comparison,.faq,.usecase{margin:40px 0}.usecase{padding:24px}.comparison th,.comparison td{padding:14px 16px}.comparison table{min-width:580px}.faq summary{font-size:1rem}}
@media(prefers-reduced-motion:reduce){.product-image img{transition:none}}
.detailhero h1{font-weight:600}
/* Stronger slogans, crisp supporting copy and restrained dark-blue anchors. */
:root{--ink:#142e55;--muted:#344253}
.hero h1,.detailhero h1,.sectionheading h2,.choice h2,.help h2{font-weight:700}
.card h3{font-weight:700;color:#142e55}.card p.product-role{font-weight:700;color:#194780}
.hero p,.detailhero>div>p:not(.fine){font-weight:500;color:#344253}
.card p:not(.product-role),.benefits p,.choice p,.usecase p,.faq details p{color:#344253}
.comparison thead{background:#142e55;color:#fff}.comparison thead th{border-top-color:#142e55}
.help{background:#142e55}.help h2{color:#fff}.help p{color:#edf2f9}.help .secondary,.help .store{color:#142e55}
/* Header shares the hero's content edges; compensate for transparent logo padding. */
header{padding-left:max(60px,calc((100% - 1280px)/2));padding-right:max(60px,calc((100% - 1280px)/2))}
header .brand{margin-left:-16.7px}
@media(max-width:1100px){header{padding-left:40px;padding-right:40px}}
@media(max-width:720px){header{padding-left:24px;padding-right:24px}header .brand{margin-left:-14.5px}}

/* Shared download and support button treatment on every page. */
.store,.help .store,.help .button[data-support]{background:#eef3fa;border-color:#dce5f2;color:#142e55;transition:background-color .18s ease,color .18s ease,border-color .18s ease}
.store:is(:hover,:focus-visible),.help .store:is(:hover,:focus-visible),.help .button[data-support]:is(:hover,:focus-visible){background:#142e55;border-color:#142e55;color:#fff}
.store span,.help .button[data-support] span{color:inherit}
header nav{font-size:1.0625rem}header .portal{font-size:1rem}
@media(max-width:720px){header nav{font-size:1rem;gap:12px}}
@media(prefers-reduced-motion:reduce){.store,.help .button[data-support]{transition:none!important}}

/* High-contrast numbering for benefits and getting-started steps. */
.benefits article>span,.start li::before{display:inline-grid;place-items:center;width:52px;height:52px;min-width:52px;border-radius:50%;background:#0866ed;color:#fff;font-size:18px;font-weight:700;line-height:1;flex-shrink:0}
.start li{align-items:center}
.benefits article>span{margin-bottom:8px}

/* One consistent, quiet call-to-action panel on every page. */
.help{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:40px 42px;border-radius:8px;background:#142e55}

.help>div:first-child{flex:1;min-width:0}
.help h2{margin:0;line-height:1.3}
.help p{margin:12px 0 0}
.help .stores{flex:0 0 auto;margin:0;padding:0;align-items:center;justify-content:flex-end}
.help .store,.help .button[data-support]{min-height:48px;padding:12px 18px;font-size:15px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
.help .store:is(:hover,:focus-visible),.help .button[data-support]:is(:hover,:focus-visible){border-color:#dce5f2}
@media(max-width:900px){.help{flex-wrap:wrap}.help>div:first-child{flex-basis:100%}.help .stores{justify-content:flex-start;flex-wrap:wrap}}
@media(max-width:720px){.help{flex-direction:column;align-items:flex-start;gap:24px;padding:28px 24px}.help>div:first-child{flex-basis:auto}.help .stores{flex:0 1 auto;max-width:100%}}


/* Bright-blue accents, with lighter labels retained on dark panels. */
.eyebrow,.cardcontent .eyebrow{color:var(--blue-label)}
.help .eyebrow,.price-card-heading .eyebrow{color:#dce7f7}
header nav a.active{color:#142e55;box-shadow:0 3px var(--bright-blue)}
.help .button[data-support]{background:var(--bright-blue);border-color:var(--bright-blue);color:#fff}
.help .button[data-support]:is(:hover,:focus-visible){background:#0054c9;border-color:#0054c9;color:#fff}
.data-stats{margin:64px 20px;padding:36px 0;border-top:1px solid #d3deed;border-bottom:1px solid #d3deed}.data-stats h2{font-size:32px;line-height:1.25;margin:12px 0 30px}.data-stats dl{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin:0}.data-stats dl>div{display:flex;flex-direction:column}.data-stats dt{order:1;font-size:17px;font-weight:700;color:#142e55}.data-stats dd{order:0;margin:0 0 8px;color:#0866ed;font-size:48px;font-weight:700;line-height:1.2;letter-spacing:-1.5px}.data-stats p{order:2;font-size:15px;line-height:1.6;max-width:320px;margin:10px 0 0}@media(max-width:720px){.data-stats{margin:44px 0}.data-stats dl{grid-template-columns:1fr;gap:28px}.data-stats h2{font-size:28px}.data-stats dd{font-size:42px}}
.product-stats{display:flex;flex-wrap:wrap;gap:18px;margin:22px 0;padding:18px 0;border-top:1px solid #cfdceb;border-bottom:1px solid #cfdceb}.product-stats>div{display:flex;flex:1;min-width:120px;flex-direction:column}.product-stats dt{order:1;font-size:12px;line-height:1.5;color:#344253;max-width:260px}.product-stats dd{order:0;margin:0 0 5px;color:#005bd6;font-weight:700;font-size:28px;line-height:1.2;letter-spacing:-.6px}.detailhero .product-stats{margin:24px 0}.detailhero .product-stats dd{font-size:34px}.detailhero .product-stats dt{font-size:14px}
/* Compact two-row phone header with accessible language targets. */
@media(max-width:540px){header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px}header>.brand{grid-column:1;grid-row:1}header>.portal{grid-column:2;grid-row:1;margin-left:0}header>nav:not(.language-switch){grid-column:1;grid-row:2;min-width:0;gap:6px;font-size:15px}header>.language-switch{grid-column:2;grid-row:2;justify-self:end}header .language-switch a{min-width:40px;min-height:44px;display:grid;place-items:center;padding:7px}header nav a{min-height:44px}header .portal{min-height:44px;display:flex;align-items:center}}
