/* ============================================================
   KUAFU BIOMEDICINE — Global Styles
   Brand Palette: 米黄#f7f4ed · 墨绿#244b3f · 铜色#a57445 · 深炭灰#18211f
   ============================================================ */
:root{
  --paper:#f7f4ed;
  --white:#fffdf8;
  --ink:#1f2825;
  --muted:#68736f;
  --green:#244b3f;
  --green-2:#426b5c;
  --sage:#dfe8df;
  --stone:#e8e2d8;
  --copper:#a57445;
  --copper-light:#d7b387;
  --line:#d9d2c7;
  --charcoal:#18211f;
}
*{box-sizing:border-box;overflow-wrap:break-word;word-break:break-word}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}

/* ---- Loader ---- */
.loader{position:fixed;inset:0;z-index:1000;background:var(--paper);color:var(--green);display:grid;place-items:center;align-content:center;gap:18px;transition:opacity .55s,visibility .55s}
.loader.done{opacity:0;visibility:hidden;pointer-events:none}
.loader-mark{width:82px;height:82px;border:1px solid var(--green);display:grid;place-items:center;font-weight:700;letter-spacing:2px}
.loader p{font-size:10px;letter-spacing:4px;color:var(--muted)}

/* ---- Scroll Progress ---- */
.progress{position:fixed;top:0;left:0;width:0;height:3px;background:var(--copper);z-index:120}

