/* OUTSOURCE+ — Blog (hub + article). Self-contained: tokens, nav, prose, footer. */

:root{
  --bg-deep:#050814; --bg-night:#0a1024; --bg-card:#0f1730;
  --ink:#e9edf8; --ink-dim:#9aa4c4; --ink-mute:#646e90;
  --line:rgba(255,255,255,0.08); --line-bright:rgba(255,255,255,0.16);
  --electric:#2f7bff; --cyan:#4ee0ff; --acid:#c8ff5a;
  --grad-primary:linear-gradient(135deg,#2f7bff 0%,#4ee0ff 100%);
  --font-display:'Bricolage Grotesque','Hanken Grotesk',system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-body:'Hanken Grotesk',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --font-mono:'Hanken Grotesk',system-ui,-apple-system,'Segoe UI',sans-serif;
  --surface:rgba(255,255,255,0.02); --dot:rgba(255,255,255,0.028);
  --nav-bg:#050814; --btn-text:#050814; --page:#050814;
}
[data-theme="light"]{
  --bg-deep:#f6f8fd; --bg-night:#eceff8; --bg-card:#ffffff;
  --ink:#0e1630; --ink-dim:#47506e; --ink-mute:#7a83a2;
  --line:rgba(10,16,40,0.10); --line-bright:rgba(10,16,40,0.17);
  --surface:rgba(10,16,40,0.028); --dot:rgba(10,16,40,0.05);
  --nav-bg:#f6f8fd; --btn-text:#ffffff; --page:#ffffff;
  --cyan:#0aa2c4; --acid:#5f8f00;
  --grad-primary:linear-gradient(135deg,#2f7bff 0%,#16a9cc 100%);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

body{
  background-color:var(--page);
  background-image:radial-gradient(var(--dot) 1px,transparent 1.3px);
  background-size:32px 32px;
  color:var(--ink); font-family:var(--font-body); line-height:1.6;
  overflow-x:hidden; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  min-height:100vh; position:relative;
}
body::before{
  content:''; position:fixed; inset:0; pointer-events:none; z-index:0;
  background:
    radial-gradient(circle at 12% 10%, rgba(47,123,255,.14), transparent 42%),
    radial-gradient(circle at 88% 82%, rgba(78,224,255,.09), transparent 44%);
}
img{max-width:100%;display:block}
::selection{background:rgba(78,224,255,.26)}

/* ---------- NAV ---------- */
.nav{
  position:fixed; top:0; left:0; right:0; z-index:100;
  padding:14px 40px; display:flex; align-items:center; gap:18px; justify-content:space-between;
  background:var(--nav-bg); border-bottom:1px solid var(--line);
}
.nav-logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0}
.nav-logo img{height:42px;width:auto;display:block}
img.logo-l{display:none}
[data-theme="light"] img.logo-d{display:none}
[data-theme="light"] img.logo-l{display:block}
.nav-side{display:flex;align-items:center;gap:12px;min-width:0}
.nav-back{
  font-family:var(--font-mono); font-size:12px; letter-spacing:.04em; color:var(--ink-dim);
  text-decoration:none; display:inline-flex; align-items:center; gap:8px; white-space:nowrap;
  transition:color .2s;
}
.nav-back:hover{color:var(--cyan)}
.nav-back svg{width:14px;height:14px;flex-shrink:0}
[dir="rtl"] .nav-back svg{transform:scaleX(-1)}

.theme-btn{
  display:inline-flex;align-items:center;justify-content:center;
  width:38px;height:38px;flex-shrink:0;background:transparent;
  border:1px solid var(--line-bright);color:var(--ink-dim);border-radius:50px;cursor:pointer;
  transition:border-color .2s,color .2s;
}
.theme-btn:hover{border-color:var(--cyan);color:var(--ink)}
.theme-btn svg{width:17px;height:17px}
.theme-btn .ic-sun{display:none}
.theme-btn .ic-moon{display:block}
[data-theme="light"] .theme-btn .ic-sun{display:block}
[data-theme="light"] .theme-btn .ic-moon{display:none}

.lang-switch{position:relative}
.lang-btn{
  display:inline-flex;align-items:center;gap:7px;background:transparent;
  border:1px solid var(--line-bright);color:var(--ink-dim);border-radius:50px;padding:8px 12px;
  font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.05em;
  cursor:pointer;transition:border-color .2s,color .2s;
}
.lang-btn:hover{border-color:var(--cyan);color:var(--ink)}
.lang-btn svg:first-child{width:15px;height:15px}
.lang-chev{width:12px;height:12px;opacity:.7}
.lang-menu{
  position:absolute;top:calc(100% + 8px);right:0;z-index:200;list-style:none;margin:0;padding:6px;
  background:var(--bg-card);border:1px solid var(--line-bright);border-radius:12px;min-width:150px;
  box-shadow:0 20px 50px -20px rgba(0,0,0,.7);
  opacity:0;visibility:hidden;transform:translateY(-6px);
  transition:opacity .18s,transform .18s,visibility .18s;
  max-height:min(62vh,420px);overflow-y:auto;
}
.lang-menu.open{opacity:1;visibility:visible;transform:translateY(0)}
.lang-menu a{
  display:block;width:100%;text-align:left;text-decoration:none;background:transparent;border:none;
  color:var(--ink-dim);font-family:var(--font-body);font-size:14px;padding:9px 12px;border-radius:8px;
  transition:background .15s,color .15s;
}
.lang-menu a:hover{background:rgba(78,224,255,.08);color:var(--ink)}
.lang-menu a[aria-current="true"]{color:var(--cyan);font-weight:600}
[dir="rtl"] .lang-menu{right:auto;left:0;text-align:right}
[dir="rtl"] .lang-menu a{text-align:right}

/* reading progress */
.progress{position:fixed;top:0;left:0;height:2px;width:0;background:var(--acid);z-index:300;transition:width .08s linear}

/* ---------- SHELL ---------- */
.wrap{position:relative;z-index:1;max-width:1180px;margin:0 auto;padding:0 32px}
.kicker{
  display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;
  letter-spacing:.16em;color:var(--cyan);text-transform:uppercase;padding:6px 13px;
  border:1px solid rgba(78,224,255,.3);border-radius:50px;background:rgba(78,224,255,.06);
}
.kicker .dot{width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan)}

/* breadcrumb */
.crumb{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-mute)}
.crumb a{color:var(--ink-mute);text-decoration:none;transition:color .2s}
.crumb a:hover{color:var(--cyan)}
.crumb span.sep{opacity:.5}

