/* MatchFast listing template (pilot). Adapted from the approved reference.
   Everything lives under .mfl with its own tokens, and page-level overrides
   are scoped to body.mfl-page so nothing outside flagged listings changes.
   The engine prints its own style blocks in the BODY, so overrides here win
   on specificity (body.mfl-page ...), never on source order. */

body.mfl-page .site-main{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}
body.mfl-page .page-header,body.mfl-page h1.entry-title{display:none}
body.mfl-page .page-content{margin:0!important;padding:0!important}

.mfl{
  --bg:#070A12;--surface:#0E1222;--glass:rgba(255,255,255,.035);--glass2:rgba(255,255,255,.06);
  --line:rgba(255,255,255,.10);--line2:rgba(255,255,255,.16);
  --text:#F8FAFF;--text2:rgba(248,250,255,.66);--text3:rgba(248,250,255,.5);
  --royal:#4F46FF;--royal-hi:#635BFF;--sky:#3B82F6;--accent:#93B4FB;
  --good:#5FD39A;--bad:#F2828C;--amber:#E0A230;
  --fd:'DM Sans','Inter',system-ui,sans-serif;--fb:'Inter',system-ui,sans-serif;
  --fm:'JetBrains Mono',ui-monospace,Consolas,monospace;
  --gutter:clamp(16px,4vw,32px);
  background:var(--bg);color:var(--text);font:400 16px/1.6 var(--fb);-webkit-font-smoothing:antialiased;
}
.mfl *,.mfl *::before,.mfl *::after{box-sizing:border-box}
.mfl a{color:inherit;text-decoration:none}
.mfl h1,.mfl h2,.mfl h3{font-family:var(--fd);margin:0;text-wrap:balance;color:var(--text)}
.mfl p,.mfl dl,.mfl dd{margin:0}
.mfl ul,.mfl ol{margin:0;padding:0;list-style:none}
.mfl-wrapin{width:100%;max-width:1244px;margin-inline:auto;padding-inline:var(--gutter)}
.mfl .eyebrow{font:500 11.5px/1 var(--fm);letter-spacing:.12em;text-transform:uppercase;color:var(--text3)}

