/* Manrope, self-hosted (public/fonts, SIL OFL 1.1) — shared by the site and the app. */
@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/site/fonts/manrope-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/site/fonts/manrope-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/site/fonts/manrope-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* Arial adjusted to Manrope's metrics (computed with fontTools: average advance width over a text sample, Manrope 500 vs
   Arial and Manrope 800 vs Arial Bold; ascent/descent from Manrope's hhea): the swap to the web font barely moves text. */
@font-face{font-family:"Manrope Fallback";font-weight:100 649;src:local("Arial"),local("ArialMT");size-adjust:104.49%;ascent-override:102.02%;descent-override:28.71%;line-gap-override:0%}
@font-face{font-family:"Manrope Fallback";font-weight:650 900;src:local("Arial Bold"),local("Arial-BoldMT");size-adjust:102.32%;ascent-override:104.18%;descent-override:29.32%;line-gap-override:0%}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}

/* Provido design tokens — the one palette and scale of the site, the manager app and the staff app (docs/ui/DESIGN.md).
   Brandbook colours: Forest #12423B (main, headings, buttons) · Teal #246C61 (links, active, charts) · Lime #C6E757
   (accent ≤ 10 % of a screen; never text on light — contrast 1.3) · Mint #8FC7B8 (mid tone on dark) · Paper #F7F6F0
   (background) · Ink #162D29 (text) · Muted #52645D (secondary text) · Divider #DCE4DC (lines) · White (cards).
   The only warm colour: Error #B3261E — errors and «out of stock» only, always with an icon and a word. Warnings are a
   Forest outline + icon. No other red, yellow or orange anywhere. Contrast of text ≥ 4.5:1 in both themes.
   Scale: 4 px grid; radii 10 / 14 / 20; one or two soft shadows; motion 150–200 ms, off with reduced motion. */
:root{
  --p-forest:#12423B;--p-teal:#246C61;--p-teal-press:#1C574E;--p-lime:#C6E757;--p-mint:#8FC7B8;--p-paper:#F7F6F0;
  --p-ink:#162D29;--p-muted:#52645D;--p-divider:#DCE4DC;--p-white:#FFFFFF;--p-error:#B3261E;
  /* roles, light theme */
  --ds-bg:var(--p-paper);--ds-surface:var(--p-white);--ds-surface-2:#EEF0E8;--ds-text:var(--p-ink);--ds-text-2:var(--p-muted);
  --ds-line:var(--p-divider);--ds-primary:var(--p-forest);--ds-on-primary:var(--p-white);--ds-link:var(--p-teal);
  --ds-active:var(--p-teal);--ds-active-bg:#E4EFEC;--ds-accent:var(--p-lime);--ds-on-accent:var(--p-forest);
  --ds-ok:var(--p-teal);--ds-ok-bg:#E4EFEC;--ds-warn:var(--p-forest);--ds-warn-bg:transparent;--ds-error:var(--p-error);--ds-error-bg:#FBEDEC;
  --ds-focus:var(--p-teal);--ds-scrim:rgba(22,45,41,.42);
  --ds-r1:10px;--ds-r2:14px;--ds-r3:20px;
  --ds-shadow-1:0 1px 2px rgba(22,45,41,.06),0 2px 8px rgba(22,45,41,.05);--ds-shadow-2:0 8px 28px rgba(22,45,41,.12);
  --ds-ease:cubic-bezier(.2,.7,.2,1);--ds-fast:150ms;--ds-mid:200ms;
  --ds-font:Manrope,"Manrope Fallback",system-ui,-apple-system,"Segoe UI",sans-serif;
}
/* dark theme: Ink background, Forest surfaces, Paper text, Mint mid tone, Lime accent */
[data-theme=dark]{
  --ds-bg:var(--p-ink);--ds-surface:#1A3833;--ds-surface-2:#21433D;--ds-text:var(--p-paper);--ds-text-2:#B9C9C2;
  --ds-line:rgba(255,255,255,.12);--ds-primary:var(--p-lime);--ds-on-primary:var(--p-ink);--ds-link:var(--p-mint);
  --ds-active:var(--p-mint);--ds-active-bg:rgba(143,199,184,.16);--ds-accent:var(--p-lime);--ds-on-accent:var(--p-ink);
  --ds-ok:var(--p-mint);--ds-ok-bg:rgba(143,199,184,.14);--ds-warn:var(--p-paper);--ds-error:#F2B8B5;--ds-error-bg:rgba(179,38,30,.22);
  --ds-focus:var(--p-lime);--ds-scrim:rgba(0,0,0,.55);
  --ds-shadow-1:0 1px 2px rgba(0,0,0,.3);--ds-shadow-2:0 10px 30px rgba(0,0,0,.4);color-scheme:dark;
}
@media (prefers-color-scheme:dark){
  [data-theme=auto]{
    --ds-bg:var(--p-ink);--ds-surface:#1A3833;--ds-surface-2:#21433D;--ds-text:var(--p-paper);--ds-text-2:#B9C9C2;
    --ds-line:rgba(255,255,255,.12);--ds-primary:var(--p-lime);--ds-on-primary:var(--p-ink);--ds-link:var(--p-mint);
    --ds-active:var(--p-mint);--ds-active-bg:rgba(143,199,184,.16);--ds-accent:var(--p-lime);--ds-on-accent:var(--p-ink);
    --ds-ok:var(--p-mint);--ds-ok-bg:rgba(143,199,184,.14);--ds-warn:var(--p-paper);--ds-error:#F2B8B5;--ds-error-bg:rgba(179,38,30,.22);
    --ds-focus:var(--p-lime);--ds-scrim:rgba(0,0,0,.55);
    --ds-shadow-1:0 1px 2px rgba(0,0,0,.3);--ds-shadow-2:0 10px 30px rgba(0,0,0,.4);color-scheme:dark;
  }
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* Provido components (components/ds/*): one look for the site, the manager app and the staff app. Values come from
   app/ds/tokens.css. Touch targets ≥ 44 px (staff ≥ 56 px via .ds-staff), focus ring Teal 2 px (Lime on dark), motion
   150–200 ms on state changes only. */
.ds-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:var(--ds-r2);
  border:1.5px solid transparent;font:700 15px/1.2 var(--ds-font);cursor:pointer;text-decoration:none;white-space:nowrap;
  transition:background var(--ds-fast) var(--ds-ease),border-color var(--ds-fast) var(--ds-ease),color var(--ds-fast) var(--ds-ease)}
.ds-btn.primary{background:var(--ds-primary);color:var(--ds-on-primary)}
.ds-btn.primary:hover{filter:brightness(1.08)}
.ds-btn.secondary{background:var(--ds-surface);color:var(--ds-text);border-color:var(--ds-line)}
.ds-btn.secondary:hover{border-color:var(--ds-active);color:var(--ds-active)}
.ds-btn.ghost{background:transparent;color:var(--ds-link);padding:0 10px}
.ds-btn.ghost:hover{background:var(--ds-active-bg)}
.ds-btn.block{width:100%}
.ds-btn.lg{min-height:56px;font-size:17px;padding:0 22px}
.ds-btn:disabled,.ds-btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;filter:none}
.ds-btn:focus-visible,.ds-focus:focus-visible{outline:2px solid var(--ds-focus);outline-offset:2px}
.ds-card{background:var(--ds-surface);border:1px solid var(--ds-line);border-radius:var(--ds-r3);padding:20px;box-shadow:var(--ds-shadow-1);color:var(--ds-text)}
.ds-card h3{margin:0 0 4px;font-size:17px;line-height:1.3}
.ds-lead{margin:4px 0 0;color:var(--ds-text-2);font-size:15px;line-height:1.45}
.ds-num{font-variant-numeric:tabular-nums lining-nums}
/* status: colour AND word AND icon */
.ds-chip{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:2px 10px 2px 8px;border-radius:999px;font:700 13px/1.2 var(--ds-font);white-space:nowrap;border:1.5px solid transparent}
.ds-chip.ok{background:var(--ds-ok-bg);color:var(--ds-ok)}
.ds-chip.low{background:var(--ds-warn-bg);color:var(--ds-warn);border-color:currentColor}
.ds-chip.out{background:var(--ds-error-bg);color:var(--ds-error)}
.ds-chip.neutral{background:var(--ds-surface-2);color:var(--ds-text-2)}
.ds-chip svg{width:15px;height:15px}
/* stepper −/+ with a number you can type */
.ds-stepper{display:inline-grid;grid-template-columns:44px minmax(56px,auto) 44px;align-items:center;gap:6px}
.ds-stepper button{width:44px;height:44px;border-radius:var(--ds-r2);border:1.5px solid var(--ds-line);background:var(--ds-surface);color:var(--ds-text);display:grid;place-items:center;cursor:pointer}
.ds-stepper button:active{background:var(--ds-active-bg)}
.ds-stepper input{height:44px;width:100%;text-align:center;border:1.5px solid var(--ds-line);border-radius:var(--ds-r2);background:var(--ds-surface);color:var(--ds-text);font:800 20px var(--ds-font);font-variant-numeric:tabular-nums}
.ds-staff .ds-stepper{grid-template-columns:56px minmax(64px,auto) 56px}
.ds-staff .ds-stepper button,.ds-staff .ds-stepper input{height:56px}
.ds-staff .ds-stepper button{width:56px}
/* bottom sheet */
.ds-scrim{position:fixed;inset:0;z-index:80;background:var(--ds-scrim);display:flex;align-items:flex-end;justify-content:center;animation:ds-fade var(--ds-mid) var(--ds-ease)}
.ds-sheet{width:100%;max-width:560px;max-height:88dvh;overflow:auto;background:var(--ds-surface);color:var(--ds-text);border-radius:var(--ds-r3) var(--ds-r3) 0 0;padding:8px 20px calc(20px + env(safe-area-inset-bottom,0px));box-shadow:var(--ds-shadow-2);animation:ds-up var(--ds-mid) var(--ds-ease)}
.ds-sheet .grip{width:40px;height:4px;border-radius:2px;background:var(--ds-line);margin:4px auto 12px}
.ds-sheet h2{font-size:20px;margin:0 0 12px}
@media(min-width:900px){.ds-scrim{align-items:center}.ds-sheet{border-radius:var(--ds-r3)}}
@keyframes ds-fade{from{opacity:0}}
@keyframes ds-up{from{transform:translateY(16px);opacity:0}}
/* toast with «Undo» */
.ds-toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:90;display:flex;align-items:center;gap:12px;min-height:52px;
  max-width:min(560px,calc(100vw - 24px));padding:8px 8px 8px 18px;border-radius:var(--ds-r2);background:var(--p-ink);color:var(--p-paper);box-shadow:var(--ds-shadow-2);font:600 15px var(--ds-font);animation:ds-up var(--ds-mid) var(--ds-ease)}
