/* The public site's shared shell: the header and footer partials (Views/Shared/_MarketingHeader.cshtml,
   _MarketingFooter.cshtml) that _MarketingLayout (Home, Pricing), _AuthLayout (Log in, password recovery, Access denied)
   and _SignupLayout (registration, verification, plan confirmation) all render. Loaded by all three layouts, BEFORE any
   page stylesheet; the homepage body (wwwroot/css/marketing-site.css) builds on it.

   Extracted unchanged and in their original order from marketing-site.css (from the "Website redesign" mockup): the
   self-hosted Geist faces (wwwroot/marketing/fonts, SIL OFL — the one font source for the public pages), the scoped .mk
   base and tokens, and every rule for the header, mobile menu, buttons, .wrap, .muted and the footer, including their
   responsive and reduced-motion overrides. The responsive .wrap padding is scoped here to the header and footer
   (.mk-navbar / .mk-foot): the homepage's own .wrap padding stays in marketing-site.css, after the section rules it
   overrides, so the homepage cascade is unchanged. Every rule is under .mk, so nothing here reaches a page body that is not
   itself .mk. The Reduce Motion rule here stops every .mk animation and transition (the homepage demo also stops in
   marketing-home.js). */

@font-face {
  font-family: "Geist";
  src: url("../marketing/fonts/Geist-Variable.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Geist Mono";
  src: url("../marketing/fonts/GeistMono-Variable.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
.mk { -webkit-font-smoothing: antialiased; line-height: normal; }
.mk p { margin: 0; }
.mk ul, .mk ol { list-style: none; margin: 0; padding: 0; }
.mk a { text-decoration: none; }
.mk a:focus-visible, .mk button:focus-visible { outline: 2px solid #1A5CFF; outline-offset: 2px; }
.mk [hidden] { display: none !important; }
.mk button {font-family:inherit;cursor:pointer}
:root {
  /* The public content width and its desktop gutter: the header's .wrap, and the pages that line up with it (the
     sign-up split, signup.css). Narrow screens narrow the gutter in the media rules below. */
  --mk-wrap-max: 1200px;
  --mk-wrap-gutter: 40px;
}
.mk .wrap {max-width:var(--mk-wrap-max);margin:0 auto;padding:0 var(--mk-wrap-gutter)}
.mk.mk-navbar {position:sticky;top:0;z-index:20;background:rgba(255,255,255,.86);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid #EEF0F3}
.mk .navin {height:64px;display:flex;align-items:center;gap:28px}
.mk .logo {display:inline-flex;align-items:center;gap:6px;color:#0B1220}
.mk .lk0 {border:0;background:none;padding:0}
.mk .navl {display:flex;gap:2px}
.mk .navb {height:34px;padding:0 12px;border:0;border-radius:9px;background:none;font-size:14.5px;font-weight:500;color:#4A5361;transition:color .15s,background .15s;position:relative}
.mk .navb:hover {color:#0B1220;background:#F4F5F7}
.mk .navb.on {color:#0B1220}
.mk .navb.on::after {content:"";position:absolute;left:12px;right:12px;bottom:-15px;height:2px;border-radius:2px;background:#1A5CFF}
.mk .navu {border:0;background:none;font-size:14.5px;font-weight:500;color:#4A5361;padding:0 8px;height:34px}
.mk .navu:hover {color:#0B1220}
.mk .mk-btn {height:42px;padding:0 18px;border-radius:11px;border:1px solid #D9DDE3;background:#fff;color:#0B1220;font-size:15px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background .15s,border-color .15s,transform .1s,box-shadow .15s;white-space:nowrap}
.mk .mk-btn:hover {border-color:#B9C0CA;background:#FAFBFC}
.mk .mk-btn:active {transform:translateY(1px)}
.mk .mk-btn:focus-visible, .mk .navb:focus-visible {outline:2px solid #1A5CFF;outline-offset:2px}
.mk .mk-btn.p {background:#1A5CFF;border-color:#1A5CFF;color:#fff;box-shadow:0 1px 0 rgba(255,255,255,.2) inset,0 6px 16px rgba(26,92,255,.22)}
.mk .mk-btn.p:hover {background:#0F4FEF;border-color:#0F4FEF}
.mk .mk-btn.sm {height:36px;padding:0 14px;font-size:14px;border-radius:10px}
.mk .muted {color:#6B7380}
.mk.mk-foot {margin-top:90px;border-top:1px solid #EEF0F3}
.mk .footin {display:flex;align-items:center;gap:30px;padding-top:32px;padding-bottom:40px;font-size:14px}
.mk .fl1 {display:flex;align-items:center;gap:16px;flex:1}
.mk .fl1 .muted {font-size:13.5px}
.mk .fl2 {display:flex;gap:20px}
.mk .fl2 button {border:0;background:none;padding:0;font-size:14px;color:#4A5361}
.mk .fl2 button:hover {color:#0B1220}
@keyframes mk-fu {from{opacity:0;transform:translateY(14px)}
}
.mk .burger {display:none;width:38px;height:38px;border:1px solid #E4E7EC;border-radius:10px;background:#fff;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.mk .burger i {width:16px;height:1.6px;background:#0B1220;border-radius:2px}
.mk .mmenu {display:flex;flex-direction:column;padding:6px 20px 14px;border-top:1px solid #EEF0F3;background:#fff;animation:mk-fu .2s}
.mk .mmenu button {border:0;background:none;text-align:left;font-size:17px;font-weight:600;padding:12px 0;border-bottom:1px solid #F2F4F6;color:#0B1220}
.mk {--ff:"Geist",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;--fh:var(--ff);--hw:600;--ht:-.032em;--ink:#0B1220;--body:#3B4350;--sub:#5A6372;font-family:var(--ff);color:var(--ink);font-feature-settings:"ss01" off}
.mk button, .mk input {font-family:var(--ff)}
.mk .muted {color:var(--sub)}
.mk .navb, .mk .navu {font-size:14px;font-weight:500}
.mk .mk-btn {border-radius:10px;font-weight:500;letter-spacing:-.005em}
.mk .mk-btn.sm {height:34px;border-radius:9px;font-size:13.5px}
.mk .mk-btn.p {box-shadow:0 1px 2px rgba(26,92,255,.25)}
.mk.mk-navbar {background:rgba(255,255,255,.92);border-bottom:1px solid #E6E9EE;box-shadow:0 1px 0 rgba(11,18,32,.02)}
.mk .navin {height:66px}
.mk .lk0 {cursor:pointer}
@media (max-width: 860px) {
.mk.mk-navbar .wrap, .mk.mk-foot .wrap {padding:0 20px}
.mk .navin {height:58px;gap:12px}
.mk .navl {display:none}
.mk .navu {display:none}
.mk .footin {flex-direction:column;align-items:flex-start;gap:16px}
.mk .fl1 {flex-direction:column;align-items:flex-start;gap:8px}
.mk .fl2 {flex-wrap:wrap;gap:14px}
.mk .burger {display:flex;order:5}
.mk .navin {height:58px}
}
.mk .mk-grow { flex: 1; }
.mk .navb, .mk .navu { display: inline-flex; align-items: center; }
.mk .navu { max-width: 14rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; display: inline-block; line-height: 34px; }
.mk .navb.on::after { bottom: -16px; }
.mk .burger { width: 44px; height: 44px; }
.mk .mmenu nav { display: flex; flex-direction: column; }
.mk .mmenu a { display: flex; align-items: center; min-height: 48px; font-size: 17px; font-weight: 600; color: #0B1220; border-bottom: 1px solid #F2F4F6; }
.mk .mmenu a[aria-current="page"] { color: #1448CC; }
.mk .mmenu a:last-child { border-bottom: 0; }
.mk .fl2 { display: flex; flex-wrap: wrap; gap: 20px; }
.mk .fl2 a { font-size: 14px; color: #4A5361; }
.mk .fl2 a:hover { color: #0B1220; }
.mk .fl1 .muted, .mk .footin > .muted { color: #5A6372; }
@media (prefers-reduced-motion: reduce) {
.mk *, .mk *::before, .mk *::after { animation: none !important; transition: none !important; }
}
@media (max-width: 860px) {
.mk .navl, .mk .navu { display: none; }
.mk .fl2 { gap: 14px; }
}
@media (max-width: 380px) {
.mk .navin { gap: 8px; }
.mk .mk-btn.sm { padding: 0 10px; font-size: 13px; }
.mk.mk-navbar .wrap, .mk.mk-foot .wrap { padding: 0 16px; }
}

/* ---- Log out (signed in): a POST form in the header, the mobile menu and the footer, styled as the link beside it. */
.mk .mk-signout { display: inline-flex; margin: 0; }
.mk .mmenu .mk-signout { display: block; }
.mk .mmenu .mk-signout button { width: 100%; min-height: 48px; padding: 0; border-top: 1px solid #F2F4F6; border-bottom: 0; font-size: 17px; font-weight: 600; color: #0B1220; text-align: left; }
@media (max-width: 860px) {
.mk .mk-signout-head { display: none; }
}

/* ---- The build version after the copyright (_MarketingFooter): it wraps as one unit on narrow screens. */
.mk .mk-version { white-space: nowrap; }
