/* lemmaerp.com — the owner's Lemma mockups (docs/lemma-site/m01..m10.png), built exactly.
   Sizes are the mockups' pixels x 1.2834 (the mockups show a 1440 px page at 1122 px).
   Shared pieces live here; a page's own pieces live in lemma-<page>.css. */
@font-face{font-family:"Inter";src:url("/static/fonts/inter-latin-wght-normal.woff2") format("woff2");font-weight:100 900;font-display:swap}
:root{
  --lm-bg:#fdfcfa; --lm-ink:#0b1222; --lm-ink-2:#1b2537; --lm-text:#5b6576; --lm-muted:#7d8697; --lm-line:#edf0f5;
  --lm-blue:#1463ff; --lm-blue-2:#0b55e8; --lm-cyan:#1fa2e8; --lm-tint:#eaf2ff; --lm-band:#eef4fd;
  --lm-card-shadow:0 10px 30px rgba(20,40,80,.05); --lm-radius:14px; --lm-wrap:1240px;
  --lm-mono:ui-monospace,"SFMono-Regular","JetBrains Mono",Menlo,Consolas,monospace;
}
.lm{margin:0;background:var(--lm-bg);color:var(--lm-ink);font-family:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
.lm *,.lm *::before,.lm *::after{box-sizing:border-box}
.lm a{color:inherit;text-decoration:none}
:where(.lm) img{max-width:100%;display:block}
.lm-wrap{max-width:calc(var(--lm-wrap) + 48px);margin:0 auto;padding:0 24px;position:relative}

/* header */
.lm-head{position:relative;z-index:20}
.lm-head-row{display:flex;align-items:center;height:59px;border-bottom:1px solid var(--lm-line)}
.lm-logo img{height:34px;width:auto}
.lm-nav{display:flex;gap:30px;margin:0 auto;padding-left:40px;font-size:13px;font-weight:500;color:var(--lm-ink-2)}
.lm-nav>a,.lm-drop>summary{display:flex;align-items:center;gap:6px;height:59px;cursor:pointer;list-style:none;position:relative}
.lm-drop>summary::-webkit-details-marker{display:none}
.lm-drop>summary::after{content:"";width:6px;height:6px;border-right:1.4px solid currentColor;border-bottom:1.4px solid currentColor;transform:translateY(-2px) rotate(45deg);opacity:.7}
.lm-nav .on::before{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--lm-blue)}
.lm-drop{position:relative}
.lm-drop-menu{position:absolute;top:54px;left:-14px;min-width:230px;background:#fff;border:1px solid var(--lm-line);border-radius:12px;box-shadow:0 18px 40px rgba(20,40,80,.12);padding:8px;display:grid}
.lm-drop-menu a{padding:9px 12px;border-radius:8px;display:grid;gap:1px}
.lm-drop-menu a:hover{background:var(--lm-tint)}
.lm-drop-menu small{color:var(--lm-muted);font-size:11.5px}
.lm-head-actions{display:flex;align-items:center;gap:24px;font-size:13px;font-weight:500}

/* buttons */
.lm-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;height:44px;padding:0 26px;border-radius:999px;font-size:14px;font-weight:600;white-space:nowrap;border:1px solid transparent}
.lm-btn-primary{background:linear-gradient(180deg,#1f6dff,var(--lm-blue-2));color:#fff!important;box-shadow:0 8px 18px rgba(20,99,255,.25)}
.lm-btn-ghost{background:#fff;border-color:#c9dcfb;color:var(--lm-ink)!important}
.lm-btn-sm{height:36px;padding:0 20px;font-size:12.5px}
.lm-btn .lm-arr{color:inherit;font-size:13px;line-height:1}
.lm-btn-ghost .lm-arr{color:var(--lm-blue)}

/* eyebrow pill, headings, text */
.lm-eyebrow{display:inline-flex;align-items:center;gap:8px;height:20px;padding:0 10px;border:1px solid #dfe7f2;border-radius:999px;background:#fff;font-family:var(--lm-mono);font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#13284b}
/* mockups m03-m09 set their pill labels in bold blue sans: those pages set eyebrow_style = "sans" */
.lm-eb-sans .lm-eyebrow{font-family:inherit;font-size:10.5px;font-weight:700;letter-spacing:.08em;color:var(--lm-blue-2)}
.lm-eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--lm-blue);box-shadow:0 0 0 2px #dbe7ff}
.lm-h1{margin:14px 0 14px;font-size:47px;line-height:1.0;font-weight:800;letter-spacing:-.045em;color:var(--lm-ink)}
.lm-h1 em,.lm-h2 em{font-style:normal;background:linear-gradient(90deg,var(--lm-blue) 0%,var(--lm-cyan) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.lm-lead{margin:0;font-size:15px;line-height:1.42;color:var(--lm-text);max-width:455px}
.lm-h2{margin:10px 0 6px;font-size:29px;line-height:1.08;font-weight:800;letter-spacing:-.035em;color:var(--lm-ink)}
.lm-sub{margin:0;font-size:13px;line-height:1.45;color:var(--lm-text)}
.lm-link{color:var(--lm-blue-2)!important;font-size:11.5px;font-weight:600;white-space:nowrap}
.lm-link::after{content:" \2192"}
.lm-actions{display:flex;gap:12px;margin:24px 0 20px;flex-wrap:wrap}
.lm-checks{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:11px;color:var(--lm-text);margin:0;padding:0;list-style:none}
.lm-checks li{display:flex;align-items:center;gap:8px}
.lm-checks li::before{content:"";width:13px;height:13px;border-radius:50%;flex:none;background:var(--lm-blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center/9px no-repeat}

/* sections */
.lm-section{padding-top:12px;padding-bottom:12px}
.lm-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}
.lm-band{background:linear-gradient(180deg,#eaf2fd 0%,#f2f7fe 100%);border-radius:24px;margin:0 32px}

/* cards */
.lm-card{background:#fff;border:1px solid var(--lm-line);border-radius:var(--lm-radius);box-shadow:var(--lm-card-shadow);position:relative}
.lm-go{position:absolute;right:14px;bottom:14px;width:22px;height:22px;border-radius:50%;border:1px solid #d8e4f8;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231463ff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h13M13 6l6 6-6 6'/%3E%3C/svg%3E") center/11px no-repeat}
.lm-tile{width:47px;height:47px;border-radius:12px;display:grid;place-items:center;flex:none}
.lm-tile img{width:100%;height:100%;object-fit:contain}
.lm-tile-soft{background:var(--lm-tint);color:var(--lm-blue)}
.lm-tile-soft svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.lm-grid{display:grid;gap:14px}
.lm-g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.lm-g5{grid-template-columns:repeat(5,minmax(0,1fr))}
.lm-card h3{margin:0;font-size:14px;font-weight:700;letter-spacing:-.01em;color:var(--lm-ink)}
.lm-card p{margin:0;font-size:12px;line-height:1.45;color:var(--lm-text)}
.lm-card small{font-size:11.5px;color:var(--lm-muted)}

/* hero with the mockup's picture on the right, starting under the header */
.lm-hero{position:relative;min-height:540px}
.lm-hero-pic{position:absolute;top:-59px;right:calc(-1 * max(0px, (100vw - var(--lm-wrap) - 48px) / 2));z-index:0;pointer-events:none;
  /* the picture is cut from the mockup: fade its left and bottom edges into the page so no seam shows */
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 70px),linear-gradient(to top,transparent 0,#000 50px);
  -webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0,#000 70px),linear-gradient(to top,transparent 0,#000 50px);mask-composite:intersect}
.lm-hero-copy{position:relative;z-index:1;padding-top:26px;max-width:560px}

/* closing band + footer */
.lm-cta{display:flex;align-items:center;gap:28px;margin:12px 32px 0;min-height:72px;border-radius:24px;background:linear-gradient(90deg,#e1edfc 0%,#eaf2fd 55%,#e8f1fd 100%);overflow:hidden;padding-right:44px}
.lm-cta-blob{flex:none;align-self:stretch;width:224px;background:url("/static/media/lemma/cta-blob.webp") left bottom/auto 100% no-repeat}
.lm-cta-copy{flex:1;padding:8px 0}
.lm-cta h2{margin:0 0 4px;font-size:21px;font-weight:800;letter-spacing:-.03em}
.lm-cta p{margin:0;font-size:12.5px;line-height:1.45;color:var(--lm-text);max-width:560px}
.lm-cta .lm-actions{margin:0}
.lm-foot{padding:14px 0 26px}
.lm-foot-row{display:grid;grid-template-columns:auto 1fr auto auto;align-items:start;gap:0 60px}
.lm-foot .lm-logo img{height:30px}
.lm-foot-links{display:flex;gap:30px 52px;font-size:11.5px;color:var(--lm-ink-2);padding-top:4px;flex-wrap:wrap}
.lm-foot-links+small,.lm-foot small{display:block;margin-top:10px;font-size:10.5px;color:var(--lm-muted)}
.lm-foot-co{display:flex;gap:42px;font-size:11.5px;color:var(--lm-ink-2);padding-top:4px}
.lm-foot-social{text-align:right}
.lm-foot-social div{display:flex;gap:16px;justify-content:flex-end;padding-top:2px}
.lm-foot-social svg{width:16px;height:16px;fill:var(--lm-ink-2)}

/* phones and tablets: the mockups are desktop; narrow screens stack the same pieces */
@media (max-width:1100px){
  .lm-nav{display:none}
  .lm-hero{min-height:0}
  .lm-hero-pic{position:relative;top:0;margin:10px -24px 0}
  .lm-g5,.lm-g4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lm-cta{flex-wrap:wrap;padding:0 20px 20px;margin:20px 16px 0}
  .lm-cta-blob{display:none}
  .lm-band{margin:0 12px}
  .lm-foot-row{grid-template-columns:1fr;gap:16px}
}
@media (max-width:640px){
  .lm-wrap{padding:0 16px}
  .lm-hero-pic{margin:10px -16px 0}
  .lm-h1{font-size:38px}
  .lm-h2{font-size:24px}
  .lm-g5,.lm-g4{grid-template-columns:1fr}
  .lm-section-head{flex-direction:column;align-items:flex-start}
  .lm-head-actions .lm-login{display:none}
}