/* ---------- HUB HERO ---------- */
.hub-hero{padding:132px 0 10px}
.hub-hero h1{
  font-family:var(--font-display);font-weight:300;letter-spacing:-.025em;
  font-size:clamp(38px,6vw,76px);line-height:1.02;margin:22px 0 20px;max-width:16ch;
  overflow-wrap:break-word;
}
.hub-hero h1 em{font-style:italic;color:var(--cyan)}
.hub-hero p{color:var(--ink-dim);font-size:clamp(15.5px,1.4vw,18px);line-height:1.68;max-width:62ch}
.hub-rule{display:flex;align-items:center;gap:16px;margin:46px 0 34px}
.hub-rule span{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute);white-space:nowrap}
.hub-rule i{flex:1;height:1px;background:var(--line);display:block}

/* ---------- FEATURED CARD ---------- */
.post-card{
  display:grid;grid-template-columns:0.9fr 1.1fr;gap:0;margin-bottom:26px;
  background:var(--bg-card);border:1px solid var(--line);border-radius:22px;overflow:hidden;
  text-decoration:none;color:inherit;transition:border-color .25s,transform .25s;
}
.post-card:hover{border-color:var(--line-bright);transform:translateY(-3px)}
.post-cover{
  position:relative;min-height:290px;
  background:
    linear-gradient(135deg,rgba(47,123,255,.22),rgba(78,224,255,.10) 55%,transparent),
    var(--bg-night);
  overflow:hidden;
}
.post-cover::before{
  content:'';position:absolute;inset:0;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:38px 38px;opacity:.8;
}
.post-cover::after{
  content:'';position:absolute;right:-46px;bottom:-46px;width:210px;height:210px;border-radius:50%;
  background:radial-gradient(circle,rgba(200,255,90,.3),transparent 62%);
}
.cover-mark{
  position:absolute;inset:0;display:grid;place-items:center;padding:28px;
}
.cover-layers{display:flex;flex-direction:column;gap:7px;width:min(78%,250px)}
.cover-layers i{
  display:block;height:19px;border-radius:5px;border:1px solid var(--line-bright);
  background:rgba(255,255,255,.04);
}
.cover-layers i:nth-child(1){width:100%;background:rgba(78,224,255,.17);border-color:rgba(78,224,255,.4)}
.cover-layers i:nth-child(2){width:86%}
.cover-layers i:nth-child(3){width:72%;background:rgba(200,255,90,.14);border-color:rgba(200,255,90,.36)}
.cover-layers i:nth-child(4){width:58%}
.cover-layers i:nth-child(5){width:44%;background:rgba(47,123,255,.2);border-color:rgba(47,123,255,.45)}
.cover-tag{
  position:absolute;top:18px;left:18px;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink);background:rgba(5,8,20,.55);border:1px solid var(--line-bright);
  padding:5px 10px;border-radius:50px;backdrop-filter:blur(6px);
}
[data-theme="light"] .cover-tag{background:rgba(255,255,255,.7);color:var(--ink)}
[dir="rtl"] .cover-tag{left:auto;right:18px}

