[hidden]{display:none !important}
/* Misha Fryč · hlavní styly. Jen var(--…) z tokens.css, žádná barva napevno. Žádné zaoblení rohů (kromě kruhových portrétů). */

/* ---------- Základ ---------- */
*,*::before,*::after{box-sizing:border-box}
html{background:var(--abyss);overflow-x:clip;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--abyss);color:var(--sanctuary);font-family:var(--font-body);font-size:var(--t-body);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip;overflow-y:clip}
a{color:inherit;text-decoration:none}
a:hover{color:inherit}
img,svg,video{max-width:100%;height:auto}
button{font:inherit}
:focus-visible{outline:2px solid var(--illumination);outline-offset:3px}
::selection{background:var(--power);color:var(--shadow)}
.mf-skip{position:fixed;left:var(--s-3);top:-100px;z-index:100;padding:var(--s-2) var(--s-3);background:var(--power);color:var(--abyss);font-weight:600}
.mf-skip:focus{top:var(--s-3)}
.screen-reader-text{position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.mf-wrap{max-width:var(--wrap);margin:0 auto}
.mf-wrap--narrow{max-width:760px}

/* ---------- Typografie ---------- */
.mf-label,.is-style-mf-eyebrow{margin:0;font-family:var(--font-body);font-size:var(--t-label);font-weight:600;letter-spacing:.22em;text-transform:uppercase;line-height:1.5;color:var(--paper-soft)}
.mf-display,.is-style-mf-display{font-family:var(--font-display);margin:0;font-size:var(--t-display);font-weight:600;line-height:1.06;letter-spacing:-.05em;color:var(--divinity);text-wrap:balance}
.mf-display>span,.is-style-mf-display>span{display:block}
.mf-h1{font-family:var(--font-display);margin:0;font-size:var(--t-h1);font-weight:600;line-height:.98;letter-spacing:-.05em;color:var(--divinity);text-wrap:balance}
.mf-h2{font-family:var(--font-display);margin:0;max-width:20ch;font-size:var(--t-h2);font-weight:600;line-height:1.06;letter-spacing:-.035em;color:var(--divinity);text-wrap:balance}
.mf-h3{font-family:var(--font-display);margin:0;font-size:var(--t-h3);font-weight:600;line-height:1.1;letter-spacing:-.025em;color:var(--divinity);text-wrap:balance}
.mf-accent,.mf-display em,.mf-h1 em,.mf-h2 em,.mf-h3 em,.mf-section h2 em,.mf-section h3 em,.mf-contact h2 em,.mf-pax h2 em{font-weight:300;font-style:italic;color:var(--power)}
.mf-lead{font-size:var(--t-lead);line-height:1.5;color:var(--paper-read)}

/* Core bloky uvnitř sekcí: nadpis sekce, odstavce, výrok */
.mf-section .wp-block-heading,.mf-pax .wp-block-heading,.mf-about__text .wp-block-heading{font-family:var(--font-display);color:var(--divinity);text-wrap:balance}
.mf-section h2.wp-block-heading,.mf-pax h2.wp-block-heading,.mf-about__text h2.wp-block-heading{margin:var(--s-4) 0 0;max-width:20ch;font-size:var(--t-h2);font-weight:600;line-height:1.06;letter-spacing:-.035em}
.mf-section h3.wp-block-heading{margin:var(--s-6) 0 0;font-size:var(--t-h3);font-weight:600;line-height:1.1;letter-spacing:-.025em}
.mf-section .wp-block-heading:first-child{margin-top:0}
.mf-section p{max-width:62ch;margin:var(--s-4) 0 0;color:var(--paper-read);text-wrap:pretty}
.mf-section p:first-child{margin-top:0}
.mf-section p.is-style-mf-eyebrow{margin:0}
.mf-section p.is-style-mf-eyebrow + .wp-block-heading{margin-top:var(--s-4)}
.is-style-mf-lead{font-size:var(--t-lead) !important;line-height:1.5;color:var(--paper-soft) !important;max-width:56ch}
.mf-section p.is-style-mf-lead{margin-top:var(--s-5)}
.is-style-mf-statement{max-width:24ch !important;font-family:var(--font-display);font-size:var(--t-h2) !important;font-weight:300;font-style:italic;line-height:1.1 !important;letter-spacing:-.03em;color:var(--divinity) !important;text-wrap:balance}
.mf-section p.is-style-mf-statement{margin-top:clamp(var(--s-7),8vw,var(--s-9))}
.is-style-mf-statement em,.is-style-mf-statement strong{font-weight:300;color:var(--power)}
.mf-section strong{color:var(--divinity);font-weight:600}
.mf-section p a:not([class]),.mf-prose a,.mf-case__body a{background-image:linear-gradient(var(--power),var(--power));background-repeat:no-repeat;background-position:0 100%;background-size:100% 1px;transition:background-size 350ms var(--ease-out),color 200ms}
.mf-section p a:not([class]):hover{color:var(--illumination)}
.mf-section--light p a:not([class]){background-size:0% 2px}
.mf-section--light p a:not([class]):hover{background-size:100% 2px}

/* Sloupce se zlatou linkou (Přístup) */
.wp-block-columns.is-style-mf-lines{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:var(--s-6);margin:clamp(var(--s-6),6vw,var(--s-8)) 0 0}
.wp-block-columns.is-style-mf-lines>.wp-block-column{position:relative;padding-top:var(--s-4);margin:0 !important;flex:none !important;width:auto !important}
.wp-block-columns.is-style-mf-lines>.wp-block-column::before{content:"";position:absolute;left:0;top:0;height:2px;width:100%;background:var(--gold-x);transform-origin:left;transform:scaleX(var(--line,1));transition:transform 800ms var(--ease-out)}
.wp-block-columns.is-style-mf-lines h3,.wp-block-columns.is-style-mf-lines h4{margin:0 !important;font-family:var(--font-display);font-size:var(--t-label) !important;font-weight:600;letter-spacing:.2em;text-transform:uppercase;line-height:1.5;color:var(--paper-soft) !important}
.wp-block-columns.is-style-mf-lines ul{list-style:none;margin:var(--s-3) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--s-2)}
.wp-block-columns.is-style-mf-lines li{font-size:var(--t-body);line-height:1.45;color:var(--sanctuary);text-wrap:pretty}

/* Seznamy */
.mf-section ul.is-style-mf-plus,.mf-case__body ul,.mf-prose ul.is-style-mf-plus{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s-3)}
.mf-section ul.is-style-mf-plus>li,.mf-case__body ul>li,.mf-prose ul.is-style-mf-plus>li{position:relative;padding-left:26px;max-width:68ch}
.mf-section ul.is-style-mf-plus>li::before,.mf-prose ul.is-style-mf-plus>li::before{content:"+";position:absolute;left:0;top:0;color:var(--power);font-weight:600}
/* Detail projektu: zlaté tečky */
.mf-case__body ul>li{padding-left:22px}
.mf-case__body ul>li::before{content:"";position:absolute;left:2px;top:calc(.8em - 3px);width:7px;height:7px;border-radius:50%;background:var(--gold-a);box-shadow:0 0 10px color-mix(in srgb,var(--gold-a) 45%,transparent)}
ul.is-style-mf-plain{list-style:none;padding:0}

/* Tlačítka */
.mf-actions{display:flex;flex-wrap:wrap;gap:var(--s-3);margin:var(--s-6) 0 0}
.mf-btn,.wp-block-button__link{display:inline-flex;align-items:center;gap:var(--s-2);min-height:52px;padding:0 var(--s-5);border:0;border-radius:0;background:var(--gold);color:var(--shadow);font-family:var(--font-body);font-size:var(--t-body);font-weight:600;line-height:1.2;white-space:nowrap;text-decoration:none;cursor:pointer;box-shadow:inset 0 0 0 200px transparent,0 0 0 0 transparent;transition:box-shadow 280ms ease-out,color 200ms,border-color 200ms}
.mf-btn:hover,.wp-block-button__link:hover{color:var(--abyss);box-shadow:inset 0 0 0 200px var(--illumination),0 0 36px 0 var(--glow)}
.mf-btn--lg{min-height:56px}
.mf-btn--ghost,.is-style-mf-ghost .wp-block-button__link{background:color-mix(in srgb,var(--abyss) 30%,transparent);border:1px solid var(--paper-soft);color:var(--divinity);padding:0 var(--s-4)}
.mf-btn--ghost:hover,.is-style-mf-ghost .wp-block-button__link:hover{box-shadow:none;border-color:var(--power);color:var(--illumination)}
.mf-btn--line{min-height:48px;padding:0 var(--s-4);background:transparent;border:1px solid var(--paper-line);color:var(--divinity);white-space:normal}
.mf-btn--line:hover{box-shadow:none;border-color:var(--power);color:var(--illumination)}
.wp-block-buttons{display:flex;flex-wrap:wrap;gap:var(--s-3);margin-top:var(--s-6)}
.mf-textlink{min-height:44px;padding:0;border:0;background:transparent;font-weight:600;color:var(--illumination);cursor:pointer;background-image:linear-gradient(var(--illumination),var(--illumination));background-repeat:no-repeat;background-position:0 calc(100% - 8px);background-size:0% 2px;transition:background-size 350ms var(--ease-out)}
.mf-textlink:hover{background-size:100% 2px}