.ds-toast button{min-height:40px;padding:0 14px;border-radius:var(--ds-r1);border:0;background:transparent;color:var(--p-lime);font:800 15px var(--ds-font);cursor:pointer}
.ds-toast button:focus-visible{outline:2px solid var(--p-lime)}
/* empty state: what to do next + one button */
.ds-empty{display:grid;justify-items:center;text-align:center;gap:10px;padding:36px 20px;border:1.5px dashed var(--ds-line);border-radius:var(--ds-r3);color:var(--ds-text)}
.ds-empty .ic{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--ds-active-bg);color:var(--ds-active)}
.ds-empty h3{margin:0;font-size:17px}
.ds-empty p{margin:0;max-width:44ch;color:var(--ds-text-2);font-size:15px}
/* skeleton */
.ds-skel{display:block;border-radius:var(--ds-r1);background:linear-gradient(90deg,var(--ds-surface-2),var(--ds-line),var(--ds-surface-2));background-size:200% 100%;animation:ds-shimmer 1.2s linear infinite;min-height:14px}
@keyframes ds-shimmer{to{background-position:-200% 0}}
/* «?» hint */
.ds-hint{position:relative;display:inline-flex}
.ds-hint>button{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--ds-line);background:var(--ds-surface);color:var(--ds-text-2);font:800 13px var(--ds-font);cursor:pointer;display:grid;place-items:center}
.ds-hint>[role=tooltip]{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);z-index:40;width:max-content;max-width:260px;padding:10px 12px;border-radius:var(--ds-r1);background:var(--p-ink);color:var(--p-paper);font:500 13px/1.4 var(--ds-font);box-shadow:var(--ds-shadow-2)}
/* progress */
.ds-progress{display:grid;gap:6px}
.ds-progress .bar{height:8px;border-radius:999px;background:var(--ds-surface-2);overflow:hidden}
.ds-progress .bar>i{display:block;height:100%;border-radius:inherit;background:var(--ds-active);transition:width var(--ds-mid) var(--ds-ease)}
.ds-progress .lbl{display:flex;justify-content:space-between;font:700 13px var(--ds-font);color:var(--ds-text-2)}
/* tabs */
.ds-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.ds-tabs button{flex:none;min-height:44px;padding:0 16px;border-radius:999px;border:1.5px solid var(--ds-line);background:var(--ds-surface);color:var(--ds-text);font:700 15px var(--ds-font);cursor:pointer;white-space:nowrap}
.ds-tabs button[aria-selected=true]{background:var(--ds-primary);border-color:var(--ds-primary);color:var(--ds-on-primary)}
.ds-tabs .n{margin-left:6px;opacity:.75;font-variant-numeric:tabular-nums}
/* search */
.ds-search{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border:1.5px solid var(--ds-line);border-radius:var(--ds-r2);background:var(--ds-surface);color:var(--ds-text-2)}
.ds-search:focus-within{border-color:var(--ds-focus)}
.ds-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--ds-text);font:500 16px var(--ds-font)}
/* responsive table: a table on wide screens, cards on phones */
.ds-table{width:100%;border-collapse:collapse;font-size:15px}
.ds-table th{text-align:left;font-weight:700;color:var(--ds-text-2);font-size:13px;padding:10px 12px;border-bottom:1px solid var(--ds-line)}
.ds-table td{padding:12px;border-bottom:1px solid var(--ds-line);vertical-align:middle}
@media(max-width:720px){
  .ds-table thead{display:none}
  .ds-table,.ds-table tbody,.ds-table tr,.ds-table td{display:block;width:100%}
  .ds-table tr{background:var(--ds-surface);border:1px solid var(--ds-line);border-radius:var(--ds-r2);padding:8px 12px;margin-bottom:10px}
  .ds-table td{border:0;padding:6px 0;display:flex;justify-content:space-between;gap:12px}
  .ds-table td::before{content:attr(data-label);color:var(--ds-text-2);font-size:13px;font-weight:700}
}
/* the root 404 page (app/not-found.tsx) */
.ds-404{min-height:100vh;display:grid;place-items:center;background:var(--ds-bg);color:var(--ds-text);font-family:var(--ds-font);padding:24px}
.ds-404 main{max-width:560px}
.ds-404 .code{margin:28px 0 4px;font:800 clamp(64px,12vw,120px)/1 var(--ds-font);letter-spacing:-.05em;color:var(--ds-primary)}
.ds-404 h1{margin:0 0 6px;font-size:28px;letter-spacing:-.02em}
.ds-404 ul{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 0;padding:0;list-style:none}

/* Provido logo (components/brand/logo.tsx). Static: no load animation, no hover choreography — the site's motion
   budget (components/marketing/motion.config.ts) has no moment for the logo. A link around it only changes colour. */
.rs-logo{display:block;overflow:visible;flex-shrink:0}
.rs-logo .rs-mark,.rs-logo .rs-layer{transform-box:fill-box;transform-origin:50% 50%}

/* Base for the site's pages (the app's globals.css is not loaded here). */
/* Two-stage font: the first frame uses the metric-matched fallback (no font download in the way of the first paint);
   Manrope is switched on right after it (html.mk-fonts, set by the script at the end of app/[lang]/layout.tsx) and at
   once on later pages of the visit, when the font is already cached. */
:root{--mk-font:"Manrope Fallback",Arial,Helvetica,sans-serif}
html.mk-fonts{--mk-font:Manrope,"Manrope Fallback",Arial,Helvetica,sans-serif}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:#F7F6F0;color:#162D29;font-family:var(--mk-font)}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}
a{text-decoration:none;color:inherit}
img,svg{display:block;max-width:100%}
svg{flex-shrink:0}
h1,h2,h3,h4,p,ol,ul,dl,dd,figure{margin:0}
@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

/* Marketing site (/lv, /ru, /en). Everything is scoped under .mk so the app's styles (/app) are untouched and the
   app's global rules (h1/h2 sizes, muted paragraphs, the <main> width) are overridden here only.
   Brand: Forest #12423B, Action Teal #246C61 (hover #1C574E), Fresh Lime #C6E757, Paper #F7F6F0, Ink #162D29,
   Muted #52645D, Divider #DCE4DC, White. Manrope 500/700/800; headings 800 with negative tracking. */
.mk{--mk-forest:#12423B;--mk-teal:#246C61;--mk-teal-h:#1C574E;--mk-lime:#C6E757;--mk-paper:#F7F6F0;--mk-ink:#162D29;--mk-muted:#52645D;--mk-line:#DCE4DC;--mk-white:#FFFFFF;
  --mk-on-dark:rgba(255,255,255,.82);--mk-line-dark:rgba(255,255,255,.16);--mk-ease:cubic-bezier(.2,.7,.2,1);--mk-r-sm:14px;--mk-r:20px;--mk-r-lg:20px;--mk-header:72px;
  background:var(--mk-paper);color:var(--mk-ink);font-family:var(--mk-font);font-weight:500;font-size:17px;line-height:1.6;min-height:100vh;display:flex;flex-direction:column}
.mk main{max-width:none;width:100%;margin:0;padding:0;flex:1}
:where(.mk) :is(h1,h2,h3,h4){color:inherit;font-weight:800}
.mk h1{font-size:clamp(36px,5.6vw,64px);line-height:1.04;letter-spacing:-.035em}
.mk h2{font-size:clamp(30px,4vw,48px);line-height:1.08;letter-spacing:-.03em}
.mk h3{font-size:20px;line-height:1.3;letter-spacing:-.015em}
.mk h4{font-size:17px;line-height:1.35;letter-spacing:-.01em}
:where(.mk) p{color:var(--mk-muted)}
:where(.mk) :is(strong,b){font-weight:800}

:where(.mk) :is(ul,ol){padding:0;list-style:none}
:where(.mk) :is(fieldset){border:0;margin:0;padding:0;min-width:0}
:where(.mk) legend{padding:0}
:where(.mk) table{border-collapse:collapse}
.mk :focus-visible{outline:3px solid var(--mk-teal);outline-offset:3px;border-radius:6px}
.mk .num{font-variant-numeric:tabular-nums lining-nums}
.mk-dark{background:var(--mk-forest);color:var(--mk-white)}
.mk-dark p{color:var(--mk-on-dark)}
.mk-dark :focus-visible{outline-color:var(--mk-lime)}
.mk-white{background:var(--mk-white)}