.post-body{padding:34px 36px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.post-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-family:var(--font-mono);font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:15px}
.post-meta b{color:var(--acid);font-weight:600}
.post-card h2{
  font-family:var(--font-display);font-weight:300;letter-spacing:-.02em;
  font-size:clamp(23px,2.5vw,33px);line-height:1.14;margin-bottom:14px;overflow-wrap:break-word;
}
.post-card p{color:var(--ink-dim);font-size:15px;line-height:1.66;margin-bottom:22px}
.post-go{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-mono);font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:var(--cyan)}
.post-go svg{width:15px;height:15px;transition:transform .25s}
[dir="rtl"] .post-go svg{transform:scaleX(-1)}
.post-card:hover .post-go svg{transform:translateX(4px)}
[dir="rtl"] .post-card:hover .post-go svg{transform:scaleX(-1) translateX(4px)}

/* coming next */
.soon{border:1px dashed var(--line-bright);border-radius:18px;padding:26px 28px;background:var(--surface)}
.soon h3{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:12px}
.soon p{color:var(--ink-dim);font-size:14.5px;line-height:1.65;max-width:70ch}

/* ---------- ARTICLE ---------- */
.art-head{padding:124px 0 0}
.art-head h1{
  font-family:var(--font-display);font-weight:300;letter-spacing:-.025em;
  font-size:clamp(32px,4.6vw,58px);line-height:1.05;margin:20px 0 22px;max-width:24ch;
  overflow-wrap:break-word;hyphens:auto;
}
.art-head h1 em{font-style:italic;color:var(--cyan)}
.art-lead{color:var(--ink-dim);font-size:clamp(16px,1.5vw,19.5px);line-height:1.66;max-width:64ch}
.art-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:18px 0 0;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute)}
.art-meta .pill{border:1px solid var(--line-bright);border-radius:50px;padding:5px 11px;color:var(--ink-dim)}
.art-meta .pill.acid{color:var(--acid);border-color:rgba(200,255,90,.34);background:rgba(200,255,90,.06)}

.author{display:flex;align-items:center;gap:14px;margin:32px 0 0;padding:18px 0 0;border-top:1px solid var(--line)}
.avatar{
  width:44px;height:44px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;
  font-family:var(--font-display);font-size:15px;font-weight:600;color:var(--btn-text);
  background:var(--grad-primary);letter-spacing:-.02em;
}
.author-t{min-width:0}
.author-t strong{display:block;font-size:14.5px;font-weight:600;color:var(--ink)}
.author-t span{font-size:12.5px;color:var(--ink-mute)}