/* ---------- Hlavička ---------- */
.mf-header{position:fixed;top:16px;left:clamp(12px,2vw,24px);right:clamp(12px,2vw,24px);z-index:30;display:flex;align-items:stretch;min-height:60px;background:var(--abyss-glass);-webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2);transition:transform 450ms var(--ease-out)}
.admin-bar .mf-header{top:calc(16px + 32px)}
@media (max-width:782px){.admin-bar .mf-header{top:calc(16px + 46px)}}
.mf-header.is-hidden{transform:translateY(calc(-100% - 40px))}
.mf-header__logo{display:flex;align-items:center;padding:0 clamp(var(--s-3),2vw,var(--s-5))}
.mf-header__logo img{width:120px;height:auto;display:block}
.mf-header__nav{flex:1;display:flex;align-items:stretch;justify-content:center;gap:clamp(var(--s-1),1.2vw,var(--s-4));overflow-x:auto;scrollbar-width:none}
.mf-header__nav--end{justify-content:flex-end;padding-right:clamp(var(--s-2),1.5vw,var(--s-4))}
.mf-header__nav a{display:flex;align-items:center;gap:var(--s-2);padding:0 clamp(var(--s-2),1vw,var(--s-3));font-family:var(--font-display);font-size:var(--t-body);font-weight:300;font-style:italic;letter-spacing:-.01em;white-space:nowrap;color:var(--paper-soft);transition:color 250ms}
.mf-header__nav a:hover,.mf-header__nav a[aria-current]{color:var(--power)}
.mf-header__cta{display:flex;align-items:center;gap:var(--s-3);padding:0 clamp(var(--s-3),2vw,var(--s-5));background:var(--gold);color:var(--abyss);font-weight:600;white-space:nowrap;box-shadow:inset 0 0 0 200px transparent;transition:box-shadow 280ms ease-out}
.mf-header__cta:hover{color:var(--abyss);box-shadow:inset 0 0 0 200px var(--illumination),0 0 36px 0 var(--glow)}
.mf-header__burger{display:none;align-items:center;justify-content:center;min-width:60px;padding:0 var(--s-4);appearance:none;border:0;margin:0;background:transparent;color:var(--divinity);cursor:pointer}
.mf-header__burger>span{position:relative;display:block;width:22px;height:12px}
.mf-header__burger i{position:absolute;left:0;right:0;height:1.5px;background:currentColor;transition:transform 300ms var(--ease-out),top 300ms,background-color 200ms}
.mf-header__burger:hover,.mf-header__burger[aria-expanded="true"]{color:var(--power)}
.mf-header__burger i:first-child{top:0}
.mf-header__burger i:last-child{top:10px}
.mf-header__burger[aria-expanded="true"] i:first-child{top:5px;transform:rotate(45deg)}
.mf-header__burger[aria-expanded="true"] i:last-child{top:5px;transform:rotate(-45deg)}
@media (max-width:959px){
  .mf-home .mf-header__nav{visibility:hidden}
  .mf-home .mf-header__cta{display:none}
  .mf-header__burger{display:flex}
  .mf-header__nav--end a{font-size:var(--t-small)}
}
@media (max-width:520px){.mf-project .mf-header__cta{display:none}}
.mf-mmenu{position:fixed;inset:0;z-index:29;display:flex;flex-direction:column;padding:var(--s-8) clamp(var(--s-4),6vw,var(--s-6)) var(--s-5);background:var(--abyss);overflow-y:auto}
.mf-mmenu nav{display:flex;flex-direction:column}
.mf-mmenu nav a{display:flex;align-items:center;min-height:64px;border-bottom:1px solid var(--paper-hairline);font-family:var(--font-display);font-size:var(--t-h2);font-weight:300;font-style:italic;letter-spacing:-.02em;color:var(--paper-soft)}
.mf-mmenu nav a:hover{color:var(--power)}
.mf-mmenu__cta{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);min-height:60px;margin-top:auto;padding:0 var(--s-4);background:var(--gold);color:var(--abyss);font-weight:600}
@media (min-width:960px){.mf-mmenu{display:none !important}}
.mf-mmenu{opacity:0;transition:opacity 180ms ease-in}
.mf-mmenu.is-open{opacity:1;transition:opacity 260ms var(--ease-out)}
.mf-mmenu nav a,.mf-mmenu__cta{opacity:0;transform:translate3d(0,16px,0);transition:opacity 160ms ease-in,transform 200ms ease-in}
.mf-mmenu.is-open nav a,.mf-mmenu.is-open .mf-mmenu__cta{opacity:1;transform:none;transition:opacity 360ms ease-out calc(80ms + var(--i,0) * 45ms),transform 520ms var(--ease-out) calc(80ms + var(--i,0) * 45ms)}
@media (prefers-reduced-motion:reduce){.mf-mmenu,.mf-mmenu nav a,.mf-mmenu__cta{transition:none !important;transform:none !important}}

/* ---------- Sekce ---------- */
.mf-section{position:relative;padding:var(--pad-sec) var(--pad-x);color:var(--sanctuary)}
.mf-section--dark{background:transparent}
.mf-section--abyss{background:var(--abyss)}
.mf-pad--top{padding-bottom:0}
.mf-pad--bottom{padding-top:0}
.mf-pad--none{padding-top:0;padding-bottom:0}
.mf-section--light{background:var(--sanctuary);color:var(--shadow)}
.mf-section--light .mf-label,.mf-section--light .is-style-mf-eyebrow{color:var(--ink)}
.mf-section--light .wp-block-heading,.mf-section--light h2,.mf-section--light h3{color:var(--shadow)}
.mf-section--light h2 em,.mf-section--light h3 em{color:var(--shadow)}
.mf-section--light p{color:var(--ink-read)}
.mf-section--light .is-style-mf-lead{color:var(--shadow) !important;font-weight:500;line-height:1.45}
.mf-section--light strong{color:var(--shadow)}
.mf-section--light a:not(.mf-btn){color:var(--shadow);font-weight:600;background-size:0% 2px;background-position:0 calc(100% - 8px);min-height:44px;display:inline-flex;align-items:center}
.mf-section--light a:not(.mf-btn):hover{color:var(--shadow);background-size:100% 2px}

/* ---------- Hero ---------- */
.mf-hero{position:relative;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:var(--s-9) var(--pad-x) var(--s-8);overflow:hidden;background:var(--abyss)}
.mf-hero__bg{position:absolute;inset:0;clip-path:inset(0)}
.mf-hero__fixed{position:fixed;inset:0;pointer-events:none}
.mf-hero.is-editor .mf-hero__fixed{position:absolute}
.mf-hero__fixed img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--fx,72%) var(--fy,35%);will-change:filter}
.mf-hero__dim{position:absolute;inset:0;background:var(--abyss);opacity:0}
.mf-hero__shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,color-mix(in srgb,var(--abyss) calc(var(--shade,.82) * 100%),transparent) 0%,color-mix(in srgb,var(--abyss) calc(var(--shade,.82) * 80%),transparent) 22%,color-mix(in srgb,var(--abyss) calc(var(--shade,.82) * 49%),transparent) 42%,color-mix(in srgb,var(--abyss) calc(var(--shade,.82) * 17%),transparent) 62%,transparent 82%),linear-gradient(180deg,color-mix(in srgb,var(--abyss) 35%,transparent) 0%,transparent 30%,transparent 70%,var(--abyss) 100%)}
.mf-hero__inner{position:relative;width:100%;max-width:var(--wrap);margin:0 auto}
.mf-hero__inner>.mf-label{margin-bottom:var(--s-5)}
.mf-hero .mf-display .mf-accent{font-weight:300;font-style:italic;color:var(--power)}
.mf-hero__rot{position:relative;height:1.5em;margin:var(--s-5) 0 0;font-size:var(--t-lead);font-weight:500;line-height:1.5;color:var(--sanctuary)}
.mf-hero__rot>span{position:absolute;left:0;right:0;top:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;filter:blur(8px);transform:translateY(14px);transition:opacity 900ms ease,filter 900ms ease,transform 900ms var(--ease-out)}
.mf-hero__rot>span.is-on{opacity:1;filter:none;transform:none}
.mf-hero__rot>span.is-out{transform:translateY(-14px)}
@media (max-width:640px){.mf-hero__rot{height:3em}.mf-hero__rot>span{white-space:normal}}
.mf-hero__lead{margin:var(--s-3) 0 0;max-width:38ch;font-size:var(--t-body);color:var(--paper-read)}