/* ---- Header ---- */
.site-header{position:fixed;top:0;left:0;right:0;z-index:100;height:86px;display:flex;align-items:center;padding:0 5vw;color:var(--white);border-bottom:1px solid rgba(255,255,255,.18);transition:.35s}
.site-header.scrolled{height:70px;background:rgba(255,253,248,.92);color:var(--ink);border-bottom-color:var(--line);backdrop-filter:blur(16px)}
.site-header.home-scrolled{color:var(--ink)}
.logo{display:flex;align-items:center;gap:14px}
.logo-mark{width:42px;height:42px;display:grid;place-items:center;background:var(--green);color:#fff;font-weight:800;border-radius:2px}
.logo b{display:block;font-size:15px;letter-spacing:1px}
.logo small{display:block;margin-top:3px;font-size:8px;letter-spacing:2px;color:currentColor;opacity:.58}

/* ---- Nav ---- */
.nav{display:flex;gap:34px;margin-left:auto;margin-right:28px;font-size:13px;color:currentColor;opacity:.86}
.nav a{position:relative;padding-bottom:2px}
.nav a:after{content:"";position:absolute;left:0;bottom:-6px;width:100%;height:1.5px;background:var(--copper);transform:scaleX(0);transform-origin:right;transition:.3s}
.nav a:hover:after,.nav a.active:after{transform:scaleX(1);transform-origin:left}
.nav a.active{color:var(--copper)}
.nav-cta,.button{display:inline-flex;align-items:center;gap:18px;border-radius:2px;font-size:13px;transition:.28s}
.nav-cta{padding:11px 18px;border:1px solid currentColor}
.nav-cta:hover,.button:hover{transform:translateY(-2px)}
.button{padding:15px 22px;border:1px solid var(--green)}
.button.primary{background:var(--green);color:#fff}
.button.ghost{color:var(--green);background:rgba(255,253,248,.72)}
.menu{display:none}

/* ============================================================
   HERO — Homepage only
   ============================================================ */
.hero{min-height:100vh;position:relative;padding:150px 5vw 58px;display:grid;grid-template-columns:1.05fr .95fr;gap:6vw;align-items:center;background:var(--paper);overflow:hidden}
.hero:before{content:"";position:absolute;inset:0 0 auto;height:62%;background:var(--charcoal);z-index:0}
.hero-bg{position:absolute;right:5vw;top:128px;width:43vw;max-width:690px;height:64vh;min-height:470px;z-index:1;background:var(--stone);overflow:hidden}
.hero-bg:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.22);mix-blend-mode:screen}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center;filter:grayscale(.18) sepia(.08) contrast(.94)}
.bio-grid{position:absolute;left:5vw;right:5vw;top:128px;height:64vh;border:1px solid rgba(255,255,255,.12);z-index:1;pointer-events:none}
.bio-grid:before{content:"";position:absolute;left:42%;top:0;bottom:0;width:1px;background:rgba(255,255,255,.12)}
.hero-copy{position:relative;z-index:2;max-width:760px;color:#fff}
.eyebrow,.section-kicker{margin:0 0 26px;font-size:11px;letter-spacing:2.7px;font-weight:700;color:var(--copper)}
.hero .eyebrow{color:#d7b387}
.hero h1{margin:0 0 30px;font-size:clamp(54px,6.2vw,92px);line-height:1.08;letter-spacing:-3.5px;font-weight:650}
.lead{max-width:690px;margin:0 0 38px;color:#d8ded9;font-size:17px;line-height:2}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.hero-panel{position:relative;z-index:2;align-self:end;justify-self:end;margin-top:46vh;width:min(430px,100%);padding:32px;background:var(--white);border:1px solid var(--line);box-shadow:0 22px 70px rgba(31,40,37,.1)}
.hero-panel p{margin:0;color:var(--copper);font-size:11px;letter-spacing:2px}
.panel-line{height:1px;background:var(--line);margin:24px 0}
.hero-panel strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:30px;line-height:1.18;font-weight:500;color:var(--ink)}
.hero-panel span{display:block;margin-top:18px;color:var(--muted);font-size:13px}
.hero-stats{grid-column:1/-1;position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);margin-top:62px;background:var(--white);border:1px solid var(--line)}
.hero-stats article{padding:26px 32px;border-right:1px solid var(--line)}
.hero-stats article:last-child{border-right:0}
.hero-stats b{font-family:Georgia,"Times New Roman",serif;font-size:38px;font-weight:500;color:var(--green)}
.hero-stats span{display:block;margin-top:7px;color:var(--muted);font-size:13px}

/* ============================================================
   PAGE HERO — Sub-pages unified hero
   ============================================================ */
.page-hero{
  position:relative;
  min-height:30vh;
  display:flex;
  align-items:center;
  padding:40px 7vw 30px;
  background:linear-gradient(135deg,var(--charcoal) 0%,var(--green) 100%);
  color:#fff;
  overflow:hidden;
}
.page-hero::before{
  content:"夸父";
  position:absolute;
  right:-2%;
  top:50%;
  transform:translateY(-50%) rotate(-12deg);
  font-size:clamp(120px,18vw,260px);
  font-weight:800;
  color:rgba(255,255,255,.03);
  pointer-events:none;
  letter-spacing:.08em;
  line-height:1;
  white-space:nowrap;
  z-index:0;
}
.page-hero-inner{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:4vw;
  width:100%;
}
.page-hero-text{
  max-width:680px;
}
.page-hero-kicker{
  margin:0 0 18px;
  font-size:11px;
  letter-spacing:3px;
  font-weight:700;
  color:var(--copper-light);
  text-transform:uppercase;
}
.page-hero h1{
  margin:0 0 18px;
  font-size:clamp(24px,3vw,40px);
  line-height:1.12;
  letter-spacing:-2px;
  font-weight:650;
  color:#fff;
}
.page-hero-desc{
  margin:0;
  font-size:15px;
  line-height:1.9;
  color:#c8d1cc;
  max-width:560px;
}
.page-hero-deco{
  display:flex;
  justify-content:center;
  align-items:center;
  min-height:220px;
  position:relative;
}
.page-hero-footer{
  position:absolute;
  bottom:22px;
  left:7vw;
  right:7vw;
  display:flex;
  justify-content:space-between;
  align-items:center;
  z-index:2;
}
.page-hero-chapter{
  font-family:Georgia,"Times New Roman",serif;
  font-size:13px;
  color:rgba(255,255,255,.3);
  letter-spacing:2px;
}
.page-hero-scroll{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:11px;
  color:rgba(255,255,255,.4);
  letter-spacing:1px;
}
.page-hero-scroll i{
  display:inline-block;
  width:16px;
  height:16px;
  border-right:1px solid rgba(255,255,255,.3);
  border-bottom:1px solid rgba(255,255,255,.3);
  transform:rotate(45deg);
  animation:scrollBounce 2s ease-in-out infinite;
}
@keyframes scrollBounce{
  0%,100%{transform:rotate(45deg) translate(0,0)}
  50%{transform:rotate(45deg) translate(4px,4px)}
}

/* ---- About Hero: 品牌字母K的几何方块组合 ---- */
.deco-about{
  width:200px;height:200px;position:relative;
}
.deco-about .k-block{
  position:absolute;
  border:1.5px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.04);
  transition:.4s;
}
.deco-about .k-block:hover{
  background:rgba(167,116,69,.2);
  border-color:var(--copper-light);
}
.deco-about .k-b1{left:20px;top:10px;width:30px;height:60px}
.deco-about .k-b2{left:20px;top:130px;width:30px;height:60px}
.deco-about .k-b3{left:58px;top:10px;width:24px;height:36px}
.deco-about .k-b4{left:58px;top:80px;width:24px;height:28px}
.deco-about .k-b5{left:92px;top:10px;width:70px;height:36px}
.deco-about .k-b6{left:92px;top:130px;width:70px;height:60px}
.deco-about .k-b7{left:120px;top:80px;width:42px;height:28px}