.mk-wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.mk-sec{padding:104px 0;scroll-margin-top:var(--mk-header)}
.mk-sec.tight{padding:72px 0}
.mk-head{max-width:760px;margin-bottom:48px}
.mk-head.center{margin-left:auto;margin-right:auto;text-align:center}
.mk-head>p{font-size:19px;line-height:1.55;margin-top:16px}
.mk-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mk-teal);margin-bottom:16px}
.mk-dark .mk-eyebrow{color:var(--mk-lime)}
.mk-skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--mk-forest);color:#fff;padding:10px 16px;border-radius:12px;font-weight:700}
.mk-skip:focus{top:12px}
.mk-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Buttons */
.mk-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 24px;border-radius:var(--mk-r-sm);border:1.5px solid transparent;font:700 16px/1.2 var(--mk-font);text-align:center;transition:background .15s,border-color .15s,color .15s,transform .15s;cursor:pointer;white-space:nowrap}
.mk-btn:active{transform:translateY(1px)}
.mk-btn.primary{background:var(--mk-forest);color:#fff}
.mk-btn.primary:hover{background:#0C3530}
.mk-dark .mk-btn.primary{background:var(--mk-lime);color:var(--mk-forest)}
.mk-dark .mk-btn.primary:hover{background:#D5EF7A}
.mk-btn.ghost{background:transparent;border-color:var(--mk-line);color:var(--mk-ink)}
.mk-btn.ghost:hover{border-color:var(--mk-teal);color:var(--mk-teal)}
.mk-dark .mk-btn.ghost{border-color:rgba(255,255,255,.4);color:#fff}
.mk-dark .mk-btn.ghost:hover{border-color:var(--mk-lime);color:var(--mk-lime)}
.mk-btn.small{min-height:44px;padding:0 16px;font-size:14px;border-radius:12px}
.mk-btn.block{width:100%;white-space:normal;min-height:52px;padding-top:10px;padding-bottom:10px}
.mk-btns{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.mk-link{color:var(--mk-teal);font-weight:700;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px}
.mk-link:hover{color:var(--mk-teal-h)}
.mk-dark .mk-link{color:var(--mk-lime)}
.mk-textbtn{background:none;border:0;padding:0;font:inherit;color:var(--mk-teal);font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.mk-dark .mk-textbtn{color:var(--mk-lime)}

/* Cards, tags, grids */
.mk-card h3{margin-bottom:8px}
.mk-card{background:var(--mk-white);border:1px solid var(--mk-line);border-radius:var(--mk-r-lg);padding:28px}
.mk-dark .mk-card{background:rgba(255,255,255,.05);border-color:var(--mk-line-dark)}
.mk-tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.02em;background:#E9F0E6;color:var(--mk-forest);white-space:nowrap}
.mk-tag.lime{background:var(--mk-lime);color:var(--mk-forest)}
.mk-tag.soon{background:#F7F6F0;color:#12423B}
.mk-tag.est{background:#EEF2ED;color:var(--mk-muted)}
.mk-dark .mk-tag{background:rgba(255,255,255,.1);color:#fff}
.mk-dark .mk-tag.lime{background:var(--mk-lime);color:var(--mk-forest)}
.mk-grid{display:grid;gap:20px}
.mk-grid.c2{grid-template-columns:repeat(2,minmax(0,1fr))}
.mk-grid.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
.mk-grid.c4{grid-template-columns:repeat(4,minmax(0,1fr))}
.mk-check{display:grid;gap:10px}
.mk-check li{position:relative;padding-left:30px}
.mk-check li::before{content:"";position:absolute;left:0;top:.3em;width:20px;height:20px;border-radius:50%;background:var(--mk-lime) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-7' fill='none' stroke='%23123D3A' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/20px no-repeat}
.mk-check li.no,.mk-check li.soon{color:var(--mk-muted)}
.mk-check li.soon::before{background:#F7F6F0 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='5.5' fill='none' stroke='%237A4306' stroke-width='1.8'/%3E%3Cpath d='M10 7.2V10l1.8 1.2' fill='none' stroke='%237A4306' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") center/20px no-repeat}
.mk-check li.no::before{background:#EEF2ED url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M6.5 10h7' fill='none' stroke='%2352645D' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") center/20px no-repeat}

/* Logo */
.mk-logo{display:block}

/* Header */
/* No backdrop-filter here: it would make the fixed mobile menu and search overlay position against the header. */
.mk-header{position:sticky;top:0;z-index:50;background:var(--mk-paper);border-bottom:1px solid var(--mk-line)}
.mk-header-in{height:var(--mk-header);display:flex;align-items:center;gap:20px}
.mk-brand{flex-shrink:0;border-radius:10px}
.mk-nav{display:flex;align-items:center;gap:4px;margin:0 auto}
.mk-nav>a,.mk-dd>button{display:inline-flex;align-items:center;gap:4px;height:40px;padding:0 10px;white-space:nowrap;border-radius:12px;font-size:15px;font-weight:700;color:var(--mk-ink);background:none;border:0;font-family:inherit;cursor:pointer}
.mk-nav>a:hover,.mk-dd>button:hover,.mk-nav>a[aria-current=page]{background:#EBF0E8;color:var(--mk-forest)}
.mk-dd{position:relative}
.mk-dd-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:240px;background:#fff;border:1px solid var(--mk-line);border-radius:var(--mk-r);box-shadow:0 18px 40px rgba(18,66,59,.14);padding:8px;display:grid}
.mk-dd-menu a{padding:10px 12px;border-radius:12px;font-weight:700;font-size:15px}
.mk-dd-menu a:hover{background:#EBF0E8}
.mk-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.mk-iconbtn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;min-width:44px;padding:0 10px;border-radius:12px;border:1px solid var(--mk-line);background:#fff;color:var(--mk-ink);font:700 14px var(--mk-font);cursor:pointer}
.mk-iconbtn:hover{border-color:var(--mk-teal);color:var(--mk-teal)}
.mk-lang{display:inline-flex;padding:3px;border:1px solid var(--mk-line);border-radius:12px;background:#fff}
.mk-lang a{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:36px;padding:0 6px;border-radius:9px;font-size:13px;font-weight:800;color:var(--mk-muted)}
.mk-lang a:hover{color:var(--mk-forest)}
.mk-lang a[aria-current=true]{background:var(--mk-forest);color:#fff}
.mk-login{font-weight:700;font-size:15px;padding:0 10px;height:40px;display:inline-flex;align-items:center;border-radius:12px}
.mk-login:hover{color:var(--mk-teal)}
.mk-burger{display:none}
.mk-mobile{position:fixed;inset:var(--mk-header) 0 0 0;z-index:49;background:var(--mk-paper);overflow:auto;padding:16px 16px 32px;border-top:1px solid var(--mk-line)}
.mk-mobile nav{display:grid}
.mk-mobile nav a{padding:14px 4px;font-size:20px;font-weight:800;letter-spacing:-.02em;border-bottom:1px solid var(--mk-line)}
.mk-mobile .sub{font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mk-muted);padding:20px 4px 4px}
.mk-mobile .mk-btns{margin-top:24px}
.mk-mobile .mk-btn{flex:1 1 100%}
.mk-mobile-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}

/* Footer */
.mk-footer{background:var(--mk-forest);color:#fff;padding:48px 0 24px}
.mk-footer p{color:var(--mk-on-dark)}
.mk-footer-grid{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:32px}
.mk .mk-footer h2{font-size:13px;line-height:1.4;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mk-lime);margin-bottom:14px}
.mk-footer ul{display:grid;gap:10px}
.mk-footer ul a,.mk-footer .mk-textbtn{color:var(--mk-on-dark);font-weight:600;font-size:15px;text-decoration:none}
.mk-footer ul a:hover,.mk-footer .mk-textbtn:hover{color:#fff;text-decoration:underline}
.mk-footer .lead{margin:16px 0 20px;max-width:340px;font-size:15px}
.mk-footer-logo{display:inline-flex;border-radius:10px}
.mk-footer-lang{margin-top:18px;border-color:var(--mk-line-dark);background:transparent}
.mk-footer-lang a{color:var(--mk-on-dark)}
.mk-footer-lang a[aria-current=true]{background:var(--mk-lime);color:var(--mk-forest)}
.mk-footer .hours{font-size:14px;color:var(--mk-on-dark)}
.mk-footer .todo{font-size:14px;color:var(--mk-on-dark)}
.mk-footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:36px;padding-top:24px;border-top:1px solid var(--mk-line-dark);font-size:13px;color:var(--mk-on-dark)}
.mk-footer :focus-visible{outline-color:var(--mk-lime)}

/* Modal (methodology), portalled into <body> inside .mk.mk-portal for the tokens */
.mk.mk-portal{min-height:0;display:block;background:none}
.mk-modal-back{position:fixed;inset:0;z-index:90;background:rgba(18,66,59,.55);display:flex;align-items:center;justify-content:center;padding:16px}
.mk-modal{position:relative;width:100%;max-width:620px;max-height:88vh;overflow:auto;background:#fff;border-radius:var(--mk-r-lg);padding:32px;box-shadow:0 30px 70px rgba(10,30,28,.3)}
.mk-modal h2{font-size:28px;margin-bottom:12px}
.mk-modal-x{position:absolute;top:14px;right:14px}

.mk-header-in>*{min-width:0}
.mk-nav>a{min-height:44px}
@media(max-width:900px){.mk-nav{display:none}.mk-burger{display:inline-flex}.mk-actions{margin-left:auto}.mk-header-in{gap:12px}}
@media(max-width:559px){.mk-actions .mk-lang-head{display:none}.mk-actions .mk-cta{padding:0 12px}}
@media(max-width:960px){.mk-grid.c3,.mk-grid.c4{grid-template-columns:repeat(2,minmax(0,1fr))}.mk-footer-grid{grid-template-columns:1fr 1fr}.mk-footer-grid>:first-child{grid-column:1/-1}}
@media(max-width:640px){
  .mk{font-size:16px}
  .mk-wrap{padding:0 16px}
  .mk-sec{padding:72px 0}
  .mk-sec.tight{padding:56px 0}
  .mk-head{margin-bottom:32px}
  .mk-head>p{font-size:17px}
  .mk-grid.c2,.mk-grid.c3,.mk-grid.c4{grid-template-columns:1fr}
  .mk-card{padding:22px;border-radius:var(--mk-r)}
  .mk-modal{padding:24px}
  .mk-btns .mk-btn{flex:1 1 100%}
}

/* Cookie banner */
.mk-cookie{position:fixed;left:16px;bottom:16px;z-index:70;max-width:440px;background:#fff;border:1px solid var(--mk-line);border-radius:var(--mk-r);box-shadow:0 18px 50px rgba(18,66,59,.2);padding:20px;display:grid;gap:14px}
.mk-cookie p{font-size:13.5px;line-height:1.5;color:var(--mk-ink)}
.mk-cookie .mk-btn{flex:1}
@media(max-width:640px){.mk-cookie{left:8px;right:8px;bottom:8px;max-width:none}.mk-cookie .mk-btns{display:grid;grid-template-columns:1fr 1fr}.mk-cookie .mk-btns .mk-btn{padding:0 8px;font-size:13px;min-width:0}}

/* ---------- Home ---------- */
.mk-small{font-size:14px;line-height:1.5;color:var(--mk-muted)}
.mk-dark .mk-small{color:var(--mk-on-dark)}
.mk-center{text-align:center}
.mk-ok{font-weight:700;color:var(--mk-teal);padding:10px 0}
.ic{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;background:#E9F0E6;color:var(--mk-forest);margin-bottom:16px}
.mk-dark .ic{background:rgba(198,231,87,.14);color:var(--mk-lime)}

.mk-mock{background:#fff;color:var(--mk-ink);border-radius:var(--mk-r-lg);padding:20px;box-shadow:0 30px 80px rgba(0,0,0,.35);display:grid;gap:12px}
.mk-mock p{color:var(--mk-muted)}
.mk-mock-top{display:flex;align-items:center;gap:10px}
.mk-mock-top strong{flex:1;font-size:17px}
.mk-mock-top .dots{display:inline-flex;gap:5px}.mk-mock-top .dots i{width:9px;height:9px;border-radius:50%;background:var(--mk-line)}
.mk-mock-hint{font-size:13px}
.mk-mock-lines{display:grid;gap:8px}
.mk-mock-lines li{border:1px solid var(--mk-line);border-radius:16px;overflow:hidden;transition:border-color .15s}
.mk-mock-lines li.open{border-color:var(--mk-teal)}
.mk-mock-lines button{display:grid;grid-template-columns:minmax(0,1fr) auto 20px;gap:10px;align-items:center;width:100%;padding:12px 14px;background:none;border:0;text-align:left;font:inherit;color:inherit;cursor:pointer}
.mk-mock-lines .name{font-weight:700;font-size:15px;line-height:1.3}
.mk-mock-lines .name small{display:block;font-weight:600;color:var(--mk-muted);font-size:13px}
.mk-mock-lines .best{display:inline-flex;align-items:center;gap:8px}
.mk-mock-lines .chev{transition:transform .2s;color:var(--mk-muted)}
.mk-mock-lines li.open .chev{transform:rotate(180deg)}
.cmp{display:grid;gap:6px;padding:0 14px 14px}
.cmp-row{display:grid;grid-template-columns:64px 1fr auto auto;gap:10px;align-items:center;font-size:14px}
.cmp-row .sup{font-weight:700}
.cmp-row .bar{height:8px;border-radius:99px;background:#EEF2ED;overflow:hidden}
.cmp-row .bar i{display:block;height:100%;border-radius:99px;background:#B9C6BF;transition:width .2s}
.cmp-row.win .bar i{background:var(--mk-teal)}
.cmp-row.win{font-weight:800}
.mk-mock-foot{display:flex;justify-content:space-between;gap:12px;font-size:14px;color:var(--mk-muted);padding:4px 2px}
.mk-mock-foot b{color:var(--mk-ink)}
.mk-mock-sent{display:grid;justify-items:center;text-align:center;gap:10px;padding:28px 12px}
.mk-mock-sent .ok{width:56px;height:56px;border-radius:50%;background:var(--mk-lime);color:var(--mk-forest);display:inline-flex;align-items:center;justify-content:center}
.mk-mock-sent strong{font-size:20px}

.mk-method{display:grid;gap:12px;padding-left:20px;list-style:disc;margin:8px 0 16px}
.mk-method li{color:var(--mk-ink);font-size:15px;line-height:1.55}

/* Steps */
.mk-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;counter-reset:s}
.mk-steps li{position:relative;padding:28px;border-radius:var(--mk-r-lg);background:rgba(255,255,255,.05);border:1px solid var(--mk-line-dark)}
.mk-steps .n,.mk-timeline .n{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--mk-lime);color:var(--mk-forest);font-weight:800;font-size:18px;margin-bottom:18px}
.mk-steps h3{margin-bottom:10px}

/* Features */
.mk-features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.mk-feature{background:var(--mk-paper);border:1px solid var(--mk-line);border-radius:var(--mk-r);transition:border-color .15s,background .15s;scroll-margin-top:calc(var(--mk-header) + 16px)}
.mk-feature:hover{border-color:#B9C6BF}
.mk-feature.open{background:#fff;border-color:var(--mk-teal);grid-column:span 2}
.mk-feature button{display:grid;gap:6px;width:100%;padding:20px;background:none;border:0;text-align:left;font:inherit;color:inherit;cursor:pointer;border-radius:var(--mk-r)}
.mk-feature .ic{margin-bottom:6px;background:#fff}
.mk-feature .tt{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-weight:800;font-size:17px;letter-spacing:-.01em;line-height:1.3}
.mk-feature .tx{font-size:14.5px;color:var(--mk-muted);line-height:1.5}
.mk-feature .more{padding:0 20px 20px;font-size:15px;color:var(--mk-ink)}
.mk-demos{margin-top:32px}
.mk-demo{display:grid;gap:12px;align-content:start;background:var(--mk-paper)}
.mk-demo h3{font-size:18px}
.mk-demo-rows{display:grid;gap:8px}
.mk-demo-rows li{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:10px 12px;border-radius:14px;background:#fff;border:1px solid var(--mk-line);min-height:52px}
.mk-demo-rows li>span:first-child{flex:1;font-weight:700}
.mk-demo-rows li.win{border-color:var(--mk-teal)}
.mk-demo-rows li.gone{opacity:.45;text-decoration:line-through}
.mk-switch{display:flex;align-items:center;gap:10px;font-weight:700;font-size:15px;cursor:pointer}
.mk-switch input{width:22px;height:22px;accent-color:var(--mk-teal)}
.mk-fifo-cost{font-size:22px;font-weight:800;color:var(--mk-forest)!important;letter-spacing:-.02em}
.mk-fifo-cost small{font-size:14px;color:var(--mk-muted);font-weight:600}

/* Pricing */
.mk-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.mk-plan{position:relative;display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid var(--mk-line);border-radius:var(--mk-r-lg);padding:30px;scroll-margin-top:calc(var(--mk-header) + 16px)}
.mk-plan.rec{border:2px solid var(--mk-teal);box-shadow:0 24px 60px rgba(36,108,97,.14)}
.mk-plan .rec-tag{position:absolute;top:-13px;left:30px}
.mk-plan h3{font-size:24px}
.mk-plan .lead{font-size:15px;min-height:2.6em}
.mk-plan .price{font-size:40px;font-weight:800;letter-spacing:-.03em;color:var(--mk-forest);line-height:1.1}
.mk-plan .price small{font-size:14px;font-weight:700;color:var(--mk-muted);letter-spacing:0}
.mk-plan .vat{font-size:13px;margin-top:-6px}
.mk-plan .mk-btn{margin:8px 0 14px}
.mk-plan .mk-check{font-size:15px}
.mk-setup{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline;justify-content:center;text-align:center;margin:24px auto 10px;padding:18px 24px;border-radius:var(--mk-r);background:#E9F0E6;max-width:900px}
.mk-setup strong{color:var(--mk-forest)}
.mk-plan-table{margin-top:28px}
.mk-plan-table>summary{cursor:pointer;font-weight:800;color:var(--mk-teal);text-align:center;padding:10px;list-style-position:inside}
.mk-table-wrap{overflow-x:auto;margin-top:16px;border-radius:var(--mk-r);border:1px solid var(--mk-line);background:#fff}
.mk-table{width:100%;border-collapse:collapse;font-size:15px;min-width:560px}
.mk-table th,.mk-table td{font-size:15px;line-height:1.45;letter-spacing:0;text-transform:none;color:var(--mk-ink);padding:14px 16px;border-bottom:1px solid var(--mk-line);text-align:center}
.mk-table tbody th{text-align:left;font-weight:600}
.mk-table thead th{font-weight:800;font-size:16px}
.mk-table .rec{background:#F1F8F6}
.mk-table .yes{color:var(--mk-teal);font-weight:800;font-size:18px}
.mk-table .no{color:#93A39C}
.mk-table tr:last-child>*{border-bottom:0}

/* FAQ */
.mk-faq-wrap{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:40px;align-items:start}
.mk-faq{display:grid;gap:10px}
.mk-faq details{background:#fff;border:1px solid var(--mk-line);border-radius:var(--mk-r);scroll-margin-top:calc(var(--mk-header) + 16px)}
.mk-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px 20px;font-weight:800;font-size:17px;letter-spacing:-.01em;border-radius:var(--mk-r)}
.mk-faq summary::-webkit-details-marker{display:none}
.mk-faq summary::after{content:"+";flex-shrink:0;width:30px;height:30px;border-radius:50%;background:#E9F0E6;color:var(--mk-forest);display:inline-flex;align-items:center;justify-content:center;font-size:20px;font-weight:700}
.mk-faq details[open] summary::after{content:"−";background:var(--mk-lime)}
.mk-faq details p{padding:0 20px 20px;color:var(--mk-ink)}

@media(max-width:1180px){.mk-features{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:960px){
  .mk-features{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mk-steps,.mk-plans{grid-template-columns:1fr}
  .mk-plans{max-width:520px;margin:0 auto}
  .mk-plan.rec{order:-1;margin-top:12px}
}
@media(max-width:640px){
  .mk-features{grid-template-columns:1fr}
  .mk-feature.open{grid-column:auto}
  .mk-feature button{grid-template-columns:44px minmax(0,1fr);column-gap:14px;row-gap:2px;padding:16px}
  .mk-feature .ic{grid-row:span 2;margin:0}
  .mk-feature .more{padding:0 16px 16px}
  .mk-features{gap:10px}
  .mk-plan{padding:24px}
  .cmp-row{grid-template-columns:56px 1fr auto}
  .cmp-row .mk-tag{display:none}
}

/* ---------- Inner pages ---------- */
.mk-pagehead{padding:80px 0 72px}
.mk-pagehead h1{max-width:900px}
.mk-pagehead .lead{font-size:20px;line-height:1.55;max-width:720px;margin-top:20px}
.mk-pagehead .mk-btns{margin-top:32px}
.mk-features.expanded{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.mk-feature.static{padding:24px;background:var(--mk-paper)}
.mk-feature.static .head{display:flex;align-items:center;gap:14px;margin-bottom:10px}
.mk-feature.static .ic{margin:0;background:#fff}
.mk-feature.static h2.tt{font-size:20px;letter-spacing:-.015em;line-height:1.3}
.mk-feature.static .more{padding:0;margin-top:10px;color:var(--mk-ink)}
.mk-week th{width:22%;font-weight:800!important}
.mk-week td{text-align:left;vertical-align:top}
.mk-week .before{color:var(--mk-muted)}
.mk-week .after{font-weight:700;color:var(--mk-forest);background:#F1F8F6}
.mk-faq-page{display:grid;grid-template-columns:220px minmax(0,1fr);gap:40px;align-items:start}
.mk-faq-cats{position:sticky;top:calc(var(--mk-header) + 24px);display:grid;gap:4px}
.mk-faq-cats a{padding:10px 14px;border-radius:12px;font-weight:700}
.mk-faq-cats a:hover{background:#EBF0E8}
.mk-faq-group{scroll-margin-top:calc(var(--mk-header) + 16px);margin-bottom:40px}
.mk-faq-group h2{font-size:28px;margin-bottom:16px}
@media(max-width:960px){.mk-faq-page{grid-template-columns:minmax(0,1fr)}.mk-faq-cats{position:static;display:flex;flex-wrap:wrap;gap:8px}.mk-faq-cats a{border:1px solid var(--mk-line);background:#fff}}
@media(max-width:640px){.mk-pagehead{padding:56px 0 48px}.mk-pagehead .lead{font-size:18px}.mk-features.expanded{grid-template-columns:minmax(0,1fr)}.mk-week,.mk-week tbody,.mk-week tr,.mk-week th,.mk-week td{display:block;width:auto}.mk-week tr{border-bottom:1px solid var(--mk-line)}.mk-week th,.mk-week td{border:0!important;padding:8px 16px!important}.mk-week th{padding-top:16px!important}.mk-table.mk-week{min-width:0}}
/* the app's global table rules use !important; the site's tables restore their own */
.mk .mk-table{font-size:15px!important}
.mk .mk-table thead{background:none}
.mk .mk-table th{height:auto!important;font-size:15px!important;font-weight:600!important;color:var(--mk-ink)!important;letter-spacing:0}
.mk .mk-table thead th{font-weight:800!important;font-size:16px!important}
.mk .mk-table th,.mk .mk-table td{padding:14px 16px!important;border-color:var(--mk-line)!important}
.mk .mk-table tbody tr:hover{background:none!important}
.mk .mk-week th{font-weight:800!important}
@media(max-width:640px){.mk .mk-week th,.mk .mk-week td{padding:8px 16px!important;border:0!important}.mk .mk-week th{padding-top:16px!important}}

/* ---------- Forms: the rest is in app/[lang]/forms.css (signup, contact, report pages only) ---------- */

.mk .err{color:#B3261E;font-size:14px;font-weight:700}
.mk-note{padding:14px 16px;border-radius:14px;background:#E9F0E6;color:var(--mk-forest)!important;font-weight:600}
.mk .mk-h3{font-size:20px;line-height:1.3;letter-spacing:-.015em;margin-bottom:8px}
.mk-steps-light li{background:#fff;border-color:var(--mk-line)}
.mk-steps-light p{color:var(--mk-ink)}
.mk-legal{max-width:780px;display:grid;gap:24px}
.mk-legal h2{font-size:22px;margin-bottom:8px}
.mk-legal p{color:var(--mk-ink)}
.mk-status{display:grid;gap:12px;max-width:640px}
.mk-status li{display:flex;align-items:center;gap:14px;padding:20px}
.mk-status strong{flex:1}
.mk-status .dot{width:14px;height:14px;border-radius:50%}
.mk-status .ok{background:#246C61}.mk-status .down{background:#B3261E}.mk-status .idle{background:#B9C6BF}

.mk-more-link{margin-top:20px;font-size:16px}
.mk-consented .mk-cookie{display:none}
.mk-btn{transition:background .18s,border-color .18s,color .18s}
.mk-btn:disabled{opacity:.5;cursor:not-allowed}
.mk-card,.mk-feature{transition:border-color .2s}
/* skeleton while a lazy block loads (static) */
.mk-skeleton{display:grid;gap:14px;align-content:start;padding:24px;border-radius:var(--mk-r-lg);border:1px solid var(--mk-line);background:#fff}
.mk-skeleton span{height:18px;border-radius:9px;background:#EEF2ED}
.mk-skeleton span:nth-child(2){width:70%}.mk-skeleton span:nth-child(3){width:45%}
/* states: 404, error (here, not in the error boundary: a client component importing CSS makes the runtime fetch
   stylesheets on every page) */
.mk-state{min-height:60vh;display:flex;align-items:center}
.mk-state-code{font-size:clamp(80px,14vw,160px);font-weight:800;letter-spacing:-.06em;line-height:1;color:var(--mk-lime);-webkit-text-stroke:2px var(--mk-forest);margin-bottom:10px}
.mk-state .lead{font-size:19px;margin:14px 0 24px}
.mk-state-links{display:flex;flex-wrap:wrap;gap:10px}
@media print{
  .mk-header,.mk-footer,.mk-cookie,.mk-skip,.no-print{display:none!important}
  .mk,body{background:#fff!important}
  .mk-sec{padding:0!important}
  .mk-roi-in,.mk-roi-out{break-inside:avoid}
  .mk-roi-out{background:#fff!important;color:#162D29!important;border:1px solid #DCE4DC!important}
  .mk-roi-out p,.mk-roi-out dt,.mk-roi-out dd,.mk-roi-out .big,.mk-roi-out .mid{color:#162D29!important}
  .mk-roi-out .mk-btn{display:none!important}
  a{text-decoration:none!important}
}
/* reserved heights of the lazily mounted blocks (lazy.tsx), measured at 412 and 1280 px in all three languages */
.mk-lazy{display:flow-root}
.mk-lazy>.mk-skeleton{height:100%;min-height:inherit}
.mk-lazy-sim{min-height:540px}.mk-lazy-import{min-height:215px}.mk-lazy-sandbox{min-height:600px}
@media(max-width:960px){.mk-lazy-sim{min-height:880px}.mk-lazy-import{min-height:265px}.mk-lazy-sandbox{min-height:690px}}
/* «Есть в Pro / Network» next to a feature of a higher plan (only when the plan split is confirmed) */
.pl-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;background:#EEF2ED;color:#12423B;padding:3px 8px;border-radius:999px;text-decoration:none;vertical-align:middle;margin-left:6px}
.mk-guide .pl-badge{background:var(--mk-lime)}

/* closing block of inner pages (sections.tsx FinalCta): calm, Forest, no glow */
.mk-final-sec{padding-bottom:96px}
.mk-final{background:var(--mk-forest);color:#fff;border-radius:var(--mk-r-lg);padding:56px 48px;text-align:center}
.mk-final h2{margin-bottom:12px}
.mk-final p{color:var(--mk-on-dark);font-size:18px;max-width:60ch;margin:0 auto}
.mk-final .mk-btns{justify-content:center;margin:24px 0 18px}
.mk-final .mk-btn.primary{background:var(--mk-lime);color:var(--mk-forest)}
.mk-final .mk-btn.primary:hover{background:#D5EF7A}
.mk-final .mk-btn.ghost{border-color:rgba(255,255,255,.4);color:#fff}
.mk-final .mk-btn.ghost:hover{border-color:var(--mk-lime);color:var(--mk-lime)}
.mk-final .call{font-size:16px}
.mk-final .call a{color:#fff;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.mk-final :focus-visible{outline-color:var(--mk-lime)}
@media(max-width:640px){.mk-final{padding:36px 22px}}

/* ── v3: phones in the header (wide screens) and in the menu, the footer's association line, the compact cookie banner ── */
.v3-hphones{display:none}
@media(min-width:1360px){.v3-hphones{display:inline-flex;gap:14px;margin-right:10px;font-size:14px;font-weight:800;white-space:nowrap}}
.v3-hphones a{color:var(--mk-ink)}
.v3-hphones a:hover{color:var(--mk-teal)}
.v3-mphones{display:flex;flex-direction:column;gap:8px;margin-top:22px;font-size:20px;font-weight:800}
.mk-footer .v3-startup{display:inline-flex;align-items:center;gap:10px;color:var(--mk-on-dark)}
.mk-footer .v3-startup a{text-decoration:underline;text-underline-offset:3px}
.mk-footer .v3-startup img{height:22px;width:auto}
/* W4: on a phone the cookie banner is a thin strip at the very bottom, so it never covers the first screen */
@media(max-width:720px){
  .mk-cookie.v3-cookie{left:0;right:0;bottom:0;max-width:none;gap:6px;padding:8px 12px calc(8px + env(safe-area-inset-bottom,0px));border-radius:12px 12px 0 0;border-width:1px 0 0;box-shadow:0 -4px 16px rgba(18,66,59,.18)}
  .mk-cookie.v3-cookie p{font-size:12px;line-height:1.35}
  .mk-cookie.v3-cookie .mk-btns{gap:8px}
  .mk-cookie.v3-cookie .mk-btn{min-height:34px;height:34px;padding:0 8px;font-size:12.5px}
}
@media(max-width:480px){
  .mk-header-in{gap:8px}
  .mk-brand .mk-logo{height:30px;width:auto}
  .mk-actions{gap:6px}
  .mk-actions .mk-cta{padding:0 10px;font-size:12.5px;white-space:nowrap}
  .mk-actions .mk-iconbtn{min-width:40px;padding:0 8px}
}
@media(max-width:640px){
  /* long labels of the three actions wrap on a phone instead of running out of the screen */
  .mk-btn{white-space:normal;padding-top:10px;padding-bottom:10px;line-height:1.25}
}
/* desktop: the banner sits at the bottom right, under the hero's screens, and leaves the buttons on the left free */
@media(min-width:721px){.mk-cookie.v3-cookie{left:auto;right:16px;max-width:420px}}

/* Home page (app/[lang]/page.tsx) — the short Provido structure: hero → 3 steps → 4 blocks → savings → plans →
   questions → contact. Paper and White alternate; Forest only for the hero and the contact block. Motion: moment
   hero-enter is here (load, once); estimate-value and plan-select live with their components. Blocks that moved to
   inner pages (/how-it-works: now, process, roles, onboarding; /features: control) keep their styles below. */
.hm .mk-sec{padding:64px 0}
.hm .mk-head{margin-bottom:28px}
.hm .mk-head h2{font-size:clamp(28px,3vw,40px)}
.hm .mk-head>p{max-width:64ch}
.hm p,.hm li{max-width:64ch}

/* 1 · hero */
.hm-hero{position:relative;overflow:hidden;background:var(--mk-forest);color:#fff;padding:56px 0 64px}
.hm-hero p{color:var(--mk-on-dark)}
.hm-hero .mk-eyebrow{color:var(--mk-lime)}
.hm-hero :focus-visible{outline-color:var(--mk-lime)}
.hm-hero-in{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:48px;align-items:center}
.hm-hero h1{font-size:clamp(34px,4.4vw,56px);line-height:1.06;letter-spacing:-.03em;margin-bottom:20px;max-width:17ch}
.hm-hero-lead{font-size:20px;line-height:1.5;max-width:46ch;margin-bottom:16px}
.hm-slogan{font-weight:800;font-size:16px;color:var(--mk-lime)!important;margin-bottom:28px}
.hm-hero .mk-btn.primary{background:var(--mk-lime);color:var(--mk-forest);min-width:200px}
.hm-hero .mk-btn.primary:hover{background:#D5EF7A}
.hm-hero-next{margin-top:14px;font-size:15px}
.hm-hero-next a{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.hm-hero-shot{justify-self:center}
.hm-hero .mk-shot figcaption{color:var(--mk-on-dark)}
.hm-hero .mk-phone{border-color:#0B2C27;box-shadow:0 24px 60px rgba(0,0,0,.35)}
/* moment hero-enter: the headline block rises once at load (600 ms), nothing tied to the scroll. The screenshot is
   static on purpose — it is the largest paint on a phone and must not wait for an animation. */
@keyframes hm-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.hm-hero-copy{animation:hm-enter .6s var(--mk-ease) both}

/* a real app screenshot in a phone frame (components/marketing/shot.tsx) */
.mk-shot{margin:0;display:grid;gap:10px;justify-items:center}
.mk-phone{width:min(260px,100%);border-radius:28px;border:6px solid #0B2C27;background:#0B2C27;overflow:hidden;box-shadow:0 18px 50px rgba(18,66,59,.22)}
.mk-phone img{display:block;width:100%;height:auto}
.mk-shot figcaption{font-size:13px;color:var(--mk-muted);text-align:center;max-width:30ch}

/* 2 · how it works: three steps, each with its screen */
.hm-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:0;padding:0;list-style:none}
.hm-steps li{display:grid;gap:20px;align-content:start}
.hm-steps .mk-phone{width:min(240px,100%);max-height:420px;box-shadow:0 12px 32px rgba(18,66,59,.16)}
.hm-step-text{display:grid;grid-template-columns:36px 1fr;gap:4px 12px}
.hm-step-text .n{grid-row:span 2;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--mk-forest);color:#fff;font-weight:800}
.hm-step-text h3{font-size:19px;margin-top:4px}
.hm-step-text p{font-size:16px}
.hm-steps-foot{margin-top:24px}

/* 3 · what you get */
.hm-gets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}
.hm-gets li{padding:22px;border-radius:var(--mk-r);background:#fff;border:1px solid var(--mk-line);border-top:4px solid var(--mk-lime)}
.hm-gets h3{font-size:18px;margin-bottom:8px}
.hm-gets p{font-size:15.5px;line-height:1.55}

/* 4 · savings (components/marketing/savings.tsx) */
.sv{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px;align-items:start}
.sv-in{display:grid;gap:18px;padding:22px;border-radius:var(--mk-r);background:var(--mk-paper);border:1px solid var(--mk-line)}
.sv-in .mk-tag{justify-self:start}
.sv-hint{font-size:14px;margin-top:6px}
.sv-out{display:grid;gap:12px;padding:22px;border-radius:var(--mk-r);background:#fff;border:1.5px solid var(--mk-forest)}
.sv-out .lbl{font-size:15px;color:var(--mk-muted)}
.sv-out .big{font-size:44px;line-height:1.05;font-weight:800;letter-spacing:-.03em;color:var(--mk-forest)}
.sv-out .big small{font-size:16px;font-weight:700;color:var(--mk-muted);letter-spacing:0}
.sv-out .rows{display:grid;gap:8px;margin:0;padding:12px 0;border-top:1px solid var(--mk-line);border-bottom:1px solid var(--mk-line)}
.sv-out .rows div{display:flex;justify-content:space-between;gap:12px;font-size:16px}
.sv-out dt{color:var(--mk-muted)}
.sv-out dd{margin:0;font-weight:800;text-align:right}
.sv-how{display:grid;gap:6px}
.sv-how-t{font-weight:800;color:var(--mk-ink)!important}
.sv-how p{font-size:15px}

/* 2 · now */
.hm-now-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.hm-now-grid .mk-card{padding:18px 20px}
.hm-now-grid h3{font-size:17px;margin-bottom:8px}
.hm-now-grid p{font-size:15px;color:var(--mk-muted)}

/* 3 · process (component in components/marketing/process.tsx) */
.mk-process{display:grid;gap:20px}
.mk-process-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.mk-process-steps button{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 14px;border-radius:14px;border:1.5px solid var(--mk-line);background:var(--mk-paper);font:700 15px/1.3 var(--mk-font);color:var(--mk-ink);text-align:left;cursor:pointer;transition:border-color .15s,background .15s}
.mk-process-steps button:hover{border-color:#B9C6BF}
.mk-process-steps button[aria-selected=true]{border-color:var(--mk-teal);background:#F1F8F6}
.mk-process-steps .n{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#E9F0E6;color:var(--mk-forest);font-size:13px;flex-shrink:0}
.mk-process-steps button[aria-selected=true] .n{background:var(--mk-teal);color:#fff}
.mk-process-panel{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px 28px;padding:24px;border-radius:var(--mk-r-lg);border:1px solid var(--mk-line);background:var(--mk-paper)}
.mk-process-screen{background:#fff;border:1px solid var(--mk-line);border-radius:var(--mk-r);padding:16px;align-self:start}
.mk-process-screen .head{font-weight:800;font-size:14px;color:var(--mk-forest);padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid var(--mk-line)}
.mk-process-screen ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.mk-process-screen li{font-size:14px;padding:8px 10px;border-radius:10px;background:var(--mk-paper)}
.mk-process-cols{display:grid;gap:14px;margin:0}
.mk-process-cols dt{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mk-teal);margin-bottom:4px}
.mk-process-cols dd{margin:0;font-size:15px;line-height:1.5}
.mk-process-nav{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:16px;border-top:1px solid var(--mk-line)}
.mk-process-limits{font-size:15px;color:var(--mk-muted);max-width:72ch}
.mk-process-static{display:grid;gap:16px;list-style:decimal;padding-left:20px}

/* 4 · roles (component role-tabs.tsx; the dark variant from the old page is gone — Paper here) */
.mk-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.mk-tabs button{min-height:44px;padding:0 16px;border-radius:12px;border:1.5px solid var(--mk-line);background:#fff;color:var(--mk-ink);font:700 15px var(--mk-font);cursor:pointer;transition:border-color .15s,background .15s}
.mk-tabs button[aria-selected=true]{background:var(--mk-forest);border-color:var(--mk-forest);color:#fff}
.mk-role-panel{padding:28px;border-radius:var(--mk-r-lg);background:#fff;border:1px solid var(--mk-line)}
.mk-role-panel h3{font-size:22px;letter-spacing:-.02em;margin-bottom:16px}
.mk-role-panel .mk-check{grid-template-columns:1fr 1fr;gap:12px 28px}

/* 5 · control */
.hm-control{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 28px;margin:0 0 24px;padding:0;list-style:none}
.hm-control li{padding:12px 0;border-top:1px solid var(--mk-line)}
.hm-control h3{font-size:17px;margin-bottom:6px}
.hm-control p{font-size:14.5px;color:var(--mk-muted)}
.hm-control-side{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.hm-control-side .mk-card{padding:18px 20px}
.hm-control-side h3{margin-bottom:12px}
.hm-int{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.hm-int li{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:14px}
.hm-int{gap:8px}
.hm-control-side .mk-check{font-size:14px;gap:6px}

/* 6 · proof */
.mk-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.mk-metrics li{background:#fff;border:1px solid var(--mk-line);border-radius:var(--mk-r);padding:12px 14px;display:flex;flex-direction:column;justify-content:space-between;gap:4px;min-height:78px}
.mk-metrics .val{font-size:32px;line-height:1;font-weight:800;letter-spacing:-.03em;color:var(--mk-forest)}
.mk-metrics .fb{font-size:15px;line-height:1.35;font-weight:700;color:var(--mk-forest)}
.mk-metrics li.pending{background:transparent;border-style:dashed}
.mk-metrics .lbl{font-size:13.5px;color:var(--mk-muted)}
.hm-metrics-foot{margin-top:12px}
.hm-pilot{margin-top:14px;padding:16px 20px;display:grid;grid-template-columns:auto 1fr;gap:4px 20px;align-items:baseline}
.hm-pilot p{max-width:none}
.hm-pilot h3{grid-row:span 2}
.hm-pilot h3{margin-bottom:8px}
.hm-roi{margin-top:24px;padding-top:24px;border-top:1px solid var(--mk-line)}
.hm-roi .mk-head{margin-bottom:16px}
.hm-roi .mk-head h3{font-size:24px}
/* calculator (component roi-calculator.tsx) */
.mk-roi{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}
.mk-roi-in{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:22px;border-radius:var(--mk-r-lg);background:#fff;border:1px solid var(--mk-line)}
.mk-roi-in .mk-seg{grid-column:1/-1}
.mk-field label{display:block;font-weight:700;font-size:14px;margin-bottom:6px}
.mk-num-input{display:flex;align-items:center;gap:6px;border:1.5px solid var(--mk-line);border-radius:12px;padding:0 12px;background:#fff;height:48px}
.mk-num-input:focus-within{border-color:var(--mk-teal);outline:2px solid var(--mk-teal);outline-offset:1px}
.mk-num-input input{width:100%;border:0;background:none;font:700 16px var(--mk-font);color:var(--mk-ink);outline:0;-moz-appearance:textfield}
.mk .mk-num-input input:focus{outline:0}
.mk-num-input span{color:var(--mk-muted);font-weight:700}
.mk-seg{border:0;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.mk-seg legend{font-weight:700;font-size:14px;margin-bottom:8px;padding:0;width:100%}
.mk-seg label{position:relative;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:12px;border:1.5px solid var(--mk-line);font-weight:700;font-size:14px;cursor:pointer;background:#fff;transition:border-color .15s,background .15s}
.mk-seg label small{font-weight:600;color:var(--mk-muted)}
.mk-seg label.on{border-color:var(--mk-teal);background:#E6F2F0;color:var(--mk-forest)}
.mk-seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.mk-seg label:focus-within{outline:2px solid var(--mk-teal);outline-offset:2px}
.mk-roi-out{display:grid;gap:12px;padding:22px;border-radius:var(--mk-r-lg);background:#fff;border:1px solid var(--mk-line)}
.mk-roi-out .lbl{font-size:14px;color:var(--mk-muted)}
.mk-roi-out .big{font-size:34px;line-height:1.1;font-weight:800;letter-spacing:-.03em;color:var(--mk-forest)}
.mk-roi-out .big small{font-size:15px;font-weight:700;color:var(--mk-muted);letter-spacing:0}
.mk-roi-out .rows{display:grid;gap:8px;margin:0;padding:12px 0;border-top:1px solid var(--mk-line);border-bottom:1px solid var(--mk-line)}
.mk-roi-out .rows div{display:flex;justify-content:space-between;gap:12px;font-size:15px}
.mk-roi-out dt{color:var(--mk-muted)}.mk-roi-out dt small{font-size:12px}
.mk-roi-out dd{margin:0;font-weight:800;text-align:right}
.mk-roi-out .mk-btn{justify-self:start}
.mk-roi-how{grid-column:1/-1;padding:16px 22px;border-radius:var(--mk-r);background:#fff;border:1px solid var(--mk-line)}
.mk-roi-how summary{cursor:pointer;font-weight:700;color:var(--mk-teal)}
.mk-roi-how ul,.mk-roi-how ol{margin-top:12px}

/* 7 · onboarding */
.mk-onb{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:24px;align-items:start}
.mk-timeline{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;margin:0;padding:0;list-style:none}
.mk-timeline li{display:grid;grid-template-columns:36px 1fr;gap:12px;position:relative}
.mk-timeline .n{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;font-size:15px;border-radius:50%;background:var(--mk-forest);color:#fff;font-weight:800;margin:0}
.mk-timeline h3{margin:6px 0 2px;font-size:16px}
.mk-timeline p{font-size:14px;color:var(--mk-muted)}
.mk-onb-side{display:grid;gap:10px}
.mk-onb-side .mk-card{padding:16px 18px;background:var(--mk-paper)}
.mk-onb-side h3{margin-bottom:10px;font-size:17px}
.mk-onb-side .mk-check{font-size:14px;gap:6px}
.mk-onb-side p{font-size:15px}

/* 8 · plans (component plans.tsx) */
.pl-ladder{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
.pl-step{display:flex;flex-direction:column;gap:6px;padding:20px;border-radius:var(--mk-r-lg);background:#fff;border:1.5px solid var(--mk-line);cursor:pointer;transition:border-color .2s var(--mk-ease),box-shadow .2s var(--mk-ease)}
.pl-step:hover{border-color:#B9C6BF}
.pl-step.on{border-color:var(--mk-teal);box-shadow:0 0 0 1px var(--mk-teal)}   /* moment №4: 200 ms */
.pl-step h3{font-size:22px}
.pl-step h3 button{all:unset;cursor:pointer;font:inherit;color:inherit;display:inline-flex;align-items:center;gap:10px}
.pl-step h3 button::before{content:"";width:18px;height:18px;border-radius:50%;border:2px solid var(--mk-line);background:#fff;flex-shrink:0}
.pl-step.on h3 button::before{border-color:var(--mk-teal);background:radial-gradient(circle,var(--mk-teal) 45%,#fff 50%)}
.pl-step h3 button:focus-visible{outline:2px solid var(--mk-teal);outline-offset:3px;border-radius:6px}
.pl-step .res{font-weight:700;color:var(--mk-forest)}
.pl-step .price{font-size:30px;font-weight:800;letter-spacing:-.03em;color:var(--mk-forest);line-height:1.1;margin:6px 0}
.pl-step .price small{display:block;font-size:13px;font-weight:600;color:var(--mk-muted);letter-spacing:0;margin-top:4px}
.pl-step .plus{font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mk-teal)}
.pl-step ul{display:grid;gap:6px;margin:0;padding:0;list-style:none;font-size:14px}
.pl-step li b{display:block}
.pl-step li span{display:block;font-size:14px;color:var(--mk-muted)}
.pl-step li span.mk-tag{display:inline-flex;margin-top:4px;font-size:12px;color:var(--mk-forest);border:1px solid var(--mk-line)}
.pl-step .rec{margin-top:auto;padding-top:12px;font-size:14px;color:var(--mk-muted)}
.pl-setup{margin-top:18px;font-size:14px;color:var(--mk-muted);max-width:80ch}
.pl-full{margin-top:20px}
.pl-diff{display:inline-flex;align-items:center;gap:10px;margin:12px 0 4px;font-weight:600;font-size:15px;cursor:pointer}
.pl-diff input{width:20px;height:20px;accent-color:var(--mk-teal)}
.pl-table tr.group th{text-align:left;font-weight:800!important;background:var(--mk-paper)}
.pl-table .yes{color:var(--mk-teal);font-weight:800}
.pl-table .no{color:#93A39C}

/* 9 · faq */
.mk-faq-wrap{display:grid;grid-template-columns:minmax(0,.5fr) minmax(0,1.5fr);gap:32px;align-items:start}
.hm .mk-faq{grid-template-columns:1fr 1fr;gap:8px;align-items:start}
.hm .mk-faq summary{padding:14px 16px;font-size:15px}
.hm .mk-faq details p{padding:0 16px 16px;font-size:15px}

/* 5 · plans: the one-off setup above the ladder */
.hm-setup{margin:0 0 18px;padding:14px 18px;border-radius:var(--mk-r-sm);background:#fff;border:1px solid var(--mk-line);border-left:4px solid var(--mk-lime);font-size:15.5px;max-width:none!important}
.hm-setup strong{color:var(--mk-forest)}

/* 7 · contact */
.hm-closing{padding:64px 0 72px}
.hm-closing-in{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:28px 48px;align-items:start;grid-template-areas:"head form" "more form"}
.hm-closing-head{grid-area:head}.hm-closing-form{grid-area:form}.hm-closing-more{grid-area:more}
.hm-closing-head h2{font-size:clamp(28px,3.2vw,40px);letter-spacing:-.025em;margin-bottom:12px}
.hm-closing-head .lead{font-size:18px;margin-bottom:14px}
.hm-closing-more h3{font-size:16px;margin:0 0 10px}
.hm-after{display:grid;gap:8px;margin:0 0 20px;padding-left:22px;list-style:decimal;color:var(--mk-on-dark)}
.hm-after li::marker{color:var(--mk-lime);font-weight:800}
.hm-closing-contacts{font-size:20px;font-weight:800;color:#fff!important}
.hm-closing-contacts a{color:#fff;text-decoration:underline;text-underline-offset:3px}

@media(prefers-reduced-motion:reduce){.hm-hero-copy{animation:none}}

@media(max-width:1180px){.hm-now-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hm-control{grid-template-columns:repeat(2,minmax(0,1fr))}.hm-gets{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:960px){
  .hm-hero-in,.hm-closing-in,.mk-roi,.sv,.mk-onb,.mk-faq-wrap,.hm-control-side{grid-template-columns:minmax(0,1fr)}
  .hm-hero-in{gap:28px}
  .hm-closing-in{grid-template-areas:"head" "form" "more";gap:20px}
  .hm-steps{grid-template-columns:minmax(0,1fr);gap:36px}
  .hm-steps li{grid-template-columns:minmax(0,180px) minmax(0,1fr);align-items:start;gap:20px}
  .hm-steps .mk-phone{max-height:300px}
  .mk-process-steps{grid-template-columns:1fr 1fr}
  .mk-process-panel{grid-template-columns:minmax(0,1fr)}
  .mk-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pl-ladder{grid-template-columns:1fr;max-width:560px}
  .mk-role-panel .mk-check{grid-template-columns:1fr}
}
@media(max-width:640px){
  .hm .mk-sec{padding:44px 0}
  .hm .mk-head{margin-bottom:20px}
  .hm-hero{padding:36px 0 44px}
  .hm-hero h1{font-size:32px}
  .hm-hero-lead{font-size:17px}
  .hm-hero .mk-btn.primary{width:100%}
  .hm-hero .mk-phone{width:200px}
  .hm-steps{gap:28px}
  .hm-steps li{grid-template-columns:120px minmax(0,1fr);gap:16px}
  .hm-steps .mk-phone{max-height:200px;border-width:4px;border-radius:18px}
  .hm-step-text{grid-template-columns:minmax(0,1fr)}
  .hm-step-text .n{grid-row:auto;width:30px;height:30px;font-size:14px}
  .hm-step-text h3{font-size:17px}
  .hm-step-text p{font-size:15px}
  .hm-gets{grid-template-columns:1fr;gap:12px}
  .hm-gets li{padding:16px 18px}
  .sv-in,.sv-out{padding:18px}
  .sv-out .big{font-size:36px}
  .hm-now-grid .mk-card{padding:14px 16px}
  .hm-now-grid p{font-size:14px}
  .mk-process-screen{display:none}
  .mk-onb-side .mk-card{padding:14px 16px}
  .mk-roi-in{grid-template-columns:1fr 1fr;padding:16px;gap:10px}
  .mk-timeline{grid-template-columns:1fr;gap:12px}
  .hm-control p{font-size:14px}
  .mk-roi-out{padding:18px}
  .hm .mk-faq{grid-template-columns:1fr}
  .hm-control-side .mk-card{padding:18px}
  .pl-step{padding:18px}
  .hm-now-grid,.hm-control{grid-template-columns:1fr}
  .hm-control li{padding:14px 0}
  .mk-process-steps{grid-template-columns:1fr}
  .mk-process-panel{padding:16px}
  .mk-metrics{grid-template-columns:1fr 1fr;gap:10px}
  .mk-metrics li{padding:14px;min-height:96px}
  .mk-metrics .val{font-size:26px}
  .mk-roi-out .big{font-size:28px}
  .mk-role-panel{padding:20px}
  .mk-tabs{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px 16px;padding:0 16px 4px;scrollbar-width:none}
  .mk-tabs button{flex-shrink:0}
  .hm-closing{padding:44px 0 52px}
}

/* ══ v3 edits (docs/marketing/V3_KEY_CHANGES.md) ═════════════════════════════════════════════════════════════════
   The three large app screens (hero + «Как это работает»), the highlighted «2 недели бесплатно» block, the four
   «Что вы получаете» cards, the one-field calculator, the plans' «для кого» line, the clarified steps of /how-it-works.
   Kept at the end of the file so that it wins over the older rules above. Screens are mock-ups of the app and keep the
   app's own light colours; everything else uses the site tokens. */

/* the app screens: light cards, readable on the dark hero and on a white section */
.v3-screen{background:#fff;color:#14181f;border:1px solid #e2e5e9;border-radius:16px;padding:18px;font-size:15px;line-height:1.35;text-align:left;box-shadow:0 10px 30px rgba(10,14,20,.14);min-width:0}
.v3-screen-top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-bottom:10px;margin-bottom:2px;border-bottom:1px solid #e2e5e9;font-size:16px}
.v3-rows{list-style:none;margin:0;padding:0;display:block}
.hm .v3-rows li,.hm .v3-offer{max-width:none}
.v3-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:11px 0;border-top:1px solid #eceff2}
.v3-row:first-child{border-top:0}
.v3-row.order{grid-template-columns:minmax(0,1fr) auto}
.v3-mark{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#e6f3da;color:#2b6a1c;font-weight:700;font-size:15px;line-height:1}
.v3-row.urgent .v3-mark{background:#d32f2f;color:#fff}
.v3-row.ordered .v3-mark{background:#e5edf9;color:#1f4f99}
.v3-main{display:flex;flex-direction:column;min-width:0}
.v3-main b{font-weight:700}
.v3-main small{color:#5b6570;font-size:13px}
.v3-qty{color:#39414a;font-size:14px;white-space:nowrap}
.v3-state{font-size:12px;line-height:1;padding:5px 10px;border-radius:999px;background:#eef1f4;color:#39414a;white-space:nowrap}
.v3-state.new,.v3-state.confirmed{background:#e6f3da;color:#2b6a1c}
.v3-state.urgent{background:#fde6e6;color:#a11b1b}
.v3-state.ordered{background:#e5edf9;color:#1f4f99}
.v3-state.way{background:#fff0d1;color:#7d5200}
.v3-foot{margin:6px 0 0;padding-top:10px;border-top:1px solid #e2e5e9;font-size:13px;color:#5b6570}
.v3-offer{padding:11px 0;border-top:1px solid #eceff2;list-style:none}
.v3-offer:first-child{border-top:0}
.v3-offer-head{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.v3-offer-head b{font-weight:700}
.v3-offer-head small{color:#5b6570;white-space:nowrap}
.v3-offer-prices{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.v3-price{flex:1 1 84px;display:flex;flex-direction:column;gap:2px;padding:8px 10px;border:1px solid #e2e5e9;border-radius:10px;background:#f7f8fa}
.v3-price small{color:#5b6570;font-size:12px}
.v3-price b{font-size:16px}
.v3-price em{font-style:normal;font-size:11px;font-weight:700;color:#2b6a1c}
.v3-price.win{border-color:#86c23a;background:#f0f9dc}
.v3-agree{display:flex;align-items:center;gap:6px;margin:10px 0 0;font-size:13px;color:#2b6a1c}
.v3-total{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 12px;margin-top:12px;padding-top:12px;border-top:1px solid #e2e5e9;font-size:14px}
.v3-sent-lead{display:flex;align-items:center;gap:10px;margin:12px 0 4px;font-size:14px;color:#39414a}
.v3-ok{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#e6f3da;color:#2b6a1c}
.v3-note{margin:14px 0 0;font-size:12.5px;line-height:1.4;color:var(--mk-muted);text-align:center;max-width:none!important}

/* hero: tabs over the screens, four labels, three buttons, the promise */
@media(min-width:961px){.hm-hero-in{grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:44px}}
.hm-hero h1{max-width:none;font-size:clamp(32px,3.7vw,50px)}
.hm-hero-lead{margin-bottom:18px}
.v3-hero-mock{width:100%;max-width:540px;margin-inline:auto}
.v3-tabs{display:flex;gap:6px;margin-bottom:10px}
.v3-tabs button{flex:1 1 0;min-width:0;display:flex;align-items:center;gap:8px;padding:9px 10px;border-radius:10px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.07);color:#fff;font-size:13px;font-weight:700;line-height:1.2;text-align:left}
.v3-tabs button .n{flex:none;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.2);font-size:11px;font-weight:800}
.v3-tabs button[aria-selected="true"]{background:#fff;color:var(--mk-forest);border-color:#fff}
.v3-tabs button[aria-selected="true"] .n{background:var(--mk-forest);color:#fff}
.v3-hero-mock .v3-note{color:var(--mk-on-dark);text-align:left}
.v3-tags{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.hm .v3-tags li{max-width:none;padding:6px 14px;border:1px solid rgba(255,255,255,.3);border-radius:999px;font-size:14px;line-height:1.3;color:#fff}
.hm-hero .hm-slogan{margin-bottom:22px}
.hm-hero .mk-btn.ghost{color:#fff;border-color:rgba(255,255,255,.55);background:transparent}
.hm-hero .mk-btn.ghost:hover{background:rgba(255,255,255,.12)}
.hm-hero .mk-btn.primary{min-width:0}
.v3-hero-calc{margin:16px 0 0;font-size:16px}
.v3-hero-calc a{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.v3-promise{margin:14px 0 0;font-size:17px;font-weight:800;color:#fff!important}

/* home «Как это работает»: three steps, each with its screen */
.v3-steps3{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.v3-steps3>li{display:flex;flex-direction:column;gap:8px;min-width:0;max-width:none}
.v3-steps3 .n{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--mk-forest);color:#fff;font-weight:800}
.v3-steps3 h3{margin:4px 0 0;font-size:19px;line-height:1.3}
.v3-steps3 p{margin:0 0 8px;color:var(--mk-muted);font-size:16px}
@media(min-width:961px){.v3-steps3 p{min-height:3.3em}}
.v3-steps3 .v3-screen{box-shadow:0 6px 20px rgba(10,14,20,.1);width:100%}
.hm-steps-foot{margin-top:20px}
.v3-steps3+.v3-note{margin-top:18px}

/* «2 недели бесплатно»: its own highlighted block */
.v3-free{background:var(--mk-forest);color:#fff;border-radius:22px;padding:clamp(24px,4vw,48px);box-shadow:0 14px 40px rgba(18,66,59,.22)}
.v3-free-head h2{margin:0 0 8px;color:#fff;font-size:clamp(30px,4vw,44px);line-height:1.1;letter-spacing:-.03em}
.v3-free-head p{margin:0;font-size:18px;color:var(--mk-on-dark)}
.v3-free-weeks{list-style:none;margin:26px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.hm .v3-free-weeks li{max-width:none;background:rgba(255,255,255,.09);border:1px solid var(--mk-line-dark);border-radius:16px;padding:20px}
.v3-free-weeks .mk-tag{background:var(--mk-lime);color:var(--mk-forest);border-color:var(--mk-lime)}
.v3-free-weeks h3{margin:12px 0 6px;color:#fff;font-size:20px}
.v3-free-weeks p{margin:0;color:var(--mk-on-dark);font-size:16px}
.v3-free-training{margin-top:24px}
.v3-free-training h3{margin:0 0 10px;color:#fff;font-size:18px}
.v3-free-training li{color:#fff}
.v3-free .mk-check li::before{filter:none}
.v3-free .mk-btns{margin-top:24px}
.v3-free .mk-btn.primary{background:var(--mk-lime);border-color:var(--mk-lime);color:var(--mk-forest)}
.v3-free .mk-btn.primary:hover{background:#D5EF7A}

/* «Что вы получаете»: four cards */
.v3-gets{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.hm .v3-gets>li{max-width:none;padding:22px;border-top:4px solid var(--mk-lime)}
.v3-gets>li h3{margin:0 0 12px;font-size:18px;line-height:1.3}
.v3-gets .mk-check{gap:8px;font-size:15px}
.v3-gets-note{margin-top:18px;text-align:center;max-width:none!important}

/* calculator: one field, the result right under it */
.mk-roi.v3-roi{display:block;max-width:640px;margin-inline:auto}
.v3-roi .mk-roi-in{display:block}
.v3-roi .mk-roi-out{margin-top:14px}
.v3-roi .mk-roi-how{margin-top:14px}
.v3-roi .mk-tag{justify-self:start}

/* plans: «для кого» right under the price */
.pl-step .rec{margin-top:0;padding-top:0;font-size:14.5px;color:var(--mk-ink)}
.pl-step .rec b{font-weight:800}

/* /how-it-works */
.hm .v3-effect{margin:10px 0 0;font-size:14.5px;color:var(--mk-ink);max-width:none}
.hm .v3-outro{max-width:none;margin:24px 0 0;font-size:22px;font-weight:800;text-align:center;letter-spacing:-.02em}
.mk-process-steps .t small{display:block;margin-bottom:2px;font-size:11px;font-weight:700;opacity:.7}
.mk-process-screen li.urgent{font-weight:700}
.v3-bang{display:inline-grid;place-items:center;width:18px;height:18px;margin-right:8px;border-radius:50%;background:#d32f2f;color:#fff;font-size:12px;font-weight:800;line-height:1;vertical-align:middle}
.v3-fake-btn{display:inline-block;margin-top:12px;padding:7px 16px;border-radius:10px;background:var(--mk-teal);color:#fff;font-size:13px;font-weight:700}
.v3-lines{margin:0;padding-left:18px;display:grid;gap:6px}
.hm .v3-lines li{max-width:none}
.v3-notes{grid-column:1/-1;list-style:none;margin:0;padding:14px 16px;display:grid;gap:10px;border-left:4px solid var(--mk-lime);border-radius:10px;background:#fff}
.hm .v3-notes li{max-width:none;font-size:15px}

@media(max-width:1180px){.v3-gets{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:960px){
  .v3-steps3{grid-template-columns:minmax(0,1fr);max-width:560px;margin-inline:auto;gap:36px}
  .v3-hero-mock{max-width:560px}
}
@media(max-width:720px){.v3-free-weeks{grid-template-columns:minmax(0,1fr)}}
@media(max-width:640px){
  .v3-gets{grid-template-columns:minmax(0,1fr);gap:12px}
  .hm .v3-gets>li{padding:16px 18px}
  .hm-hero .mk-btns{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
  .hm-hero .mk-btn.primary,.hm-hero .mk-btn.ghost{width:100%}
  .v3-tags li{font-size:13px}
  .mk-process-screen{display:block}
  .v3-free{border-radius:18px}
}
@media(max-width:480px){
  .v3-screen{padding:14px}
  .v3-row{grid-template-columns:26px minmax(0,1fr) auto;grid-template-areas:"mark main state" "mark qty state"}
  .v3-row.order{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:none}
  .v3-row .v3-mark{grid-area:mark}
  .v3-row .v3-main{grid-area:main}
  .v3-row .v3-qty{grid-area:qty}
  .v3-row .v3-state{grid-area:state}
  .v3-row.order .v3-mark,.v3-row.order .v3-main,.v3-row.order .v3-state{grid-area:auto}
  .v3-tabs button{font-size:12px;padding:8px}
  .v3-tabs button .n{display:none}
}
.mk-roi-out{grid-template-columns:minmax(0,1fr)}

/* Signup wizard and contact form (and the report's summary lists): inlined only on the pages that have them,
   not in every page's head. Tokens and base classes: marketing.css. */
/* ---------- Forms: signup wizard, contact ---------- */
.mk-wizard{max-width:860px;margin:0 auto;scroll-margin-top:calc(var(--mk-header) + 16px)}
.mk-stepper{display:flex;gap:8px;margin:0 0 20px;padding:0;list-style:none;overflow-x:auto;scrollbar-width:none}
.mk-stepper li>*{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px 0 6px;border-radius:999px;border:1.5px solid var(--mk-line);background:#fff;font:700 14px var(--mk-font);color:var(--mk-muted);white-space:nowrap}
.mk-stepper button{cursor:pointer;color:var(--mk-forest)}
.mk-stepper .n{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#EEF2ED;font-size:13px}
.mk-stepper li.on>*{border-color:var(--mk-teal);color:var(--mk-forest)}
.mk-stepper li.on .n{background:var(--mk-teal);color:#fff}
.mk-stepper li.past .n{background:var(--mk-lime);color:var(--mk-forest)}
.mk-step fieldset{border:0;margin:0;padding:0;min-width:0;display:grid;gap:18px}
.mk-step legend{padding:0;margin-bottom:6px}
.mk-step legend h2{font-size:28px}
.mk-step h2:focus{outline:0}
.mk-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.mk-input{display:grid;gap:6px;align-content:start}
.mk-input label,.mk-checkbox{font-weight:700;font-size:15px}
.mk-input input,.mk-input select,.mk-input textarea,.mk-book-row input{width:100%;min-height:50px;padding:0 14px;border:1.5px solid #B9C6BF;border-radius:14px;background:#fff;font:600 16px var(--mk-font);color:var(--mk-ink)}
.mk-input textarea{padding:12px 14px;min-height:120px;resize:vertical}
.mk .mk-input input:focus,.mk .mk-input select:focus,.mk .mk-input textarea:focus,.mk .mk-book-row input:focus{outline:3px solid rgba(36,108,97,.25);border-color:var(--mk-teal)}
.mk-input [aria-invalid=true]{border-width:2px;border-style:dashed;border-color:var(--mk-ink)!important}
.mk-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.mk-plan-pick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.mk-plan-pick label{position:relative;display:grid;gap:4px;padding:18px;border:1.5px solid var(--mk-line);border-radius:var(--mk-r);cursor:pointer;background:#fff}
.mk-plan-pick label.on{border-color:var(--mk-teal);background:#F1F8F6;box-shadow:inset 0 0 0 1px var(--mk-teal)}
.mk-plan-pick input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.mk-plan-pick label:focus-within{outline:3px solid var(--mk-teal);outline-offset:2px}
.mk-plan-pick strong{font-size:20px}
.mk-plan-pick small{font-size:12px;color:var(--mk-muted)}
.mk-stepper-num{display:inline-flex;align-items:center;gap:6px}
.mk-stepper-num button{width:48px;height:48px;border-radius:14px;border:1.5px solid var(--mk-line);background:#fff;font:800 20px var(--mk-font);color:var(--mk-forest);cursor:pointer}
.mk-stepper-num input{width:90px;text-align:center}
.mk-points{max-width:260px}
.mk-sum{margin:0;display:grid;gap:0;border:1px solid var(--mk-line);border-radius:var(--mk-r);overflow:hidden;background:#fff}
.mk-sum div{display:flex;justify-content:space-between;gap:16px;padding:12px 16px;border-bottom:1px solid var(--mk-line)}
.mk-sum div:last-child{border-bottom:0}
.mk-sum dt{color:var(--mk-muted);font-weight:600}
.mk-sum dd{margin:0;font-weight:800;text-align:right}
.mk-sum dd small{display:block;font-weight:600;color:var(--mk-muted);font-size:12px}
.mk-sum .tot{background:#F1F8F6}
.mk-chips{display:flex;flex-wrap:wrap;gap:8px}
.mk-chips li{display:inline-flex;align-items:center;gap:6px;padding:6px 6px 6px 12px;border-radius:999px;background:#E9F0E6;font-weight:700;font-size:14px}
.mk-chips button{width:28px;height:28px;border-radius:50%;border:0;background:#fff;cursor:pointer;font-size:16px;line-height:1}
.mk-book-row{display:flex;gap:10px;flex-wrap:wrap}
.mk-book-row input{flex:1 1 220px;width:auto}
.mk-checkbox{display:flex;gap:12px;align-items:flex-start;font-weight:600;cursor:pointer}
.mk-checkbox input{width:22px;height:22px;margin-top:2px;flex-shrink:0;accent-color:var(--mk-teal)}
.mk-checkbox.bad input{outline:2px solid #B3261E;outline-offset:2px}
.mk-step-nav{display:flex;justify-content:space-between;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--mk-line)}
.mk-step-nav .mk-btn.primary{margin-left:auto;min-width:200px}
.mk-draft{display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:flex-end;min-height:24px;margin-top:10px;font-size:14px;color:var(--mk-muted)}
.mk-draft .mk-textbtn{display:inline-flex;align-items:center;gap:6px}
.mk-done{display:grid;justify-items:center;text-align:center;gap:14px;padding:48px 28px}
.mk-done .ok{width:64px;height:64px;border-radius:50%;background:var(--mk-lime);color:var(--mk-forest);display:inline-flex;align-items:center;justify-content:center}
.mk-done h2:focus{outline:0}
.mk-book{display:grid;gap:12px;width:100%;max-width:520px;margin-top:12px;padding-top:20px;border-top:1px solid var(--mk-line)}@media(max-width:640px){.mk-form-grid,.mk-plan-pick{grid-template-columns:minmax(0,1fr)}.mk-step legend h2{font-size:24px}.mk-step-nav .mk-btn.primary{min-width:0;flex:1}.mk-sum div{flex-direction:column;gap:2px}.mk-sum dd{text-align:left}}

/* ---------- Contact form (components/marketing/contact-form.tsx): home closing and /contact ----------
   Errors use the one warm colour of the design system (#B3261E) — always with an icon and a word. */
.mk-contact-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px;align-items:start}
.mk-contact-side h2{font-size:20px;margin:0 0 12px}
.mk-contact-side h2+ol,.mk-contact-side h2+ul{margin-bottom:28px}
.mk-contact-ways{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.mk-contact-ways a{display:flex;gap:14px;align-items:center;padding:14px 16px;border-radius:var(--mk-r);background:#fff;border:1px solid var(--mk-line);transition:border-color .15s}
.mk-contact-ways a:hover{border-color:var(--mk-teal)}
.mk-contact-ways .ic{margin:0;width:40px;height:40px;flex-shrink:0}
.mk-contact-ways a>span:last-child{display:grid;gap:2px;font-size:15px}
.mk-contact-ways b{font-size:15px}
.mk-contact-ways small{color:var(--mk-muted)}
.cf{--cf-err:#B3261E;display:grid;gap:16px;padding:28px;border-radius:20px;background:#fff;border:1px solid var(--mk-line);box-shadow:0 12px 40px rgba(18,66,59,.08);color:var(--mk-ink)}
.cf p{color:var(--mk-ink)}
.mk .cf .mk-link,.mk .cf-done .mk-textbtn{color:var(--mk-teal)}
.mk .cf .mk-btn.primary{background:var(--mk-forest);color:#fff}
.mk .cf .mk-btn.primary:hover{background:#0C3530}
.mk .cf :focus-visible,.mk .cf-done :focus-visible{outline-color:var(--mk-teal)}
.cf-title{font-size:22px;margin:0}
.cf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}
.cf-field{display:grid;gap:6px;align-content:start;border:0;margin:0;padding:0;min-width:0}
.cf-wide,.cf-segs,.cf-grid>.cf-field:nth-child(3){grid-column:1/-1}
.cf-field label,.cf-field legend{font-weight:700;font-size:15px;padding:0}
.cf-field legend{margin-bottom:6px}
.cf-field label small{font-weight:600;color:var(--mk-muted)}
.cf-field input,.cf-field textarea{width:100%;min-height:48px;padding:0 14px;border:1.5px solid #B9C6BF;border-radius:12px;background:#fff;font:600 16px var(--mk-font);color:var(--mk-ink);transition:border-color .15s}
.cf-field textarea{padding:12px 14px;min-height:88px;resize:vertical;line-height:1.5}
.cf-field input::placeholder,.cf-field textarea::placeholder{color:#6B7B74;font-weight:500}
.mk .cf-field input:focus,.mk .cf-field textarea:focus{outline:2px solid var(--mk-teal);outline-offset:2px;border-color:var(--mk-teal)}
.cf-field input[aria-invalid=true],.mk .cf-field input[aria-invalid=true]:focus{border:2px solid var(--cf-err)}
.cf-field .hint{font-size:13px;color:var(--mk-muted);margin:0}
.cf .err{display:flex;align-items:flex-start;gap:6px;margin:0;font-size:14px;font-weight:700;color:var(--cf-err)}
.cf .err svg{flex-shrink:0;margin-top:2px}
.cf-sum{display:flex;gap:10px;align-items:center;margin:0;padding:12px 14px;border-radius:12px;background:#FBEDEC;color:var(--cf-err)!important;font-weight:700;font-size:15px}
.cf-seg{display:flex;flex-wrap:wrap;gap:8px}
.cf-seg label{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:12px;border:1.5px solid #B9C6BF;background:#fff;font-weight:700;font-size:15px;cursor:pointer;transition:border-color .15s,background .15s}
.cf-seg label.on{border-color:var(--mk-forest);background:#E4EFEC;color:var(--mk-forest)}
.cf-seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.cf-seg label:focus-within{outline:2px solid var(--mk-teal);outline-offset:2px}
.cf-consent{display:grid;gap:4px;font-size:15px;line-height:1.5}
.cf-consent label{display:flex;gap:12px;align-items:flex-start;cursor:pointer;min-height:44px}
.cf-consent input{width:24px;height:24px;margin-top:1px;flex-shrink:0;accent-color:var(--mk-forest)}
.cf-consent.bad input{outline:2px solid var(--cf-err);outline-offset:2px}
.cf-privacy{justify-self:start;margin-left:36px;font-size:14px}
.cf-fail{display:flex;gap:10px;align-items:flex-start;padding:14px 16px;border-radius:12px;background:#FBEDEC;color:var(--cf-err)}
.cf-fail svg{flex-shrink:0;margin-top:2px}
.cf-fail p{margin:0;font-size:15px;color:var(--cf-err)!important;font-weight:600}
.cf-fail a{font-weight:800;text-decoration:underline;text-underline-offset:3px;margin-left:4px}
.cf-turnstile:empty{display:none}
.cf-actions{display:grid;gap:10px;justify-items:start}
.cf-submit{min-width:220px}
.cf-submit[aria-disabled=true]{opacity:.75;cursor:progress}
.cf-submit .spin{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;animation:cf-spin .6s linear infinite}
@keyframes cf-spin{to{transform:rotate(360deg)}}
.cf-done{display:grid;gap:12px;padding:32px;border-radius:20px;background:#fff;border:1px solid var(--mk-line);color:var(--mk-ink)}
.cf-done:focus{outline:0}
.cf-done .ok{width:48px;height:48px;border-radius:50%;background:var(--mk-lime);color:var(--mk-forest);display:inline-flex;align-items:center;justify-content:center}
.cf-done h3{font-size:24px;margin:0}
.cf-done p{margin:0;color:var(--mk-ink)}
.cf-done .mk-textbtn{justify-self:start;min-height:44px}
.cf-summary{display:grid;gap:6px;margin:6px 0;padding:14px 16px;border-radius:12px;background:var(--mk-paper)}
.cf-summary div{display:flex;justify-content:space-between;gap:16px;font-size:15px}
.cf-summary dt{color:var(--mk-muted)}
.cf-summary dd{margin:0;font-weight:700;text-align:right;overflow-wrap:anywhere}
.cf-next{display:grid;gap:8px;margin:0;padding-left:22px;font-size:15px;list-style:decimal}
.hm-closing .cf,.hm-closing .cf-done{box-shadow:0 24px 60px rgba(0,0,0,.25)}
@media(prefers-reduced-motion:reduce){.cf-submit .spin{animation:none}}
@media(max-width:960px){.mk-contact-grid{grid-template-columns:minmax(0,1fr)}.mk-contact-form{order:-1}}
@media(max-width:640px){.cf,.cf-done{padding:22px 16px;border-radius:16px}.cf-grid{grid-template-columns:1fr}.cf-submit{width:100%}.cf-actions{justify-items:stretch}.cf-summary div{flex-direction:column;gap:2px}.cf-summary dd{text-align:left}}

/* v3: the optional part of the form and the request type */
.cf-more{grid-column:1/-1;margin:14px 0 6px}
.cf-more>summary{cursor:pointer;padding:6px 0;font-weight:800;color:var(--mk-teal)}
.cf-more[open]>summary{margin-bottom:12px}
.cf-topics .cf-seg{flex-wrap:wrap}

.mk-cookie[hidden]{display:none!important}
#mk-mobile-menu{position:fixed;inset:64px 0 0 0;z-index:60;background:var(--mk-paper,#F7F6F0);padding:20px 24px;display:flex;flex-direction:column;gap:6px;overflow:auto}
#mk-mobile-menu[hidden]{display:none}
#mk-mobile-menu a{padding:14px 4px;font-size:18px;font-weight:600;color:inherit;text-decoration:none;border-bottom:1px solid rgba(22,45,41,.12)}
#mk-mobile-menu .mk-btn{margin-top:14px;text-align:center;border:0}
.pv-note{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);z-index:80;background:#162D29;color:#F7F6F0;font:600 13px/1.3 Manrope,system-ui,sans-serif;padding:10px 16px;border-radius:999px;box-shadow:0 8px 30px rgba(0,0,0,.25)}

/* /compare only (inlined on that page, not on every page). */
/* compare */
.mk .mk-compare th,.mk .mk-compare td{text-align:left!important;vertical-align:top}
.mk-compare .before{color:var(--mk-muted)!important}
.mk-compare .after{font-weight:700;color:var(--mk-forest)!important;background:#F1F8F6}

#mk-mobile-menu a.mk-btn.primary{color:#fff;border-bottom:0}