.art-grid{
  display:grid;grid-template-columns:230px minmax(0,1fr);gap:56px;
  padding:50px 0 90px;align-items:start;
}
.toc{position:sticky;top:112px}
.toc h4{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:14px}
.toc ol{list-style:none;counter-reset:toc;display:flex;flex-direction:column;gap:2px}
.toc li{counter-increment:toc}
.toc a{
  display:flex;gap:9px;text-decoration:none;color:var(--ink-dim);font-size:13.2px;line-height:1.45;
  padding:7px 10px;border-radius:8px;border-left:2px solid transparent;transition:color .2s,background .2s,border-color .2s;
}
.toc a::before{content:counter(toc,decimal-leading-zero);font-family:var(--font-mono);font-size:10px;color:var(--ink-mute);padding-top:3px;flex-shrink:0}
.toc a:hover{color:var(--ink);background:var(--surface);border-left-color:var(--cyan)}
.toc a.on{color:var(--cyan);border-left-color:var(--cyan);background:rgba(78,224,255,.06)}
[dir="rtl"] .toc a{border-left:none;border-right:2px solid transparent}
[dir="rtl"] .toc a:hover,[dir="rtl"] .toc a.on{border-right-color:var(--cyan)}

/* prose */
.prose{min-width:0;max-width:72ch;counter-reset:h2}
.prose>*+*{margin-top:22px}
.prose p{font-size:17px;line-height:1.78;color:var(--ink-dim)}
.prose p strong{color:var(--ink);font-weight:650}
.prose em{font-style:italic}
.prose h2{
  counter-increment:h2;font-family:var(--font-display);font-weight:300;letter-spacing:-.02em;
  font-size:clamp(25px,2.7vw,35px);line-height:1.14;color:var(--ink);
  margin-top:58px;padding-top:28px;border-top:1px solid var(--line);
  overflow-wrap:break-word;scroll-margin-top:104px;
}
.prose h2::before{
  content:counter(h2,decimal-leading-zero);display:block;font-family:var(--font-mono);
  font-size:11px;letter-spacing:.18em;color:var(--acid);margin-bottom:12px;
}
.prose h3{font-family:var(--font-display);font-weight:500;font-size:20px;line-height:1.28;color:var(--ink);margin-top:36px}
.prose ul,.prose ol{padding-left:0;list-style:none;display:flex;flex-direction:column;gap:13px}
.prose li{font-size:16.4px;line-height:1.72;color:var(--ink-dim);padding-left:26px;position:relative}
[dir="rtl"] .prose li{padding-left:0;padding-right:26px}
.prose ul>li::before{
  content:'';position:absolute;left:4px;top:11px;width:7px;height:7px;border-radius:2px;
  background:var(--acid);transform:rotate(45deg);
}
[dir="rtl"] .prose ul>li::before{left:auto;right:4px}
.prose ol{counter-reset:ol}
.prose ol>li{counter-increment:ol;padding-left:34px}
[dir="rtl"] .prose ol>li{padding-left:0;padding-right:34px}
.prose ol>li::before{
  content:counter(ol);position:absolute;left:0;top:2px;width:23px;height:23px;border-radius:7px;
  display:grid;place-items:center;font-family:var(--font-mono);font-size:11px;font-weight:600;
  color:var(--cyan);background:rgba(78,224,255,.1);border:1px solid rgba(78,224,255,.26);
}
[dir="rtl"] .prose ol>li::before{left:auto;right:0}
.prose li strong{color:var(--ink);font-weight:650}
.prose blockquote{
  border-left:3px solid var(--acid);padding:4px 0 4px 22px;margin-top:30px;
  font-family:var(--font-display);font-weight:300;font-size:clamp(18px,2vw,22px);line-height:1.5;
  color:var(--ink);letter-spacing:-.01em;
}
[dir="rtl"] .prose blockquote{border-left:none;border-right:3px solid var(--acid);padding:4px 22px 4px 0}
.prose a{color:var(--cyan);text-decoration:none;border-bottom:1px solid rgba(78,224,255,.35)}
.prose a:hover{border-bottom-color:var(--cyan)}