/* ---- Platform Hero: 四个节点连线图 ---- */
.deco-platform{
  width:220px;height:200px;position:relative;
}
.deco-platform svg{
  width:100%;height:100%;
}
.deco-platform .node{
  fill:none;
  stroke:var(--copper-light);
  stroke-width:1.5;
}
.deco-platform .node-fill{
  fill:var(--copper-light);
  stroke:none;
  opacity:.6;
}
.deco-platform .conn{
  stroke:rgba(255,255,255,.15);
  stroke-width:1;
  stroke-dasharray:4 4;
}
.deco-platform .node-label{
  fill:rgba(255,255,255,.35);
  font-size:9px;
  font-family:Georgia,serif;
  text-anchor:middle;
}

/* ---- Technology Hero: 放射状分子/细胞图案 ---- */
.deco-technology{
  width:220px;height:220px;position:relative;
}
.deco-technology svg{width:100%;height:100%}
.deco-technology .mol-ring{
  fill:none;
  stroke:rgba(255,255,255,.12);
  stroke-width:1;
}
.deco-technology .mol-node{
  fill:var(--copper-light);
  opacity:.5;
}
.deco-technology .mol-bond{
  stroke:rgba(255,255,255,.15);
  stroke-width:1;
}
.deco-technology .mol-dot{
  fill:rgba(255,255,255,.25);
}

/* ---- Pipeline Hero: 三条递进竖线 ---- */
.deco-pipeline{
  width:180px;height:200px;position:relative;
  display:flex;
  gap:24px;
  align-items:flex-end;
  justify-content:center;
}
.deco-pipeline .pline{
  width:2px;
  background:linear-gradient(to top,rgba(167,116,69,.5),rgba(255,255,255,.1));
  border-radius:1px;
  position:relative;
}
.deco-pipeline .pline::after{
  content:"";
  position:absolute;
  bottom:0;
  left:50%;
  transform:translateX(-50%);
  width:10px;height:10px;
  border:1.5px solid var(--copper-light);
  background:rgba(167,116,69,.3);
  border-radius:1px;
}
.deco-pipeline .pline-1{height:80px}
.deco-pipeline .pline-2{height:130px}
.deco-pipeline .pline-3{height:180px}

/* ---- Contact Hero: 几何信封/指针图案 ---- */
.deco-contact{
  width:200px;height:160px;position:relative;
}
.deco-contact svg{width:100%;height:100%}
.deco-contact .env-body{
  fill:none;
  stroke:rgba(255,255,255,.2);
  stroke-width:1.5;
}
.deco-contact .env-flap{
  fill:rgba(255,255,255,.04);
  stroke:rgba(255,255,255,.15);
  stroke-width:1.5;
}
.deco-contact .env-line{
  stroke:rgba(167,116,69,.4);
  stroke-width:1;
}
.deco-contact .env-dot{
  fill:var(--copper-light);
  opacity:.5;
}