/* buttons */
.mfl .mfl-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin:0;padding:11px 20px;border:1px solid transparent;border-radius:100px;font:600 14.5px/1 var(--fd);white-space:nowrap;cursor:pointer;text-transform:none;letter-spacing:0;transition:background .15s,border-color .15s,color .15s}
.mfl .mfl-primary{background:var(--royal);color:#fff}
.mfl .mfl-primary:hover{background:var(--royal-hi);color:#fff}
.mfl .mfl-ghost{background:transparent;border-color:var(--line2);color:var(--text)}
.mfl .mfl-ghost:hover{background:var(--glass2);border-color:rgba(255,255,255,.3);color:#fff}
.mfl .mfl-block{display:flex;width:100%;margin-top:14px}
/* The engine styles .bor-compare-add as an absolute chip pinned to the hero's
   corner; inside this template it is an ordinary button in the CTA row. */
.mfl .mfl-btn.bor-compare-add{position:static!important;inset:auto!important;width:auto!important;height:auto!important;
  padding:11px 20px!important;border:1px solid var(--line2)!important;border-radius:100px!important;background:transparent!important;
  color:var(--text)!important;font:600 14.5px/1 var(--fd)!important;box-shadow:none!important;transform:none!important}
.mfl .mfl-btn.bor-compare-add:hover{background:var(--glass2)!important;border-color:rgba(255,255,255,.3)!important;color:#fff!important}
.mfl .mfl-btn.bor-compare-add.mfl-block{display:flex!important;width:100%!important}

/* hero */
.mfl-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:linear-gradient(rgba(30,27,75,.55),transparent 360px),var(--bg)}
.mfl-hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(640px 300px at 88% -10%,rgba(79,70,255,.32),transparent 70%),radial-gradient(520px 260px at 4% 6%,rgba(59,130,246,.15),transparent 72%)}
.mfl-hero .mfl-wrapin{position:relative;z-index:1;padding-block:28px 44px}
.mfl-crumbs{display:flex;align-items:center;gap:9px;margin-bottom:32px;font:400 13px/1 var(--fb);color:var(--text3)}
.mfl-crumbs a:hover{color:var(--text)}
.mfl-crumbs i{font-style:normal;opacity:.5}
.mfl-crumbs span{color:var(--text2)}
.mfl-hgrid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:0 64px;align-items:end}
.mfl-ident{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:28px;align-items:start}
.mfl-mark{display:grid;place-items:center;width:92px;height:92px;border-radius:26px;background:#fff;color:#0E1222;font:800 32px/1 var(--fd);letter-spacing:-.04em;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2),0 26px 50px -22px rgba(79,70,255,.8)}
.mfl-mark img{width:100%;height:100%;object-fit:contain;padding:10px}
.mfl-badges{display:flex;flex-wrap:wrap;gap:8px;min-height:1px}
.mfl-badge{padding:6px 11px;border:1px solid rgba(147,180,251,.3);border-radius:100px;background:rgba(79,70,255,.1);font:500 10.5px/1 var(--fm);letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
a.mfl-badge:hover{border-color:rgba(147,180,251,.6);color:#fff}
.mfl-badge.feat{border-color:rgba(224,162,48,.45);background:rgba(224,162,48,.12);color:#F0C36A}
.mfl .mfl-h1{margin-top:15px;font-weight:800;font-size:clamp(2.5rem,1.4rem + 4.4vw,4.1rem);line-height:1;letter-spacing:-.042em}
.mfl-grad{background:linear-gradient(104deg,#F8FAFF 16%,#3B82F6 52%,#E9D8FF 88%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.mfl-tagline{max-width:54ch;margin-top:14px;font-size:clamp(1.02rem,.96rem + .3vw,1.18rem);line-height:1.55;color:var(--text2);text-wrap:pretty}
.mfl-score{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:18px;font-variant-numeric:tabular-nums}
.mfl-stars{flex:none}
.mfl-stars .off path{fill:none;stroke:rgba(147,180,251,.5);stroke-width:1.3;stroke-linejoin:round}
.mfl-stars .on path{fill:var(--accent)}
.mfl-score b{font:700 17px/1 var(--fd)}
.mfl-score small{font:400 13.5px/1 var(--fb);color:var(--text3)}
.mfl-prov{flex:1 0 100%;margin-top:2px;font:400 12.5px/1.45 var(--fb);color:var(--text3)}
.mfl-ctas{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}

.mfl-facts > div{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-block:13px;border-top:1px solid var(--line)}
.mfl-facts > div:last-child{border-bottom:1px solid var(--line)}
.mfl-facts dt{flex:none;font:500 10.5px/1 var(--fm);letter-spacing:.12em;text-transform:uppercase;color:var(--text3)}
.mfl-facts dd{text-align:right;font:600 15.5px/1.3 var(--fd);font-variant-numeric:tabular-nums;color:var(--text)}
.mfl-facts dd a{border-bottom:1px solid rgba(147,180,251,.4);color:var(--accent)}
.mfl-facts dd a:hover{color:#fff}

.mfl-shotwrap{padding-top:34px}
.mfl-shot{position:relative;display:block;overflow:hidden;max-height:392px;aspect-ratio:16/7;border:1px solid var(--line);border-radius:16px;background:linear-gradient(140deg,hsl(var(--h,250) 60% 22%),hsl(calc(var(--h,250) + 40) 52% 8%))}
.mfl-shot img{width:100%;height:100%;object-fit:cover}
.mfl-shot .gh{position:absolute;inset:0;display:grid;place-items:center;font:800 clamp(40px,7vw,78px)/1 var(--fd);letter-spacing:-.05em;color:rgba(255,255,255,.17)}

/* page grid */
.mfl-pagegrid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:0 64px;align-items:start;padding-top:12px}
.mfl-pagegrid.lhs{grid-template-columns:286px minmax(0,1fr);gap:0 56px}
.mfl-doc{min-width:0}
.mfl-sec{padding-block:38px;border-top:1px solid var(--line)}
.mfl-doc > .mfl-sec:first-child{border-top:0}
.mfl-sec > h2{font:700 20.5px/1.3 var(--fd);letter-spacing:-.012em;margin-bottom:17px}
.mfl-sec p{color:var(--text2);text-wrap:pretty}
.mfl-sec p.lead{font-size:clamp(1.05rem,.98rem + .4vw,1.2rem);line-height:1.68;color:var(--text)}
.mfl-sec p + p{margin-top:14px}
.mfl-sec.tworow{display:grid;grid-template-columns:168px minmax(0,1fr);column-gap:32px}
.mfl-sec.tworow > h2{font-size:18.5px;margin-bottom:0;padding-top:2px}

/* rail */
.mfl-rail{position:sticky;top:84px;padding-top:38px}
.mfl-pagegrid.lhs .mfl-rail{order:-1}
.mfl-idcard,.mfl-rcard{padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--glass)}
.mfl-rcard{background:linear-gradient(160deg,rgba(79,70,255,.18),transparent 62%),var(--glass)}
.mfl-rcard .note{margin-top:9px;font:400 13.5px/1.5 var(--fb);color:var(--text2)}
.mfl-idcard .top{display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:13px;align-items:center}
.mfl-tile{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#fff;color:#0E1222;font:800 17px/1 var(--fd);overflow:hidden}
.mfl-tile img{width:100%;height:100%;object-fit:contain;padding:5px}
.mfl-idcard h2{font:700 17px/1.2 var(--fd)}
.mfl-idcard .role{margin-top:3px;font:400 12.5px/1.4 var(--fb);color:var(--text3)}
.mfl-vchip{display:flex;justify-content:center;margin-top:9px;padding:9px 12px;border:1px solid rgba(95,211,154,.3);border-radius:100px;background:rgba(95,211,154,.08);font:500 11.5px/1 var(--fm);letter-spacing:.1em;text-transform:uppercase;color:var(--good)}
.mfl-toc{margin-top:18px;padding:8px 10px;border:1px solid var(--line);border-radius:18px;background:var(--glass)}
.mfl-toc h3{padding:8px 10px 9px;font:500 11px/1 var(--fm);letter-spacing:.12em;text-transform:uppercase;color:var(--text3)}
.mfl-toc a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;font:500 13.5px/1.35 var(--fb);color:var(--text2)}
.mfl-toc a:hover{background:var(--glass2);color:var(--text)}
.mfl-toc a i{flex:none;width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.5}
.mfl-railcta{margin-top:18px;padding:18px 19px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(160deg,rgba(79,70,255,.16),transparent 64%)}
.mfl-railcta p{margin-top:9px;font:400 13.5px/1.55 var(--fb);color:var(--text2)}
.mfl-railcta .eyebrow{margin-top:0}
.mfl-rblock{margin-top:26px;padding-inline:2px}
.mfl-rblock h3{margin-bottom:10px;font:500 11.5px/1 var(--fm);letter-spacing:.12em;text-transform:uppercase;color:var(--text3)}

/* tags */
.mfl-tags{display:flex;flex-wrap:wrap;gap:8px}
.mfl-tag{padding:7px 11px;border:1px solid var(--line2);border-radius:100px;font:500 12.5px/1 var(--fb);color:var(--text2)}
.mfl-tag:hover{background:var(--glass2);color:#fff}

/* rate block */
.mfl-rateblk{padding:20px 22px;border:1px solid var(--line);border-radius:16px;background:var(--glass)}
.mfl-rateblk .hd{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 18px}
.mfl-rateblk .hd b{font:700 19px/1.2 var(--fd);color:var(--text)}
.mfl-rateblk .hd span{font:400 13px/1.4 var(--fb);color:var(--text3)}
.mfl-rateblk .scale{position:relative;height:12px;margin-top:17px;border-radius:100px;background:linear-gradient(90deg,rgba(95,211,154,.26),rgba(224,162,48,.26) 55%,rgba(242,130,140,.26))}
.mfl-rateblk .scale i{position:absolute;top:-4px;bottom:-4px;left:var(--a);right:var(--b);border-radius:100px;background:var(--accent);box-shadow:0 0 0 1px rgba(7,10,18,.6)}
.mfl-rateblk .ends{display:flex;justify-content:space-between;margin-top:15px;font:500 11.5px/1 var(--fm);color:var(--text3)}
.mfl-rateblk .read{margin-top:16px;padding-top:15px;border-top:1px solid var(--line);font:400 14.5px/1.6 var(--fb);color:var(--text2)}

/* expertise */
.mfl-exp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.mfl-expbox{padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--glass)}
.mfl-expbox.wide{grid-column:1/-1}
.mfl-expbox h3{margin-bottom:12px;font:500 11.5px/1 var(--fm);letter-spacing:.12em;text-transform:uppercase;color:var(--text3)}
.mfl-expnote{grid-column:1/-1;font:400 13.5px/1.55 var(--fb);color:var(--text3)}
.mfl-splitrow{display:grid;grid-template-columns:minmax(0,1fr) 2fr 44px;gap:12px;align-items:center;margin-top:9px;font:500 13px/1.3 var(--fb);color:var(--text2)}
.mfl-splitrow .bar{height:8px;border-radius:99px;background:rgba(255,255,255,.07)}
.mfl-splitrow .bar i{display:block;height:100%;border-radius:99px;background:var(--accent)}
.mfl-splitrow em{font-style:normal;text-align:right;color:var(--text)}

/* group cards */
.mfl-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.mfl-card{padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--glass)}
.mfl-card h3{font:700 15px/1.3 var(--fd)}
.mfl-card b{font:700 14px/1.3 var(--fd);color:var(--text)}
.mfl-card em{display:block;margin-top:4px;font:400 12px/1.4 var(--fb);font-style:normal;color:var(--text3)}
.mfl-card p{margin-top:8px;font:400 13.5px/1.5 var(--fb);color:var(--text2)}
.mfl-card.s{display:flex;flex-direction:column;justify-content:center;min-height:72px;text-align:center}

/* reviews */
.mfl-ratesum{display:grid;grid-template-columns:200px minmax(0,1fr);gap:16px;align-items:stretch}
.mfl-bigscore{display:grid;align-content:center;justify-items:center;gap:8px;padding:24px 16px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(160deg,rgba(224,162,48,.1),transparent 70%)}
.mfl-bigscore b{font:800 44px/1 var(--fd);letter-spacing:-.045em}
.mfl-bigscore small{font:400 13px/1.4 var(--fb);color:var(--text3);text-align:center}
.mfl-dist{display:grid;align-content:center;gap:9px;padding:20px 22px;border:1px solid var(--line);border-radius:14px;background:var(--glass)}
.mfl-dist .r{display:grid;grid-template-columns:14px minmax(0,1fr) 42px;align-items:center;column-gap:12px;font:500 12.5px/1 var(--fm);color:var(--text3)}
.mfl-dist .bar{height:8px;border-radius:100px;background:rgba(255,255,255,.07)}
.mfl-dist .bar i{display:block;height:100%;border-radius:100px;background:var(--amber)}
.mfl-dist .r em{font-style:normal;text-align:right}
.mfl-dist.nodist{align-content:center}
.mfl-dist.nodist p{font:400 14px/1.55 var(--fb);color:var(--text2)}
.mfl-revnote{margin-bottom:14px;font:400 13.5px/1.55 var(--fb);color:var(--text3)}
.mfl-revhost{margin:0}
/* the injected module is a light card; give it a frame that sits on this page */
.mfl .mfrev{max-width:none;margin:0;padding:0}
.mfl .mfrev-box{border-radius:14px}

/* offices */
.mfl-offices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.mfl-office{position:relative;padding:18px 19px;border:1px solid var(--line);border-radius:14px;background:var(--glass)}
.mfl-office .hqflag{display:inline-block;margin-bottom:12px;padding:5px 10px;border:1px solid rgba(224,162,48,.45);border-radius:100px;background:rgba(224,162,48,.12);font:500 10px/1 var(--fm);letter-spacing:.1em;text-transform:uppercase;color:#F0C36A}
.mfl-office h3{font:700 16.5px/1.25 var(--fd)}
.mfl-office p{margin-top:6px;font:400 13.5px/1.5 var(--fb);color:var(--text2)}

/* what we checked */
.mfl-checkhead{margin-bottom:10px;color:var(--text2)}
.mfl-check li{display:grid;grid-template-columns:18px minmax(0,1fr);column-gap:11px;align-items:start;padding-block:12px;border-top:1px solid var(--line);font:400 14.5px/1.45 var(--fb);color:var(--text2)}
.mfl-check li:first-child{border-top:0;padding-top:0}
.mfl-check i{margin-top:3px;display:grid;place-items:center;width:15px;height:15px;border-radius:50%;font-style:normal;font-size:9px;line-height:1}
.mfl-check .yes{background:rgba(95,211,154,.16);color:var(--good)}
.mfl-check .no{background:rgba(255,255,255,.07);color:var(--text3)}
.mfl-check li:has(.yes) span{color:var(--text)}

/* linked directories */
.mfl-dirs{border:1px solid var(--line);border-radius:16px;background:var(--glass);overflow:hidden}
.mfl-dirs details{border-top:1px solid var(--line)}
.mfl-dirs details:first-child{border-top:0}
.mfl-dirs summary{padding:17px 20px;font:600 15.5px/1.3 var(--fd);color:var(--text);cursor:pointer;list-style:none}
.mfl-dirs summary::-webkit-details-marker{display:none}
.mfl-dirs summary::after{content:"\203A";float:right;transform:rotate(90deg);color:var(--text3);transition:transform .18s}
.mfl-dirs details[open] summary::after{transform:rotate(-90deg)}
.mfl-dirs summary:hover{background:var(--glass2)}
.mfl-dirs .panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 32px;padding:4px 20px 22px}
.mfl-dirs .panel h4{margin:0 0 11px;padding-bottom:8px;border-bottom:1px solid var(--line);font:500 10.5px/1 var(--fm);letter-spacing:.11em;text-transform:uppercase;color:var(--text3)}
.mfl-dirs .panel li{margin-top:9px}
.mfl-dirs .panel li a{font:400 14px/1.45 var(--fb);color:var(--text2)}
.mfl-dirs .panel li a:hover{color:var(--text)}
.mfl-dirs .panel .more{display:inline-block;margin-top:13px;border-bottom:1px solid rgba(147,180,251,.45);font:500 13.5px/1.4 var(--fb);color:var(--accent)}

/* featured */
.mfl-fgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.mfl-fcard{display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:12px;row-gap:2px;align-items:center;padding:13px 15px;border:1px solid var(--line);border-radius:13px;background:var(--glass)}
.mfl-fcard:hover{background:var(--glass2);border-color:var(--line2)}
.mfl-fcard .tile{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:linear-gradient(145deg,hsl(var(--h,250) 58% 34%),hsl(calc(var(--h,250) + 28) 50% 18%));font:800 12px/1 var(--fd);color:rgba(255,255,255,.86)}
.mfl-fcard b{font:700 14.5px/1.25 var(--fd);color:var(--text)}
.mfl-fcard .cat{font:500 10.5px/1 var(--fm);letter-spacing:.1em;text-transform:uppercase;color:var(--text3)}

/* promote */
.mfl-embed{padding:20px 22px;border:1px solid var(--line);border-radius:16px;background:var(--glass)}
.mfl-embed .bar{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px 22px;align-items:center}
.mfl-badgeprev{border-radius:12px}
.mfl-embed .bar p{font:400 14px/1.55 var(--fb);color:var(--text2)}
.mfl-embed pre{overflow-x:auto;margin:16px 0 0;padding:14px 16px;border:1px solid var(--line);border-radius:11px;background:rgba(7,10,18,.6)}
.mfl-embed code{font:500 12.5px/1.6 var(--fm);color:var(--accent);white-space:pre}

/* tool folds */
.mfl-subhead{margin-bottom:14px;font:700 16px/1.3 var(--fd);color:var(--text)}
.mfl-feats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mfl-feat{display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:13px;row-gap:10px;align-items:center;padding:16px 17px;border:1px solid var(--line);border-radius:13px;background:var(--glass)}
.mfl-feat p{grid-column:1/-1;font:400 13.5px/1.55 var(--fb);color:var(--text2)}
.mfl-feat .fi{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(79,70,255,.18);color:var(--accent)}
.mfl-feat .fi svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.mfl-feat h3{font:600 14.5px/1.35 var(--fd)}
.mfl-pc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.mfl-pcbox{padding:20px;border:1px solid var(--line);border-radius:14px}
.mfl-pcbox.pros{background:linear-gradient(160deg,rgba(95,211,154,.09),transparent 70%)}
.mfl-pcbox.cons{background:linear-gradient(160deg,rgba(242,130,140,.09),transparent 70%)}
.mfl-pcbox h3{margin-bottom:6px;font:500 11.5px/1 var(--fm);letter-spacing:.12em;text-transform:uppercase}
.mfl-pcbox.pros h3{color:var(--good)}
.mfl-pcbox.cons h3{color:var(--bad)}
.mfl-pcbox li{position:relative;margin-top:11px;padding-left:24px;font:500 15px/1.45 var(--fb);color:var(--text)}
.mfl-pcbox li::before{position:absolute;left:0;top:0;font-weight:600}
.mfl-pcbox.pros li::before{content:"+";color:var(--good)}
.mfl-pcbox.cons li::before{content:"\2013";color:var(--bad)}
.mfl-faq > div{display:grid;grid-template-columns:38px minmax(0,1fr);column-gap:16px;padding-block:18px;border-top:1px solid var(--line)}
.mfl-faq > div:first-child{padding-top:0;border-top:0}
.mfl-faq .q{grid-row:1/3;font:500 12.5px/1.5 var(--fm);color:var(--text3)}
.mfl-faq dt{font:600 16.5px/1.4 var(--fd);color:var(--text)}
.mfl-faq dd{margin-top:7px;color:var(--text2)}
.mfl-pull{font:500 clamp(1.1rem,1rem + .4vw,1.24rem)/1.45 var(--fd);color:var(--text)}
.mfl-rows li{display:grid;grid-template-columns:150px minmax(0,1fr);column-gap:28px;padding-block:14px;border-top:1px solid var(--line)}
.mfl-rows li:first-child{padding-top:0;border-top:0}
.mfl-rows b{font:700 15.5px/1.4 var(--fd);color:var(--text)}
.mfl-rows p{color:var(--text2)}

/* band + similar */
.mfl-band{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;margin-top:64px;margin-bottom:24px;padding:26px 32px;border:1px solid var(--line2);border-radius:18px;background:linear-gradient(110deg,rgba(79,70,255,.22),var(--surface) 62%)}
.mfl-band h2{font:700 20px/1.25 var(--fd)}
.mfl-band p{margin-top:5px;font:400 14.5px/1.5 var(--fb);color:var(--text2)}
.mfl-sim{margin-top:40px;padding-bottom:64px}
.mfl-sim h2{font-weight:800;font-size:clamp(1.45rem,1.2rem + .9vw,1.8rem)}
.mfl-sim > p{margin-top:9px;color:var(--text2)}
.mfl-simgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:20px}
.mfl-sc{display:flex;flex-direction:column;gap:10px;padding:14px 14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--glass)}
.mfl-sc:hover{background:var(--glass2);border-color:var(--line2)}
.mfl-sc .row{display:grid;grid-template-columns:32px minmax(0,1fr);column-gap:11px;align-items:center}
.mfl-sc .tile{display:grid;place-items:center;width:32px;height:32px;border:1px solid rgba(99,91,255,.5);border-radius:10px;background:linear-gradient(145deg,rgba(79,70,255,.4),rgba(79,70,255,.1));font:800 12px/1 var(--fd);color:#DDE0FF}
.mfl-sc h3{font:700 14.5px/1.25 var(--fd)}
.mfl-sc h3 a:hover{color:var(--accent)}
.mfl-sc .rate{display:flex;align-items:center;gap:5px;margin-top:3px}
.mfl-sc .rate b{font:700 12.5px/1 var(--fd)}
.mfl-sc > p{font:400 13px/1.5 var(--fb);color:var(--text2)}

/* responsive */
@media(max-width:1080px){
  .mfl-hgrid{grid-template-columns:minmax(0,1fr);gap:34px}
  .mfl-facts{max-width:480px}
  .mfl-pagegrid,.mfl-pagegrid.lhs{grid-template-columns:minmax(0,1fr)}
  .mfl-rail{position:static;padding-top:18px}
  .mfl-idcard{display:none}
  .mfl-toc{margin-top:0;padding:6px}
  .mfl-toc h3{display:none}
  .mfl-toc nav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}
  .mfl-toc nav::-webkit-scrollbar{display:none}
  .mfl-toc a{flex:none;white-space:nowrap}
  .mfl-cards,.mfl-offices,.mfl-fgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mfl-simgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:759px){
  .mfl-hero .mfl-wrapin{padding-block:22px 34px}
  .mfl-crumbs{margin-bottom:24px}
  .mfl-ident{grid-template-columns:minmax(0,1fr);row-gap:20px}
  .mfl-mark{width:70px;height:70px;border-radius:20px;font-size:25px}
  .mfl-facts{max-width:none}
  .mfl-sec{padding-block:30px}
  .mfl-sec.tworow{grid-template-columns:minmax(0,1fr);row-gap:15px}
  .mfl-exp,.mfl-pc,.mfl-feats,.mfl-cards,.mfl-offices,.mfl-fgrid,.mfl-dirs .panel,.mfl-ratesum,.mfl-simgrid{grid-template-columns:minmax(0,1fr)}
  .mfl-rows li{grid-template-columns:minmax(0,1fr);row-gap:5px}
  .mfl-band{margin-top:48px;padding:22px 20px}
  .mfl-embed .bar{grid-template-columns:minmax(0,1fr)}
  .mfl-ctas .mfl-btn{flex:1 1 auto}
}
@media(prefers-reduced-motion:reduce){.mfl *{animation:none!important;transition:none!important}}
