:root{
  --bg:#0c0f14; --bg2:#0f151d; --panel:#141b25; --panel2:#1a2330;
  --line:#223046; --txt:#e8ecf1; --mut:#9aa7b5; --dim:#6b788a;
  --accent:#d9a85e; --accent2:#8a9bb0; --ok:#3fae7a;
  --accent-grad:#e0c58a; --navy:#172c46;
  --radius:14px; --maxw:1140px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Segoe UI',system-ui,-apple-system,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--txt);line-height:1.6;font-size:16px;-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-decoration:none}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 20px}
/* top bar */
.top{background:var(--bg2);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:66px}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:.5px;font-size:19px}
.brand img{height:30px;width:auto}
.brand em{font-style:normal;color:var(--mut);font-weight:500;font-size:13px;letter-spacing:2px}
.nav-links{display:flex;gap:22px;align-items:center}
.nav-links a{color:var(--mut);font-size:14.5px;font-weight:500}
.nav-links a:hover{color:var(--txt)}
.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#10141a;font-weight:700;padding:11px 20px;border-radius:9px;font-size:14.5px;border:none;cursor:pointer;transition:.15s}
.btn:hover{filter:brightness(1.08)}
.btn-ghost{background:transparent;color:var(--txt);border:1px solid var(--line)}
.btn-wa{background:#25D366;color:#063;}
.btn-block{width:100%}
.menu-toggle{display:none;background:none;border:none;color:var(--txt);font-size:24px;cursor:pointer}
@media(max-width:860px){
  .menu-toggle{display:block}
  .nav-links{position:absolute;top:66px;left:0;right:0;background:var(--bg2);flex-direction:column;gap:0;padding:6px 20px 14px;border-bottom:1px solid var(--line);display:none;z-index:50}
  .nav-links.open{display:flex}
  .nav-links a{padding:12px 0;width:100%;border-bottom:1px solid var(--line)}
  .nav-links .btn{margin-top:12px;width:100%}
  .hero-grid{flex-direction:column;gap:32px}
}
/* hero */
.hero{position:relative;padding:74px 0 64px;background:
  radial-gradient(1000px 500px at 80% -10%,var(--navy) 0%,transparent 55%),
  linear-gradient(rgba(217,168,94,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(217,168,94,.035) 1px,transparent 1px),
  linear-gradient(180deg,#0d1117 0%,var(--bg) 100%);background-size:auto,56px 56px,56px 56px,auto}
.hero-grid{display:flex;gap:40px;align-items:center}
.hero-copy{flex:1.15}
.kicker{color:var(--accent);font-weight:600;letter-spacing:2px;font-size:13px;text-transform:uppercase;margin-bottom:16px}
/* 第一屏直白定位声明：让客户 3 秒看懂 ORESOL 做什么 */
.hero-position{color:var(--txt);font-weight:600;font-size:clamp(15px,2vw,17px);letter-spacing:.3px;margin-bottom:14px;line-height:1.4}
.hero-position b{color:var(--accent);font-weight:700}
.hero h1{font-size:clamp(30px,5vw,52px);line-height:1.08;font-weight:800;letter-spacing:-.5px}
.hero h1 .grad{background:linear-gradient(90deg,var(--accent),var(--accent-grad));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .sub{margin:22px 0 30px;color:var(--mut);font-size:clamp(16px,2.2vw,19px);max-width:560px}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap}
.hero-visual{flex:1;text-align:center}
/* 科学徽章：宝石 Logo + 元素轨道（克制，无动画） */
.sci-badge{position:relative;width:180px;height:180px;margin:0 auto 20px}
.sci-orbit{position:absolute;inset:0;border-radius:50%;border:1px solid var(--line);box-shadow:inset 0 0 0 1px rgba(217,168,94,.08)}
.sci-orbit::after{content:"";position:absolute;inset:18px;border-radius:50%;border:1px dashed var(--line);opacity:.7}
.sci-core{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:78px;height:78px;display:flex;align-items:center;justify-content:center}
.sci-core img{width:64px;height:64px}
.sci-el{position:absolute;top:50%;left:50%;font-size:11px;font-weight:600;color:var(--accent);letter-spacing:.5px;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-86px) rotate(calc(-1*var(--a)))}
.ore-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;text-align:left;max-width:420px;margin:0 auto}
.ore-card .rock{font-size:44px;line-height:1}
.ore-card h3{margin:10px 0 4px;font-size:18px}
.ore-card p{color:var(--mut);font-size:14px}
.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.tag{font-size:12.5px;padding:5px 10px;border:1px solid var(--line);border-radius:20px;color:var(--mut);background:var(--bg2)}
/* sec */
.sec{padding:60px 0}
.sec-alt{background:var(--bg2)}
.sec-head{text-align:center;max-width:720px;margin:0 auto 40px}
.sec-head .k{color:var(--accent);letter-spacing:2px;font-size:12.5px;text-transform:uppercase;font-weight:600}
.sec-head h2{font-size:clamp(24px,3.5vw,34px);margin:10px 0 12px;font-weight:800;line-height:1.15}
.sec-head p{color:var(--mut)}
/* pricing */
.price-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:20px;margin-top:10px}
.price-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:26px 20px;text-align:center;position:relative;overflow:hidden}
/* 顶部细金色线，弱化盒子感，强化克制感 */
.price-card::before{content:"";position:absolute;top:0;left:20%;right:20%;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.55}
.price-card .el{font-size:30px;font-weight:800;background:linear-gradient(180deg,var(--accent-grad),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1.2}
.price-card .lv{font-size:13px;color:var(--dim);margin-top:6px;text-transform:uppercase;letter-spacing:1px}
.price-card .amt{font-size:14.5px;color:var(--txt);font-weight:600;margin-top:12px}
.price-note{text-align:center;color:var(--dim);font-size:13.5px;margin-top:20px}
/* demand 3 entry */
.entry-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px}
.entry{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px;position:relative;overflow:hidden}
.entry .num{position:absolute;top:14px;right:18px;font-size:46px;font-weight:800;color:var(--bg2);text-shadow:0 0 0 1px var(--line);-webkit-text-stroke:1px #2c3949;opacity:.9}
.entry h3{font-size:19px;margin-bottom:8px}
.entry h3 span{color:var(--accent)}
.entry p{color:var(--mut);font-size:14.5px;margin-bottom:16px}
.entry .meta{color:var(--dim);font-size:13px;margin-bottom:18px}
/* features */
.feat{background:transparent;border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;border-top:2px solid var(--line)}
.feat .ic{font-size:26px}
.feat h4{font-size:17px;margin:10px 0 6px}
.feat p{color:var(--mut);font-size:14px}
.feat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
/* flow */
.flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:18px;position:relative}
.step{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px 18px;position:relative}
.step .no{color:var(--accent);font-weight:800;font-size:14px;letter-spacing:1.5px;display:inline-block;padding-bottom:6px;border-bottom:1px solid var(--line)}
.step h5{font-size:15px;margin:10px 0 4px}
.step p{font-size:13px;color:var(--mut)}
/* 流程连接感：步骤间细箭头（纯 CSS，无动画） */
@media(min-width:861px){
  .step:not(:last-child)::after{content:"";position:absolute;top:50%;right:-13px;width:8px;height:8px;border-top:1px solid var(--accent);border-right:1px solid var(--accent);transform:translateY(-50%) rotate(45deg);opacity:.5}
}
/* mine owner banner */
.banner{background:linear-gradient(120deg,#18212d,#10151c);border:1px solid var(--line);border-radius:var(--radius);padding:40px 34px;display:flex;gap:28px;align-items:center;flex-wrap:wrap}
.banner .b1{flex:1.3}
.banner h3{font-size:clamp(22px,3vw,30px);line-height:1.15;margin-bottom:14px;font-weight:800}
.banner ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px 22px;margin:16px 0 24px}
.banner li{color:var(--mut);font-size:14.5px;padding-left:22px;position:relative}
.banner li:before{content:"✓";position:absolute;left:0;color:var(--ok);font-weight:700}
/* about */
.about-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:start}
.about p{color:var(--mut);margin-bottom:14px}
.about .claim{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px 20px}
.about-brand{display:flex;align-items:center;gap:14px;margin:0 0 22px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.about-brand img{width:46px;height:46px}
.about-brand h4{font-size:20px;font-weight:800;letter-spacing:.5px}
.about-brand p{color:var(--mut);font-size:12.5px;letter-spacing:1px;text-transform:uppercase;margin:2px 0 0}
/* Trust/Proof：真实照片 + 报告样板（桌面两栏，移动上下） */
.proof-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:stretch}
.proof-cell{display:flex}
.proof-photo{margin:0;width:100%;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--panel)}
.proof-photo img{display:block;width:100%;height:auto;object-fit:cover;aspect-ratio:4/3}
.proof-photo figcaption{padding:12px 16px;color:var(--mut);font-size:13px;letter-spacing:.3px}
.proof-report{margin:0;width:100%;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--panel);display:flex;flex-direction:column}
.proof-report img{display:block;width:100%;height:auto;object-fit:cover;aspect-ratio:3/2}
.proof-report figcaption{padding:12px 16px;color:var(--mut);font-size:13px;letter-spacing:.3px}
.proof-report-badge{display:inline-block;background:var(--accent);color:#10141a;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:5px 12px;border-radius:20px;margin-bottom:16px}
.proof-report-ph{color:var(--dim);font-size:14px;line-height:1.5}
@media(max-width:860px){
  .proof-grid{grid-template-columns:1fr;gap:20px}
  .proof-report{min-height:200px}
}
.about .claim h4{color:var(--txt);margin-bottom:10px;font-size:16px}
.about .claim ul{list-style:none}
.about .claim li{color:var(--mut);font-size:14px;padding:6px 0;border-bottom:1px solid var(--line)}
.about .claim li:last-child{border-bottom:none}
.small-note{color:var(--dim);font-size:12.5px;margin-top:16px}
/* faq */
.faq .item{background:var(--panel);border:1px solid var(--line);border-radius:12px;margin-bottom:12px;padding:18px 20px}
.faq .item h4{font-size:16px;cursor:pointer}
.faq .item p{display:none;color:var(--mut);font-size:14.5px;padding-top:10px}
.faq .item.open p{display:block}
/* contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.contact-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;text-align:center}
.contact-card .ic{font-size:30px}
.contact-card h4{margin:12px 0 8px;font-size:17px}
.contact-card p{color:var(--mut);font-size:14px;margin-bottom:16px}
.contact-card .val{color:var(--txt);font-weight:600;font-size:15px}
/* quote form */
form{display:grid;gap:14px}
input,select,textarea{width:100%;background:var(--bg2);border:1px solid var(--line);color:var(--txt);border-radius:9px;padding:12px 14px;font-size:15px;font-family:inherit}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent)}
textarea{min-height:100px;resize:vertical}
label{font-size:13px;color:var(--mut);font-weight:600}
.fmt h3{font-size:22px;margin-bottom:6px}
.footer{border-top:1px solid var(--line);padding:28px 0;background:var(--bg2)}
.foot-in{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center;color:var(--dim);font-size:13px}
.wa-bar{position:fixed;left:0;right:0;bottom:0;display:flex;gap:10px;padding:12px 16px;background:#0c0f14cc;backdrop-filter:blur(8px);border-top:1px solid var(--line);z-index:60;display:none}
.wa-bar .btn{flex:1}
@media(max-width:860px){.wa-bar{display:flex}.hero{padding-bottom:120px}}
.star{color:var(--accent)}

/* 移动端：科学徽章与 About 品牌自适应（克制收缩，不溢出） */
@media(max-width:520px){
  .sci-badge{width:148px;height:148px}
  .sci-core{width:64px;height:64px}
  .sci-core img{width:52px;height:52px}
  .sci-el{font-size:10px;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-70px) rotate(calc(-1*var(--a)))}
  .about-brand img{width:40px;height:40px}
}