/* ---------- Projekty: stoh ---------- */
.mf-projects{margin:clamp(var(--s-6),6vw,var(--s-8)) calc(50% - 50vw) 0;padding:0}
.mf-stack__sticky{display:grid;gap:var(--s-5);padding:0 var(--pad-x)}
.mf-stack__card{position:relative;display:block;width:min(1040px,100%);margin:0 auto;aspect-ratio:16/10;overflow:hidden;background:var(--ink);color:var(--sanctuary)}
.mf-stack__card img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.mf-stack__grad{position:absolute;inset:0;background:linear-gradient(to top,color-mix(in srgb,var(--abyss) 90%,transparent),transparent 55%)}
.mf-stack__txt{position:absolute;left:0;right:0;bottom:0;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:var(--s-2) var(--s-5);padding:clamp(var(--s-4),3vw,var(--s-6))}
.mf-stack__name{display:block;font-family:var(--font-display);font-size:var(--t-h3);font-weight:600;line-height:1.05;letter-spacing:-.03em;color:var(--divinity)}
.mf-stack__desc{display:block;margin-top:var(--s-2);max-width:46ch;font-size:var(--t-body);line-height:1.45;color:var(--paper-read);text-wrap:pretty}
.mf-stack__meta{font-size:var(--t-label);letter-spacing:.16em;text-transform:uppercase;color:var(--paper-soft)}
/* S JS: karty se skládají do stohu při scrollu */
html.mf-js .mf-stack{position:relative;height:calc(var(--n,3) * 80vh + 60vh)}
html.mf-js .mf-stack__sticky{position:sticky;top:0;height:100vh;overflow:hidden;display:block;padding:0}
html.mf-js .mf-stack__card{position:absolute;left:50%;top:0;width:min(1040px,88vw,110vh);margin:0;transform:translate3d(-50%,110vh,0);transform-origin:50% 0;will-change:transform,opacity}
@media (max-width:640px){
  .mf-stack__card{aspect-ratio:4/5}
  .mf-stack__grad{background:linear-gradient(to top,color-mix(in srgb,var(--abyss) 95%,transparent),var(--abyss-glass) 45%,transparent 75%)}
  .mf-stack__meta{order:-1}
}
@media (prefers-reduced-motion:reduce){
  html.mf-js .mf-stack{height:auto}
  html.mf-js .mf-stack__sticky{position:static;height:auto;overflow:visible;display:grid;gap:var(--s-5);padding:0 var(--pad-x)}
  html.mf-js .mf-stack__card{position:relative;left:auto;transform:none;width:min(1040px,100%);margin:0 auto}
}
.mf-projects__after{position:relative;z-index:1;padding:clamp(var(--s-6),5vw,var(--s-7)) var(--pad-x) 0}
.mf-pgrid{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:clamp(var(--s-6),5vw,var(--s-7)) clamp(var(--s-4),3vw,var(--s-6))}
.mf-pcard{display:flex;flex-direction:column;gap:var(--s-3);color:var(--sanctuary);transition:transform 450ms var(--ease-out)}
.mf-pcard:hover{transform:translateY(calc(var(--fx-lift) * -1))}
.mf-pcard__img{display:block;overflow:hidden;background:var(--ink);aspect-ratio:4/3}
.mf-pcard__img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 900ms var(--ease-out)}
.mf-pcard:hover .mf-pcard__img img{transform:scale(1.04)}
.mf-pcard__row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s-3);border-top:1px solid var(--paper-hairline);padding-top:var(--s-3)}
.mf-pcard__name{font-family:var(--font-display);font-size:var(--t-h3);font-weight:600;letter-spacing:-.02em;color:var(--divinity)}
.mf-pcard__meta{font-size:var(--t-label);letter-spacing:.16em;text-transform:uppercase;color:var(--paper-soft);text-align:right}
.mf-pcard__desc{font-size:var(--t-body);line-height:1.5;color:var(--paper-soft);text-wrap:pretty}
.mf-projects__more{max-width:var(--wrap);margin:clamp(var(--s-6),5vw,var(--s-7)) auto 0;display:flex;justify-content:center}
.mf-projects__more .mf-btn{min-height:56px;border-color:var(--paper-line)}
.mf-empty{padding:var(--s-5);border:1px dashed var(--paper-line);color:var(--paper-soft)}

/* ---------- Reference ---------- */
.mf-refs{max-width:var(--wrap);margin:clamp(96px,12vw,160px) auto 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:var(--s-7) var(--s-6)}
.mf-ref{position:relative;margin:0;padding-top:var(--s-5)}
.mf-line{position:absolute;left:0;top:0;height:2px;width:100%;background:var(--gold-x);transform-origin:left}
.mf-ref blockquote{margin:0;font-family:var(--font-display);font-size:var(--t-h3);font-weight:300;font-style:italic;line-height:1.3;color:var(--divinity);text-wrap:pretty}
.mf-ref p{margin:var(--s-3) 0 0;font-size:var(--t-body);color:var(--paper-soft);text-wrap:pretty;max-width:none}
.mf-ref figcaption{display:flex;align-items:center;gap:var(--s-3);margin-top:var(--s-4)}
.mf-ref figcaption img{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none}
.mf-ref figcaption>span{display:flex;flex-direction:column;line-height:1.35;font-size:var(--t-small)}
.mf-ref figcaption strong{font-size:var(--t-small);color:var(--divinity)}
.mf-ref figcaption>span>span{color:var(--paper-soft)}

/* ---------- Proces (počítadlo) ---------- */
.mf-pax{position:relative;max-width:var(--wrap);margin:0 auto}
.mf-pax__pin{display:flex;flex-direction:column}
.mf-pax__bar{margin-top:clamp(var(--s-5),5vh,var(--s-7));height:2px;background:var(--paper-hairline)}
.mf-pax__bar>div{height:100%;width:100%;background:var(--gold-x)}
.mf-pax__row{display:flex;flex-wrap:wrap;align-items:center;gap:clamp(var(--s-3),5vw,var(--s-8)) clamp(var(--s-5),5vw,var(--s-8));margin-top:clamp(var(--s-5),4vh,var(--s-6))}
.mf-pax__odo{display:none;flex:none;height:1em;overflow:hidden;font-size:var(--t-display);line-height:1;font-family:var(--font-num);font-weight:300;letter-spacing:-.05em;font-variant-numeric:tabular-nums}
.mf-pax__odo>div>div{height:1em;background:var(--gold-x);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.mf-pax__track{position:relative;flex:1 1 280px;min-width:0;list-style:none;margin:0;padding:0;display:grid;gap:var(--s-5);counter-reset:pax}
.mf-pax__step{box-sizing:border-box;width:min(100%,560px);counter-increment:pax}
.mf-pax__step .mf-h3{margin:0}
.mf-pax__step .mf-h3::before{content:counter(pax) " ";color:var(--power);font-weight:300}
.mf-pax__step p{margin:var(--s-2) 0 0;max-width:48ch;color:var(--paper-soft);text-wrap:pretty}
html.mf-js .mf-pax__pin{position:sticky;top:120px}
html.mf-js .mf-pax__odo{display:block}
html.mf-js .mf-pax__bar>div{width:0}
html.mf-js .mf-pax__track{display:block;min-height:260px}
html.mf-js .mf-pax__step{position:absolute;left:0;top:0}
html.mf-js .mf-pax__step .mf-h3{margin-top:var(--s-4)}
html.mf-js .mf-pax__odo ~ .mf-pax__track .mf-pax__step .mf-h3::before{content:none}
@media (prefers-reduced-motion:reduce){
  html.mf-js .mf-pax__pin{position:static}
  html.mf-js .mf-pax__odo{display:none}
  html.mf-js .mf-pax__bar>div{width:100%}
  html.mf-js .mf-pax__track{display:grid;min-height:0}
  html.mf-js .mf-pax__step{position:static;opacity:1 !important;visibility:visible !important}
  html.mf-js .mf-pax__odo ~ .mf-pax__track .mf-pax__step .mf-h3::before{content:counter(pax) " "}
}

/* ---------- Služby a ceník ---------- */
@keyframes mfDrift{0%{transform:translate(-12%,-8%) rotate(0deg) scale(1)}50%{transform:translate(6%,10%) rotate(14deg) scale(1.12)}100%{transform:translate(14%,-4%) rotate(-8deg) scale(1)}}
.mf-services{display:flex;flex-direction:column;gap:var(--s-5);margin-top:clamp(var(--s-6),6vw,var(--s-8))}
.mf-svc{--tint:var(--power);isolation:isolate;overflow:hidden;position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s-4) var(--s-6);align-items:flex-end;padding:clamp(var(--s-5),4vw,var(--s-7));color:var(--sanctuary);background:linear-gradient(160deg,color-mix(in srgb,var(--tint) 16%,transparent),transparent 60%),var(--ink);transition:transform 450ms var(--ease-out),box-shadow 450ms ease,filter 450ms ease}
/* Každá služba má vlastní odstín zlaté */
.mf-svc:nth-child(1){--tint:var(--illumination)}
.mf-svc:nth-child(2){--tint:var(--gold-b)}
.mf-svc:nth-child(3){--tint:var(--mystic)}
.mf-svc:hover{transform:translateX(var(--fx-lift));box-shadow:0 30px 80px -30px color-mix(in srgb,var(--tint) 25%,transparent),0 0 0 1px color-mix(in srgb,var(--tint) 15%,transparent);filter:brightness(1.08)}
.mf-svc__fx,.mf-tier__fx{--fx-o:var(--fx-op);position:absolute;inset:-50%;z-index:-1;pointer-events:none;opacity:var(--fx-o);background:radial-gradient(circle at 35% 35%,color-mix(in srgb,var(--tint) 50%,transparent),transparent 32%),radial-gradient(circle at 70% 65%,color-mix(in srgb,var(--tint) 28%,transparent),transparent 30%)}

