@charset "UTF-8";
/*! sources: /css/fe/mkm-fe.20261004.css /css/fe/mkm-island.20261004.css /css/fe/page-en.20261004.css /css/fe/page-en-chronicles.20261004.css */
/*! MKM Labs CSS bundle, generated by scripts/html-fixes/52-perf-templates.py; edit sources, re-run. */
/* --- /css/fe/mkm-fe.20261004.css --- */
/*! MKM Labs frontend 2026-10-04 - shared layer (nav, drawer, footer, CTA band, buttons,
 * hero, cards, FAQ accordion, filter pills, breadcrumbs, toast).
 * Port of design_handoff_mkmlabs_site (MKMNav / MKMFooter / subpage patterns).
 * All classes are prefixed "fe-" so they never collide with the old site.<hash>.css.
 * Fonts: the prototype DM Sans files are byte-identical to /fonts/dm-sans/* (sha256),
 * so this file points there (shared browser cache with the old pages).
 */

/* ---------- Fonts ---------- */
@font-face{font-family:'DM Sans';src:url(/fonts/dm-sans/dm-sans-v17-latin_latin-ext-regular.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'DM Sans';src:url(/fonts/dm-sans/dm-sans-v17-latin_latin-ext-500.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'DM Sans';src:url(/fonts/dm-sans/dm-sans-v17-latin_latin-ext-600.woff2) format('woff2');font-weight:600 800;font-style:normal;font-display:swap}

/* ---------- Tokens (README "Design Tokens") ---------- */
:root{
  --fe-ease-out:cubic-bezier(0.23,1,0.32,1);
  --fe-ease-in-out:cubic-bezier(0.77,0,0.175,1);
  --fe-ease-drawer:cubic-bezier(0.32,0.72,0,1);

  --fe-bg:#0a0c10;
  --fe-bg-alt:#050914;
  --fe-bg-alt2:#07101d;
  --fe-surface:#12161f;
  --fe-surface-hi:#161b26;
  --fe-row-alt:#0f131b;
  --fe-drawer:#0e1118;

  --fe-line:rgba(255,255,255,.07);
  --fe-line-2:rgba(255,255,255,.08);
  --fe-line-3:rgba(255,255,255,.1);
  --fe-line-ghost:rgba(255,255,255,.16);
  --fe-line-hover:rgba(153,186,255,.3);

  --fe-white:#ffffff;
  --fe-text:#c3c8d3;
  --fe-text-hi:#d7dbe4;
  --fe-text-hi2:#e5e8ee;
  --fe-muted:#aeb4c2;
  --fe-subtle:#8a92a3;
  --fe-num:#33363d;

  --fe-blue:#0057FF;
  --fe-blue-dark:#002bb5;
  --fe-blue-light:#3378ff;
  --fe-eyebrow:#6699ff;
  --fe-link:#99baff;
  --fe-on-blue:#e6eeff;
  --fe-ink:#050914;

  --fe-online:#4dff9f;
  --fe-star:#fbbc04;
  --fe-error:#ff8a8a;
  --fe-error-line:rgba(255,120,120,.6);

  --fe-cta-bg:radial-gradient(ellipse 60% 80% at 80% 0%,rgba(153,186,255,.35),transparent 60%),linear-gradient(160deg,#002bb5,#0057FF 60%,#3378ff);
  --fe-hero-glow:radial-gradient(ellipse 55% 60% at 78% 0%,rgba(0,87,255,.30),transparent 70%);

  --fe-shadow-nav:0 12px 40px rgba(0,0,0,.35);
  --fe-shadow-cta:0 24px 60px rgba(0,20,92,.5);
  --fe-shadow-blue:0 18px 40px rgba(0,87,255,.35);
  --fe-shadow-stack:0 -20px 60px rgba(0,0,0,.45);

  --fe-glass-1:rgba(5,9,20,.62);
  --fe-glass-2:rgba(14,17,24,.72);

  --fe-pad-x:clamp(18px,4vw,56px);
  --fe-pad-b:clamp(80px,10vw,140px);
  --fe-max:1400px;
  --fe-max-cta:1440px;
  --fe-max-article:760px;
  --fe-card-pad:clamp(26px,3vw,36px);

  --fe-r-card:28px;
  --fe-r-card-lg:32px;
  --fe-r-cta:44px;
  --fe-r-input:16px;
}

/* ---------- Reset / global (prototype <style>) ---------- */
html,body{background:#0a0c10;overflow-x:clip}
body{margin:0;color:#fff;font-family:'DM Sans',sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
*,*:before,*:after{box-sizing:border-box}
::selection{background:#0057ff66;color:#fff}
a{color:#99baff;text-decoration:none}
a:hover{color:#fff}
button,input,textarea,select{font:inherit;color:inherit}
h1,h2,h3,h4,p,figure,blockquote{margin:0}
img,video,svg{max-width:100%}
.fe-root{position:relative;background:#0a0c10;color:#fff;font-family:'DM Sans',sans-serif}
.fe-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.fe-skip{position:fixed;left:16px;top:-80px;z-index:200;padding:12px 18px;border-radius:999px;background:#fff;color:#050914;font-weight:700;font-size:14px;transition:top 200ms var(--fe-ease-out)}
.fe-skip:focus{top:16px;color:#050914}
:where(.fe-root,.fe-nav,.fe-drawer,.fe-footer,.fe-cta) :focus-visible{outline:2px solid #99baff;outline-offset:3px}

/* ---------- Layout helpers ---------- */
.fe-wrap{max-width:var(--fe-max);margin:0 auto}
.fe-section{padding:0 var(--fe-pad-x) var(--fe-pad-b)}
.fe-stack{display:flex;flex-direction:column;gap:clamp(32px,4vw,56px)}
.fe-head{display:flex;flex-direction:column;gap:18px}
.fe-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--fe-min,250px)),1fr));gap:14px}
.fe-grid--fill{grid-template-columns:repeat(auto-fill,minmax(min(100%,var(--fe-min,360px)),1fr))}
.fe-split{display:flex;flex-wrap:wrap;gap:clamp(32px,5vw,80px);align-items:flex-start}
.fe-num{font-variant-numeric:tabular-nums}

/* ---------- Typography ---------- */
.fe-eyebrow{color:#6699ff;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.fe-h1{font-size:clamp(46px,7.6vw,128px);font-weight:600;line-height:.92;letter-spacing:-0.055em;text-wrap:balance}
.fe-h1--xl{font-size:clamp(48px,8vw,136px)}
.fe-h2{font-size:clamp(38px,5.6vw,92px);font-weight:600;line-height:.98;letter-spacing:-0.045em;text-wrap:balance}
.fe-h2--sm{font-size:clamp(36px,4.6vw,76px)}
.fe-h3{font-size:clamp(24px,2.2vw,32px);font-weight:600;line-height:1.1;letter-spacing:-0.03em}
.fe-lede{max-width:640px;color:#c3c8d3;font-size:clamp(17px,1.5vw,21px);line-height:1.55;text-wrap:pretty}
.fe-body{color:#c3c8d3;font-size:17px;line-height:1.6;text-wrap:pretty}
.fe-small{color:#aeb4c2;font-size:15px}
.fe-statement{font-size:clamp(22px,2.4vw,36px);line-height:1.35;letter-spacing:-0.02em;color:#e5e8ee;text-wrap:pretty}
.fe-hl{color:#99baff}

/* ---------- Buttons ---------- */
.fe-btn,.fe-btn-ghost,.fe-chip,.fe-pill,.fe-nav__link,.fe-nav__burger,.fe-cta__alt a{transition:transform 140ms var(--fe-ease-out),background-color 150ms ease,border-color 200ms ease,color 150ms ease}
.fe-btn:active,.fe-btn-ghost:active,.fe-chip:active,.fe-pill:active,.fe-nav__link:active,.fe-cta__alt a:active{transform:scale(0.96)}
.fe-btn[data-magnetic]:active{transform:none} /* magnetic handles press via spring */
.fe-btn{display:inline-flex;align-items:center;gap:12px;height:56px;padding:0 10px 0 24px;border-radius:999px;background:#fff;color:#050914;font-size:16px;font-weight:700;border:0;cursor:pointer;white-space:nowrap}
.fe-btn:hover{color:#050914}
.fe-btn__dot{flex:none;width:38px;height:38px;border-radius:50%;background:#0057FF;display:flex;align-items:center;justify-content:center}
.fe-btn__dot svg{width:14px;height:14px}
.fe-btn--sm{height:42px;gap:10px;padding:0 6px 0 18px;font-size:14px}
.fe-btn--sm .fe-btn__dot{width:30px;height:30px}
.fe-btn--sm .fe-btn__dot svg{width:12px;height:12px}
.fe-btn--lg{height:68px;gap:14px;padding:0 12px 0 32px;font-size:18px;color:#002bb5;box-shadow:var(--fe-shadow-cta)}
.fe-btn--lg:hover{color:#002bb5}
.fe-btn--lg .fe-btn__dot{width:46px;height:46px}
.fe-btn--lg .fe-btn__dot svg{width:16px;height:16px}
.fe-btn--blue{background:#0057FF;color:#fff;box-shadow:var(--fe-shadow-blue)}
.fe-btn--blue:hover{color:#fff}
.fe-btn--blue .fe-btn__dot{background:#fff}
.fe-btn--blue .fe-btn__dot svg path{stroke:#0057FF}
.fe-btn-ghost{display:inline-flex;align-items:center;gap:10px;height:56px;padding:0 24px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:transparent;color:#fff;font-size:16px;font-weight:600;cursor:pointer;white-space:nowrap}
.fe-btn-ghost:hover{background:rgba(255,255,255,.06);color:#fff}
.fe-btns{display:flex;flex-wrap:wrap;gap:10px}
.fe-chip{display:inline-flex;align-items:center;height:40px;padding:0 16px;border-radius:999px;background:#12161f;border:1px solid rgba(255,255,255,.08);color:#e5e8ee;font-size:14px;font-weight:600}
.fe-chip:hover{background:rgba(0,87,255,.22);color:#fff}
.fe-related{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.fe-related__label{color:#aeb4c2;font-size:14px;margin-right:8px}

/* ---------- Header / nav (MKMNav) ---------- */
.fe-nav{position:fixed;top:12px;left:50%;z-index:110;width:min(1120px,calc(100vw - 24px));transform:translateX(-50%) translateY(0);transition:transform 520ms var(--fe-ease-drawer);pointer-events:none}
.fe-nav.is-hidden{transform:translateX(-50%) translateY(-96px)}
.fe-nav__bar{pointer-events:auto;height:60px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 10px 0 20px;border-radius:999px;background:rgba(14,17,24,.72);border:1px solid rgba(255,255,255,.09);-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);box-shadow:var(--fe-shadow-nav)}
.fe-nav__logo{display:flex;align-items:center;flex:none}
.fe-nav__logo img{height:26px;width:auto;display:block}
.fe-nav__links{display:flex;align-items:center;gap:2px}
.fe-nav__link{display:inline-flex;align-items:center;height:40px;padding:0 14px;border-radius:999px;font-size:14px;font-weight:600;color:#c3c8d3;background:transparent;white-space:nowrap}
.fe-nav__link:hover{background:rgba(255,255,255,.08);color:#fff}
.fe-nav__link[aria-current="page"]{color:#fff;background:rgba(255,255,255,.1)}
.fe-nav__actions{display:flex;align-items:center;gap:8px;flex:none}
.fe-nav__burger{display:none;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);align-items:center;justify-content:center;cursor:pointer;padding:0;color:#fff}
.fe-nav__burger:active{transform:scale(0.94)}
.fe-nav__burger .fe-ico-close{display:none}
html.fe-nav-open .fe-nav__burger .fe-ico-open{display:none}
html.fe-nav-open .fe-nav__burger .fe-ico-close{display:block}
@media (max-width:899.98px){
  .fe-nav__links{display:none}
  .fe-nav__burger{display:flex}
}
.fe-scrim{position:fixed;inset:0;z-index:108;background:rgba(3,5,10,.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity 300ms ease}
.fe-drawer{position:fixed;top:0;right:0;bottom:0;z-index:109;width:min(420px,88vw);padding:96px 24px 32px;background:#0e1118;border-left:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:6px;overflow-y:auto;overscroll-behavior:contain;transform:translateX(104%);visibility:hidden;transition:transform 500ms var(--fe-ease-drawer),visibility 0s linear 500ms}
html.fe-nav-open .fe-scrim{opacity:1;pointer-events:auto}
html.fe-nav-open .fe-drawer{transform:translateX(0);visibility:visible;transition:transform 500ms var(--fe-ease-drawer),visibility 0s}
.fe-drawer__link{flex:none;display:flex;align-items:center;justify-content:space-between;height:60px;padding:0 18px;border-radius:18px;font-size:22px;font-weight:600;letter-spacing:-0.02em;color:#fff;background:rgba(255,255,255,.04)}
.fe-drawer__link:hover{color:#fff;background:rgba(255,255,255,.07)}
.fe-drawer__link[aria-current="page"]{background:rgba(0,87,255,.18)}
.fe-drawer__arrow{color:#6699ff;font-size:16px}
.fe-drawer__more{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:16px;border-top:1px solid rgba(255,255,255,.08)}
.fe-drawer__more a{display:inline-flex;align-items:center;height:40px;padding:0 16px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:#e5e8ee;font-size:14px;font-weight:600}
.fe-drawer__more a:hover{color:#fff;background:rgba(0,87,255,.22)}
.fe-drawer__contact{margin-top:auto;padding-top:24px;display:flex;flex-direction:column;gap:8px;font-size:15px}
.fe-drawer__contact a{color:#fff}
.fe-drawer__contact a+a{color:#c3c8d3}

/* ---------- Subpage hero (glow + 80px grid) ---------- */
.fe-hero{position:relative;overflow:hidden;padding:clamp(140px,16vw,210px) var(--fe-pad-x) clamp(56px,7vw,100px)}
.fe-hero--tight{padding-bottom:clamp(40px,5vw,72px)}
.fe-hero__glow{position:absolute;inset:0;background:var(--fe-hero-glow);pointer-events:none}
.fe-hero__grid{position:absolute;inset:0;pointer-events:none;background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:80px 80px;-webkit-mask-image:radial-gradient(ellipse 70% 70% at 50% 0%,#000,transparent);mask-image:radial-gradient(ellipse 70% 70% at 50% 0%,#000,transparent)}
.fe-hero__inner{position:relative;max-width:var(--fe-max);margin:0 auto;display:flex;flex-wrap:wrap;gap:clamp(32px,5vw,72px);align-items:flex-end}
.fe-hero__main{flex:1.4 1 560px;min-width:0;display:flex;flex-direction:column;gap:28px}
.fe-hero__side{flex:1 1 340px;min-width:0;display:flex;flex-direction:column;gap:10px}
.fe-fact{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:20px 24px;border-radius:22px;background:rgba(18,22,31,.8);border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.fe-fact__l{color:#aeb4c2;font-size:14px}
.fe-fact__v{font-size:clamp(22px,2vw,30px);font-weight:600;letter-spacing:-0.03em}

/* ---------- Breadcrumbs ---------- */
.fe-crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;color:#8a92a3}
.fe-crumbs a{color:#aeb4c2}
.fe-crumbs a:hover{color:#fff}
.fe-crumbs [aria-current="page"]{color:#fff}

/* ---------- Cards ---------- */
.fe-card{position:relative;display:flex;flex-direction:column;gap:12px;padding:var(--fe-card-pad);border-radius:var(--fe-r-card);background:#12161f;border:1px solid rgba(255,255,255,.07);transition:border-color 200ms ease,background-color 200ms ease}
.fe-card--lg{gap:22px;padding:clamp(28px,3.4vw,48px);border-radius:var(--fe-r-card-lg)}
.fe-card--sm{gap:28px;padding:28px;border-radius:26px}
.fe-card--blue{background:linear-gradient(160deg,#002bb5,#0057FF);border-color:rgba(153,186,255,.3)}
.fe-card--link{color:inherit}
.fe-card--link:hover{color:inherit;border-color:rgba(153,186,255,.3);background:#161b26}
.fe-card__kicker{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#6699ff}
.fe-card--blue .fe-card__kicker{color:#e6eeff}
.fe-card__n{position:relative;font-size:14px;font-weight:600;color:#6699ff}
.fe-card__t{position:relative;font-size:22px;font-weight:600;line-height:1.2;letter-spacing:-0.02em}
.fe-card__d{position:relative;font-size:16px;color:#c3c8d3;line-height:1.6;text-wrap:pretty}
.fe-card--blue .fe-card__d{color:#fff}
.fe-price{font-size:clamp(48px,6vw,96px);font-weight:600;letter-spacing:-0.05em;line-height:.9}
.fe-price small{font-size:.4em;color:#aeb4c2;letter-spacing:-0.02em}
.fe-card--blue .fe-price small{color:#e6eeff}
.fe-card__media{margin:10px;border-radius:calc(var(--fe-r-card) - 8px);overflow:hidden}
.fe-card__media img{display:block;width:100%;height:auto}
/* Spotlight: <div class="fe-card" data-spot><span class="fe-spot" data-spot-glow aria-hidden="true"></span>... */
[data-spot]{position:relative;overflow:hidden}
.fe-spot{position:absolute;inset:0;opacity:0;transition:opacity 300ms ease;pointer-events:none}

/* Numbered rows (zasady / principles) */
.fe-rows{display:flex;flex-direction:column;border-top:1px solid rgba(255,255,255,.08)}
.fe-row{display:grid;grid-template-columns:minmax(56px,120px) minmax(0,1fr) minmax(0,1.2fr);gap:clamp(16px,3vw,48px);padding:clamp(24px,3vw,40px) 0;border-bottom:1px solid rgba(255,255,255,.08);align-items:baseline}
.fe-row__n{font-size:clamp(28px,3vw,48px);font-weight:600;color:#33363d;letter-spacing:-0.04em;font-variant-numeric:tabular-nums}
.fe-row__t{font-size:clamp(20px,2vw,30px);font-weight:600;letter-spacing:-0.025em;line-height:1.15}
.fe-row__d{color:#c3c8d3;font-size:16px;line-height:1.6;text-wrap:pretty}
@media (max-width:700px){.fe-row{grid-template-columns:minmax(44px,64px) minmax(0,1fr)}.fe-row__d{grid-column:2}}

/* ---------- FAQ accordion ---------- */
.fe-faq-wrap{display:flex;flex-wrap:wrap;gap:clamp(32px,5vw,80px);align-items:flex-start}
.fe-faq-wrap__head{flex:1 1 320px;display:flex;flex-direction:column;gap:20px;position:sticky;top:100px}
.fe-faq{flex:1.6 1 520px;min-width:0;display:flex;flex-direction:column;gap:10px}
.fe-faq__item{border-radius:22px;background:#12161f;border:1px solid rgba(255,255,255,.07);transition:background-color 250ms ease}
.fe-faq__item.is-open{background:#161b26}
.fe-faq__q{margin:0;font:inherit}
.fe-faq__btn{width:100%;display:flex;align-items:center;gap:18px;min-height:76px;padding:18px 18px 18px 24px;border:0;background:transparent;cursor:pointer;text-align:left;color:#fff}
.fe-faq__n{flex:none;width:28px;color:#6699ff;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}
.fe-faq__label{flex:1;color:#fff;font-size:clamp(16px,1.3vw,19px);font-weight:600;line-height:1.3}
.fe-faq__plus{flex:none;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;transition:background-color 250ms ease}
.fe-faq__plus svg{transition:transform 420ms var(--fe-ease-drawer)}
.fe-faq__item.is-open .fe-faq__plus{background:#0057FF}
.fe-faq__item.is-open .fe-faq__plus svg{transform:rotate(45deg)}
.fe-faq__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows 420ms var(--fe-ease-drawer)}
.fe-faq__item.is-open .fe-faq__panel{grid-template-rows:1fr}
.fe-faq__inner{overflow:hidden;min-height:0}
.fe-faq__a{color:#c3c8d3;font-size:16px;line-height:1.7;padding:0 clamp(18px,5vw,72px) 24px clamp(24px,5.5vw,70px);opacity:0;transition:opacity 300ms ease}
.fe-faq__item.is-open .fe-faq__a{opacity:1}
/* Without JS every answer stays readable */
html:not(.fe-js) .fe-faq__panel{grid-template-rows:1fr}
html:not(.fe-js) .fe-faq__a{opacity:1}

/* ---------- Filter pills (role=tab) ---------- */
.fe-pills{display:flex;flex-wrap:wrap;gap:8px}
.fe-pill{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 18px;border-radius:999px;border:1px solid rgba(255,255,255,.1);background:#12161f;color:#fff;font-size:14px;font-weight:600;cursor:pointer}
.fe-pill--sm{height:42px}
.fe-pill:hover{border-color:rgba(153,186,255,.3)}
.fe-pill[aria-selected="true"]{background:#0057FF;border-color:#0057FF}
.fe-pill__count{font-size:12px;color:#8a92a3;font-variant-numeric:tabular-nums;transition:color 200ms ease}
.fe-pill[aria-selected="true"] .fe-pill__count{color:#e6eeff}
[data-filter-item][hidden]{display:none!important}

/* ---------- CTA band (MKMFooter top) ---------- */
.fe-cta{padding:clamp(20px,3vw,40px) clamp(12px,2vw,24px) clamp(40px,5vw,64px);background:#0a0c10}
.fe-cta__box{position:relative;overflow:hidden;max-width:var(--fe-max-cta);margin:0 auto;border-radius:var(--fe-r-cta);padding:clamp(64px,9vw,140px) clamp(22px,5vw,80px);background:var(--fe-cta-bg);text-align:center}
.fe-cta__grid{position:absolute;inset:0;pointer-events:none;background:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:80px 80px;-webkit-mask-image:radial-gradient(ellipse at center,#000,transparent 75%);mask-image:radial-gradient(ellipse at center,#000,transparent 75%)}
.fe-cta__inner{position:relative;display:flex;flex-direction:column;align-items:center;gap:clamp(22px,3vw,34px)}
.fe-cta__badge{display:inline-flex;align-items:center;gap:10px;padding:8px 16px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);font-size:14px;color:#fff;font-weight:600}
.fe-dot-online{flex:none;width:8px;height:8px;border-radius:50%;background:#4dff9f;box-shadow:0 0 0 4px rgba(77,255,159,.25)}
.fe-cta__title{max-width:1100px;font-size:clamp(38px,6vw,108px);font-weight:600;line-height:.95;letter-spacing:-0.05em;color:#fff;text-wrap:balance}
.fe-cta__lede{max-width:580px;color:#e6eeff;font-size:clamp(17px,1.4vw,20px);line-height:1.55;text-wrap:pretty}
.fe-cta__alt{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.fe-cta__alt a{display:inline-flex;align-items:center;height:44px;padding:0 18px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);color:#fff;font-size:14px;font-weight:600}
.fe-cta__alt a:hover{background:rgba(255,255,255,.2);color:#fff}

/* ---------- Footer (MKMFooter) ---------- */
.fe-footer{background:#0a0c10;border-top:1px solid rgba(255,255,255,.06)}
.fe-footer__grid{max-width:var(--fe-max);margin:0 auto;padding:72px var(--fe-pad-x) 48px;display:grid;gap:40px 32px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:start}
.fe-footer__top{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.06)}
.fe-footer__brand{display:flex;flex-direction:column;gap:16px;max-width:420px}
.fe-footer__brand img{height:34px;width:auto;align-self:flex-start;display:block}
.fe-footer__tagline{color:#c3c8d3;font-size:15px;line-height:1.55}
.fe-footer__contact{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:15px}
.fe-footer__contact a{color:#fff}
.fe-footer__contact a:hover{color:#99baff}
.fe-footer__col{display:flex;flex-direction:column;gap:14px}
.fe-footer__h{color:#fff;font-size:14px;font-weight:600;margin:0}
.fe-footer__links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.fe-footer__links a{color:#aeb4c2;font-size:13px;transition:color 150ms ease}
.fe-footer__links a:hover{color:#fff}
.fe-footer__addr{color:#aeb4c2;font-size:13px;line-height:1.6;font-style:normal}
.fe-footer__outline{overflow:hidden;padding:0 var(--fe-pad-x) 12px;max-width:var(--fe-max);margin:0 auto}
.fe-footer__outline span{display:block;font-size:clamp(80px,17vw,270px);font-weight:600;letter-spacing:-0.06em;line-height:.9;color:transparent;-webkit-text-stroke:1px rgba(153,186,255,.28);white-space:nowrap}
.fe-footer__bottom{max-width:var(--fe-max);margin:0 auto;padding:24px var(--fe-pad-x) 36px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;border-top:1px solid rgba(255,255,255,.06)}
.fe-footer__bottom p{font-size:13px;color:#8a92a3}
.fe-footer__bottom a{color:#99baff}
.fe-footer__bottom a:hover{color:#fff}
/* Google rating badge (hooks for /js/google-reviews.js: data-google-reviews, data-gr-rating, data-gr-count) */
.fe-gr{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px 0 10px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:#fff;font-size:13px;font-weight:600}
.fe-gr:hover{color:#fff;border-color:rgba(153,186,255,.3)}
.fe-gr svg{width:16px;height:16px;flex:none}
.fe-gr__stars{color:#fbbc04;letter-spacing:1px;font-size:12px}
.fe-gr__count{color:#aeb4c2;font-weight:500}

/* ---------- Toast (copy e-mail) ---------- */
.fe-toast{position:fixed;left:50%;bottom:24px;z-index:200;pointer-events:none;transform:translateX(-50%) translateY(20px);opacity:0;transition:transform 400ms ease,opacity 400ms ease}
.fe-toast.is-on{transform:translateX(-50%) translateY(0);opacity:1}
.fe-toast__box{display:flex;align-items:center;gap:10px;padding:12px 18px 12px 12px;border-radius:999px;background:rgba(18,22,31,.86);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 50px rgba(0,0,0,.5);color:#fff;font-size:14px;font-weight:500;white-space:nowrap}
.fe-toast__ok{flex:none;width:24px;height:24px;border-radius:50%;background:#0057FF;display:flex;align-items:center;justify-content:center;font-size:12px}

/* ---------- Reveal ([data-reveal]; JS in mkm-motion sets inline opacity/transform) ---------- */
[data-reveal]{will-change:auto}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  [data-reveal]{opacity:1!important;transform:none!important;transition:none!important}
  .fe-drawer,html.fe-nav-open .fe-drawer{transition:none!important}
  .fe-nav,.fe-scrim,.fe-faq__panel,.fe-faq__a,.fe-faq__plus svg,.fe-toast,.fe-skip{transition-duration:0s!important}
  .fe-btn:active,.fe-btn-ghost:active,.fe-chip:active,.fe-pill:active,.fe-nav__link:active,.fe-cta__alt a:active{transform:none}
}
/* --- /css/fe/mkm-island.20261004.css --- */
/*! MKM Labs frontend 2026-10-04 - mkm-island: homepage island header + mega menu on every fe page
 * Extracted from page-home.20261004.css (owner 2026-10-04: one nav layout everywhere).
 * Homepage keeps its own copy in page-home; do not load this file there. JS: mkm-island.20261004.js */
:root{--hm-eo:cubic-bezier(0.23,1,0.32,1);--hm-drawer:cubic-bezier(0.32,0.72,0,1)}
.hm-island,.hm-island *,.hm-island *:before,.hm-island *:after{box-sizing:border-box}
.hm-island a{text-decoration:none}
.hm-island button{font:inherit;color:inherit}
.hm-press{transition:transform 140ms var(--hm-eo),background-color 150ms ease}
.hm-press:active{transform:scale(0.96)}
.hm-scrim{position:fixed;inset:0;z-index:109;background:rgba(3,5,10,.55);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:0;pointer-events:none;transition:opacity 320ms ease}
.is-island .hm-scrim{opacity:1;pointer-events:auto}
.hm-island{position:fixed;top:12px;left:50%;z-index:110;width:min(1120px,calc(100vw - 24px));height:420px;transform:translateX(-50%);transition:transform 520ms var(--hm-drawer);pointer-events:none}
.hm-island.is-hidden{transform:translateX(-50%) translateY(-130%)}
.hm-island__shell{position:absolute;inset:0;pointer-events:auto;clip-path:inset(0 calc((100% - min(880px,100%)) / 2) calc(100% - 60px) calc((100% - min(880px,100%)) / 2) round 30px);transition:clip-path 560ms var(--hm-drawer),background-color 300ms ease;background-color:rgba(14,18,26,.42);background-image:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,0) 64px);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%)}
.hm-island.is-scrolled .hm-island__shell{background-color:rgba(14,18,26,.7)}
.is-island .hm-island__shell{clip-path:inset(0 0 0 0 round 28px);background-color:rgba(14,18,26,.86)}
@media (prefers-reduced-transparency:reduce){.hm-island__shell,.hm-island.is-scrolled .hm-island__shell,.is-island .hm-island__shell{background-color:#12161f}}
.hm-island__bar{position:absolute;top:0;left:50%;transform:translateX(-50%);width:min(880px,100%);height:60px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 10px 0 20px}
.hm-island__logo{display:flex;flex:none}
.hm-island__logo img{height:26px;width:auto;display:block}
.hm-island__nav{display:flex;align-items:center;gap:2px}
.hm-island__nav a,.hm-island__nav button{display:flex;align-items:center;gap:6px;height:36px;padding:0 12px;border-radius:999px;border:0;background:transparent;color:#e5e8ee;font-size:14px;font-weight:500;cursor:pointer;transition:background-color 150ms ease,color 150ms ease}
.hm-island__nav a:hover{background:rgba(255,255,255,.08);color:#fff}
.hm-island__nav button{color:#fff}
.is-island .hm-island__nav button{background:rgba(255,255,255,.1)}
.hm-island__nav button svg{transition:transform 300ms var(--hm-drawer)}
.is-island .hm-island__nav button svg{transform:rotate(180deg)}
.hm-island__right{display:flex;align-items:center;gap:8px;flex:none}
.hm-island__cta{display:inline-flex;align-items:center;height:40px;padding:0 18px;border-radius:999px;background:#fff;color:#050914!important;font-size:14px;font-weight:700}
.hm-island__cta:hover{background:#e8efff}
.hm-burger{display:none;position:relative;width:40px;height:40px;border-radius:999px;border:0;background:rgba(255,255,255,.1);cursor:pointer;transition:transform 140ms var(--hm-eo)}
.hm-burger:active{transform:scale(0.92)}
.hm-burger span{position:absolute;left:12px;width:16px;height:1.5px;background:#fff;transform-origin:center;transition:transform 320ms var(--hm-drawer)}
.hm-burger span:first-child{top:15px}
.hm-burger span:last-child{top:23px}
.is-island .hm-burger span:first-child{transform:translateY(4px) rotate(45deg)}
.is-island .hm-burger span:last-child{transform:translateY(-4px) rotate(-45deg)}
.hm-mega{position:absolute;top:60px;left:0;right:0;bottom:0;overflow:auto;opacity:0;transform:translateY(-10px) scale(0.98);filter:blur(6px);transition:opacity 140ms ease,transform 200ms ease,filter 140ms ease;visibility:hidden}
.is-island .hm-mega{opacity:1;transform:none;filter:blur(0);visibility:visible;transition:opacity 320ms ease 120ms,transform 520ms var(--hm-drawer) 60ms,filter 320ms ease 120ms,visibility 0s}
.hm-mega__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:28px;padding:28px 32px 32px;border-top:1px solid rgba(255,255,255,.08)}
.hm-mega__col{display:flex;flex-direction:column;gap:12px}
.hm-mega__head{display:flex;flex-direction:column;gap:3px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.08)}
.hm-mega__head span:first-child{color:#fff;font-size:15px;font-weight:600}
.hm-mega__head span:last-child{color:#aeb4c2;font-size:12.5px}
.hm-mega__links{display:flex;flex-direction:column}
.hm-mega__links a{display:flex;align-items:center;min-height:32px;margin:0 -10px;padding:0 10px;border-radius:10px;color:#d7dbe4;font-size:14px;transition:background-color 120ms ease,color 120ms ease}
.hm-mega__links a:hover{background:rgba(255,255,255,.06);color:#fff}
.hm-mnav{display:none;flex-direction:column;gap:22px;padding:12px 20px 24px;border-top:1px solid rgba(255,255,255,.08)}
.hm-mnav nav{display:flex;flex-direction:column}
.hm-mnav nav a{display:flex;align-items:center;justify-content:space-between;min-height:58px;border-bottom:1px solid rgba(255,255,255,.08);color:#fff;font-size:24px;font-weight:600;letter-spacing:-0.02em}
.hm-mnav nav a span{color:#6699ff;font-size:18px}
.hm-mnav__contact{display:flex;flex-direction:column;gap:10px;font-size:15px}
.hm-mnav__contact a{color:#d7dbe4}
@media (max-width:899.98px){
  .hm-island{height:min(620px,calc(100vh - 28px))}
  .hm-island__shell{clip-path:inset(0 0 calc(100% - 60px) 0 round 30px)}
  .hm-island__bar{width:100%}
  .hm-island__nav,.hm-mega__grid{display:none}
  .hm-burger{display:block}
  .hm-mnav{display:flex}
}

.hm-island__nav a[aria-current="page"]{background:rgba(255,255,255,.1);color:#fff}
.hm-island .fe-nav__lang{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 12px;border-radius:999px;border:1px solid rgba(255,255,255,.14);color:#c3c8d3;font-size:13px;font-weight:700;letter-spacing:.06em}
.hm-island .fe-nav__lang:hover{color:#fff;background:rgba(255,255,255,.08)}
@media (max-width:899.98px){.hm-island .fe-nav__lang{display:none}}
/* --- /css/fe/page-en.20261004.css --- */
/* EN layer: shared extras for /en/** pages (W2-E1). Loaded after mkm-fe.20261004.css */
.fe-nav__lang{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 12px;border-radius:999px;border:1px solid rgba(255,255,255,.14);color:#c3c8d3;font-size:13px;font-weight:700;letter-spacing:.06em;transition:color .2s,background .2s,transform .14s ease-out}
.fe-nav__lang:hover{color:#fff;background:rgba(255,255,255,.08)}
.fe-nav__lang:active{transform:scale(.96)}
@media(max-width:899px){.fe-nav__actions .fe-nav__lang{display:none}}
/* --- /css/fe/page-en-chronicles.20261004.css --- */
/* W2-E1d: EN AI Chronicle. Tailwind utilities used by the _astro AiChroniclesEn island,
 * extracted from css/site.f6f5dbed.css (rules whose classes all occur in the island markup/JS)
 * and scoped to .ai-chronicles so they never touch the FE layer. Generated by scratchpad w2/en/d/gen_chron.py. */
.ai-chronicles{--cn-black: #0f1014;--cn-900: #181a1f;--cn-800: #26282e;--cn-700: #33363d;--cn-600: #474a52;--cn-500: #aeb4c2;--cn-400: #c3c8d3;--cn-300: #d7dbe4;--cn-200: #e5e8ee;--cn-100: #f1f3f7;--cn-50: #f8f9fb;--cn-25: #f5f5f5;--cn-white: #fff;--cb-900: #000d33;--cb-800: #00145c;--cb-700: #001f8a;--cb-600: #002bb5;--cb-500: #0057FF;--cb-400: #3378ff;--cb-300: #6699ff;--cb-200: #99baff;--cb-100: #ccdcff;--cb-50: #e6eeff;--cb-25: #f0f5ff;--cg-400: #4dff9f;--alpha-surface: #1b1f27;--alpha-surface-muted: #202633;--alpha-panel: #111722;--alpha-panel-soft: #151b26;--alpha-border: #333d4c;--alpha-blue-glow: rgba(0,87,255,.12);--site-grid-bg: linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px), radial-gradient(900px circle at 18% 12%, rgba(0,87,255,.12), transparent 58%), var(--alpha-surface);--site-grid-size: 80px 80px, 80px 80px, auto, auto;--ff: "DM Sans", sans-serif;--ff-deco: "DM Sans", system-ui, sans-serif;--fw-light: 300;--fw-medium: 500;--ls-xxl: -1.75px;--ls-xl: -1.25px;--ls-l: -.75px;--ls-m: -.5px;--ls-s: -.25px;--dur: .3s;--dur-slow: .6s;--anim-dur: .3s;--anim-dur-slow: .6s;--max-w: 1280px;--section-pad: 100px;--c_neutral--white: #fff;--c_neutral--300: #d7dbe4;--c_neutral--900: #181a1f;--c_brand--200: #99baff;--c_brand--500: #0057FF;--c_success--400: #4dff9f;--animations_duration: .3s;--animations_duration--fast: .2s;--ui-border: var(--alpha-border);--ui-panel: var(--alpha-panel);--ui-panel-2: var(--alpha-surface-muted);--ui-blue: var(--cb-500);--ui-blue-soft: rgba(0, 87, 255, .18);--ui-glow: 0 18px 56px rgba(0, 87, 255, .12), 0 10px 30px rgba(0, 0, 0, .24);--ui-ease: cubic-bezier(.2, .8, .2, 1);font-family:"DM Sans",sans-serif;color:#fff}
.ai-chronicles *,.ai-chronicles :before,.ai-chronicles :after{border:0 solid}
.ai-chronicles button{background:none;padding:0;margin:0;line-height:inherit;text-align:inherit;cursor:pointer}
.ai-chronicles table{border-collapse:collapse;text-indent:0;border-color:inherit}
.ai-chronicles th{font-weight:inherit}
.ai-chronicles h2,.ai-chronicles h3,.ai-chronicles h4,.ai-chronicles p{margin:0;font-size:inherit;font-weight:inherit}
.ai-chronicles ul,.ai-chronicles ol{list-style:none;margin:0;padding:0}
.ai-chronicles svg{display:block;vertical-align:middle}
.ai-chronicles a{color:inherit}

.ai-chronicles .bento-card{border-radius:1rem;padding:1.5rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.5s;transition-timing-function:cubic-bezier(.16,1,.3,1)}
.ai-chronicles .bento-card:hover{transform:translateY(-3px)}
.ai-chronicles .reveal-section.visible{opacity:1;transform:translateY(0)}
.ai-chronicles .stagger-children.visible>*:nth-child(1){transition-delay:.1s}
.ai-chronicles .stagger-children.visible>*:nth-child(2){transition-delay:.25s}
.ai-chronicles .stagger-children.visible>*:nth-child(3){transition-delay:.4s}
.ai-chronicles .stagger-children.visible>*:nth-child(4){transition-delay:.55s}
.ai-chronicles .stagger-children.visible>*:nth-child(5){transition-delay:.7s}
.ai-chronicles .stagger-children.visible>*:nth-child(6){transition-delay:.85s}
.ai-chronicles .stagger-children.visible>*:nth-child(7){transition-delay:1s}
.ai-chronicles .stagger-children.visible>*:nth-child(8){transition-delay:1.15s}
.ai-chronicles .stagger-children.visible>*:nth-child(9){transition-delay:1.3s}
.ai-chronicles .stagger-children.visible>*:nth-child(10){transition-delay:1.45s}
.ai-chronicles .stagger-children.visible>*:nth-child(11){transition-delay:1.6s}
.ai-chronicles .stagger-children.visible>*:nth-child(12){transition-delay:1.75s}
.ai-chronicles .stagger-children.visible>*:nth-child(13){transition-delay:1.9s}
.ai-chronicles .stagger-children.visible>*:nth-child(14){transition-delay:2.05s}
.ai-chronicles .stagger-children.visible>*:nth-child(15){transition-delay:2.2s}
.ai-chronicles .stagger-children.visible>*:nth-child(16){transition-delay:2.35s}
.ai-chronicles .stagger-children.visible>*{opacity:1;transform:translateY(0)}
.ai-chronicles .btn-magnetic{position:relative;overflow:hidden;transition:transform .3s cubic-bezier(.16,1,.3,1)}
.ai-chronicles .btn-magnetic:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.1),transparent);opacity:0;transition:opacity .3s}
.ai-chronicles .btn-magnetic:hover:before{opacity:1}
.ai-chronicles .visible{visibility:visible}
.ai-chronicles .collapse{visibility:collapse}
.ai-chronicles .absolute{position:absolute}
.ai-chronicles .relative{position:relative}
.ai-chronicles .sticky{position:sticky}
.ai-chronicles .bottom-0{bottom:0}
.ai-chronicles .left-1\/2{left:50%}
.ai-chronicles .left-\[-22px\]{left:-22px}
.ai-chronicles .left-\[-26px\]{left:-26px}
.ai-chronicles .left-\[5px\]{left:5px}
.ai-chronicles .right-\[-26px\]{right:-26px}
.ai-chronicles .top-0{top:0}
.ai-chronicles .top-3{top:.75rem}
.ai-chronicles .top-\[56px\]{top:56px}
.ai-chronicles .z-10{z-index:10}
.ai-chronicles .z-30{z-index:30}
.ai-chronicles .-mx-6{margin-left:-1.5rem;margin-right:-1.5rem}
.ai-chronicles .mx-1{margin-left:.25rem;margin-right:.25rem}
.ai-chronicles .mx-auto{margin-left:auto;margin-right:auto}
.ai-chronicles .mb-1{margin-bottom:.25rem}
.ai-chronicles .mb-10{margin-bottom:2.5rem}
.ai-chronicles .mb-3{margin-bottom:.75rem}
.ai-chronicles .mb-4{margin-bottom:1rem}
.ai-chronicles .mb-6{margin-bottom:1.5rem}
.ai-chronicles .mb-8{margin-bottom:2rem}
.ai-chronicles .ml-1{margin-left:.25rem}
.ai-chronicles .ml-2{margin-left:.5rem}
.ai-chronicles .mt-1{margin-top:.25rem}
.ai-chronicles .mt-2{margin-top:.5rem}
.ai-chronicles .mt-2\.5{margin-top:.625rem}
.ai-chronicles .mt-6{margin-top:1.5rem}
.ai-chronicles .line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}
.ai-chronicles .block{display:block}
.ai-chronicles .flex{display:flex}
.ai-chronicles .inline-flex{display:inline-flex}
.ai-chronicles .table{display:table}
.ai-chronicles .grid{display:grid}
.ai-chronicles .hidden{display:none}
.ai-chronicles .h-2\.5{height:.625rem}
.ai-chronicles .h-3{height:.75rem}
.ai-chronicles .max-h-0{max-height:0px}
.ai-chronicles .w-12{width:3rem}
.ai-chronicles .w-2\.5{width:.625rem}
.ai-chronicles .w-3{width:.75rem}
.ai-chronicles .w-full{width:100%}
.ai-chronicles .w-px{width:1px}
.ai-chronicles .min-w-\[600px\]{min-width:600px}
.ai-chronicles .min-w-\[700px\]{min-width:700px}
.ai-chronicles .max-w-2xl{max-width:42rem}
.ai-chronicles .max-w-\[1000px\]{max-width:1000px}
.ai-chronicles .max-w-\[1340px\]{max-width:1340px}
.ai-chronicles .max-w-\[860px\]{max-width:860px}
.ai-chronicles .max-w-\[960px\]{max-width:960px}
.ai-chronicles .max-w-full{max-width:100%}
.ai-chronicles .max-w-lg{max-width:32rem}
.ai-chronicles .max-w-xl{max-width:36rem}
.ai-chronicles .flex-1{flex:1 1 0%}
.ai-chronicles .flex-shrink-0,.ai-chronicles .shrink-0{flex-shrink:0}
.ai-chronicles .-translate-x-px{--tw-translate-x: -1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}
.ai-chronicles .cursor-pointer{cursor:pointer}
.ai-chronicles .grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.ai-chronicles .grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ai-chronicles .flex-col{flex-direction:column}
.ai-chronicles .flex-wrap{flex-wrap:wrap}
.ai-chronicles .items-start{align-items:flex-start}
.ai-chronicles .items-center{align-items:center}
.ai-chronicles .justify-center{justify-content:center}
.ai-chronicles .justify-between{justify-content:space-between}
.ai-chronicles .gap-0{gap:0px}
.ai-chronicles .gap-1{gap:.25rem}
.ai-chronicles .gap-1\.5{gap:.375rem}
.ai-chronicles .gap-2{gap:.5rem}
.ai-chronicles .gap-3{gap:.75rem}
.ai-chronicles .gap-4{gap:1rem}
.ai-chronicles .gap-6{gap:1.5rem}
.ai-chronicles .space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}
.ai-chronicles .overflow-hidden{overflow:hidden}
.ai-chronicles .overflow-x-auto{overflow-x:auto}
.ai-chronicles .whitespace-nowrap{white-space:nowrap}
.ai-chronicles .rounded-2xl{border-radius:1rem}
.ai-chronicles .rounded-full{border-radius:9999px}
.ai-chronicles .rounded-md{border-radius:.375rem}
.ai-chronicles .rounded-xl{border-radius:.75rem}
.ai-chronicles .border{border-width:1px}
.ai-chronicles .border-b{border-bottom-width:1px}
.ai-chronicles .border-b-2{border-bottom-width:2px}
.ai-chronicles .border-l-4{border-left-width:4px}
.ai-chronicles .border-t{border-top-width:1px}
.ai-chronicles .border-\[var\(--cn-700\)\]{border-color:var(--cn-700)}
.ai-chronicles .border-l-\[var\(--c_brand--200\)\]{border-left-color:var(--c brand--200)}
.ai-chronicles .border-l-\[var\(--c_brand--500\)\]{border-left-color:var(--c brand--500)}
.ai-chronicles .border-l-\[var\(--cg-400\)\]{border-left-color:var(--cg-400)}
.ai-chronicles .border-l-\[var\(--cn-500\)\]{border-left-color:var(--cn-500)}
.ai-chronicles .bg-\[var\(--c_brand--200\)\]{background-color:var(--c brand--200)}
.ai-chronicles .bg-\[var\(--c_brand--500\)\]{background-color:var(--c brand--500)}
.ai-chronicles .bg-\[var\(--cg-400\)\]{background-color:var(--cg-400)}
.ai-chronicles .bg-\[var\(--cn-500\)\]{background-color:var(--cn-500)}
.ai-chronicles .bg-\[var\(--cn-800\)\]{background-color:var(--cn-800)}
.ai-chronicles .bg-\[var\(--cn-900\)\]{background-color:var(--cn-900)}
.ai-chronicles .p-4{padding:1rem}
.ai-chronicles .p-6{padding:1.5rem}
.ai-chronicles .px-1\.5{padding-left:.375rem;padding-right:.375rem}
.ai-chronicles .px-3{padding-left:.75rem;padding-right:.75rem}
.ai-chronicles .px-4{padding-left:1rem;padding-right:1rem}
.ai-chronicles .px-6{padding-left:1.5rem;padding-right:1.5rem}
.ai-chronicles .px-8{padding-left:2rem;padding-right:2rem}
.ai-chronicles .py-0\.5{padding-top:.125rem;padding-bottom:.125rem}
.ai-chronicles .py-1\.5{padding-top:.375rem;padding-bottom:.375rem}
.ai-chronicles .py-12{padding-top:3rem;padding-bottom:3rem}
.ai-chronicles .py-16{padding-top:4rem;padding-bottom:4rem}
.ai-chronicles .py-2\.5{padding-top:.625rem;padding-bottom:.625rem}
.ai-chronicles .py-3{padding-top:.75rem;padding-bottom:.75rem}
.ai-chronicles .py-3\.5{padding-top:.875rem;padding-bottom:.875rem}
.ai-chronicles .py-8{padding-top:2rem;padding-bottom:2rem}
.ai-chronicles .pb-3{padding-bottom:.75rem}
.ai-chronicles .pl-4{padding-left:1rem}
.ai-chronicles .pl-6{padding-left:1.5rem}
.ai-chronicles .pt-1{padding-top:.25rem}
.ai-chronicles .text-left{text-align:left}
.ai-chronicles .text-center{text-align:center}
.ai-chronicles .text-right{text-align:right}
.ai-chronicles .font-body,.ai-chronicles .font-display{font-family:DM Sans,system-ui,sans-serif}
.ai-chronicles .font-mono{font-family:SF Mono,Fira Code,Cascadia Code,ui-monospace,monospace}
.ai-chronicles .text-2xl{font-size:1.5625rem;line-height:2.1rem}
.ai-chronicles .text-3xl{font-size:2.0625rem;line-height:2.45rem}
.ai-chronicles .text-\[0\.65rem\]{font-size:.65rem}
.ai-chronicles .text-\[0\.6rem\]{font-size:.6rem}
.ai-chronicles .text-base{font-size:1.0625rem;line-height:1.65rem}
.ai-chronicles .text-lg{font-size:1.1875rem;line-height:1.75rem}
.ai-chronicles .text-sm{font-size:.9375rem;line-height:1.375rem}
.ai-chronicles .text-xl{font-size:1.3125rem;line-height:1.85rem}
.ai-chronicles .text-xs{font-size:.8125rem;line-height:1.15rem}
.ai-chronicles .font-bold{font-weight:700}
.ai-chronicles .font-medium{font-weight:500}
.ai-chronicles .font-semibold{font-weight:600}
.ai-chronicles .uppercase{text-transform:uppercase}
.ai-chronicles .leading-relaxed{line-height:1.625}
.ai-chronicles .leading-snug{line-height:1.375}
.ai-chronicles .tracking-\[0\.25em\]{letter-spacing:.25em}
.ai-chronicles .tracking-tight{letter-spacing:-.025em}
.ai-chronicles .tracking-wider{letter-spacing:.05em}
.ai-chronicles .text-\[var\(--c_brand--200\)\]{color:var(--c brand--200)}
.ai-chronicles .text-\[var\(--cg-400\)\]{color:var(--cg-400)}
.ai-chronicles .text-\[var\(--cn-300\)\]{color:var(--cn-300)}
.ai-chronicles .text-\[var\(--cn-white\)\]{color:var(--cn-white)}
.ai-chronicles .underline{text-decoration-line:underline}
.ai-chronicles .underline-offset-2{text-underline-offset:2px}
.ai-chronicles .opacity-0{opacity:0}
.ai-chronicles .opacity-60{opacity:.6}
.ai-chronicles .shadow-\[0_4px_20px_rgba\(0\,0\,0\,0\.4\)\]{--tw-shadow: 0 4px 20px rgba(0,0,0,.4);--tw-shadow-colored: 0 4px 20px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}
.ai-chronicles .ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}
.ai-chronicles .ring-\[3px\]{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}
.ai-chronicles .ring-\[var\(--cn-800\)\]{--tw-ring-color: var(--cn-800)}
.ai-chronicles .ring-red-200\/30{--tw-ring-color: rgb(254 202 202 / .3)}
.ai-chronicles .backdrop-blur-md{--tw-backdrop-blur: blur(12px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}
.ai-chronicles .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}
.ai-chronicles .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}
.ai-chronicles .transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}
.ai-chronicles .duration-300{transition-duration:.3s}
.ai-chronicles .ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}
.ai-chronicles .hover\:border-\[var\(--cn-600\)\]:hover{border-color:var(--cn-600)}
.ai-chronicles .hover\:bg-\[var\(--c_brand--500\)\]:hover{background-color:var(--c brand--500)}
.ai-chronicles .hover\:text-\[var\(--c_brand--200\)\]:hover{color:var(--c brand--200)}
.ai-chronicles .hover\:shadow-\[0_4px_20px_rgba\(0\,0\,0\,0\.4\)\]:hover{--tw-shadow: 0 4px 20px rgba(0,0,0,.4);--tw-shadow-colored: 0 4px 20px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}
.ai-chronicles .hover\:shadow-sm:hover{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}
@media(min-width:640px){.ai-chronicles .sm\:inline{display:inline}}
@media(min-width:768px){.ai-chronicles .md\:col-span-2{grid-column:span 2 / span 2}.ai-chronicles .md\:mx-0{margin-left:0;margin-right:0}.ai-chronicles .md\:mb-2{margin-bottom:.5rem}.ai-chronicles .md\:mb-8{margin-bottom:2rem}.ai-chronicles .md\:block{display:block}.ai-chronicles .md\:hidden{display:none}.ai-chronicles .md\:w-\[calc\(50\%-20px\)\]{width:calc(50% - 20px)}.ai-chronicles .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-chronicles .md\:items-center{align-items:center}.ai-chronicles .md\:gap-2{gap:.5rem}.ai-chronicles .md\:gap-4{gap:1rem}.ai-chronicles .md\:gap-6{gap:1.5rem}.ai-chronicles .md\:self-start{align-self:flex-start}.ai-chronicles .md\:self-end{align-self:flex-end}.ai-chronicles .md\:p-8{padding:2rem}.ai-chronicles .md\:px-0{padding-left:0;padding-right:0}.ai-chronicles .md\:px-10{padding-left:2.5rem;padding-right:2.5rem}.ai-chronicles .md\:px-4{padding-left:1rem;padding-right:1rem}.ai-chronicles .md\:py-12{padding-top:3rem;padding-bottom:3rem}.ai-chronicles .md\:py-16{padding-top:4rem;padding-bottom:4rem}.ai-chronicles .md\:py-2{padding-top:.5rem;padding-bottom:.5rem}.ai-chronicles .md\:py-24{padding-top:6rem;padding-bottom:6rem}.ai-chronicles .md\:py-3{padding-top:.75rem;padding-bottom:.75rem}.ai-chronicles .md\:pb-4{padding-bottom:1rem}.ai-chronicles .md\:pl-0{padding-left:0}.ai-chronicles .md\:pl-8{padding-left:2rem}.ai-chronicles .md\:pr-8{padding-right:2rem}.ai-chronicles .md\:text-2xl{font-size:1.5625rem;line-height:2.1rem}.ai-chronicles .md\:text-3xl{font-size:2.0625rem;line-height:2.45rem}.ai-chronicles .md\:text-6xl{font-size:4.125rem;line-height:4.3rem}.ai-chronicles .md\:text-base{font-size:1.0625rem;line-height:1.65rem}.ai-chronicles .md\:text-sm{font-size:.9375rem;line-height:1.375rem}.ai-chronicles .md\:text-xs{font-size:.8125rem;line-height:1.15rem}}
.ai-chronicles .h2{font-size:72px;line-height:80px;letter-spacing:var(--ls-xxl);font-weight:var(--fw-medium)}
.ai-chronicles .h3{font-size:60px;line-height:66px;letter-spacing:var(--ls-xl);font-weight:var(--fw-medium)}
.ai-chronicles .numbers{background:var(--cn-black);border-bottom:1px solid var(--cn-800);padding:var(--section-pad) 0;color:var(--cn-white)}
.ai-chronicles .reveal-section.visible{opacity:1;transform:none}
.ai-chronicles .stagger-children.visible>*{opacity:1;transform:none}
.ai-chronicles .stagger-children.visible>*:nth-child(1){transition-delay:0s}
.ai-chronicles .stagger-children.visible>*:nth-child(2){transition-delay:.08s}
.ai-chronicles .stagger-children.visible>*:nth-child(3){transition-delay:.16s}
.ai-chronicles .stagger-children.visible>*:nth-child(4){transition-delay:.24s}
.ai-chronicles .stagger-children.visible>*:nth-child(5){transition-delay:.32s}
.ai-chronicles .stagger-children.visible>*:nth-child(6){transition-delay:.4s}
.ai-chronicles .stagger-children.visible>*:nth-child(7){transition-delay:.48s}
.ai-chronicles .stagger-children.visible>*:nth-child(8){transition-delay:.56s}
@media(max-width:768px){.ai-chronicles .h2{font-size:clamp(1.6rem,7vw,2.5rem);line-height:1.15}.ai-chronicles .h3{font-size:40px;line-height:48px}}
.ai-chronicles [style*="color:rgba(255,255,255,0.5)"],.ai-chronicles [style*="color: rgba(255,255,255,0.5)"],.ai-chronicles [style*="color:rgba(255,255,255,0.6)"],.ai-chronicles [style*="color: rgba(255,255,255,0.6)"],.ai-chronicles .text-\[var\(--cn-300\)\]{color:var(--cn-200)!important}
.ai-chronicles .numbers{background-color:var(--alpha-surface)!important;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px)!important;background-size:80px 80px,80px 80px!important;background-position:center top!important}
.ai-chronicles .numbers{border-color:var(--alpha-border)!important}
.ai-chronicles .bento-card{background:var(--alpha-panel)!important;border-color:var(--alpha-border)!important}
.ai-chronicles,.ai-chronicles>div,.ai-chronicles>section,.ai-chronicles .reveal-section{background:var(--alpha-surface)!important;color:var(--cn-white)}
.ai-chronicles>div,.ai-chronicles>section,.ai-chronicles .reveal-section{border-bottom:1px solid var(--ui-border)}
.ai-chronicles .reveal-section,.ai-chronicles .stagger-children>*{opacity:1!important;transform:none!important}
.ai-chronicles [class*="bg-[var(--cn-900)]"],.ai-chronicles [class*="bg-[var(--cn-800)]"]{background:var(--ui-panel)!important}
.ai-chronicles [class*="border-[var(--cn-700)]"],.ai-chronicles [class*="border-[var(--cn-800)]"]{border-color:var(--ui-border)!important}
.ai-chronicles [class*=rounded-xl],.ai-chronicles [class*=rounded-2xl],.ai-chronicles [class*=rounded-md],.ai-chronicles button,.ai-chronicles a{border-radius:0!important}
.ai-chronicles button,.ai-chronicles a{transition:background var(--dur) var(--ui-ease),border-color var(--dur) var(--ui-ease),color var(--dur) var(--ui-ease),transform var(--dur) var(--ui-ease),box-shadow var(--dur) var(--ui-ease)}
.ai-chronicles button:hover,.ai-chronicles a:hover{border-color:#0057ff8c!important}
.ai-chronicles>div:first-child{background:var(--ui-panel)!important;border-bottom:1px solid var(--ui-border)}
.ai-chronicles>div:first-child .mx-auto{max-width:none!important;padding:0!important}
.ai-chronicles>div:first-child .grid{background:var(--ui-border);gap:1px!important;grid-template-columns:repeat(3,minmax(0,1fr))}
.ai-chronicles>div:first-child .bento-card{align-items:center;background:var(--ui-panel)!important;border:0!important;display:flex;flex-direction:column;justify-content:center;min-height:clamp(140px,13vw,190px);padding:clamp(24px,4vw,44px)!important}
.ai-chronicles>div:first-child .bento-card:hover{transform:none}
.ai-chronicles .sticky{background:#111722f5!important;border-bottom:1px solid var(--ui-border)!important;border-top:1px solid var(--ui-border);padding:0!important;top:64px}
.ai-chronicles .sticky>div{flex-wrap:nowrap!important;gap:1px!important;justify-content:flex-start!important;max-width:none!important;overflow-x:auto;padding:0!important}
.ai-chronicles .sticky button{background:var(--ui-panel)!important;border:0!important;border-right:1px solid var(--ui-border)!important;color:var(--cn-200)!important;min-height:48px;padding:12px 18px!important}
.ai-chronicles .sticky button:hover{background:var(--ui-panel-2)!important;color:var(--cn-white)!important;transform:none}
.ai-chronicles table{background:var(--ui-panel);border:1px solid var(--ui-border)}
.ai-chronicles th,.ai-chronicles td{border-color:var(--ui-border)!important}
.ai-chronicles section:last-child a[href="/kontakt/"]{background:var(--cn-white)!important;border:1px solid var(--cn-white)!important;color:var(--cb-500)!important;display:inline-flex;font-weight:600;min-height:48px;padding:13px 24px!important;text-decoration:none}
.ai-chronicles section:last-child a[href="/kontakt/"]:after{content:"↗";font-size:.9em;transition:transform var(--dur) var(--ui-ease)}
.ai-chronicles section:last-child a[href="/kontakt/"]:hover{background:var(--ui-panel-2)!important;border-color:#0057ff8c!important;color:var(--cn-white)!important}
.ai-chronicles section:last-child a[href="/kontakt/"]:hover:after{transform:translate(2px,-2px)}
.ai-chronicles section:last-child a[href="/kontakt/"]:after{content:"↗"}

/* ---- FE palette remap for the island (hand-written) ---- */
.ai-chronicles{--alpha-surface:#0a0c10;--alpha-surface-muted:#161b26;--alpha-panel:#12161f;--alpha-panel-soft:#0f131b;--alpha-border:rgba(255,255,255,.08);--ui-border:rgba(255,255,255,.08);--ui-panel:#12161f;--ui-panel-2:#161b26;--cn-900:#12161f;--cn-800:#0f131b;--cn-700:#33363d;--cn-300:#c3c8d3}
.ai-chronicles [class*=rounded-xl]{border-radius:14px!important}
.ai-chronicles [class*=rounded-2xl]{border-radius:20px!important}
.ai-chronicles [class*=rounded-md]{border-radius:8px!important}
.ai-chronicles .rounded-full{border-radius:999px!important}
.ai-chronicles .sticky button{border-radius:0!important}
.ai-chronicles table{border-radius:0}
.ai-chronicles button:focus-visible,.ai-chronicles a:focus-visible{outline:2px solid #99baff;outline-offset:2px}

/* ---- page shell ---- */
.pec-lede{max-width:780px}
.pec-shell{position:relative;border-top:1px solid rgba(255,255,255,.07)}
.pec-about{padding-top:clamp(56px,7vw,100px)}
.pec-about__card{max-width:980px;gap:18px}
.pec-about__card strong{color:#fff;font-weight:600}
.pec-cta .fe-cta__badge{margin:0;letter-spacing:.08em;text-transform:uppercase;font-size:13px}
.pec-cta__btns{justify-content:center}
.pec-cta .pec-cta__ghost{color:#fff;border-color:rgba(255,255,255,.4)}
.pec-cta .pec-cta__ghost:hover{background:rgba(255,255,255,.12);color:#fff}
/* sticky era bar sits below the floating fe-nav pill (12px + 60px) and moves up when the nav hides */
.ai-chronicles .sticky{top:84px;transition:top .3s cubic-bezier(.23,1,.32,1)}
html:has(.fe-nav.is-hidden) .ai-chronicles .sticky,html:has(.hm-island.is-hidden) .ai-chronicles .sticky{top:0}
@media(prefers-reduced-motion:reduce){.ai-chronicles .sticky{transition:none}}
/* --- 52-perf-templates fixes (2026-11-05; appended to every css/fe bundle by 49-home-perf.py and 52-perf-templates.py) --- */
/* LCP: hero entrance without opacity 0. Text first painted at opacity 0 is not an LCP candidate, so on
   /szkolenia-ai-dla-firm/ and service pages the cookie banner text (painted ~2.5 s later) became the LCP. */
@keyframes mmHeroRise{from{transform:translateY(14px)}to{transform:none}}
.svc-page .svc-hero,.szk-page.mm-pa--szk .fe-hero{animation-name:mmHeroRise}
/* a11y link-in-text-block: links inside FAQ answers are underlined, not colour-only. */
.fe-faq__a a,[id^="hm-faq-"] p a{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
/* a11y target-size: case-study dots get a 24x24 hit box, the visible dot is drawn by ::after. */
.hm-cases__dots{gap:0}
.hm-cases__dots button{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:0;border-radius:999px;background:none;transition:width 420ms cubic-bezier(.32,.72,0,1)}
.hm-cases__dots button::after{content:"";display:block;width:8px;height:8px;border-radius:999px;background:rgba(255,255,255,.25);transition:width 420ms cubic-bezier(.32,.72,0,1),background-color 300ms ease}
.hm-cases__dots button.is-active{width:40px;background:none}
.hm-cases__dots button.is-active::after{width:28px;background:#fff}
/* Poradnik lightbox <img> has width/height attributes now; keep its natural size inside the max box. */
.lb-img-wrap img{width:auto;height:auto}
@media (prefers-reduced-motion:reduce){.hm-cases__dots button,.hm-cases__dots button::after{transition:none}}