/* ---- News Hero: 横向信息流线 ---- */
.deco-news{
  width:240px;height:100px;position:relative;
}
.deco-news svg{width:100%;height:100%}
.deco-news .flow-line{
  stroke:rgba(255,255,255,.15);
  stroke-width:1;
}
.deco-news .flow-dot{
  fill:var(--copper-light);
  opacity:.6;
}
.deco-news .flow-node{
  fill:rgba(255,255,255,.06);
  stroke:rgba(255,255,255,.15);
  stroke-width:1;
}
.deco-news .flow-arrow{
  fill:none;
  stroke:rgba(255,255,255,.12);
  stroke-width:1;
}

/* ============================================================
   SECTIONS — Shared
   ============================================================ */
.section{padding:50px 7vw;position:relative}
.intro,.proof,.roadmap{background:var(--white)}
.intro-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:10vw}
.intro h2,.section-head h2,.founder h2,.proof h2,.contact h2{margin:0;font-size:clamp(38px,4.5vw,68px);line-height:1.18;letter-spacing:-2px;font-weight:620}
.intro-copy p,.proof-copy p{font-size:16px;line-height:2;color:var(--muted)}
.mission-grid,.platform-grid,.timeline,.roadmap-line{display:grid;gap:16px}
.mission-grid{grid-template-columns:repeat(3,1fr);margin-top:30px}
.intro .mission-grid{margin-top:24px}
.mission-grid article,.platform-grid article,.tech-cards article,.roadmap-line article{padding:34px;background:transparent;border:1px solid var(--line);transition:.28s}
.mission-grid article:hover,.platform-grid article:hover,.roadmap-line article:hover{background:var(--white);transform:translateY(-5px);box-shadow:0 18px 42px rgba(31,40,37,.08)}
.mission-grid span,.tech-cards span{font-size:10px;letter-spacing:2px;color:var(--copper)}
.mission-grid h3,.platform-grid h3,.tech-cards h3,.roadmap-line h3{font-size:21px;margin:18px 0 12px;font-weight:620}
.mission-grid p,.platform-grid p,.tech-cards p,.roadmap-line p{color:var(--muted);font-size:14px;line-height:1.8}