.mf-svc__main{flex:1 1 440px;min-width:0;display:block}
.mf-svc__main .mf-h3{display:block;line-height:1.08;letter-spacing:-.03em}
.mf-svc__text{display:block;margin-top:var(--s-3);max-width:62ch;color:var(--paper-soft);text-wrap:pretty}
.mf-svc__price{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:var(--s-2);text-align:right}
.mf-svc__from{display:flex;align-items:baseline;gap:var(--s-2);font-size:var(--t-small);color:var(--paper-soft)}
.mf-svc__from strong{font-size:var(--t-h2);line-height:1;letter-spacing:-.03em;font-family:var(--font-num);font-weight:400;font-variant-numeric:tabular-nums;color:var(--tint)}
.mf-svc__link{display:inline-flex;align-items:center;gap:var(--s-2);min-height:44px;font-weight:600;color:var(--divinity);white-space:nowrap}
.mf-svc__link span,.mf-svc__link .mf-arrow{color:var(--tint)}
.mf-svc__link .mf-arrow{transition:transform 450ms var(--ease-out)}
.mf-svc:hover .mf-svc__link .mf-arrow{transform:translateX(6px)}
@media (max-width:760px){.mf-svc__price{align-items:flex-start;text-align:left}}

.mf-dialog{position:fixed;inset:0;z-index:60;overflow-y:auto;overscroll-behavior:contain;background:var(--abyss-veil);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.mf-pricing{position:relative;max-width:var(--wrap);margin:0 auto;padding:var(--pad-sec) var(--pad-x)}
.mf-pricing--dialog{max-width:none;min-height:100vh;padding:clamp(var(--s-5),4vw,var(--s-7)) max(clamp(var(--s-5),4vw,var(--s-7)),calc((100% - 1200px) / 2));background:var(--shadow)}
.mf-pricing__head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s-4)}
.mf-pricing__text{margin:var(--s-3) 0 0;max-width:56ch;color:var(--paper-soft);text-wrap:pretty}
.mf-close{flex:none;width:48px;height:48px;display:grid;place-items:center;padding:0;border:1px solid var(--paper-line);background:transparent;color:var(--divinity);font-size:var(--t-h3);line-height:1;cursor:pointer;transition:border-color 200ms,color 200ms}
.mf-close:hover{border-color:var(--power);color:var(--illumination)}
.mf-tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:var(--s-3);margin-top:clamp(var(--s-5),4vw,var(--s-7));align-items:stretch}
.mf-tier{--tint:var(--sanctuary);position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;padding:clamp(var(--s-5),3.4vw,var(--s-6));background:var(--ink);transition:transform 450ms var(--ease-out),box-shadow 450ms ease,filter 450ms ease}
.mf-tier .mf-tier__fx{--fx-o:0}
.mf-tiers>.mf-tier:nth-child(2),.mf-tier--gold{--tint:var(--power);background:linear-gradient(160deg,color-mix(in srgb,var(--power-deep) 16%,transparent),transparent 60%),var(--ink)}
.mf-tiers>.mf-tier:nth-child(2) .mf-tier__fx,.mf-tier--gold .mf-tier__fx{--fx-o:calc(var(--fx-op) * .85)}
.mf-tiers>.mf-tier:last-child:not(:first-child):not(.mf-tier--plain):not(.mf-tier--gold),.mf-tier--mystic{--tint:var(--mystic);background:linear-gradient(160deg,color-mix(in srgb,var(--mystic) 28%,transparent),transparent 60%),var(--ink)}
.mf-tiers>.mf-tier:last-child:not(:first-child):not(.mf-tier--plain):not(.mf-tier--gold) .mf-tier__fx,.mf-tier--mystic .mf-tier__fx{--fx-o:min(1,calc(var(--fx-op) * 1.6))}
.mf-tier--plain{--tint:var(--sanctuary) !important;background:var(--ink) !important}
.mf-tier--plain .mf-tier__fx{--fx-o:0 !important}
.mf-tier:hover{transform:translateY(calc(var(--fx-lift) * -1));box-shadow:0 30px 80px -30px color-mix(in srgb,var(--tint) 25%,transparent),0 0 0 1px color-mix(in srgb,var(--tint) 15%,transparent);filter:brightness(1.08)}
.mf-tier .mf-h3{letter-spacing:-.02em}
.mf-tier__price{margin:var(--s-3) 0 0;font-family:var(--font-num);font-size:var(--t-h3);font-weight:400;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--power);white-space:nowrap}
.mf-tier dl{margin:var(--s-4) 0 0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--s-1) var(--s-3);font-size:var(--t-small);line-height:1.45}
.mf-tier dt{color:var(--paper-soft)}
.mf-tier dd{margin:0;color:var(--sanctuary)}
.mf-tier ul{list-style:none;margin:var(--s-4) 0 clamp(var(--s-5),3.4vw,var(--s-6));padding:var(--s-4) 0 0;border-top:1px solid var(--paper-hairline);display:flex;flex-direction:column;gap:var(--s-2);font-size:var(--t-body);line-height:1.45;color:var(--paper-read)}
.mf-tier li{display:grid;grid-template-columns:16px minmax(0,1fr);gap:var(--s-2)}
.mf-tier li>span:first-child{color:var(--power)}
.mf-check{display:block;width:15px;height:11px;margin-top:calc(.725em - 5px);background:var(--gold);-webkit-mask:var(--check) center/contain no-repeat;mask:var(--check) center/contain no-repeat;--check:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 11'%3E%3Cpath d='M1.2 5.6 5.4 9.6 13.8 1.2' fill='none' stroke='%23000' stroke-width='2.2'/%3E%3C/svg%3E")}
.mf-tier .mf-btn--line{margin-top:auto}
.mf-pricing__note{margin:var(--s-3) 0 0;font-size:var(--t-small);color:var(--paper-soft)}
.mf-extras{margin-top:clamp(var(--s-6),5vw,var(--s-7))}
.mf-extras .mf-h3{letter-spacing:-.015em}
.mf-extras ul{list-style:none;margin:var(--s-3) 0 0;padding:0;border-bottom:1px solid var(--paper-hairline)}
.mf-extras li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s-1) var(--s-4);padding:var(--s-3) 0;border-top:1px solid var(--paper-hairline);font-size:var(--t-body)}
.mf-extras li span{color:var(--paper-read)}
.mf-extras li strong{font-weight:600;color:var(--divinity);font-variant-numeric:tabular-nums}
.mf-pricing__cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-4) var(--s-6);margin-top:clamp(var(--s-6),5vw,var(--s-7));padding:clamp(var(--s-4),3vw,var(--s-6));background:linear-gradient(110deg,color-mix(in srgb,var(--power) 12%,transparent),transparent 70%),var(--ink)}
.mf-pricing__cta>div{flex:1 1 320px}
.mf-pricing__cta .mf-h3{max-width:40ch;line-height:1.1}
.mf-pricing__cta p{margin:var(--s-2) 0 0;max-width:48ch;color:var(--paper-soft)}
.mf-pricing__cta .mf-btn{min-height:56px}

/* ---------- O mně ---------- */
.mf-about{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:var(--s-6) var(--s-7);align-items:end}
.mf-about__img{display:block;width:100%;max-width:460px;height:auto}
.mf-about__text>*{max-width:52ch}
.mf-about__text p{margin:var(--s-3) 0 0}
.mf-about__text .is-style-mf-lead{margin-top:var(--s-5)}
.mf-more{display:grid;grid-template-rows:1fr}
html.mf-js .mf-more{grid-template-rows:0fr;transition:grid-template-rows 400ms var(--ease-out)}
html.mf-js .mf-more[data-open="1"]{grid-template-rows:1fr}
.mf-more>div{min-height:0;overflow:hidden}
html.mf-js .mf-more>div{visibility:hidden;transition:visibility 0s 400ms}
html.mf-js .mf-more[data-open="1"]>div{visibility:visible;transition-delay:0s}
.mf-more__inner>*{margin:var(--s-3) 0 0}
.mf-more__btn{min-height:44px;display:inline-flex;align-items:center;gap:var(--s-2);margin-top:var(--s-3);padding:0;border:0;font-weight:600;color:inherit;cursor:pointer;background:transparent;background-image:linear-gradient(var(--power),var(--power));background-repeat:no-repeat;background-position:0 calc(100% - 8px);background-size:0% 2px;transition:background-size 350ms var(--ease-out)}
.mf-more__btn:hover{background-size:100% 2px}
.mf-section--light .mf-more__btn{color:var(--shadow)}

/* ---------- Čísla ---------- */
.mf-stats{max-width:var(--wrap);margin:clamp(var(--s-7),8vw,var(--s-9)) auto 0;padding-top:var(--s-6);border-top:1px solid var(--paper-hairline);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--s-4) var(--s-5)}
.mf-section--light .mf-stats{border-top-color:var(--ink-line)}
.mf-stat{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--s-1) var(--s-3);align-items:baseline}
.mf-stat__n{grid-row:span 2;font-size:var(--t-h3);line-height:1;letter-spacing:-.03em;font-family:var(--font-num);font-weight:500;font-variant-numeric:tabular-nums;color:var(--divinity)}
.mf-stat__t{font-family:var(--font-display);margin:0;font-size:var(--t-small) !important;font-weight:600;line-height:1.3;letter-spacing:0 !important;color:var(--divinity)}
.mf-stat p{margin:0 !important;font-size:var(--t-small);line-height:1.45;color:var(--paper-soft);text-wrap:pretty}
.mf-section--light .mf-stat__n,.mf-section--light .mf-stat__t{color:var(--shadow)}
.mf-section--light .mf-stat p{color:var(--ink-soft)}