/* services covered */
.svc-box{margin-top:56px;border:1px solid var(--line);border-radius:18px;padding:26px 28px;background:var(--surface)}
.svc-box h4{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:16px}
.svc-tags{display:flex;flex-wrap:wrap;gap:9px}
.svc-tags a,.svc-tags span{
  font-size:13px;color:var(--ink-dim);border:1px solid var(--line-bright);border-radius:50px;
  padding:7px 14px;text-decoration:none;transition:color .2s,border-color .2s;
}
.svc-tags a:hover{color:var(--cyan);border-color:var(--cyan)}

/* ---------- CTA ---------- */
.cta{
  position:relative;z-index:1;margin:0 auto 90px;max-width:1180px;
}
.cta-in{
  margin:0 32px;border:1px solid var(--line-bright);border-radius:24px;padding:46px 44px;
  background:linear-gradient(135deg,rgba(47,123,255,.13),rgba(78,224,255,.06) 60%,transparent),var(--bg-card);
}
.cta-in .kicker{margin-bottom:18px}
.cta-in h2{font-family:var(--font-display);font-weight:300;letter-spacing:-.02em;font-size:clamp(26px,3.2vw,40px);line-height:1.1;margin-bottom:14px;overflow-wrap:break-word}
.cta-in p{color:var(--ink-dim);font-size:15.5px;line-height:1.68;max-width:62ch;margin-bottom:26px}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:28px}
.btn{
  display:inline-flex;align-items:center;gap:9px;text-decoration:none;border-radius:50px;
  padding:14px 26px;font-size:14.5px;font-weight:600;letter-spacing:.01em;transition:transform .2s,opacity .2s;
}
.btn:hover{transform:translateY(-2px)}
.btn-pri{background:var(--acid);color:#0b1020}
[data-theme="light"] .btn-pri{background:var(--acid);color:#ffffff}
.btn-sec{border:1px solid var(--line-bright);color:var(--ink)}
.btn-sec:hover{border-color:var(--cyan);color:var(--cyan)}
.btn svg{width:16px;height:16px}
[dir="rtl"] .btn svg{transform:scaleX(-1)}
.tool-links{display:flex;flex-wrap:wrap;gap:8px;padding-top:24px;border-top:1px solid var(--line)}
.tool-links a{
  font-family:var(--font-mono);font-size:11.5px;letter-spacing:.04em;color:var(--ink-dim);
  text-decoration:none;border:1px solid var(--line);border-radius:50px;padding:7px 13px;transition:color .2s,border-color .2s;
}
.tool-links a:hover{color:var(--acid);border-color:rgba(200,255,90,.4)}

/* ---------- FOOTER ---------- */
footer{position:relative;z-index:1;border-top:1px solid var(--line);padding:52px 40px 34px;background:var(--surface)}
.f-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:38px}
.f-brand img{height:40px;width:auto;margin-bottom:14px;max-width:100%}
.f-brand p{color:var(--ink-mute);font-size:13.5px;line-height:1.66;max-width:46ch}
.f-col h5{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:14px}
.f-col ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.f-col a,.f-col li{color:var(--ink-dim);font-size:13.5px;text-decoration:none;transition:color .2s}
.f-col a:hover{color:var(--cyan)}
.f-bot{
  max-width:1180px;margin:34px auto 0;padding-top:22px;border-top:1px solid var(--line);
  display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;align-items:center;
  font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);
}
.f-bot .legal{display:flex;flex-wrap:wrap;gap:16px}
.f-bot a{color:var(--ink-mute);text-decoration:none}
.f-bot a:hover{color:var(--cyan)}