/* ---- Founder ---- */
.founder{background:var(--paper);margin-top:0}
.founder-card{display:grid;grid-template-columns:330px 1fr;gap:6vw;align-items:center;padding:38px;background:var(--white);border:1px solid var(--line)}
.portrait{height:390px;background:var(--stone);overflow:hidden}
.portrait img{width:100%;height:100%;object-fit:cover;object-position:center top;filter:grayscale(.12)}
.founder-card p:not(.section-kicker){font-size:16px;line-height:2;color:var(--muted);max-width:760px}
.founder-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.founder-tags span{padding:10px 14px;border:1px solid var(--line);font-size:12px;color:var(--green);background:#fbfaf6}
.timeline{grid-template-columns:repeat(3,1fr);margin-top:18px}
.timeline article{padding:25px;background:var(--green);color:#fff}
.timeline b{color:#e6c49a}
.timeline p{font-size:13px;line-height:1.75;color:#d9e2db}

/* ---- Platform ---- */
.platform{background:#edf2ed}
.section-head{max-width:880px;margin-bottom:36px}
.platform-map{position:relative;padding:18px;background:var(--white);border:1px solid var(--line)}
.platform-map img{width:100%;filter:grayscale(.08) saturate(.85)}
.platform-orbit{display:none}
.platform-grid{grid-template-columns:repeat(4,1fr);margin-top:16px;gap:20px}
.platform-grid small{font-weight:700;color:var(--copper)}

/* ---- Platform Detail (Sub-page) ---- */
.platform-detail{padding:40px 7vw}
.platform-detail:nth-child(even){background:#edf2ed}
.platform-detail-inner{max-width:900px}
.platform-detail-header{display:flex;align-items:flex-start;gap:24px;margin-bottom:20px}
.platform-num{font-size:48px;font-weight:700;color:var(--copper);line-height:1;opacity:.3;font-family:Georgia,serif}
.platform-en{font-size:11px;letter-spacing:2px;color:var(--copper);display:block;margin-bottom:6px}
.platform-detail h2{font-size:clamp(24px,2.5vw,36px);letter-spacing:-1px;margin:0}
.platform-desc{font-size:16px;line-height:1.8;color:var(--muted);margin-bottom:24px;max-width:720px}
.platform-caps{display:flex;flex-wrap:wrap;gap:10px}
.platform-caps span{padding:10px 18px;background:var(--sage);font-size:13px;color:var(--green);border-radius:2px}

/* ---- Technology ---- */
.technology{background:var(--charcoal);color:#fff;overflow:hidden}
.technology:before{content:"";position:absolute;left:7vw;right:7vw;top:50px;bottom:50px;border:1px solid rgba(255,255,255,.08);pointer-events:none}
.section-head.invert .section-kicker{color:#e0b77e}
.tech-layout{position:relative;z-index:1;display:grid;grid-template-columns:.9fr 1.1fr;gap:36px}
.tech-visual{padding:18px;border:1px solid rgba(255,255,255,.14);background:rgba(255,253,248,.05);overflow:hidden;max-height:480px}
.tech-visual img{width:100%;height:100%;object-fit:cover;filter:grayscale(.05) contrast(.9);opacity:.78}
.tech-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.tech-cards article{background:rgba(255,253,248,.04);border-color:rgba(255,255,255,.13)}
.tech-cards h3{color:#fff}
.tech-cards p{color:#bec9c2}

/* ---- Proof / Validation ---- */
.proof{display:grid;grid-template-columns:1.2fr .8fr;gap:5vw;align-items:center}
.proof-grid{display:grid;gap:30px}
.proof-stats{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line);gap:16px}
.proof-stats article{padding:22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.proof-stats strong{font-family:Georgia,"Times New Roman",serif;font-size:58px;font-weight:500;color:var(--green)}
.proof-stats span{font-size:20px;color:var(--green)}
.proof-stats p{font-size:13px;color:var(--muted)}
.skin-card{padding:18px;background:#f5f2eb;border:1px solid var(--line);overflow:hidden;max-height:400px}
.skin-card img{width:100%;height:100%;object-fit:cover}

/* ---- Pipeline ---- */
.pipeline{background:var(--paper)}
.pipeline-board{position:relative;padding:22px;background:var(--white);border:1px solid var(--line);overflow:hidden;max-height:400px}
.pipeline-board img{width:100%;height:100%;object-fit:cover;opacity:.28;filter:grayscale(.2)}
.pipeline-overlay{position:absolute;inset:42px;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;align-items:end}
.pipeline-overlay article{min-height:178px;padding:24px;background:rgba(36,75,63,.92);color:#fff;display:flex;flex-direction:column;justify-content:space-between;transition:.25s}
.pipeline-overlay article:hover{background:var(--charcoal);transform:translateY(-5px)}
.pipeline-overlay b{font-size:20px}
.pipeline-overlay span{font-size:13px;line-height:1.75;color:#e1e7e2}

/* ---- Roadmap ---- */
.roadmap-line{grid-template-columns:repeat(3,1fr);position:relative}
.roadmap-line:before{content:"";position:absolute;left:0;right:0;top:28px;height:1px;background:var(--line)}
.roadmap-line article{position:relative;padding-top:54px;background:var(--white)}
.roadmap-line article:before{content:"";position:absolute;left:34px;top:21px;width:13px;height:13px;background:var(--copper);box-shadow:0 0 0 8px #f0e7dc}
.roadmap-line span{color:var(--copper);font-size:12px;font-weight:700}

/* ---- Contact ---- */
.contact{background:var(--green);color:#fff}
.contact:before{content:"";position:absolute;inset:0;background:url("assets/roadmap.jpg") center/cover;opacity:.08;filter:grayscale(1)}
.contact-panel{position:relative;max-width:900px;padding:40px;background:rgba(255,253,248,.08);border:1px solid rgba(255,255,255,.16)}
.contact-info{display:grid;gap:14px;margin-top:24px}
.contact-info p{margin:0;color:#e3ece6;display:flex;align-items:baseline;gap:12px}
.contact-info p span:first-child{display:inline-block;min-width:54px;color:#e6c49a;flex-shrink:0}

/* Contact hero: one-screen target */
.contact-hero{min-height:40vh}

/* ---- Contact Form ---- */
.contact-form{display:flex;flex-direction:column;gap:24px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.form-field{display:flex;flex-direction:column;gap:8px}
.form-field label{font-size:12px;letter-spacing:1px;color:var(--muted);text-transform:uppercase;font-weight:500}
.form-field input,.form-field select,.form-field textarea{padding:14px 16px;border:1px solid var(--line);background:var(--white);font-size:14px;color:var(--ink);border-radius:2px;font-family:inherit;outline:none;transition:border-color .2s;line-height:1.5}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--copper)}
.form-field input::placeholder,.form-field textarea::placeholder{color:var(--muted);opacity:.6}
.form-field textarea{resize:vertical;min-height:120px}
.form-field select{cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2368736f' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}

/* ---- Partner Grid ---- */
.partner-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;text-align:center}
.partner-card{padding:28px 16px;border:1px solid var(--line);transition:all .3s;text-decoration:none;color:inherit;display:block}
.partner-card:hover{border-color:var(--copper);transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.06)}

/* ---- Footer ---- */
footer{background:var(--charcoal);color:#b9c3bd;font-size:12px}
.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:30px;max-width:1200px;margin:0 auto;padding:40px 5vw 30px}
.footer-col h4{font-size:13px;letter-spacing:1px;color:var(--copper);margin:0 0 16px;text-transform:uppercase}
.footer-col p{font-size:13px;color:var(--muted);margin:8px 0 0;max-width:320px;line-height:1.6}
.footer-col a{display:block;font-size:13px;color:var(--muted);padding:5px 0;opacity:.75;transition:.2s}
.footer-col a:hover{opacity:1;color:var(--copper)}
.footer-bottom{border-top:1px solid var(--line);padding:20px 5vw;display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto}
footer .logo{margin-bottom:8px}
footer .logo b{color:#fff}

/* ---- Reveal / Stagger animations ---- */
.reveal,.stagger>*{opacity:0;transform:translateY(24px);transition:opacity .68s,transform .68s}
.visible,.stagger.visible>*{opacity:1;transform:none}
.stagger.visible>*:nth-child(2){transition-delay:.08s}
.stagger.visible>*:nth-child(3){transition-delay:.16s}
.stagger.visible>*:nth-child(4){transition-delay:.24s}

/* ============================================================
   NEWS PAGE
   ============================================================ */
.news-section{padding:50px 7vw;background:var(--white)}
.news-filters{
  display:flex;
  gap:8px;
  margin-bottom:30px;
  flex-wrap:wrap;
}
.news-filter-btn{
  padding:10px 20px;
  border:1px solid var(--line);
  background:transparent;
  color:var(--muted);
  font-size:13px;
  cursor:pointer;
  transition:.25s;
  border-radius:2px;
  font-family:inherit;
}
.news-filter-btn:hover{
  border-color:var(--green);
  color:var(--green);
}
.news-filter-btn.active{
  background:var(--green);
  color:#fff;
  border-color:var(--green);
}

/* News List */
.news-list{
  display:grid;
  gap:24px;
}

/* Featured news item (with image) */
.news-item--featured{
  display:grid;
  grid-template-columns:1fr 1.4fr;
  gap:0;
  background:var(--white);
  border:1px solid var(--line);
  overflow:hidden;
  transition:.28s;
}
.news-item--featured:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 40px rgba(31,40,37,.08);
}
.news-item--featured .news-thumb{
  position:relative;
  min-height:280px;
  background:var(--stone);
  overflow:hidden;
}
.news-item--featured .news-thumb img{
  width:100%;height:100%;object-fit:cover;
  filter:grayscale(.1) saturate(.85);
  transition:transform .4s;
}
.news-item--featured:hover .news-thumb img{
  transform:scale(1.03);
}
.news-item--featured .news-thumb .news-category-tag{
  position:absolute;
  top:16px;left:16px;
  padding:5px 12px;
  background:var(--green);
  color:#fff;
  font-size:10px;
  letter-spacing:1.5px;
  font-weight:700;
}
.news-item--featured .news-body{
  padding:36px 40px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.news-item--featured .news-body .news-date{
  font-size:11px;
  letter-spacing:1.5px;
  color:var(--copper);
  margin-bottom:14px;
}
.news-item--featured .news-body h3{
  font-size:22px;
  font-weight:620;
  margin:0 0 12px;
  line-height:1.35;
  color:var(--ink);
}
.news-item--featured .news-body p{
  font-size:14px;
  line-height:1.9;
  color:var(--muted);
  margin:0;
}

/* Regular news item (no image) */
.news-item{
  display:grid;
  grid-template-columns:160px 1fr;
  gap:30px;
  align-items:center;
  padding:26px 32px;
  background:var(--white);
  border:1px solid var(--line);
  transition:.28s;
}
.news-item:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 30px rgba(31,40,37,.06);
  border-color:var(--copper);
}
.news-item .news-date{
  font-family:Georgia,"Times New Roman",serif;
  font-size:14px;
  color:var(--copper);
  white-space:nowrap;
}
.news-item .news-date .news-day{
  display:block;
  font-size:28px;
  font-weight:500;
  color:var(--green);
  line-height:1.1;
}
.news-item .news-body h3{
  font-size:17px;
  font-weight:600;
  margin:0 0 6px;
  line-height:1.4;
  color:var(--ink);
}
.news-item .news-body p{
  font-size:13px;
  line-height:1.8;
  color:var(--muted);
  margin:0;
}
.news-item .news-body .news-category-tag{
  display:inline-block;
  margin-top:10px;
  padding:3px 10px;
  border:1px solid var(--line);
  font-size:10px;
  letter-spacing:1px;
  color:var(--green);
}

/* Pagination */
.news-pagination{
  display:flex;
  gap:6px;
  justify-content:center;
  margin-top:36px;
  align-items:center;
}
.news-pagination a,
.news-pagination span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  height:42px;
  padding:0 14px;
  border:1px solid var(--line);
  font-size:13px;
  color:var(--muted);
  transition:.25s;
  border-radius:2px;
  cursor:pointer;
}
.news-pagination a:hover{
  border-color:var(--green);
  color:var(--green);
}
.news-pagination .current,
.news-pagination .active{
  background:var(--green);
  color:#fff;
  border-color:var(--green);
}
.news-pagination .dots{
  border:none;
  cursor:default;
  color:var(--muted);
}


/* ============================================================
   RESPONSIVE
   ============================================================ */
@media(max-width:1000px){
  .nav,.nav-cta{display:none}.menu{display:block;margin-left:auto;background:none;border:0;width:36px;cursor:pointer;z-index:10}.menu i{display:block;height:1px;background:currentColor;margin:8px}
  .nav.open{display:flex;position:absolute;left:0;right:0;top:86px;padding:28px 5vw;background:var(--white);color:var(--ink);border-bottom:1px solid var(--line);flex-direction:column;z-index:99;box-shadow:0 10px 40px rgba(0,0,0,.08)}
  .nav.open a{display:block;padding:14px 0;font-size:15px;color:var(--ink);opacity:1;border-bottom:1px solid var(--line)}
  .nav.open a:last-child{border-bottom:none}
  .nav.open a:hover,.nav.open a.active{color:var(--copper)}
  .nav-cta-mobile{display:block;margin-top:16px;padding:14px 0;text-align:center;background:var(--green);color:#fff;font-size:14px;letter-spacing:1px;border-radius:2px}
  .hero,.intro-layout,.tech-layout,.proof,.founder-card{grid-template-columns:1fr}
  .hero{padding-top:120px}.hero:before{height:56%}.hero-bg{position:relative;right:auto;top:auto;width:100%;height:420px;min-height:0;grid-row:2}.bio-grid{display:none}.hero-panel{margin-top:0;justify-self:start}.hero-stats,.mission-grid,.timeline,.platform-grid,.pipeline-overlay,.roadmap-line{grid-template-columns:1fr 1fr}.pipeline-overlay{position:static;margin-top:18px}.pipeline-board img{display:none}.section{padding:50px 6vw}
  .partner-grid{grid-template-columns:repeat(3,1fr)}

  /* Page Hero responsive */
  .page-hero{padding:100px 6vw 50px}
  .page-hero-inner{grid-template-columns:1fr;text-align:center}
  .page-hero-deco{order:-1;margin-bottom:20px}
  .page-hero h1{font-size:clamp(34px,7vw,52px)}
  .page-hero-desc{margin:0 auto}
  .deco-about,.deco-platform,.deco-technology,.deco-contact,.deco-news{margin:0 auto;transform:scale(.85)}
  .deco-pipeline{margin:0 auto;transform:scale(.85)}

  /* News responsive */
  .news-item--featured{grid-template-columns:1fr}
  .news-item--featured .news-thumb{min-height:220px}
  .news-item{grid-template-columns:1fr;text-align:center}
  .news-item .news-date{display:flex;align-items:center;gap:12px;justify-content:center}
  .news-item .news-date .news-day{display:inline;font-size:17px}
  .form-row{grid-template-columns:1fr}
  .footer-top{grid-template-columns:1fr 1fr;gap:24px;padding:36px 5vw 24px}
  .platform-detail{padding:40px 6vw}
}

@media(max-width:640px){
  .site-header{height:68px}.logo small{display:none}.nav.open{top:68px}.hero h1{font-size:43px;letter-spacing:-2px}.lead{font-size:15px}.hero-stats,.mission-grid,.timeline,.platform-grid,.tech-cards,.proof-stats,.pipeline-overlay,.roadmap-line{grid-template-columns:1fr}.hero-stats article{border-right:0;border-bottom:1px solid var(--line)}.founder-card,.contact-panel{padding:24px}.portrait{height:320px}
  .partner-grid{grid-template-columns:repeat(2,1fr)}
  .footer-top{grid-template-columns:1fr;padding:28px 5vw 20px}
  .footer-bottom{flex-direction:column;align-items:flex-start;padding:16px 5vw;gap:8px}
  .platform-detail{padding:40px 5vw}
  .platform-num{font-size:36px}

  /* Page Hero small */
  .page-hero{min-height:220px;padding:90px 5vw 50px}
  .page-hero h1{font-size:32px;letter-spacing:-1px}
  .page-hero-footer{left:5vw;right:5vw}
  .page-hero-deco{transform:scale(.7)}

  /* News small */
  .news-section{padding:50px 5vw}
  .news-filters{gap:6px}
  .news-filter-btn{padding:8px 14px;font-size:12px}
  .news-item--featured .news-body{padding:24px 22px}
  .news-item--featured .news-body h3{font-size:18px}
  .news-item{padding:22px 20px}
  .news-item .news-body h3{font-size:15px}
  .news-pagination a,
  .news-pagination span{min-width:36px;height:36px;font-size:12px}
}

/* ---- Subpage body (no hero background behind header) ---- */
body.sub-page .site-header{
  background:var(--charcoal);
  border-bottom-color:rgba(255,255,255,.18);
  color:#fff;
}
body.sub-page .site-header.scrolled{
  background:rgba(255,253,248,.92);
  color:var(--ink);
  border-bottom-color:var(--line);
}