/* ---------- Kontakt ---------- */
.mf-contact{position:relative;padding:clamp(var(--s-8),12vw,calc(var(--s-9) + var(--s-7))) var(--pad-x) 0}
.mf-contact__bg{position:absolute;left:var(--sym-x,77%);top:var(--sym-y,79%);width:0;height:0;pointer-events:none}
.mf-contact__glow{position:absolute;left:0;top:0;width:calc(clamp(320px,58vw,1400px) * 2.6);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--power) 30%,transparent),color-mix(in srgb,var(--power-deep) 12%,transparent) 35%,transparent 60%)}
.mf-contact__sym{position:absolute;left:0;top:0;display:block;width:max(160px,var(--sym-size,58vw));aspect-ratio:200/155.1;transform:translate(-50%,-50%);opacity:var(--sym-op,.05);background:var(--sym-bg,var(--divinity));-webkit-mask:var(--sym-url) center/contain no-repeat;mask:var(--sym-url) center/contain no-repeat}
.mf-sym-off .mf-contact__sym{display:none}
@media (max-width:767px){
  .mf-contact__bg{left:var(--sym-mx,70%);top:var(--sym-my,40%)}
  .mf-contact__sym{width:var(--sym-msize,110vw)}
  body:not(.mf-sym-mob) .mf-contact__sym{display:none}
}
.mf-contact .mf-wrap{position:relative}
.mf-contact__intro>*{margin:0}
.mf-contact__intro .is-style-mf-eyebrow+*{margin-top:var(--s-4)}
.mf-contact__intro h2{font-family:var(--font-display);font-size:var(--t-display);font-weight:600;line-height:1.06;letter-spacing:-.045em;color:var(--divinity);text-wrap:balance}
.mf-contact__intro h2 em{display:block}
.mf-contact__intro p:not(.is-style-mf-eyebrow){margin-top:clamp(var(--s-4),3vw,var(--s-6));max-width:56ch;font-size:var(--t-lead);line-height:1.55;color:var(--paper-read) !important}
.mf-form-wrap{max-width:900px;margin-top:clamp(var(--s-6),5vw,var(--s-7))}
.mf-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--s-5) var(--s-6)}
.mf-field{display:flex;flex-direction:column;gap:var(--s-2);font-size:var(--t-label);font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--paper-soft)}
.mf-field--full{grid-column:1/-1}
fieldset.mf-field{margin:0;padding:0;border:0;min-width:0}
.mf-field legend,.mf-legend{padding:0;margin-bottom:var(--s-3)}
.mf-field input,.mf-field textarea{min-height:48px;padding:var(--s-2) 0;background:transparent;border:0;border-bottom:1px solid var(--paper-line);border-radius:0;font:inherit;font-size:var(--t-body);font-weight:500;letter-spacing:0;text-transform:none;color:var(--divinity);transition:border-color 200ms}
.mf-field textarea{resize:vertical;font-weight:400}
.mf-field input:focus,.mf-field textarea:focus{border-bottom-color:var(--power);outline:none}
.mf-chips{display:flex;flex-wrap:wrap;gap:var(--s-2)}
.mf-chip{position:relative;display:inline-flex;cursor:pointer;text-transform:none;letter-spacing:0}
.mf-chip input{position:absolute;opacity:0;width:1px;height:1px}
.mf-chip span{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--s-3);border:1px solid var(--paper-line);font-size:var(--t-small);font-weight:600;color:var(--sanctuary);transition:background-color 150ms,color 150ms,border-color 150ms}
.mf-chip:hover span{border-color:var(--power)}
.mf-chip input:checked+span{background:var(--power);border-color:var(--power);color:var(--abyss)}
.mf-chip input:focus-visible+span{outline:2px solid var(--illumination);outline-offset:3px}
.mf-consent-check{display:flex;align-items:flex-start;gap:var(--s-3);font-size:var(--t-small);line-height:1.5;color:var(--paper-soft);cursor:pointer}
.mf-consent-check input{flex:none;width:20px;height:20px;margin:2px 0 0;accent-color:var(--power)}
.mf-consent-check a{color:var(--divinity);text-decoration:underline;text-underline-offset:3px}
.mf-form__error{margin:0;color:var(--illumination);font-size:var(--t-small)}
.mf-form button[type=submit]{grid-column:1/-1;justify-self:start}
.mf-form button[disabled]{opacity:.6;cursor:progress}
.mf-hp{position:absolute !important;left:-9999px;width:1px;height:1px;overflow:hidden}
.mf-form-done .mf-h3{line-height:1.1;letter-spacing:-.03em}

/* ---------- Patička ---------- */
.mf-footer{position:relative;max-width:var(--wrap);margin:clamp(var(--s-8),11vw,calc(var(--s-9) + var(--s-5))) auto 0;padding:0 var(--pad-x) var(--s-6);box-sizing:content-box;font-size:var(--t-small);color:var(--paper-soft)}
.mf-footer__cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--s-6);padding-top:var(--s-5);border-top:1px solid var(--paper-hairline)}
.mf-footer__cols>div{display:flex;flex-direction:column;gap:var(--s-1)}
.mf-footer .mf-label{margin:0 0 var(--s-2);letter-spacing:.16em}
.mf-flink{min-height:32px;display:inline-flex;align-items:center;align-self:flex-start;color:var(--paper-read);white-space:nowrap;background-image:linear-gradient(var(--illumination),var(--illumination));background-repeat:no-repeat;background-position:0 calc(100% - 4px);background-size:0% 1px;transition:background-size 350ms var(--ease-out),color 200ms}
.mf-flink[data-strong]{font-weight:600;color:var(--divinity)}
.mf-flink:hover{color:var(--illumination);background-size:100% 1px}
.mf-footer__txt{min-height:32px;display:inline-flex;align-items:center}
.mf-footer__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--s-2) var(--s-6);margin-top:var(--s-7)}
.mf-footer__bottom p{margin:0}
.mf-cursor-toggle{display:inline-flex;align-items:center;gap:var(--s-2);min-height:44px;padding:0;border:0;background:transparent;font-size:var(--t-small);color:var(--paper-soft);cursor:pointer;transition:color 200ms}
.mf-cursor-toggle:hover{color:var(--illumination)}
.mf-cursor-toggle__box{display:grid;place-items:center;width:14px;height:14px;border:1px solid currentColor}
.mf-cursor-toggle__box span{width:6px;height:6px;background:currentColor;opacity:0}
.mf-cursor-toggle[aria-pressed="true"] .mf-cursor-toggle__box span{opacity:1}
@media (hover:none),(pointer:coarse),(forced-colors:active){.mf-cursor-toggle{display:none !important}}

/* ---------- Cookie lišta ---------- */
.mf-consent{position:fixed;left:clamp(12px,2vw,24px);right:clamp(12px,2vw,24px);bottom:clamp(12px,2vw,24px);z-index:70;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-3) var(--s-5);max-width:880px;margin:0 auto;padding:var(--s-4);background:var(--shadow);border:1px solid var(--paper-hairline);box-shadow:0 30px 80px -30px var(--abyss);font-size:var(--t-small);color:var(--paper-read)}
.mf-consent p{margin:0;flex:1 1 320px}
.mf-consent a{color:var(--divinity);text-decoration:underline;text-underline-offset:3px}
.mf-consent__actions{display:flex;flex-wrap:wrap;gap:var(--s-2)}
.mf-consent .mf-btn{min-height:44px;font-size:var(--t-small)}

/* ---------- Detail projektu ---------- */
.mf-proj__head{padding:clamp(calc(var(--s-9) + var(--s-4)),18vw,calc(var(--s-9) + var(--s-8))) var(--pad-x) clamp(var(--s-6),6vw,var(--s-8))}
.mf-proj__head .mf-h1{margin-top:var(--s-4)}
.mf-proj__lead{margin:clamp(var(--s-4),3vw,var(--s-6)) 0 0;max-width:34ch;font-size:var(--t-lead);line-height:1.4;color:var(--paper-read);text-wrap:pretty}
.mf-proj__facts{display:flex;flex-wrap:wrap;gap:var(--s-4) clamp(var(--s-6),6vw,var(--s-8));margin-top:clamp(var(--s-6),5vw,var(--s-7));padding-top:var(--s-4);border-top:1px solid var(--paper-hairline)}
.mf-proj__facts>div{display:flex;flex-direction:column;gap:var(--s-1)}
.mf-proj__facts .mf-label{letter-spacing:.16em}
.mf-proj__facts>div>span:last-child{min-height:44px;display:inline-flex;align-items:center;font-size:var(--t-small);color:var(--paper-read);max-width:60ch}
.mf-proj__tools{flex:1 1 320px}
.mf-proj__url{min-height:44px;display:inline-flex;align-items:center;font-weight:600;color:var(--divinity);white-space:nowrap}
.mf-proj__url:hover{color:var(--illumination)}
.mf-proj__cover{padding:0 clamp(var(--s-3),2vw,var(--s-4))}
.mf-proj__cover img{display:block;max-width:1400px;width:100%;margin:0 auto;aspect-ratio:16/9;object-fit:cover;background:var(--ink)}
.mf-proj__body{counter-reset:case}
.mf-proj__visit{display:flex;justify-content:flex-end;padding:clamp(var(--s-7),8vw,var(--s-9)) var(--pad-x) 0;box-sizing:content-box}
.mf-proj__visit .mf-btn{min-height:56px;border-color:var(--paper-line)}