/* ---------- SCRIPT/LANG TYPOGRAPHY ---------- */
html[lang="zh"]{--font-display:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",system-ui,sans-serif;--font-body:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",system-ui,sans-serif;--font-mono:"PingFang SC","Microsoft YaHei",system-ui,sans-serif}
html[lang="zh"] .prose p,html[lang="zh"] .prose li{line-height:1.9}
html[lang="ru"]{--font-display:'Manrope','Hanken Grotesk',system-ui,sans-serif;--font-body:'Manrope','Hanken Grotesk',system-ui,sans-serif;--font-mono:'Manrope',system-ui,sans-serif}
html[lang="ar"]{--font-display:'Noto Naskh Arabic','Geeza Pro','Segoe UI',Tahoma,system-ui,sans-serif;--font-body:'Noto Naskh Arabic','Geeza Pro','Segoe UI',Tahoma,system-ui,sans-serif;--font-mono:'Noto Naskh Arabic','Segoe UI',Tahoma,system-ui,sans-serif}
html[lang="ar"] *{letter-spacing:0!important}
html[lang="ar"] .prose p,html[lang="ar"] .prose li{line-height:1.95}
html[lang="ar"] .hub-hero h1,html[lang="ar"] .art-head h1,html[lang="ar"] .prose h2{font-weight:500}
html[lang="de"] .art-head h1,html[lang="et"] .art-head h1,html[lang="fi"] .art-head h1,
html[lang="de"] .hub-hero h1,html[lang="et"] .hub-hero h1,html[lang="fi"] .hub-hero h1,
html[lang="de"] .prose h2,html[lang="et"] .prose h2,html[lang="fi"] .prose h2,
html[lang="de"] .post-card h2,html[lang="et"] .post-card h2,html[lang="fi"] .post-card h2{hyphens:auto;word-break:break-word}

/* ---------- RESPONSIVE ---------- */
@media (max-width:1100px){
  .art-grid{grid-template-columns:1fr;gap:0;padding-top:40px}
  .toc{position:static;margin-bottom:34px;border:1px solid var(--line);border-radius:16px;padding:20px 18px;background:var(--surface)}
  .toc ol{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:2px}
  .prose{max-width:none}
}
@media (max-width:900px){
  .nav{padding:12px 20px}
  .wrap{padding:0 20px}
  .post-card{grid-template-columns:1fr}
  .post-cover{min-height:180px}
  .post-body{padding:28px 24px}
  .f-grid{grid-template-columns:1fr 1fr;gap:30px}
  .cta-in{margin:0 20px;padding:36px 26px}
  footer{padding:44px 20px 30px}
}
@media (max-width:640px){
  .nav{padding:10px 16px;gap:10px}
  .nav-logo img{height:34px}
  .lang-btn{padding:7px 9px}
  .lang-btn svg:first-child,.lang-btn .lang-chev{display:none}
  .theme-btn{width:34px;height:34px}
  .nav-back span{display:none}
  .wrap{padding:0 16px}
  .hub-hero{padding:104px 0 6px}
  .art-head{padding:100px 0 0}
  .prose p{font-size:16.2px}
  .prose li{font-size:15.8px}
  .prose h2{margin-top:44px;padding-top:24px}
  .f-grid{grid-template-columns:1fr}
  .cta-in{margin:0 16px;padding:30px 20px}
  .btn{padding:13px 20px;font-size:14px}
  .f-bot{font-size:10px}
}
@media (max-width:380px){
  .nav{padding:10px 12px}
  .nav-logo img{height:30px}
  .lang-btn{padding:6px 8px;font-size:11px}
  .theme-btn{width:32px;height:32px}
}

/* ============================================================
   VENTURES / OUR STARTUPS
   ============================================================ */
.vh{padding:132px 0 0}
.vh h1{
  font-family:var(--font-display);font-weight:300;letter-spacing:-.025em;
  font-size:clamp(38px,5.6vw,70px);line-height:1.03;margin:22px 0 20px;max-width:17ch;
  overflow-wrap:break-word;
}
.vh h1 em{font-style:italic;color:var(--cyan)}
.vh p{color:var(--ink-dim);font-size:clamp(15.5px,1.4vw,18px);line-height:1.68;max-width:66ch}

