:root { color-scheme:light; --ink:#172431; --muted:#566572; --line:#dce5e8; --teal:#087f79; --pale:#eff8f6; --gold:#b97918; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:#fff; font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",sans-serif; }
a { color:inherit; text-decoration:none; }
img { max-width:100%; display:block; }
h1,h2,h3,p,figure { margin:0; }
h1,h2,h3 { line-height:1.2; font-weight:650; letter-spacing:0; text-wrap:balance; }
h1 { font-size:64px; }
h2 { font-size:32px; }
h3 { font-size:23px; }
p { color:var(--muted); }
button,select { font:inherit; }
a:focus-visible,select:focus-visible,summary:focus-visible { outline:3px solid var(--teal); outline-offset:5px; }
.wrap { width:min(1120px, calc(100% - 64px)); margin-inline:auto; }
.site-nav { min-height:76px; display:flex; align-items:center; gap:32px; border-bottom:1px solid var(--line); }
.brand { display:inline-flex; align-items:center; gap:12px; font-size:23px; font-weight:700; white-space:nowrap; }
.brand img { object-fit:contain; flex-shrink:0; }
.nav-links { margin-left:auto; display:flex; align-items:center; gap:28px; font-size:14px; font-weight:600; }
.nav-links a:hover,.footer-links a:hover,.text-link:hover { color:var(--teal); text-decoration:underline; text-underline-offset:5px; }
.language select { height:40px; max-width:150px; border:1px solid var(--line); background:#fff; color:var(--ink); border-radius:6px; padding:0 8px; font-size:14px; }
.eyebrow { font-size:13px; font-weight:650; color:var(--teal); margin-bottom:18px; }
.hero { text-align:center; padding-top:24px; padding-bottom:24px; }
.hero .eyebrow { margin-bottom:8px; }
.hero h1 { font-size:56px; margin-bottom:4px; }
.hero h2 { font-size:30px; margin-bottom:12px; }
.hero .lede { font-size:16px; }
.hero .actions { margin-top:14px; }
.lede { max-width:680px; margin:0 auto; font-size:18px; line-height:1.7; }
.actions { display:flex; flex-wrap:wrap; gap:12px; justify-content:center; margin-top:24px; }
.button { min-height:46px; display:inline-flex; align-items:center; justify-content:center; gap:18px; padding:10px 22px; border-radius:6px; font-size:14px; font-weight:600; border:1px solid transparent; transition:background .15s ease; }
.primary { background:var(--teal); color:#fff; }
.primary:hover { background:#076a65; }
.secondary { background:#fff; border-color:#afbdc5; }
.secondary:hover { background:#f4f7f8; }
.product-shots { display:flex; justify-content:center; gap:48px; margin:24px auto 0; }
.product-shots figure { width:165px; min-width:0; }
.product-shots img { width:100%; height:auto; border-radius:8px; }
.hero .product-shots img { height:min(240px, 25svh); width:auto; max-width:100%; margin:auto; object-fit:contain; }
.product-shots figcaption { font-size:13px; font-weight:600; margin-top:12px; color:var(--muted); }
.image-note { font-size:12px; margin-top:18px; text-align:center; }
.hero .image-note { margin-top:10px; }
.features { border-top:1px solid var(--line); padding:64px 0; }
.section-heading { max-width:720px; margin-bottom:36px; }
.section-heading p:last-child { margin-top:18px; }
.product-traits { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:32px 56px; }
.product-traits article { padding-top:22px; border-top:1px solid var(--line); }
.product-traits h3 { font-size:22px; margin-bottom:12px; }
.catalog { padding:64px 0; border-block:1px solid var(--line); }
.catalog-grid { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:0 56px; }
.catalog-entry { min-height:210px; padding:28px 0; border-top:1px solid var(--line); display:grid; align-items:start; gap:24px; }
.catalog-entry.with-image { grid-template-columns:minmax(0, 1fr) 62px; }
.catalog-entry img { width:62px; height:auto; border-radius:4px; }
.catalog-entry h3 { font-size:21px; margin-bottom:12px; }
.catalog-entry p { font-size:15px; }
.catalog-link { display:inline-block; color:var(--teal); font-size:14px; font-weight:600; margin-top:16px; }
.catalog-entry:hover h3,.catalog-entry:hover .catalog-link { text-decoration:underline; text-underline-offset:5px; }
.money-story { padding:64px 0; border-bottom:1px solid var(--line); }
.money-example { display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:24px; margin:0; padding:28px 0; border-block:1px solid var(--line); }
.money-example>div { display:grid; grid-template-rows:minmax(46px, auto) auto; }
.money-example dt { color:var(--muted); font-size:14px; }
.money-example dd { margin:0; font-size:36px; line-height:1.2; font-weight:650; font-variant-numeric:tabular-nums; }
.money-result { padding-left:24px; border-left:2px solid var(--teal); }
.money-result dd { color:var(--teal); }
.money-note { margin-top:16px; font-size:13px; max-width:780px; }
.transaction-note { margin-top:32px; max-width:780px; }
.transaction-note h3 { margin-bottom:12px; }
.platforms { padding:64px 0; background:var(--pale); }
.platform-grid { display:grid; grid-template-columns:1fr 1fr; gap:72px; margin-top:40px; }
.platform-grid .eyebrow { margin-bottom:12px; }
.platform-grid h3 { margin-bottom:16px; }
.platform-grid .button,.text-link { margin-top:24px; }
.text-link { display:inline-block; font-weight:600; color:var(--teal); }
.faq { padding:64px 0; display:grid; grid-template-columns:1fr 2fr; gap:56px; }
details { border-bottom:1px solid var(--line); }
summary { cursor:pointer; padding:20px 0; font-weight:600; }
details p { margin-bottom:22px; max-width:720px; }
.closing { padding:56px 0; background:#f5f7fa; text-align:center; }
.closing p { margin-top:16px; }
.site-footer { padding:48px 0; display:flex; justify-content:space-between; gap:48px; font-size:13px; }
.site-footer p { margin-top:14px; max-width:290px; }
.footer-links { display:grid; grid-template-columns:1fr 1fr; gap:12px 30px; }
.feature-intro { padding:32px 0 48px; border-bottom:1px solid var(--line); }
.back-link { display:inline-block; font-size:14px; color:var(--muted); margin-bottom:30px; }
.feature-intro h1 { font-size:44px; max-width:880px; margin-bottom:22px; }
.feature-intro .lede { margin:0; max-width:780px; }
.feature-intro .actions { justify-content:flex-start; }
.feature-body { display:grid; grid-template-columns:minmax(0, 1fr) 230px; gap:80px; padding:48px 0; }
.workflow article { padding:28px 0; border-bottom:1px solid var(--line); }
.workflow article:first-child { padding-top:0; }
.workflow h2 { font-size:25px; margin-bottom:14px; }
.feature-preview .product-shots { margin:0; }
.feature-preview .product-shots figure { width:230px; }
.feature-preview figcaption { text-align:center; }
.feature-body.no-preview { display:block; }
.no-preview .workflow { max-width:850px; margin:auto; }
.feature-example { padding:24px 0 48px; }
.feature-example h2 { font-size:28px; max-width:850px; margin-bottom:24px; }
.example-record { margin:0; max-width:850px; border-top:1px solid var(--line); }
.example-record>div { display:grid; grid-template-columns:180px minmax(0, 1fr); gap:24px; padding:18px 0; border-bottom:1px solid var(--line); }
.example-record dt { color:var(--muted); }
.example-record dd { margin:0; }
.related { padding:24px 0 48px; border-bottom:1px solid var(--line); }
.related h2 { font-size:24px; margin-bottom:18px; }
.feature-links { display:flex; flex-wrap:wrap; gap:18px 32px; color:var(--teal); font-weight:600; }
.feature-links a { text-decoration:underline; text-underline-offset:5px; }
.sr-only,.skip-link:not(:focus) { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.skip-link:focus { position:fixed; left:16px; top:16px; z-index:10; padding:12px; background:#fff; }
@media(max-width:760px) {
  .wrap { width:calc(100% - 40px); }
  .site-nav { min-height:76px; gap:16px; flex-wrap:wrap; padding:16px 0; }
  .brand { font-size:21px; gap:9px; }
  .language { margin-left:auto; }
  .nav-links { order:3; width:100%; margin-left:0; justify-content:space-between; gap:12px; }
  .hero { padding-top:16px; padding-bottom:16px; }
  .hero .eyebrow { display:none; }
  .hero h1 { font-size:44px; }
  h1 { font-size:48px; }
  .hero h2 { font-size:24px; }
  .lede { font-size:16px; }
  .product-shots { gap:14px; margin-top:28px; }
  .hero .product-shots img { height:min(200px, 22svh); }
  .hero .button { padding:10px 12px; font-size:13px; }
  .hero .primary span { display:none; }
  .product-shots figure { width:calc((100% - 28px)/3); }
  .product-shots figcaption { font-size:11px; }
  .image-note { font-size:11px; }
  .features,.platforms,.faq { padding:40px 0; }
  .features { padding-top:28px; }
  .catalog,.money-story { padding:40px 0; }
  .product-traits,.catalog-grid { grid-template-columns:1fr; gap:28px; }
  .catalog-grid { gap:0; }
  .catalog-entry { min-height:0; gap:20px; }
  .money-example { grid-template-columns:repeat(2, minmax(0, 1fr)); gap:24px; }
  .money-result { padding-left:16px; }
  .money-example dd { font-size:30px; }
  h2 { font-size:27px; }
  h3 { font-size:21px; }
  .platform-grid,.faq { grid-template-columns:1fr; gap:32px; }
  .platform-grid article+article { border-top:1px solid #c6ddda; padding-top:32px; }
  .site-footer { flex-direction:column; padding:32px 0; gap:28px; }
  .footer-links { grid-template-columns:1fr; }
  .feature-intro h1 { font-size:34px; }
  .feature-body { grid-template-columns:1fr; gap:36px; padding:32px 0; }
  .feature-preview { max-width:230px; margin:auto; }
  .feature-preview .product-shots figure { width:100%; }
  .workflow h2 { font-size:23px; }
  .feature-example h2 { font-size:25px; }
  .example-record>div { grid-template-columns:1fr; gap:6px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .button { transition:none; } }