.mf-case{padding:clamp(var(--s-8),12vw,calc(var(--s-9) + var(--s-5))) var(--pad-x) 0;counter-increment:case}
.mf-case__grid{display:flex;flex-wrap:wrap;gap:var(--s-4) clamp(var(--s-6),6vw,var(--s-8));align-items:flex-start;counter-reset:cstep}
.mf-case__label{flex:1 1 240px;position:sticky;top:120px;display:flex;flex-direction:column;gap:var(--s-3)}
.mf-case__idx::before{content:counter(case,decimal-leading-zero)}
.mf-case__idx{font-family:var(--font-num);font-size:var(--t-small);font-variant-numeric:tabular-nums;color:var(--power)}
.mf-case__body{flex:2.6 1 520px;min-width:0;display:flex;flex-direction:column;gap:var(--s-4);max-width:760px}
.mf-case__body>*{margin:0}
.mf-case__body p,.mf-cstep p{max-width:68ch;font-size:var(--t-body);line-height:1.65;color:var(--paper-read);text-wrap:pretty}
.mf-case__body strong{color:var(--divinity);font-weight:600}
.mf-case__body ul>li{font-size:var(--t-body);line-height:1.6;color:var(--paper-read)}
.mf-case__body h3.wp-block-heading{font-family:var(--font-display);font-size:var(--t-h3);color:var(--divinity);letter-spacing:-.02em;line-height:1.2}
.mf-case__body .wp-block-image,.mf-case__body figure.wp-block-image{margin:var(--s-3) 0;display:flex;flex-direction:column;gap:var(--s-3)}
.mf-case__body .wp-block-image img{display:block;width:100%;height:auto;background:var(--ink)}
.mf-case__body .wp-block-image figcaption,.mf-case__body .wp-element-caption{margin:0;font-size:var(--t-small);color:var(--paper-soft);text-align:left}
.mf-case__body .wp-block-quote{margin:var(--s-3) 0;padding:var(--s-4) 0 0;border:0;border-top:2px solid var(--power)}
.mf-case__body .wp-block-quote p{font-family:var(--font-display);font-size:var(--t-h3);font-weight:300;font-style:italic;line-height:1.3;color:var(--divinity)}
.mf-case__body .wp-block-quote cite{display:block;margin-top:var(--s-3);font-style:normal;font-size:var(--t-small);color:var(--paper-soft)}
.mf-cstep{display:flex;flex-direction:column;gap:var(--s-4);padding-top:var(--s-5);margin-top:var(--s-3) !important;border-top:1px solid var(--paper-hairline);counter-increment:cstep}
.mf-cstep>*{margin:0}
.mf-cstep>.mf-h3{display:flex;align-items:baseline;gap:var(--s-3);line-height:1.2;letter-spacing:-.02em}
.mf-cstep__idx::before{content:counter(cstep,decimal-leading-zero)}
.mf-cstep__idx{font-family:var(--font-num);font-size:var(--t-small);font-weight:400;font-variant-numeric:tabular-nums;color:var(--power)}
.mf-cstep__body{display:flex;flex-direction:column;gap:var(--s-4)}
.mf-cstep__body>*{margin:0}

.mf-cmp-sec{padding:clamp(var(--s-8),12vw,calc(var(--s-9) + var(--s-5))) var(--pad-x) 0}
.mf-cmp-sec__text{margin:var(--s-3) 0 clamp(var(--s-5),4vw,var(--s-6));color:var(--paper-soft)}
.mf-compare{position:relative;width:100%;overflow:hidden;background:var(--shadow);touch-action:pan-y;user-select:none}
.mf-compare img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.mf-compare__before{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--pos,50%)) 0 0)}
.mf-compare__lbl{position:absolute;top:12px;padding:var(--s-1) var(--s-2);background:var(--abyss-veil);color:var(--divinity);font-size:var(--t-label);font-weight:600;letter-spacing:.02em;z-index:1}
.mf-compare__lbl--l{left:12px}
.mf-compare__lbl--r{right:12px}
.mf-compare__line{position:absolute;top:0;bottom:0;left:var(--pos,50%);width:2px;margin-left:-1px;background:var(--divinity);pointer-events:none}
.mf-compare__knob{position:absolute;top:50%;left:var(--pos,50%);width:44px;height:44px;margin:-22px 0 0 -22px;display:grid;place-items:center;background:var(--divinity);color:var(--shadow);font-size:var(--t-lead);font-weight:600;letter-spacing:4px;pointer-events:none}
.mf-compare input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;-webkit-appearance:none;appearance:none}
.mf-compare:focus-within .mf-compare__knob{outline:2px solid var(--illumination);outline-offset:3px}

.mf-proj__next{padding:clamp(var(--s-9),14vw,calc(var(--s-9) + var(--s-7))) var(--pad-x) 0}
.mf-next{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:var(--s-5) clamp(var(--s-6),6vw,var(--s-8));align-items:end;padding-top:var(--s-5);border-top:1px solid var(--paper-hairline);color:var(--sanctuary)}
.mf-next__name{display:flex;align-items:baseline;gap:var(--s-4);margin-top:var(--s-3);font-family:var(--font-display);font-size:var(--t-display);font-weight:600;line-height:1;letter-spacing:-.045em;color:var(--divinity)}
.mf-next__name span{font-weight:300;color:var(--power);transition:transform 450ms var(--ease-out)}
.mf-next:hover .mf-next__name span{transform:translateX(var(--s-3))}
.mf-next__lead{display:block;margin-top:var(--s-3);max-width:40ch;color:var(--paper-soft)}
.mf-next__img{overflow:hidden;background:var(--ink);aspect-ratio:16/10}
.mf-next__img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 900ms var(--ease-out)}
.mf-next:hover .mf-next__img img{transform:scale(1.04)}

/* ---------- Textové stránky (právní) ---------- */
.mf-doc__head{padding:clamp(calc(var(--s-9) + var(--s-4)),16vw,calc(var(--s-9) + var(--s-7))) var(--pad-x) var(--s-7)}
.mf-doc__body{background:var(--sanctuary);color:var(--ink);padding:var(--s-8) var(--pad-x) var(--s-9)}
.mf-prose{max-width:720px;margin:0 auto;font-size:var(--t-body);line-height:1.7;color:var(--ink-read)}
.mf-prose>*{margin:0 0 var(--s-4)}
.mf-prose h2,.mf-prose h3{font-family:var(--font-display);color:var(--shadow);letter-spacing:-.02em;line-height:1.2;margin-top:var(--s-6)}
.mf-prose h2{font-size:var(--t-h3)}
.mf-prose h3{font-size:var(--t-lead)}
.mf-prose strong{color:var(--shadow)}
.mf-prose a{color:var(--shadow);font-weight:600}
.mf-prose table{border-collapse:collapse;width:100%;font-size:var(--t-small)}
.mf-prose th,.mf-prose td{border-bottom:1px solid var(--ink-line);padding:var(--s-2) var(--s-3) var(--s-2) 0;text-align:left;vertical-align:top}

.mf-404{min-height:80vh;display:flex;align-items:center;padding-top:var(--s-9)}
.mf-404 .mf-display{margin-top:var(--s-4)}
.mf-404 .mf-display em{display:block;font-weight:300;font-style:italic;color:var(--power)}
.mf-404 .mf-lead{margin-top:var(--s-5)}

/* ---------- Pohyb a přístupnost ---------- */
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:0ms !important;animation-duration:0ms !important;animation-iteration-count:1 !important}}
@media (forced-colors:active){.mf-btn,.mf-header__cta{border:1px solid}}

/* ---------- Samostatná stránka ceníku ---------- */
.mf-section h1.wp-block-heading{font-family:var(--font-display);margin:var(--s-4) 0 0;max-width:20ch;font-size:var(--t-h1);font-weight:600;line-height:.98;letter-spacing:-.05em;color:var(--divinity);text-wrap:balance}
.mf-section h1.wp-block-heading em{font-weight:300;font-style:italic;color:var(--power)}
.mf-pricing:not(.mf-pricing--dialog){max-width:calc(var(--wrap) + 2 * var(--pad-x));padding:clamp(var(--s-7),8vw,var(--s-9)) var(--pad-x) 0}
.mf-pricing:not(.mf-pricing--dialog)+.mf-pricing{padding-top:clamp(var(--s-8),10vw,calc(var(--s-9) + var(--s-5)))}
.mf-pricing:not(.mf-pricing--dialog) .mf-pricing__head{padding-top:var(--s-5);border-top:1px solid var(--paper-hairline)}

/* ---------- Dotyk: stoh a proces jako na desktopu, přichycení na karty dělá prohlížeč (body .mf-snap-pt vkládá app.js) ---------- */
@media (hover:none) and (pointer:coarse){
  html.mf-js.mf-snap{scroll-snap-type:y proximity}
}
.mf-snap-pt{position:absolute;left:0;width:1px;height:1px;opacity:0;pointer-events:none;scroll-snap-align:start;scroll-snap-stop:always}