.vfacts{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;
  margin:46px 0 10px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden;
}
.vfact{background:var(--page);padding:20px 22px;min-width:0}
.vfact b{display:block;font-family:var(--font-display);font-weight:300;font-size:clamp(26px,3vw,34px);line-height:1;letter-spacing:-.02em}
.vfact b em{font-style:normal;color:var(--acid)}
.vfact span{display:block;margin-top:8px;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);line-height:1.5}

.vrule{display:flex;align-items:center;gap:16px;margin:52px 0 26px}
.vrule span{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute);white-space:nowrap}
.vrule i{flex:1;height:1px;background:var(--line);display:block}

.vlist{display:flex;flex-direction:column;gap:18px}
.vcard{--vca:var(--vc,var(--cyan))}
[data-theme="light"] .vcard{--vca:var(--vcl,var(--vc,var(--cyan)))}
.vcard{
  position:relative;display:grid;grid-template-columns:150px minmax(0,1fr);gap:28px;
  padding:30px 32px 30px 30px;background:var(--bg-card);border:1px solid var(--line);
  border-radius:20px;overflow:hidden;transition:border-color .25s,transform .25s;
}
.vcard:hover{border-color:var(--line-bright);transform:translateY(-2px)}
.vcard::before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--vca,var(--cyan));
}
[dir="rtl"] .vcard::before{left:auto;right:0}
.vcard::after{
  content:'';position:absolute;right:-70px;top:-70px;width:220px;height:220px;border-radius:50%;
  background:radial-gradient(circle,color-mix(in srgb,var(--vca,var(--cyan)) 16%,transparent),transparent 65%);
  pointer-events:none;
}
[dir="rtl"] .vcard::after{right:auto;left:-70px}

.vlogo{
  width:150px;height:106px;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0;
  background:var(--vbg,color-mix(in srgb,var(--vca,var(--cyan)) 10%,transparent));
  border:1px solid color-mix(in srgb,var(--vca,var(--cyan)) 34%,transparent);
  overflow:hidden;position:relative;z-index:1;padding:10px;
}
.vlogo img{max-width:100%;max-height:100%;min-width:0;min-height:0;width:auto;height:auto;object-fit:contain;display:block}
.vlogo .vmark{display:block}
.vlogo .vmark{
  font-family:var(--font-display);font-weight:600;font-size:40px;letter-spacing:-.03em;
  color:var(--vca,var(--cyan));line-height:1;
}
.vbody{min-width:0;position:relative;z-index:1}
.vtop{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.vcard h2{
  font-family:var(--font-display);font-weight:400;letter-spacing:-.02em;
  font-size:clamp(22px,2.3vw,29px);line-height:1.12;overflow-wrap:break-word;
}
.vstatus{
  font-family:var(--font-mono);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;
  padding:5px 10px;border-radius:50px;white-space:nowrap;
  color:var(--vca,var(--cyan));border:1px solid color-mix(in srgb,var(--vca,var(--cyan)) 40%,transparent);
  background:color-mix(in srgb,var(--vca,var(--cyan)) 9%,transparent);
}
.vmeta{
  font-family:var(--font-mono);font-size:11px;letter-spacing:.07em;text-transform:uppercase;
  color:var(--ink-mute);margin-bottom:14px;display:flex;gap:9px;flex-wrap:wrap;align-items:center;
}
.vmeta .sep{opacity:.45}
.vtag{font-style:italic;font-family:var(--font-display);font-weight:300;font-size:17px;color:var(--ink);margin-bottom:10px;letter-spacing:-.01em}
.vcard p.vdesc{color:var(--ink-dim);font-size:15.2px;line-height:1.68;margin-bottom:18px;max-width:72ch}
.vlinks{display:flex;flex-wrap:wrap;gap:9px}
.vlink{
  display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-size:13.2px;font-weight:600;
  padding:9px 15px;border-radius:50px;border:1px solid var(--line-bright);color:var(--ink-dim);
  transition:color .2s,border-color .2s,background .2s;white-space:nowrap;
}
.vlink:hover{color:var(--ink);border-color:var(--vca,var(--cyan));background:color-mix(in srgb,var(--vca,var(--cyan)) 8%,transparent)}
.vlink.pri{color:var(--vca,var(--cyan));border-color:color-mix(in srgb,var(--vca,var(--cyan)) 45%,transparent)}
.vlink svg{width:14px;height:14px;flex-shrink:0}
.vlink .ext{width:12px;height:12px;opacity:.65}

/* operator / verification block */
.vop{
  margin:52px 0 0;border:1px solid var(--line);border-radius:20px;padding:30px 32px;background:var(--surface);
}
.vop h3{font-family:var(--font-display);font-weight:400;font-size:clamp(20px,2.1vw,26px);letter-spacing:-.015em;margin-bottom:12px}
.vop p{color:var(--ink-dim);font-size:15px;line-height:1.7;max-width:76ch}
.vop p+p{margin-top:12px}
.vop dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:20px;margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}
.vop dt{font-family:var(--font-mono);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:6px}
.vop dd{font-size:14.5px;color:var(--ink);overflow-wrap:break-word}
.vop dd a{color:var(--cyan);text-decoration:none}
.vop dd a:hover{text-decoration:underline}

