/* ===========================================================================
 * PROMOKING K10.1 — inner-page components (needs site.css first)
 * Restyles the component classes generated/maintained since K9 (.pHero, .sec,
 * .secHead, .spec, .duo, .rel, .csCard, .close …) in the K10 language, so
 * every inner page shares the homepage system without rewriting its content.
 * Sections carry data-theme="dark|light"; the header follows them.
 * ======================================================================== */

/* legacy layout + type primitives --------------------------------------- */
.k10 .wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gut)}
.k10 .mono{font-family:var(--f-mono)}
.k10 .tag{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-bottom:18px;font-family:var(--f-mono);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--mg-hi)}
.k10 .tag::before{content:"";width:28px;height:1px;background:currentColor}
/* legacy K9 text colours follow the sheet (k9-layout.css reads these) */
.k10 [data-theme=light]{--k9-hi:var(--ink);--txt:#3A3E45;--txm:var(--titanium-d)}
.k10 [data-theme=light] .tag{color:var(--mg)}
:where(.k10) :where(.sec,.close,.csSec,.csHero,.pHero) h2{font-family:var(--f-display);font-weight:800;font-size:clamp(1.9rem,4vw,3.6rem);line-height:1.04;letter-spacing:-.04em;padding-top:.12em;text-wrap:balance}
:where(.k10) :where(.sec,.close,.csSec) h3{font-family:var(--f-display);font-weight:700;letter-spacing:-.02em;line-height:1.2}
.k10 .lead{font-size:clamp(16px,1.2vw,18px);line-height:1.65;color:#C9CCD1;max-width:58ch}
.k10 [data-theme=light] .lead{color:var(--titanium-d)}

/* page hero ------------------------------------------------------------- */
.k10 .pHero{position:relative;isolation:isolate;overflow:clip;min-height:min(78vh,760px);display:flex;align-items:flex-end;
  padding-block:calc(var(--hdr-h) + 64px) clamp(56px,7vw,104px);background:var(--obsidian);color:var(--warm)}
.k10 .pHero .bg{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;opacity:.55;transform:scale(1.04);animation:k-settle 1.6s var(--ease) both}
@keyframes k-settle{from{transform:scale(1.1)}to{transform:scale(1.04)}}
.k10 .pHero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(16,17,20,.95) 0%,rgba(16,17,20,.74) 44%,rgba(16,17,20,.3) 100%),linear-gradient(0deg,var(--obsidian) 0%,transparent 45%)}
[dir=rtl] .k10 .pHero::after,.k10[dir=rtl] .pHero::after{background:linear-gradient(270deg,rgba(16,17,20,.95) 0%,rgba(16,17,20,.74) 44%,rgba(16,17,20,.3) 100%),linear-gradient(0deg,var(--obsidian) 0%,transparent 45%)}
.k10 .pHero .inner{position:relative;width:100%}
.k10 .crumb{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:24px;font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--titanium)}
.k10 .crumb a{color:inherit;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.k10 .crumb a:hover{color:var(--warm);border-color:currentColor}
.k10 .crumb span:last-child{color:var(--warm)}
.k10 .pHero h1{font-family:var(--f-display);font-weight:800;font-size:clamp(2.5rem,6.4vw,6.2rem);line-height:1;letter-spacing:-.05em;padding-top:.16em;margin:16px 0 22px;max-width:15ch;text-wrap:balance}
.k10 .pHero .lead{color:#D2D5DA;max-width:56ch}
.k10 .pMeta{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:28px;font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--titanium)}
.k10 .pMeta b{color:var(--warm);font-weight:600}
.k10 .badge{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;font-family:var(--f-mono);font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;border:1px solid}
.k10 .badge::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.k10 .badge.make{color:var(--mg-hi);border-color:rgba(238,107,168,.45);background:rgba(196,23,111,.12)}
.k10 .badge.source{color:#C3CCD8;border-color:rgba(195,204,216,.38);background:rgba(195,204,216,.08)}
.k10 [data-theme=light] .badge.make{color:var(--mg);border-color:rgba(196,23,111,.35);background:rgba(196,23,111,.06)}
.k10 [data-theme=light] .badge.source{color:#3E4A5A;border-color:rgba(62,74,90,.3);background:rgba(62,74,90,.06)}
@media (max-width:760px){.k10 .pHero{min-height:0;padding-top:calc(var(--hdr-h) + 40px)}}

/* sections -------------------------------------------------------------- */
.k10 .sec{position:relative;padding-block:clamp(72px,9vw,136px);background:var(--obsidian);color:var(--warm)}
.k10 .sec.tight{padding-block:clamp(56px,7vw,104px)}
.k10 .sec[data-theme=light]{background:var(--warm);color:var(--ink)}
.k10 .sec.k-sheet,.k10 .close.k-sheet{border-radius:var(--r-lg) var(--r-lg) 0 0;margin-top:calc(var(--r-lg) * -1);z-index:1}
.k10 .secHead{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(20px,4vw,64px);align-items:end;margin-bottom:clamp(30px,4vw,56px)}
.k10 .secHead > *{min-width:0}
@media (max-width:860px){.k10 .secHead{grid-template-columns:minmax(0,1fr);align-items:start}}

/* customisation grid ---------------------------------------------------- */
.k10 .spec{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.k10 .spec > div{padding:26px 24px;border-radius:var(--r);border:1px solid var(--line-d);background:rgba(245,244,240,.03);transition:border-color .3s,transform .5s var(--ease)}
.k10 .spec > div:hover{border-color:var(--line-d2);transform:translateY(-3px)}
.k10 .spec .sk{font-family:var(--f-mono);font-size:10.5px;font-weight:600;letter-spacing:.14em;color:var(--mg-hi);margin-bottom:14px}
.k10 .spec h3{font-size:20px;margin-bottom:8px}
.k10 .spec p:not(.sk){color:var(--titanium);font-size:15px;line-height:1.55}
.k10 [data-theme=light] .spec > div{background:#fff;border-color:var(--line-l)}
.k10 [data-theme=light] .spec .sk{color:var(--mg)}
.k10 [data-theme=light] .spec p:not(.sk){color:var(--titanium-d)}
@media (max-width:900px){.k10 .spec{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.k10 .spec{grid-template-columns:minmax(0,1fr)}}

/* two figures ----------------------------------------------------------- */
.k10 .duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.k10 .duo figure{position:relative;margin:0;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/3;background:var(--graphite)}
.k10 .duo img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.k10 .duo figure:hover img{transform:scale(1.03)}
.k10 .duo figcaption{position:absolute;inset-inline-start:14px;bottom:14px;max-width:calc(100% - 28px);display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(16,17,20,.74);color:#fff;font-family:var(--f-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.k10 .duo figcaption::before{content:"";width:7px;height:7px;border-radius:50%;background:#25D366;flex:none}
@media (max-width:700px){.k10 .duo{grid-template-columns:minmax(0,1fr)}}

/* related categories ---------------------------------------------------- */
.k10 .rel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.k10 .rel a{display:flex;flex-direction:column;gap:8px;min-height:170px;padding:22px;border-radius:var(--r);border:1px solid var(--line-d);background:rgba(245,244,240,.03);transition:border-color .3s,background .3s,transform .5s var(--ease)}
.k10 .rel a:hover{border-color:var(--mg);transform:translateY(-3px)}
.k10 .rel .rk{font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;color:var(--titanium)}
.k10 .rel h3{font-size:21px;margin-top:auto}
.k10 .rel .rn{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;color:var(--titanium)}
.k10 .rel .rn b{color:var(--mg-hi);font-weight:600}
.k10 [data-theme=light] .rel a{background:#fff;border-color:var(--line-l)}
.k10 [data-theme=light] .rel .rk,.k10 [data-theme=light] .rel .rn{color:var(--titanium-d)}
.k10 [data-theme=light] .rel .rn b{color:var(--mg)}
@media (max-width:900px){.k10 .rel{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* case-study cards ------------------------------------------------------ */
.k10 .csList{display:grid;gap:clamp(16px,2vw,28px)}
.k10 .csCard{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line-d);background:var(--graphite);transition:transform .6s var(--ease),box-shadow .5s,border-color .3s}
.k10 .csCard:hover{transform:translateY(-5px);border-color:var(--line-d2);box-shadow:0 40px 70px -44px rgba(0,0,0,.8)}
.k10 .csCard .ci{position:relative;aspect-ratio:16/10;overflow:hidden;background:#0B0C0E}
.k10 .csCard .ci img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.k10 .csCard:hover .ci img{transform:scale(1.04)}
.k10 .csCard .cb{display:flex;flex-direction:column;gap:10px;padding:clamp(22px,3vw,40px)}
.k10 .csCard .cn{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;color:var(--mg-hi)}
.k10 .csCard .cc{font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;color:var(--titanium)}
.k10 .csCard h2{font-family:var(--f-display);font-weight:800;font-size:clamp(1.6rem,2.6vw,2.5rem);line-height:1.04;letter-spacing:-.035em;margin-top:6px}
.k10 .csCard p:not(.cn):not(.cc){color:var(--titanium);font-size:15.5px}
.k10 .csCard .cg{margin-top:auto;align-self:flex-start;font-family:var(--f-mono);font-size:11.5px;font-weight:600;letter-spacing:.14em;border-bottom:1px solid currentColor;padding-bottom:4px}
.k10 [data-theme=light] .csCard{background:#fff;border-color:var(--line-l)}
.k10 [data-theme=light] .csCard .cn{color:var(--mg)}
.k10 [data-theme=light] .csCard .cc,.k10 [data-theme=light] .csCard p:not(.cn):not(.cc){color:var(--titanium-d)}
.k10 [data-theme=light] .csCard:hover{border-color:var(--line-l2);box-shadow:0 40px 60px -44px rgba(16,17,20,.45)}
@media (max-width:820px){.k10 .csCard{grid-template-columns:minmax(0,1fr)}}

/* closing CTA band ------------------------------------------------------ */
.k10 .close{position:relative;z-index:1;text-align:start;padding-block:clamp(80px,9vw,140px);color:var(--warm);
  background:radial-gradient(60% 90% at 90% 0%,rgba(196,23,111,.22),transparent 60%),var(--obsidian)}
[dir=rtl] .k10 .close,.k10[dir=rtl] .close{background:radial-gradient(60% 90% at 10% 0%,rgba(196,23,111,.22),transparent 60%),var(--obsidian)}
.k10 .close .wrap{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:16px clamp(24px,4vw,64px);align-items:end}
.k10 .close h2{grid-column:1;font-size:clamp(2.2rem,5vw,4.6rem);line-height:1.02;letter-spacing:-.045em}
.k10 .close .lead{grid-column:1;margin:0!important;color:var(--titanium)}
.k10 .close .closenote{grid-column:1;font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;color:var(--titanium)}
.k10 .close .cbtns{grid-column:2;grid-row:1 / span 3;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;align-self:end}
@media (max-width:860px){.k10 .close .wrap{grid-template-columns:minmax(0,1fr)}.k10 .close .cbtns{grid-column:1;grid-row:auto;justify-content:flex-start;margin-top:10px}}

/* legacy buttons → K10 buttons ----------------------------------------- */
.k10 .b1,.k10 .b2,.k10 .wa{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:999px;border:1px solid;
  font-family:var(--f-display);font-weight:650;font-size:15px;letter-spacing:-.01em;white-space:nowrap;transition:background .3s var(--ease),border-color .3s,color .3s,transform .5s var(--ease),box-shadow .3s}
.k10 .b1{background:var(--mg);border-color:var(--mg);color:#fff}
.k10 .b1:hover{background:#D8277F;border-color:#D8277F;box-shadow:0 12px 34px -12px rgba(196,23,111,.7)}
.k10 .b2{background:transparent;border-color:var(--line-d2);color:inherit}
.k10 .b2:hover{background:rgba(245,244,240,.06);border-color:rgba(245,244,240,.4)}
.k10 .wa{background:transparent;border-color:rgba(37,211,102,.45);color:inherit}
.k10 .wa svg{color:var(--wa)}
.k10 .wa:hover{background:rgba(37,211,102,.1);border-color:var(--wa)}
@media (max-width:480px){.k10 .cbtns > a{flex:1 1 100%}}

/* reveal for figures on legacy case pages */
@media (prefers-reduced-motion:reduce){.k10 .pHero .bg{animation:none}}

/* ===================================================== legal pages (K10.1) */
.lg-meta{margin-top:26px;font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;color:var(--titanium)}
.lg-sec{padding-block:clamp(56px,7vw,110px)}
.k10 .legal-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start}
.k10 .legal-grid .toc{position:sticky;top:calc(var(--hdr-h) + 24px);display:grid;gap:2px;padding-inline-start:16px;border-inline-start:1px solid var(--line-l2)}
.k10 .legal-grid .toc a{padding:7px 0;font-size:14px;color:var(--titanium-d);transition:color .2s}
.k10 .legal-grid .toc a:hover{color:var(--mg)}
.k10 .legal-grid .article{max-width:74ch}
.k10 .legal-grid section{padding-block:0 34px;margin-bottom:34px;border-bottom:1px solid var(--line-l);scroll-margin-top:calc(var(--hdr-h) + 20px)}
.k10 .legal-grid section:last-child{border-bottom:0}
.k10 .legal-grid h2{font-family:var(--f-display);font-weight:700;font-size:clamp(1.3rem,2vw,1.7rem);letter-spacing:-.025em;line-height:1.2;margin-bottom:14px}
.k10 .legal-grid h3{font-family:var(--f-display);font-weight:700;font-size:1.05rem;margin:18px 0 8px}
.k10 .legal-grid p,.k10 .legal-grid li,.k10 .legal-grid address{font-size:16px;line-height:1.72;color:#3A3E45;font-style:normal}
.k10 .legal-grid p+p,.k10 .legal-grid p+ul,.k10 .legal-grid ul+p{margin-top:12px}
.k10 .legal-grid ul{display:grid;gap:8px;padding-inline-start:20px;list-style:disc}
.k10 .legal-grid a{color:var(--mg);text-decoration:underline;text-underline-offset:3px}
.k10 .legal-grid table{width:100%;border-collapse:collapse;margin-top:12px;font-size:14.5px}
.k10 .legal-grid th,.k10 .legal-grid td{padding:10px 12px;border-bottom:1px solid var(--line-l);text-align:start;vertical-align:top}
.k10 .lg-btn{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;background:var(--ink);color:#fff!important;text-decoration:none!important;font-weight:600}
@media (max-width:820px){.k10 .legal-grid{grid-template-columns:minmax(0,1fr)}.k10 .legal-grid .toc{position:static;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}}

/* ======================================================== blog (K10.1) */
.bl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.6vw,24px)}
@media (max-width:1000px){.bl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.bl-grid{grid-template-columns:minmax(0,1fr)}}
.k10 .blog-card{display:flex;flex-direction:column;gap:12px;min-height:280px;padding:clamp(22px,2.4vw,32px);border-radius:var(--r-lg);background:#fff;border:1px solid var(--line-l);
  transition:transform .5s var(--ease),box-shadow .5s var(--ease),border-color .3s}
.k10 .blog-card:hover{transform:translateY(-4px);border-color:var(--line-l2);box-shadow:0 30px 50px -34px rgba(16,17,20,.45)}
.k10 .blog-card-meta{display:flex;flex-wrap:wrap;gap:8px 14px;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--titanium-d)}
.k10 .blog-cat{color:var(--mg);font-weight:600}
.k10 .blog-card-title{font-family:var(--f-display);font-weight:700;font-size:clamp(1.2rem,1.7vw,1.5rem);line-height:1.2;letter-spacing:-.025em;color:var(--ink)}
.k10 .blog-card-ex{font-size:15px;line-height:1.6;color:var(--titanium-d)}
.k10 .blog-card-more{margin-top:auto;font-family:var(--f-mono);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}
.k10 .blog-card:hover .blog-card-more{color:var(--mg)}
.bd-art{max-width:72ch}
.bd-meta{display:flex;gap:14px;font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--titanium);margin-bottom:14px}
.bd-meta:empty{display:none}
.bd-ph h1{font-size:clamp(2.1rem,4.8vw,4.2rem);max-width:22ch}
.bd-body p{font-size:17.5px;line-height:1.78;color:#33373E}
.bd-body p+p{margin-top:1.1em}
.bd-back{margin-top:40px}

/* ============================================== digital catalogue (K10.1) */
.kt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:clamp(14px,1.6vw,24px);margin-bottom:clamp(28px,3vw,44px)}
.k10 .kat-card{padding:clamp(22px,2.4vw,32px);border-radius:var(--r-lg);background:#fff;border:1px solid var(--line-l)}
.k10 .kat-card h3{font-family:var(--f-display);font-weight:700;font-size:1.35rem;letter-spacing:-.02em;margin-bottom:8px;color:var(--ink)}
.k10 .kat-card p{color:var(--titanium-d);font-size:15px}
.k10 .kat-empty{border-style:dashed;border-color:var(--line-l2);background:transparent}
.k10 .kat-soon{display:inline-block;margin-top:14px;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mg)}
.kt-alt{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media (max-width:760px){.kt-alt{grid-template-columns:minmax(0,1fr)}}
[data-theme=light] .k-route{border-color:var(--line-l);background:#fff}
[data-theme=light] .k-route:hover{border-color:var(--line-l2);background:#fff}
[data-theme=light] .k-route .k-mono{color:var(--mg)}
[data-theme=light] .k-route .k-arr{color:var(--titanium-d)}
[data-theme=light] .k-route:hover .k-arr{color:var(--ink)}

/* =================================================== manufacturing (K10.1) */
.mf-ph{min-height:min(92vh,880px);display:flex;align-items:flex-end}
.mf-ph__media img{opacity:.5;object-position:60% 50%}
.mf-ph .k-badge{margin-bottom:22px}
.mf-ph h1{max-width:13ch}
.mf-ph__in{position:relative;width:100%}
.mf-ph__cap{position:static;margin-top:34px;display:inline-flex}
.k-js .mf-ph__media img{animation:mf-settle 2.4s var(--ease) both}
@keyframes mf-settle{from{transform:scale(1.08)}to{transform:none}}
.mf-head{margin-bottom:clamp(30px,4vw,56px)}
.mf-legend{display:grid;gap:10px;margin-top:22px;font-size:14px;color:var(--titanium-d)}
.mf-legend li{display:flex;align-items:center;gap:10px}
.mf-dot.k-tagcap{position:static;width:auto;padding:0;background:none;-webkit-backdrop-filter:none;backdrop-filter:none}
.mf-dot.k-tagcap::before{width:10px;height:10px}
/* chapter index */
.mf-toc{position:sticky;top:calc(var(--hdr-h) + 10px);z-index:20;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin-bottom:clamp(40px,5vw,80px);padding:6px;border-radius:999px;
  background:rgba(255,255,255,.86);border:1px solid var(--line-l);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 18px 40px -30px rgba(16,17,20,.4)}
.mf-toc::-webkit-scrollbar{display:none}
.mf-toc a{flex:1 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 16px;border-radius:999px;font-size:14px;font-weight:500;color:var(--titanium-d);transition:background .25s,color .25s}
.mf-toc a b{font-size:10px;color:var(--mg)}
.mf-toc a:hover{color:var(--ink);background:var(--warm-2)}
.mf-toc a.is-on{background:var(--ink);color:#fff}
.mf-toc a.is-on b{color:var(--mg-hi)}
/* chapters */
.mf-ch{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(28px,5vw,96px);align-items:center;padding-block:clamp(40px,5vw,80px);
  border-top:1px solid var(--line-l);scroll-margin-top:calc(var(--hdr-h) + 80px)}
.mf-ch--flip .mf-fig{order:2}
.mf-ch--wide{grid-template-columns:minmax(0,1fr);gap:clamp(24px,3vw,44px)}
.mf-fig{aspect-ratio:4/3;box-shadow:0 40px 80px -56px rgba(16,17,20,.55)}
.mf-ch:not(.mf-ch--wide) .mf-fig{aspect-ratio:5/6}
#mf-quality .mf-fig,#mf-delivery .mf-fig,#mf-tooling .mf-fig{aspect-ratio:4/3.6}
.mf-fig img{transition:transform 1.4s var(--ease)}
.mf-fig:hover img{transform:scale(1.03)}
.mf-no{display:flex;align-items:center;gap:12px;margin-bottom:16px;color:var(--mg);font-size:11px}
.mf-no::after{content:"";flex:1;max-width:80px;height:1px;background:currentColor;opacity:.4}
.mf-ch__txt .k-h2{margin-bottom:18px}
.mf-ch__txt .k-body{color:#3A3E45}
.mf-ch__txt--row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(24px,4vw,72px);align-items:end}
.mf-pair{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(12px,1.6vw,22px);align-items:end}
.mf-pair .mf-fig:last-child{aspect-ratio:4/4.4}
.mf-points{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.mf-points li{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 14px;border-radius:999px;background:#fff;border:1px solid var(--line-l);font-size:14px}
.mf-points li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--mg)}
.mf-steps{display:grid;gap:10px;margin-top:24px;counter-reset:s}
.mf-steps li{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:14px;background:#fff;border:1px solid var(--line-l);font-weight:500}
.mf-steps b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--ink);color:#fff;font-size:10.5px;letter-spacing:0}
.mf-steps li:last-child b{background:var(--mg)}
.mf-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:24px}
.mf-checks div{padding:16px;border-radius:14px;background:#fff;border:1px solid var(--line-l)}
.mf-checks dt{color:var(--mg);font-size:10.5px;margin-bottom:6px}
.mf-checks dd{margin:0;font-size:14px;color:var(--titanium-d)}
.mf-mats{display:grid;gap:10px}
.mf-mats a{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:6px 16px;padding:18px 20px;border-radius:var(--r);background:#fff;border:1px solid var(--line-l);transition:border-color .25s,transform .4s var(--ease)}
.mf-mats a:hover{border-color:var(--mg);transform:translateY(-2px)}
.mf-mats .k-mono{font-size:10px;color:var(--mg);min-width:64px}
.mf-mats b{font-family:var(--f-display);font-size:18px;letter-spacing:-.02em}
.mf-mats small{font-family:var(--f-mono);font-size:11px;color:var(--titanium-d)}
.mf-mats .k-arr{color:var(--titanium-d)}
[dir=rtl] .mf-mats .k-arr{transform:scaleX(-1)}
/* make vs source */
.mf-mode{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.mf-mode .k-body{max-width:none}
.mf-mode__n{color:var(--titanium);font-size:11px}
.mf-mode__n b{font-family:var(--f-display);font-size:28px;letter-spacing:-.03em;color:var(--warm);margin-inline-end:6px}
.mf-mode--make{border-color:rgba(238,107,168,.35);background:linear-gradient(160deg,rgba(196,23,111,.12),var(--graphite) 55%)}
.mf-mode .k-link{margin-top:auto}
.mf-proof{margin-top:clamp(48px,6vw,88px)}
@media (max-width:900px){
  .mf-ch,.mf-ch__txt--row{grid-template-columns:minmax(0,1fr)}
  .mf-ch--flip .mf-fig{order:0}
  .mf-ch:not(.mf-ch--wide) .mf-fig,#mf-quality .mf-fig,#mf-delivery .mf-fig,#mf-tooling .mf-fig{aspect-ratio:4/3}
  .mf-checks{grid-template-columns:minmax(0,1fr)}
  .mf-toc a{flex:0 0 auto;padding:0 12px}
}
@media (max-width:560px){.mf-pair{grid-template-columns:minmax(0,1fr)}.mf-pair .mf-fig:last-child{aspect-ratio:4/3}.mf-ph{min-height:auto}}
@media (prefers-reduced-motion:reduce){.k-js .mf-ph__media img{animation:none}.mf-fig img{transition:none}}
.mf-fig--light{background:#ECEAE4}
#mf-finishing .mf-fig{aspect-ratio:1/1}
#mf-finishing .mf-fig img{object-position:50% 35%}

/* ============================================================ about (K10.1) */
.ab-trio{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:30px;color:var(--warm);font-size:12px}
.ab-trio i{font-style:normal;color:var(--mg-hi)}
[data-theme=light] .ab-trio{color:var(--ink)}
.ab-intro__g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,96px);align-items:start}
.ab-intro__body{max-width:62ch}
.ab-intro__body p{color:#3A3E45}
.ab-sig{margin-top:26px;color:var(--mg)}
.ab-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(48px,6vw,88px);border-block:1px solid var(--line-l)}
.ab-facts div{padding:26px 22px 28px;border-inline-start:1px solid var(--line-l)}
.ab-facts div:first-child{border-inline-start:0;padding-inline-start:0}
.ab-facts dt{color:var(--titanium-d);font-size:10.5px;margin-bottom:12px}
.ab-facts dd{margin:0;display:grid;gap:4px}
.ab-facts b{font-family:var(--f-display);font-weight:800;font-size:clamp(2rem,3.4vw,3rem);letter-spacing:-.04em;line-height:1}
.ab-facts b.ab-arrow{font-size:clamp(1.2rem,1.8vw,1.6rem);letter-spacing:-.02em;line-height:1.2}
.ab-facts dd>span{font-size:14px;color:var(--titanium-d)}
.ab-strip{display:grid;grid-template-columns:1.25fr 1fr .7fr;gap:clamp(12px,1.4vw,20px);margin-top:clamp(40px,5vw,72px)}
.ab-strip .k-fig{aspect-ratio:4/3.2}
.ab-strip__light{background:#ECEAE4!important}
.ab-val{display:flex;flex-direction:column;gap:12px}
.ab-val .k-mono{color:var(--mg-hi)}
.ab-val p:not(.k-mono){font-size:15px;line-height:1.6;color:var(--titanium)}
.ab-g{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:clamp(22px,2.4vw,30px);border-radius:var(--r-lg);background:#fff;border:1px solid var(--line-l);
  transition:transform .5s var(--ease),box-shadow .5s var(--ease),border-color .3s}
.ab-g:hover{transform:translateY(-4px);border-color:var(--line-l2);box-shadow:0 30px 50px -34px rgba(16,17,20,.45)}
.ab-g__n{color:var(--titanium-d);font-size:10.5px}
.ab-g p:not(.k-mono){font-size:15px;line-height:1.6;color:var(--titanium-d)}
.ab-g .k-link{margin-top:auto}
.ab-man__in{max-width:1080px}
.ab-man .k-display{font-size:clamp(2.2rem,5.4vw,5.2rem);margin-bottom:26px}
.ab-man__links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:clamp(36px,4vw,56px)}
@media (max-width:900px){.ab-intro__g,.ab-man__links{grid-template-columns:minmax(0,1fr)}.ab-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.ab-facts div:nth-child(3){border-inline-start:0;padding-inline-start:0}
  .ab-facts div:nth-child(n+3){border-top:1px solid var(--line-l)}.ab-strip{grid-template-columns:1fr 1fr}.ab-strip .k-fig:last-child{display:none}}

/* ======================================================= references (K10.1) */
.rf-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;margin-bottom:clamp(24px,3vw,36px)}
.rf-filter{display:flex;flex-wrap:wrap;gap:8px}
.rf-chip{min-height:42px;padding:0 16px;border-radius:999px;border:1px solid var(--line-l2);background:#fff;font-size:14px;font-weight:500;color:var(--titanium-d);transition:background .2s,color .2s,border-color .2s}
.rf-chip:hover{border-color:var(--ink);color:var(--ink)}
.rf-chip.is-on{background:var(--ink);border-color:var(--ink);color:#fff}
.rf-count{color:var(--titanium-d);font-size:11px}
.rf-count b{color:var(--ink)}
.rf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:clamp(10px,1.2vw,16px)}
.k10 .ref-card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;min-height:200px;padding:20px;border-radius:var(--r);background:#fff;border:1px solid var(--line-l);overflow:hidden;
  transition:transform .5s var(--ease),border-color .3s,box-shadow .5s var(--ease)}
.k10 .ref-card[hidden]{display:none}
.k10 .ref-card:hover{transform:translateY(-3px);border-color:var(--line-l2);box-shadow:0 24px 44px -32px rgba(16,17,20,.45)}
.k10 .ref-logo-img{position:absolute;inset:22px 22px 72px;width:calc(100% - 44px);height:calc(100% - 94px);object-fit:contain;object-position:left center;filter:grayscale(1) contrast(1.05);opacity:.8;transition:filter .3s,opacity .3s}
[dir=rtl] .k10 .ref-logo-img{object-position:right center}
.k10 .ref-card:hover .ref-logo-img{filter:none;opacity:1}
.k10 .ref-logo-ph{position:absolute;top:20px;inset-inline-start:20px;display:grid;place-items:center;min-width:52px;height:52px;padding:0 10px;border-radius:14px;background:var(--warm-2);
  font-family:var(--f-mono);font-size:12px;font-weight:600;letter-spacing:.06em;color:var(--titanium-d)}
.k10 .ref-name{font-family:var(--f-display);font-weight:700;font-size:16.5px;letter-spacing:-.015em;line-height:1.25;color:var(--ink)}
.k10 .ref-sector{font-family:var(--f-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--titanium-d)}
[dir=rtl] .k10 .ref-sector{letter-spacing:0}
.k10 .ref-bar{position:absolute;inset-inline:0;bottom:0;height:3px;background:var(--mg);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
[dir=rtl] .k10 .ref-bar{transform-origin:right}
.k10 .ref-card:hover .ref-bar{transform:scaleX(1)}
.rf-note{margin-top:22px;font-size:13px;color:var(--titanium-d)}
.rf-join__g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,96px);align-items:center}
.rf-sectors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.rf-sectors li{display:grid;gap:6px;padding:22px;border-radius:var(--r);background:#fff;border:1px solid var(--line-l)}
.rf-sectors b{font-family:var(--f-display);font-size:17px;letter-spacing:-.015em}
.rf-sectors span{font-size:14px;color:var(--titanium-d)}
@media (max-width:900px){.rf-join__g{grid-template-columns:minmax(0,1fr)}}
@media (max-width:520px){.rf-sectors{grid-template-columns:minmax(0,1fr)}.rf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.k10 .ref-card{min-height:170px;padding:16px}}
.ab-strip{align-items:stretch}
.ab-strip .k-fig{aspect-ratio:auto;height:clamp(220px,28vw,420px)}