/* ---------- Dotyk: proces jako svislá časová osa. Nadpis nahoře, vlevo linka, která se při scrollu plní dolů, vpravo kroky pod sebou (app.js nastavuje --pax-p a .is-on) ---------- */
@media (hover:none) and (pointer:coarse){
  html.mf-js .mf-pax{height:auto !important}
  html.mf-js .mf-pax__pin{position:static;top:auto !important}
  html.mf-js .mf-pax__bar,html.mf-js .mf-pax__odo{display:none}
  html.mf-js .mf-pax__row{margin-top:var(--s-6)}
  html.mf-js .mf-pax__track{display:grid;gap:var(--s-6);min-height:0 !important;padding-left:44px}
  html.mf-js .mf-pax__track::before,html.mf-js .mf-pax__track::after{content:"";position:absolute;left:14px;top:calc(var(--pax-top,0px) + var(--t-h3) * .55);height:var(--pax-len,0px);width:1px;background:var(--paper-hairline)}
  html.mf-js .mf-pax__track::after{background:var(--power);transform-origin:50% 0;transform:scaleY(var(--pax-p,0))}
  html.mf-js .mf-pax__step{position:relative;width:auto;opacity:1 !important;visibility:visible !important}
  html.mf-js .mf-pax__step::before{content:counter(pax);position:absolute;z-index:1;left:-44px;top:calc(var(--t-h3) * .55 - 16px);width:29px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--abyss);font-family:var(--font-num);font-size:var(--t-lead);font-weight:300;font-variant-numeric:tabular-nums;color:var(--paper-faint);transition:color 300ms ease}
  html.mf-js .mf-pax__step.is-on::before{color:var(--power)}
  html.mf-js .mf-pax__step .mf-h3{margin-top:0;transition:color 300ms ease}
  html.mf-js .mf-pax__step:not(.is-on) .mf-h3{color:var(--paper-soft)}
  html.mf-js .mf-pax__odo ~ .mf-pax__track .mf-pax__step .mf-h3::before{content:none}
}

/* ---------- Detail projektu na úzké obrazovce: nadpis kapitoly se připne pod hlavičku přímo z toku obsahu (s pozadím, nepřekrývá text) ---------- */
@media (max-width:899px){
  .mf-case__label{top:76px;z-index:20;flex-basis:100%;margin:calc(var(--s-3) * -1) calc(var(--pad-x) * -1) 0;padding:var(--s-3) var(--pad-x);background:color-mix(in srgb,var(--abyss) 92%,transparent);-webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2)}
  .admin-bar .mf-case__label{top:calc(76px + 46px)}
}

/* ---------- Hero na mobilu: fotka víc vidět, text nahoře, obličej volný ---------- */
@media (max-width:767px){
  .mf-hero{justify-content:flex-start;padding-top:calc(var(--s-9) + var(--s-2))}
  .mf-hero__shade{background:linear-gradient(180deg,color-mix(in srgb,var(--abyss) 64%,transparent) 0%,color-mix(in srgb,var(--abyss) 52%,transparent) 34%,color-mix(in srgb,var(--abyss) 20%,transparent) 58%,transparent 74%,color-mix(in srgb,var(--abyss) 70%,transparent) 94%,var(--abyss) 100%)}
  .mf-hero__inner{text-shadow:0 1px 20px color-mix(in srgb,var(--abyss) 75%,transparent)}
  .mf-hero .mf-btn--ghost{background:var(--abyss-veil)}
  .mf-hero__inner .mf-btn{text-shadow:none}
}
/* ---------- Detail projektu: kapitoly bez čísel (čísla mají jen kroky procesu, jinak se pletou) ---------- */
.mf-case__idx{display:none}

/* ---------- Telefon: menší základní text (16 px je doporučené minimum pro čtení na mobilu, 17 px působilo velké) ---------- */
@media (max-width:640px){:root{--t-body:16px;--t-lead:18px}.mf-case__body p,.mf-cstep p,.mf-case__body ul>li{line-height:1.55}}

/* ---------- Rozsvěcování obsahu při scrollu (třídy přidává app.js, po doběhnutí je zase odebere) ---------- */
html.mf-js .mf-rv{opacity:0;transform:translate3d(0,14px,0)}
html.mf-js .mf-rv.is-in{opacity:1;transform:none;transition:opacity 500ms cubic-bezier(.2,.7,.2,1) var(--rv-d,0ms),transform 650ms cubic-bezier(.2,.7,.2,1) var(--rv-d,0ms)}
@media (prefers-reduced-motion:reduce){html.mf-js .mf-rv{opacity:1;transform:none}}

/* ---------- Pohyb barev na kartách služeb a ceníku (Přizpůsobit → Pohyb barev na kartách, třída mf-fx-* na body) ---------- */
@keyframes mfBreathe{0%,100%{transform:scale(1);opacity:calc(var(--fx-o) * .4)}50%{transform:scale(1.18) rotate(6deg);opacity:var(--fx-o)}}
@keyframes mfSheen{0%,55%{transform:translateX(-38%)}100%{transform:translateX(38%)}}
.mf-fx-drift :is(.is-animated .mf-svc__fx,.mf-tier__fx),.mf-fx-mix :is(.is-animated .mf-svc__fx,.mf-tier__fx){animation:mfDrift var(--fx-speed) ease-in-out infinite alternate}
.mf-fx-mix :is(.is-animated .mf-svc__fx,.mf-tier__fx){animation-duration:calc(var(--fx-speed) * 1.6)}
.mf-fx-breathe :is(.is-animated .mf-svc__fx,.mf-tier__fx){animation:mfBreathe var(--fx-speed) ease-in-out infinite}
.mf-fx-sheen :is(.mf-svc__fx,.mf-tier__fx){background:radial-gradient(circle at 35% 35%,color-mix(in srgb,var(--tint) 30%,transparent),transparent 32%),linear-gradient(105deg,transparent 42%,color-mix(in srgb,var(--tint) 55%,transparent) 50%,transparent 58%)}
.mf-fx-sheen :is(.is-animated .mf-svc__fx,.mf-tier__fx){animation:mfSheen var(--fx-speed) cubic-bezier(.5,0,.3,1) infinite}
.mf-fx-off :is(.mf-svc__fx,.mf-tier__fx){animation:none}
/* Světlo pod kurzorem (follow, mix): --mx/--my nastavuje app.js */
.mf-fx-follow :is(.mf-svc,.mf-tier)::before,.mf-fx-mix :is(.mf-svc,.mf-tier)::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;background:radial-gradient(520px circle at var(--mx,50%) var(--my,50%),color-mix(in srgb,var(--tint) 22%,transparent),transparent 70%);transition:opacity 500ms ease}
.mf-fx-follow :is(.mf-svc,.mf-tier):hover::before,.mf-fx-mix :is(.mf-svc,.mf-tier):hover::before{opacity:1}
@media (hover:none){.mf-fx-follow :is(.mf-svc,.mf-tier)::before,.mf-fx-mix :is(.mf-svc,.mf-tier)::before{display:none}}

/* ---------- Šipka ze symbolu loga ---------- */
.mf-arrow{display:inline-block;flex:none;width:1.45em;height:auto;aspect-ratio:206/131;vertical-align:middle;overflow:visible;fill:none;stroke:currentColor;stroke-width:var(--arrow-w,1.6px);stroke-linecap:square;stroke-linejoin:miter}
.mf-arrow path{vector-effect:non-scaling-stroke}
.mf-btn .mf-arrow{width:1.35em;margin-left:2px;transition:transform 350ms var(--ease-out)}
.mf-btn:hover .mf-arrow{transform:translateX(4px)}
.mf-next__name .mf-arrow{width:.95em;--arrow-w:2.5px;color:var(--gold-a);transition:transform 450ms var(--ease-out)}
.mf-next:hover .mf-next__name .mf-arrow{transform:translateX(var(--s-3))}
.mf-next__name .mf-arrow .mf-arrow__shaft{stroke-dasharray:200;stroke-dashoffset:0;transition:stroke-dashoffset 700ms var(--ease-out)}

/* ---------- Detail projektu: hero s obrázkem vedle názvu ---------- */
.mf-proj__hero{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(var(--s-5),4vw,var(--s-7));align-items:center}
.mf-proj__intro>.mf-label{margin:0}
.mf-proj__img{margin:0;overflow:hidden;background:var(--ink);aspect-ratio:16/11}
.mf-proj__img img{display:block;width:100%;height:100%;object-fit:cover}
@media (min-width:900px){
  .mf-proj__head{padding-top:clamp(calc(var(--s-9) + var(--s-2)),12vw,calc(var(--s-9) + var(--s-6)))}
  .mf-proj__hero{grid-template-columns:minmax(0,5fr) minmax(0,7fr);min-height:min(62vh,640px)}
  .mf-proj__hero .mf-h1{font-size:clamp(40px,4.8vw,80px)}
  .mf-proj__img{aspect-ratio:4/3}
}
@media (max-width:899px){
  .mf-proj__head{padding-top:calc(var(--s-9) - var(--s-2))}
  .mf-proj__img{margin:0 calc(var(--pad-x) * -1 + var(--s-3))}
}

/* ---------- Hero na mobilu: tlačítka dole, ať nejsou přes obličej. Ohnisko fotky na mobilu zvlášť (--fxm/--fym) ---------- */
@media (max-width:767px){
  .mf-hero{padding-bottom:var(--s-6)}
  .mf-hero__inner{flex:1;display:flex;flex-direction:column}
  .mf-hero.is-btn-bottom .mf-actions{margin-top:auto;padding-top:var(--s-5)}
  .mf-hero__fixed img{object-position:var(--fxm,var(--fx,72%)) var(--fym,var(--fy,35%))}
}