.vhow{margin:52px 0 0}
.vhow h3{font-family:var(--font-display);font-weight:400;font-size:clamp(20px,2.1vw,26px);letter-spacing:-.015em;margin-bottom:18px}
.vsteps{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;counter-reset:vs}
.vstep{counter-increment:vs;border:1px solid var(--line);border-radius:16px;padding:22px 20px;background:var(--bg-card);min-width:0}
.vstep::before{
  content:counter(vs,decimal-leading-zero);display:block;font-family:var(--font-mono);font-size:10.5px;
  letter-spacing:.16em;color:var(--acid);margin-bottom:10px;
}
.vstep h4{font-size:15.5px;font-weight:650;color:var(--ink);margin-bottom:7px;line-height:1.3}
.vstep p{color:var(--ink-dim);font-size:13.8px;line-height:1.62}

.vend{padding-bottom:90px}

@media (max-width:900px){
  .vcard{grid-template-columns:1fr;gap:20px;padding:26px 22px 26px 24px}
  .vlogo{width:132px;height:90px;border-radius:14px}
  .vlogo .vmark{font-size:30px}
}
@media (max-width:640px){
  .vh{padding:104px 0 0}
  .vfacts{grid-template-columns:1fr 1fr}
  .vop,.vstep{padding:22px 18px}
  .vop dl{gap:16px}
  .vlink{font-size:12.6px;padding:9px 13px}
}

/* ---------- HUB: older posts list ---------- */
.post-rows{display:flex;flex-direction:column;gap:12px;margin-bottom:26px}
.post-row{
  display:block;text-decoration:none;color:inherit;
  background:var(--bg-card);border:1px solid var(--line);border-radius:18px;
  padding:24px 28px;transition:border-color .25s,transform .25s;
}
.post-row:hover{border-color:var(--line-bright);transform:translateY(-2px)}
.pr-meta{
  display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:11px;
  font-family:var(--font-mono);font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-mute);
}
.pr-meta b{color:var(--acid);font-weight:600}
.pr-meta span{position:relative;padding-left:14px}
.pr-meta span::before{content:'';position:absolute;left:5px;top:50%;width:3px;height:3px;border-radius:50%;background:var(--ink-mute);transform:translateY(-50%)}
[dir="rtl"] .pr-meta span{padding-left:0;padding-right:14px}
[dir="rtl"] .pr-meta span::before{left:auto;right:5px}
.post-row h3{
  font-family:var(--font-display);font-weight:300;letter-spacing:-.02em;
  font-size:clamp(20px,2vw,26px);line-height:1.18;margin-bottom:10px;overflow-wrap:break-word;
}
.post-row p{color:var(--ink-dim);font-size:14.6px;line-height:1.65;margin-bottom:15px;max-width:76ch}
@media (max-width:640px){ .post-row{padding:20px 18px} }