/* ---------- Před a po: mobilní verze na výšku, nápověda, že se s tím dá posouvat ---------- */
@media (max-width:640px){.mf-compare.has-mobile{aspect-ratio:var(--ratio-m,9 / 16) !important}}
.mf-compare__knob{transition:transform 250ms var(--ease-out)}
.mf-compare__knob::after{content:"";position:absolute;inset:-1px;border:1px solid var(--divinity);opacity:0;pointer-events:none}
.mf-compare.is-hint .mf-compare__knob::after{animation:mfPing 1.4s var(--ease-out) 3}
@keyframes mfPing{0%{transform:scale(1);opacity:.9}100%{transform:scale(1.9);opacity:0}}
.mf-compare__hint{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);padding:var(--s-1) var(--s-3);background:var(--abyss-veil);color:var(--divinity);font-size:var(--t-label);font-weight:600;letter-spacing:.06em;white-space:nowrap;pointer-events:none;transition:opacity 400ms ease}
.mf-compare.is-used .mf-compare__hint{opacity:0}
.mf-compare.is-dragging .mf-compare__knob{transform:scale(1.08)}

/* ---------- Stoh na dotyku: bez připínání, karty pod sebou a ta uprostřed obrazovky se rozsvítí a srovná (app.js nastavuje --d) ---------- */
.mf-stack__dim{position:absolute;inset:0;background:var(--abyss);opacity:0;pointer-events:none}
@media (hover:none) and (pointer:coarse){
  html.mf-js .mf-stack{height:auto}
  html.mf-js .mf-stack__sticky{position:static;height:auto;overflow:visible;display:grid;gap:var(--s-5);padding:0 var(--pad-x);perspective:1400px}
  html.mf-js .mf-stack__card{position:relative;left:auto;top:auto;width:100%;margin:0 auto;transform-origin:50% 50%;will-change:transform;
    transform:scale(calc(1 - var(--ad,0) * .07)) rotateX(calc(var(--d,0) * -7deg)) translate3d(0,0,0)}
  html.mf-js .mf-stack__card img{inset:-8% 0;height:116%;transform:translate3d(0,calc(var(--d,0) * -6%),0);will-change:transform}
  html.mf-js .mf-stack__card .mf-stack__dim{opacity:calc(var(--ad,0) * .65)}
  html.mf-js .mf-stack__card .mf-stack__txt{transform:translate3d(0,calc(max(0,var(--d,0)) * 28px),0);opacity:calc(1 - max(0,var(--ad,0) - .35) * 1.6)}
  html.mf-js .mf-projects__after{margin-top:0 !important}
}
.mf-arrow--back{transform:scaleX(-1)}
.mf-header__nav a .mf-arrow{width:1.2em}
.mf-header__cta .mf-arrow,.mf-mmenu__cta .mf-arrow{width:1.35em;transition:transform 350ms var(--ease-out)}
.mf-header__cta:hover .mf-arrow{transform:translateX(4px)}
/* Před a po: snímky webů se nikdy neoříznou nahoře (hlavička webu musí být vidět), případný ořez jde jen dole */
.mf-compare img{object-position:50% 0}
/* ---------- Detail projektu: hero přes celou šířku, název leží na obrázku vlevo dole (29. 9.) ---------- */
.mf-proj__head.has-img{position:relative;display:flex;align-items:flex-end;min-height:max(560px,min(100svh,56.25vw));padding:calc(var(--s-9) + var(--s-2)) var(--pad-x) clamp(var(--s-6),6vw,var(--s-8));overflow:hidden;background:var(--ink)}
.mf-proj__bg{position:absolute;inset:0}
.mf-proj__bg picture,.mf-proj__bg img{display:block;width:100%;height:100%}
.mf-proj__bg img{object-fit:cover;object-position:var(--hero-pos,50% 50%);animation:mfHeroIn 1600ms cubic-bezier(.2,.7,.2,1) both}
@keyframes mfHeroIn{from{transform:scale(1.06)}to{transform:none}}
.mf-proj__shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to top,color-mix(in srgb,var(--abyss) 88%,transparent) 0%,color-mix(in srgb,var(--abyss) 55%,transparent) 30%,transparent 62%),linear-gradient(90deg,color-mix(in srgb,var(--abyss) 45%,transparent) 0%,transparent 55%),linear-gradient(180deg,color-mix(in srgb,var(--abyss) 40%,transparent) 0%,transparent 22%)}
.mf-proj__head.has-img .mf-proj__intro{position:relative;width:100%;text-shadow:0 1px 24px color-mix(in srgb,var(--abyss) 70%,transparent)}
.mf-proj__head.has-img .mf-proj__lead{color:var(--sanctuary)}
.mf-proj__meta{padding:clamp(var(--s-5),4vw,var(--s-6)) var(--pad-x) 0}
.mf-proj__meta .mf-proj__facts{margin-top:0}
@media (max-width:767px){
  .mf-proj__head.has-img{min-height:88svh;padding-bottom:var(--s-6)}
  .mf-proj__shade{background:linear-gradient(to top,color-mix(in srgb,var(--abyss) 92%,transparent) 0%,color-mix(in srgb,var(--abyss) 60%,transparent) 35%,transparent 65%),linear-gradient(180deg,color-mix(in srgb,var(--abyss) 45%,transparent) 0%,transparent 20%)}
}
@media (prefers-reduced-motion:reduce){.mf-proj__bg img{animation:none}}
/* ---------- Klidný drift záře za kontaktem a patičkou (Přizpůsobit → Záře u kontaktu a patičky) ---------- */
div.mf-cfx{display:none}
body.mf-cfx-on div.mf-cfx{display:block;position:absolute;left:0;right:0;top:0;bottom:-70vh;z-index:0;overflow:hidden;pointer-events:none;opacity:var(--cfx-op,.4)}
.mf-cfx span{position:absolute;width:var(--cfx-size,70vw);aspect-ratio:1;border-radius:50%;will-change:transform}
.mf-cfx span:nth-child(1){left:48%;top:38%;background:radial-gradient(circle,color-mix(in srgb,var(--cfx-a) 34%,transparent),transparent 62%);animation:mfCfx1 var(--cfx-speed,26s) ease-in-out infinite alternate}
.mf-cfx span:nth-child(2){left:8%;top:52%;background:radial-gradient(circle,color-mix(in srgb,var(--cfx-b) 26%,transparent),transparent 60%);animation:mfCfx2 calc(var(--cfx-speed,26s) * 1.3) ease-in-out infinite alternate}
.mf-cfx span:nth-child(3){left:62%;top:70%;width:calc(var(--cfx-size,70vw) * .7);background:radial-gradient(circle,color-mix(in srgb,var(--cfx-a) 22%,transparent),transparent 60%);animation:mfCfx3 calc(var(--cfx-speed,26s) * .8) ease-in-out infinite alternate}
@keyframes mfCfx1{0%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-38%,-58%) scale(1.12)}100%{transform:translate(-62%,-44%) scale(.95)}}
@keyframes mfCfx2{0%{transform:translate(-50%,-50%) scale(.9)}100%{transform:translate(-30%,-62%) scale(1.15)}}
@keyframes mfCfx3{0%{transform:translate(-50%,-50%) scale(1.05)}100%{transform:translate(-72%,-40%) scale(.9)}}
body.mf-cfx-on .mf-contact .mf-wrap{z-index:1}
body.mf-cfx-on .mf-contact__bg{z-index:0}
body.mf-cfx-on .mf-footer{z-index:1}
@media (prefers-reduced-motion:reduce){.mf-cfx span{animation:none !important}}

/* ---------- Stoh: šířka obsahu a hover ---------- */
html.mf-js .mf-stack__card{width:min(var(--wrap),calc(100vw - 2 * var(--pad-x)),125vh)}
.mf-stack__side{display:flex;flex-direction:column;align-items:flex-end;gap:var(--s-2)}
.mf-stack__go{display:inline-flex;align-items:center;gap:var(--s-2);font-weight:600;font-size:var(--t-small);color:var(--gold-a);opacity:0;transform:translateX(-10px);transition:opacity 400ms ease,transform 500ms var(--ease-out)}
.mf-stack__card img{transition:transform 1100ms var(--ease-out)}
.mf-stack__grad{transition:opacity 500ms ease}
.mf-stack__name{transition:transform 500ms var(--ease-out)}
@media (hover:hover){
  .mf-stack__card:hover img{transform:scale(1.045)}
  .mf-stack__card:hover .mf-stack__go{opacity:1;transform:none}
  .mf-stack__card:hover .mf-stack__name{transform:translateX(6px)}
  .mf-stack__card:hover .mf-stack__go .mf-arrow{animation:mfNudge 1.4s var(--ease-out) .3s infinite}
}
@keyframes mfNudge{0%,60%,100%{transform:none}30%{transform:translateX(5px)}}
@media (max-width:640px){.mf-stack__side{align-items:flex-start}}
@media (hover:none){.mf-stack__go{display:none}}
/* ---------- Šipky jako na artu (tenká vyplněná šipka), přepisuje dřívější obrysovou šipku ---------- */
.mf-arrow{width:auto;height:.8em;aspect-ratio:217.5/300;fill:currentColor;stroke:none;vertical-align:-.06em}
.mf-arrow--back{transform:none}
.mf-btn .mf-arrow,.mf-header__cta .mf-arrow,.mf-mmenu__cta .mf-arrow,.mf-header__nav a .mf-arrow{width:auto;height:.78em;margin-left:4px}
.mf-header__nav a .mf-arrow--back{margin:0 4px 0 0}
.mf-next__name .mf-arrow{width:auto;height:.62em;margin-left:.08em}
.mf-stack__go .mf-arrow,.mf-svc__link .mf-arrow{height:.8em}
