/* ============================================================
   CloudFarm (云农场 · 菜师兄) — ErpNeoBioLayout 1:1 静态复刻
   Standalone stylesheet for work/cloud-farm only. Visuals mirror
   the 4173 JO case overlay (agri-green palette). Chinese copy.
   ============================================================ */

/* ---------- reset-ish / base ---------- */
.ec-root{
  background:#f6f9f7;color:#1a1a1a;font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  line-height:1.6;
}
.ec-root *{box-sizing:border-box}
.ec-root img{display:block;max-width:100%}
.ec-container{width:100%;max-width:1360px;margin:0 auto;padding:0 24px}
@media (min-width:768px){ .ec-container{padding:0 56px} }

/* ---------- sticky top bar ---------- */
.ec-bar{position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(0,0,0,.05);background:rgba(246,249,247,.85);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.ec-bar-inner{display:flex;align-items:center;justify-content:space-between;padding:16px 0}
.ec-bar-back{display:flex;align-items:center;gap:8px;border-radius:999px;background:#1a1a1a;color:#fff;padding:8px 16px;font-size:14px;font-weight:500;text-decoration:none;transition:background .2s}
.ec-bar-back:hover{background:#059669}
.ec-bar-back svg{width:14px;height:14px;flex:none}
.ec-bar-mid{display:none;align-items:center;gap:24px;font-size:12px;font-weight:500;letter-spacing:.16em;color:#6b7280}
.ec-bar-dot{width:4px;height:4px;border-radius:50%;background:#cfd5db}
.ec-bar-tag{font-size:12px;font-weight:500;letter-spacing:.16em;color:#059669;white-space:nowrap}
@media (min-width:768px){ .ec-bar-mid{display:flex} }

/* ---------- section rhythm ---------- */
.ec-sec{position:relative;margin-top:144px}
@media (min-width:768px){ .ec-sec{margin-top:192px} }
.ec-sec--first{margin-top:40px}
@media (min-width:768px){ .ec-sec--first{margin-top:56px} }

/* background watermark */
.ec-wm{position:absolute;left:50%;transform:translateX(-50%);top:64px;z-index:0;pointer-events:none;user-select:none;white-space:nowrap;font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-weight:700;line-height:1;font-size:224px;color:rgba(0,0,0,.045);letter-spacing:0}
.ec-sec--first .ec-wm{top:50px}
@media (min-width:768px){
  .ec-wm{top:64px;font-size:352px}
  .ec-sec--first .ec-wm{top:50px}
}
/* slide top bar (brand · year) */
.ec-slide{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:500;letter-spacing:.16em;color:#6b7280;position:relative;z-index:1}
.ec-slide-l,.ec-slide-r{display:flex;align-items:center;gap:8px}
.ec-slide-dot{width:8px;height:8px;border-radius:50%;background:#cfd5db}
.ec-slide-dot--green{background:#10b981}

/* 12-col grid helpers */
.ec-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;position:relative;z-index:2}
.ec-c3{grid-column:span 12}
.ec-c4{grid-column:span 12}
.ec-c5{grid-column:span 12}
.ec-c7{grid-column:span 12}
.ec-c8{grid-column:span 12}
@media (min-width:768px){
  .ec-c4{grid-column:span 4}
  .ec-c5{grid-column:span 5}
  .ec-c7{grid-column:span 7}
  .ec-c8{grid-column:span 8}
  .ec-c3{grid-column:span 3}
}

/* section title */
.ec-st{}
.ec-st-title{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-weight:700;font-size:36px;letter-spacing:-.02em;color:#1a1a1a;line-height:1.05}
.ec-st-star{color:#10b981;margin-left:8px;font-size:.7em;vertical-align:middle}
.ec-st-en{margin-top:12px;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.32em;color:#9aa0a6}
.ec-st-num{position:absolute;right:-8px;top:8px;display:none;font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:60px;line-height:1;color:rgba(0,0,0,.07)}
@media (min-width:768px){ .ec-st-num{display:block} .ec-st-title{font-size:54px} }

/* quote block */
.ec-quote{margin-top:40px}
.ec-quote--none{margin-top:0}
.ec-quote-title{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:20px;font-weight:600;color:#1a1a1a}
.ec-quote-q{color:#10b981}
.ec-quote-body{margin-top:12px;font-size:15px;line-height:1.85;color:#4a4f55}
.ec-quote-body .hl,.ec-quote-body .ec-hl{background:#d1fae5;color:#047857;border-radius:4px;padding:2px 6px;margin:0 4px}
.ec-quote-body strong{color:#1a1a1a}
.ec-quote-body .dsw{margin:0 4px;display:inline-block;vertical-align:middle}

/* ============ SECTION 01 hero-row ============ */
.ec-hero-title{
  font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-weight:700;font-size:60px;letter-spacing:-.02em;line-height:.95;color:#1a1a1a;margin-top:56px;
}
.ec-hero-sub{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:20px;letter-spacing:.2em;color:#059669;margin-top:8px}
.ec-hero-pill{display:inline-block;border-radius:6px;background:#1a1a1a;color:#fff;padding:8px 16px;font-size:14px;font-weight:500;margin-top:24px}
.ec-hero-pill em{color:#34d399;font-style:normal}
@media (min-width:768px){
  .ec-hero-title{font-size:136px}
  .ec-hero-sub{font-size:24px}
  .ec-hero-pill{padding:12px 20px;font-size:16px;margin-top:24px}
}

/* ============ tilt card rail ============ */
.ec-rail-wrap{position:relative;z-index:2;margin-top:64px}
.ec-rail-hint{display:inline-flex;align-items:center;justify-content:center;margin-bottom:16px;border-radius:999px;background:rgba(255,255,255,.85);color:#047857;padding:6px 14px;font-size:11px;font-weight:600;letter-spacing:.14em;box-shadow:0 1px 3px rgba(0,0,0,.08);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.ec-rail{display:flex;gap:16px;align-items:stretch;overflow-x:auto;overflow-y:visible;padding:28px 8px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.ec-rail::-webkit-scrollbar{display:none}
@media (min-width:768px){ .ec-rail{gap:24px;padding:28px 24px} }
.ec-tilt{--tw-tx:0px;--tw-ty:0px;--tw-rot:0deg;position:relative;width:158px;flex:none;border-radius:16px;padding:12px 12px 32px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);transition:box-shadow .5s;transform:translate3d(var(--tw-tx),var(--tw-ty),0) rotate(var(--tw-rot))}
.ec-tilt:hover{box-shadow:0 26px 40px -8px rgba(0,0,0,.28),0 10px 10px -5px rgba(0,0,0,.05);--tw-ty:calc(var(--tybase,0px) - 8px)}
@media (min-width:768px){ .ec-tilt{width:196px} }
.ec-tilt--yellow,.ec-tilt--amber{background:#fcd34d}
.ec-tilt--green{background:#6ee7b7}
.ec-tilt--mint{background:#5eead4}
.ec-tilt--sky{background:#67e8f9}
.ec-tilt--blue{background:#38bdf8}
.ec-tilt--orange{background:#fdba74}
.ec-tilt-in{overflow:hidden;border-radius:12px;background:#171717;padding:3px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.35)}
.ec-tilt-screen{position:relative;width:100%;aspect-ratio:375/812;overflow:hidden;border-radius:9px;background:#fafafa}
.ec-tilt-screen img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:top}
.ec-tilt-cap{position:absolute;left:0;right:0;bottom:6px;text-align:center;font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:13px;font-weight:700;color:rgba(0,0,0,.85)}
@media (min-width:768px){ .ec-tilt-cap{font-size:14px} }

/* flow curve svg */
.ec-flowline{position:absolute;left:-96px;top:40px;z-index:0;width:140%;height:320px}
@media (min-width:768px){ .ec-flowline{left:0;width:100%} }

/* ============ generic shot card ============ */
.ec-shot{position:relative;overflow:hidden;border-radius:27px;background:#fff;box-shadow:0 28px 70px -34px rgba(0,0,0,.45);outline:1px solid rgba(0,0,0,.05)}
.ec-shot-ph{position:relative;width:100%;aspect-ratio:375/812;overflow:hidden}
.ec-shot-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.ec-shot-ph--cover img{object-fit:cover;object-position:top}
.ec-shot-cap{position:absolute;left:0;right:0;bottom:0;z-index:10;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;background:linear-gradient(to top,rgba(0,0,0,.65),rgba(0,0,0,.25),transparent);padding:48px 16px 12px;font-size:12px;font-weight:500;color:rgba(255,255,255,.95)}
@media (min-width:768px){ .ec-shot-cap{font-size:13px} }

/* square-ish tiles (design/color exploration) */
.ec-tile{position:relative;overflow:hidden;border-radius:16px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}
.ec-tile-ph{position:absolute;inset:0}
.ec-tile-badge{position:absolute;left:16px;top:16px;border-radius:12px;background:rgba(255,255,255,.8);padding:6px 12px;font-size:14px;font-weight:700;color:#047857;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}

/* ============ info card ============ */
.ec-info{position:relative;z-index:2;border-radius:16px;padding:20px;box-shadow:0 1px 2px rgba(0,0,0,.06)}
.ec-info-title{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:16px;font-weight:700}
.ec-info-body{margin-top:8px;font-size:14px;line-height:1.65}
.ec-info--default{background:#f2f4f6;color:#1a1a1a}
.ec-info--default .ec-info-body{color:#4a4f55}
.ec-info--accent{background:#fcd34d;color:#1a1a1a}
.ec-info--accent .ec-info-body{color:#4a4f55}
.ec-info--brand{background:linear-gradient(135deg,#34d399,#059669);color:#fff}
.ec-info--brand .ec-info-body{color:rgba(255,255,255,.9)}
.ec-info--dark{background:#1a1a1a;color:#fff}
.ec-info--dark .ec-info-body{color:rgba(255,255,255,.78)}
.ec-info-title .q{color:#059669}
.ec-info--brand .ec-info-title .q{color:rgba(255,255,255,.9)}
@media (min-width:768px){ .ec-info-title{font-size:18px} }

/* ============ capability grid (8 chips) ============ */
.ec-chip{display:flex;align-items:flex-start;gap:12px;border-radius:16px;background:#fff;padding:14px 16px;box-shadow:0 1px 2px rgba(0,0,0,.06);outline:1px solid rgba(0,0,0,.05)}
.ec-chip-num{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:24px;font-weight:700;color:rgba(16,185,129,.35);margin-top:2px;line-height:1}
.ec-chip-t{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:16px;font-weight:700}
.ec-chip-d{margin-top:2px;font-size:13px;line-height:1.6;color:#5c6b61}
@media (min-width:768px){ .ec-chip-num{font-size:30px} .ec-chip-t{font-size:18px} .ec-chip-d{font-size:13.5px} }

/* grid flex utilities */
.ec-r2{display:grid;grid-template-columns:1fr;gap:16px}
.ec-r3{display:grid;grid-template-columns:1fr;gap:16px}
.ec-r4{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
@media (min-width:768px){
  .ec-r2{grid-template-columns:repeat(2,1fr);gap:20px}
  .ec-r3{grid-template-columns:repeat(3,1fr);gap:24px}
  .ec-r4{grid-template-columns:repeat(4,1fr);gap:20px}
}

/* stagger helper for even chips */
@media (min-width:768px){
  .ec-chip-odd{transform:translateY(12px)}
}

/* ============ feature / stat mini cards ============ */
.ec-feat{padding:16px;border-radius:16px}
.ec-feat-t{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:14px;font-weight:700}
.ec-feat-d{margin-top:4px;font-size:12px;line-height:1.6;color:#4a4f55}
.ec-feat--mint{background:#eef3ee}
.ec-feat--mint .ec-feat-t{color:#047857}
.ec-feat--amber{background:#fff8e8}
.ec-feat--amber .ec-feat-t{color:#b45309}
.ec-feat--sky{background:#e8f3ff}
.ec-feat--sky .ec-feat-t{color:#0369a1}
.ec-feat--paper{background:#fff;border:1px solid #d1fae5;box-shadow:0 1px 2px rgba(0,0,0,.05)}
.ec-feat--paper .ec-feat-t{color:#047857}

/* ============ palette divider card (产品层/视觉层/体验层) ============ */
.ec-layer{padding:20px;border-radius:16px;position:relative;z-index:2}
.ec-layer-t{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:18px;font-weight:700}
.ec-layer-d{margin-top:8px;font-size:14px;line-height:1.7}
.ec-layer--emerald{background:linear-gradient(135deg,#34d399,#059669);color:#fff;box-shadow:0 10px 15px -3px rgba(0,0,0,.1)}
.ec-layer--emerald .ec-layer-d{color:rgba(255,255,255,.92)}
.ec-layer--mist{background:#eef3ee;color:#1a1a1a;box-shadow:0 1px 2px rgba(0,0,0,.05)}
.ec-layer--mist .ec-layer-t{color:#047857}
.ec-layer--mist .ec-layer-d{color:#4a4f55}
.ec-layer--ink{background:#1a1a1a;color:#fff;box-shadow:0 10px 15px -3px rgba(0,0,0,.1)}
.ec-layer--ink .ec-layer-d{color:rgba(255,255,255,.82)}

/* ============ round diagram (设计目标) ============ */
.ec-diagram{position:relative;margin-top:32px;margin-left:auto;margin-right:auto;width:100%;max-width:560px;aspect-ratio:1;border-radius:50%;border:1px solid rgba(167,243,208,.6);background:linear-gradient(135deg,rgba(255,255,255,.5),rgba(236,253,245,.5),rgba(240,253,250,.5))}
.ec-diagram::before{content:"";position:absolute;inset:40px;border-radius:50%;border:1px solid rgba(167,243,208,.4)}
.ec-diagram::after{content:"";position:absolute;inset:22%;border-radius:50%;border:1px solid rgba(167,243,208,.4)}
.ec-diagram-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:144px;height:144px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,#10b981,#0d9488);color:#fff;box-shadow:0 10px 15px -3px rgba(0,0,0,.2),0 20px 40px -10px rgba(52,211,153,.4);text-align:center;z-index:2}
.ec-diagram-core p{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:24px;font-weight:700;line-height:1.25}
.ec-dnode{position:absolute;display:flex;flex-direction:column;align-items:center;gap:8px}
.ec-dnode-badge{display:flex;align-items:center;justify-content:center;text-align:center;font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-weight:700;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}
.ec-dnode-badge--circle{width:96px;height:96px;border-radius:50%;padding:12px;font-size:14px}
.ec-dnode-badge--oval{min-width:130px;padding:8px 20px;border-radius:999px;font-size:16px}
.ec-dnode-badge--cyan{background:#38bdf8;color:#fff}
.ec-dnode-badge--green{background:#10b981;color:#fff}
.ec-dnode-badge--yellow{background:#fcd34d;color:#1a1a1a}
.ec-dnode ul{display:none;width:224px;list-style:disc;margin:0;padding:12px 16px;gap:4px;flex-direction:column;border-radius:12px;background:rgba(255,255,255,.8);font-size:13px;color:#4a4f55;box-shadow:0 1px 2px rgba(0,0,0,.1);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.ec-dnode ul li+li{margin-top:4px}
@media (min-width:768px){ .ec-dnode ul{display:flex} }

/* ============ phone scroll shot (framed, inner scroll) ============ */
.ec-pshot{position:relative;margin:0 auto;width:100%;max-width:300px;border-radius:38px;background:#fff;outline:1px solid rgba(0,0,0,.1);box-shadow:0 32px 70px -24px rgba(0,0,0,.18);padding:10px}
@media (min-width:768px){ .ec-pshot{max-width:420px} }
.ec-pshot-screen{position:relative;overflow:hidden;border-radius:28px;background:#0a0a0a}
.ec-pshot-island{position:absolute;left:50%;top:8px;transform:translateX(-50%);z-index:30;width:96px;height:26px;border-radius:999px;background:#000}
.ec-pshot-time{position:absolute;left:0;top:7px;z-index:20;width:100%;padding:0 24px;font-size:10px;font-weight:600;color:rgba(255,255,255,.9)}
.ec-pshot-time span{float:left}
.ec-pshot-scroll{width:100%;max-height:560px;overflow-y:auto;overscroll-behavior:contain;background:#fafafa;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent}
.ec-pshot-scroll img{display:block;width:100%;height:auto}
.ec-pshot-bar{position:absolute;left:50%;bottom:6px;transform:translateX(-50%);z-index:30;width:120px;height:4px;border-radius:999px;background:rgba(0,0,0,.7)}
.ec-pshot-badge{position:absolute;right:12px;top:48px;z-index:20;border-radius:999px;background:rgba(5,150,105,.85);color:rgba(255,255,255,.95);padding:4px 10px;font-size:10px;font-weight:600;letter-spacing:.04em;box-shadow:0 1px 3px rgba(0,0,0,.15)}
.ec-pshot-cap{margin:16px 0 0;text-align:center;font-size:12px;font-weight:500;color:#4a4f55}
@media (min-width:768px){ .ec-pshot-cap{margin-top:20px;font-size:14px} .ec-pshot-scroll{max-height:620px} }

/* ============ gov long (extra-tall rolling screenshot) ============ */
.ec-long{position:relative;overflow:hidden;border-radius:26px;background:#fff;box-shadow:0 26px 60px -32px rgba(30,58,138,.5);outline:1px solid rgba(0,0,0,.05)}
.ec-long-scroll{width:100%;max-height:560px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}
.ec-long-scroll::-webkit-scrollbar{display:none}
.ec-long-scroll img{display:block;width:100%;height:auto}
.ec-long-badge{position:absolute;right:12px;top:12px;border-radius:999px;background:rgba(30,58,138,.85);color:rgba(255,255,255,.95);padding:4px 10px;font-size:11px;font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.15)}
@media (min-width:768px){ .ec-long-scroll{max-height:640px} }

/* ============ composed scene (调研 / 设计) ============ */
.ec-scene{position:relative;overflow:hidden;border-radius:38px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04)}
.ec-scene-bg{position:absolute;inset:0}
.ec-scene-badge{position:absolute;border-radius:12px;padding:8px 14px;font-size:14px;font-weight:700;box-shadow:0 1px 3px rgba(0,0,0,.1)}
.ec-scene-phone-l{position:absolute;left:24px;bottom:80px;width:42%;transform:rotate(-16deg);filter:drop-shadow(0 20px 20px rgba(0,0,0,.35))}
.ec-scene-phone-r{position:absolute;right:24px;bottom:112px;width:46%;transform:rotate(9deg);filter:drop-shadow(0 20px 20px rgba(0,0,0,.35))}
.ec-scene-phone-c{position:absolute;left:50%;bottom:96px;width:58%;transform:translateX(-50%) rotate(-14deg);filter:drop-shadow(0 20px 20px rgba(0,0,0,.35))}

/* ============ step rows ============ */
.ec-step{display:flex;align-items:center;gap:12px;border-radius:16px;background:#fff;padding:14px 16px;box-shadow:0 1px 2px rgba(0,0,0,.06);outline:1px solid rgba(0,0,0,.05)}
.ec-step-n{flex:none;width:32px;height:32px;border-radius:50%;background:#10b981;display:flex;align-items:center;justify-content:center;font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:14px;font-weight:700;color:#fff}
.ec-step-t{font-size:14px;color:#4a4f55}
.ec-stack{display:flex;flex-direction:column;gap:12px}

/* H5 link chain chips */
.ec-chain{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.ec-chain span.chip{border-radius:999px;background:#ecfdf5;color:#047857;padding:6px 12px;font-size:12px;font-weight:600;outline:1px solid #a7f3d0}
.ec-chain .arrow{color:#34d399;font-size:16px;line-height:1}

/* H5 long hero card */
.ec-h5{position:relative;height:560px;overflow:hidden;border-radius:32px;background:#fff;box-shadow:0 30px 80px -40px rgba(0,0,0,.5);outline:1px solid rgba(0,0,0,.05)}
.ec-h5 img{position:absolute;left:0;top:0;width:100%;height:100%;object-fit:cover;object-position:top}
.ec-h5-veil{position:absolute;left:0;right:0;bottom:0;height:40%;background:linear-gradient(to top,rgba(2,44,34,.85),rgba(6,78,59,.3),transparent);pointer-events:none}
.ec-h5-foot{position:absolute;left:24px;right:24px;bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.ec-h5-foot p{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:18px;font-weight:700;color:#fff}
.ec-h5-tag{display:none;flex:none;border-radius:999px;background:rgba(255,255,255,.2);color:#fff;padding:6px 14px;font-size:12px;font-weight:600;letter-spacing:.12em;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
@media (min-width:768px){ .ec-h5-foot p{font-size:20px} .ec-h5-tag{display:block} }
.ec-h5-note{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}
.ec-h5-note small{font-size:12px;line-height:1.6;color:#6b7280}
.ec-h5-label{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:.16em;color:#047857}
.ec-h5-label i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#10b981}

/* metric tiles (4端 / 1账号 / H5) */
.ec-metric{border-radius:16px;background:#fff;text-align:center;padding:16px;box-shadow:0 1px 2px rgba(0,0,0,.06);outline:1px solid rgba(0,0,0,.05)}
.ec-metric b{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:30px;font-weight:700;color:#059669;line-height:1.2;display:block}
.ec-metric small{margin-top:4px;display:block;font-size:12px;color:#6b7280}
.ec-r3m{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}

/* final section */
.ec-end{margin-top:112px;border-top:1px solid rgba(0,0,0,.1);padding-top:48px}
.ec-end-kicker{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:14px;letter-spacing:.2em;color:#9aa0a6}
.ec-end-title{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:24px;font-weight:700;color:#1a1a1a;margin-top:8px}
.ec-end-title em{color:#10b981;font-style:normal;margin-left:8px}
.ec-end-desc{margin-top:8px;max-width:640px;font-size:14px;line-height:1.7;color:#4a4f55}
.ec-tagrow{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.ec-tag{border-radius:999px;background:#d1fae5;color:#065f46;padding:6px 14px;font-size:12px;font-weight:600}
.ec-end-back{display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:#1a1a1a;color:#fff;padding:12px 24px;font-size:16px;font-weight:500;text-decoration:none;transition:background .2s;margin-top:32px}
.ec-end-back:hover{background:#059669}
.ec-end-back svg{width:18px;height:18px}
@media (min-width:768px){
  .ec-end-title{font-size:30px}
  .ec-end-desc{font-size:15px}
}

/* site nav/footer (kept consistent with other /work pages) */
.ec-site-nav{background:#fff;border-bottom:1px solid #d2d2d7}
.ec-inner{max-width:1200px;margin:0 auto;padding:0 24px}
@media (min-width:768px){ .ec-inner{padding:0 40px} }

/* reveal (mirror 4173) */
.ec-root .reveal{opacity:0;transform:translateY(28px);filter:blur(6px);transition:opacity .95s cubic-bezier(.22,1,.36,1),transform .95s cubic-bezier(.22,1,.36,1),filter .95s cubic-bezier(.22,1,.36,1);will-change:opacity,transform,filter}
.ec-root .reveal.is-visible{opacity:1;transform:translateY(0);filter:blur(0)}
.ec-root .reveal-img{opacity:0;transform:scale(1.05);filter:blur(8px);transition:opacity 1.1s cubic-bezier(.22,1,.36,1),transform 1.3s cubic-bezier(.22,1,.36,1),filter 1.1s cubic-bezier(.22,1,.36,1);will-change:opacity,transform,filter}
.ec-root .reveal-img.is-visible{opacity:1;transform:scale(1);filter:blur(0)}
@media (prefers-reduced-motion:reduce){
  .ec-root .reveal,.ec-root .reveal-img{opacity:1 !important;transform:none !important;filter:none !important;transition:none !important}
}

/* footnote inner-scroll caption (short screens inside scroll areas keep alt) */
.ec-rail-hint{font-feature-settings:"tnum"}

/* ---------- extras / scene decorations ---------- */
.ec-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0;margin:-1px;padding:0}
.ec-dot{display:inline-block;width:10px;height:10px;border-radius:50%;vertical-align:middle;margin:0 5px}
.ec-dot--em{background:#10b981}
.ec-dot--am{background:#fbbf24}
.ec-dot--or{background:#f97316}
.ec-hl{display:inline;border-radius:6px;background:#d1fae5;color:#047857;padding:2px 7px;margin:0 4px;white-space:nowrap}
.ec-wt{color:#fff}
.ec-p-92{color:rgba(255,255,255,.92)}
.ec-p-82{color:rgba(255,255,255,.82)}

/* quote body strong / paragraphs */
.ec-quote-body strong{color:#1a1a1a}
.ec-quote-body p+p{margin-top:12px}
.ec-quote-body .dot-inline{display:inline-block;width:12px;height:12px;border-radius:50%;vertical-align:middle;margin:0 4px}

/* four-fifths scene card (SECTION 03 / 04) */
.ec-scene45{position:relative;overflow:hidden;border-radius:38px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04)}
.ec-scene45--skygrad{background:linear-gradient(135deg,#7dd3fc,#5eead4,#34d399)}
.ec-scene45--skyflat{background:#e0f2fe}
.ec-hill{position:absolute;left:24px;right:24px;bottom:32px;height:48px;border-radius:40% 40% 50% 50%/60% 60% 40% 40%;background:linear-gradient(to bottom,rgba(255,255,255,.5),rgba(214,211,209,.4),rgba(120,113,108,.6));box-shadow:0 20px 40px -10px rgba(0,0,0,.3)}
.ec-hill-shadow{position:absolute;left:40px;right:40px;bottom:16px;height:24px;border-radius:50%;background:rgba(0,0,0,.2);filter:blur(12px)}
.ec-hill-sky{position:absolute;left:32px;right:32px;bottom:40px;height:48px;border-radius:50% 50% 0 0/100% 100% 0 0;background:linear-gradient(to bottom,rgba(255,255,255,.7),rgba(186,230,253,.8))}
.ec-scene-tag{position:absolute;border-radius:12px;padding:8px 14px;font-size:14px;font-weight:700;box-shadow:0 1px 3px rgba(0,0,0,.1);z-index:3}
.ec-scene-tag--white{background:rgba(255,255,255,.9);color:#047857;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.ec-scene-tag--glass{background:rgba(255,255,255,.3);color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}

/* deco cards in SECTION 05 */
.ec-deco{position:absolute;inset:0}
.ec-deco-art1{background:linear-gradient(135deg,#fff 0%,#d1fae5 40%,#fef3c7 70%,#6ee7b7 100%)}
.ec-deco-art1::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 30% 30%,rgba(255,255,255,.8),transparent 55%)}
.ec-deco-art1::after{content:"";position:absolute;inset:0;background:conic-gradient(from 220deg,rgba(236,72,153,.25),rgba(59,130,246,.3),rgba(16,185,129,.3),rgba(236,72,153,.25));mix-blend-mode:overlay;opacity:.7}
.ec-deco-art2{background:linear-gradient(135deg,#a5b4fc,#a7f3d0,#fde68a)}
.ec-deco-art2::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 20%,rgba(255,255,255,.85),transparent 50%)}
.ec-deco-art2::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 30% 80%,rgba(16,185,129,.6),transparent 55%)}
.ec-deco-art3{background:linear-gradient(135deg,#fde68a,#d9f99d,#6ee7b7)}
.ec-deco-art3::before{content:"";position:absolute;right:-40px;top:-40px;width:70%;height:70%;border-radius:50%;background:conic-gradient(from 120deg,#fde68a,#fca5a5,#a78bfa,#fde68a);opacity:.8;filter:blur(2px)}
.ec-deco-art3::after{content:"";position:absolute;right:-8px;top:16px;width:58%;height:58%;border-radius:50%;background:rgba(246,249,247,.25);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.5)}
.ec-deco-blob{position:absolute;left:24px;bottom:24px;width:58%;height:34%;border-radius:50%;background:linear-gradient(to top right,#34d399,#fde68a,transparent);mix-blend-mode:multiply;opacity:.8}

/* bordered white feature cards with title line */
.ec-cardw{position:relative;overflow:hidden;border-radius:16px;background:#fff;border:1px solid rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.06);padding:20px}
.ec-cardw-t{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:18px;font-weight:700;color:#1a1a1a}
.ec-cardw-t em{color:#059669;font-style:normal}
.ec-cardw-d{margin-top:8px;font-size:14px;line-height:1.75;color:#4a4f55}

/* link-out row for SECTION 05 top 2 cards */
.ec-artrow{display:grid;grid-template-columns:1fr;gap:16px}
@media (min-width:768px){ .ec-artrow{grid-template-columns:1fr 1fr;gap:16px} }
.ec-artcard{position:relative;overflow:hidden;border-radius:16px;box-shadow:0 10px 15px -3px rgba(0,0,0,.1);aspect-ratio:4/3}
.ec-artcard-tag{position:absolute;left:16px;top:16px;z-index:3;border-radius:12px;background:rgba(255,255,255,.8);padding:6px 12px;font-size:14px;font-weight:700;color:#047857;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}

/* diagram node positions */
.ec-dn--l{left:0;top:50%;transform:translateY(-50%)}
.ec-dn--r{right:0;top:50%;transform:translateY(-50%)}
.ec-dn--t{left:50%;top:0;transform:translateX(-50%)}
.ec-dn--b{left:50%;bottom:0;transform:translateX(-50%)}

/* short single-screen shot (SECTION 07 uses small 2-col on mobile, 4 on md) */
.ec-grid-2md4{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
@media (min-width:768px){ .ec-grid-2md4{grid-template-columns:repeat(4,1fr);gap:20px} }
.ec-shot--tight .ec-shot-cap{padding-left:12px;padding-right:12px}

/* shot with fixed aspect variants */
.ec-ratio-995{aspect-ratio:375/995}

/* gov long bottom fade */
.ec-long-fade{position:absolute;left:0;right:0;bottom:0;height:48px;background:linear-gradient(to top,rgba(15,42,82,.1),transparent);pointer-events:none}

/* site-level footer glue on this case page */
.ec-footnote{text-align:center;font-size:12px;letter-spacing:.14em;color:#6b7280;padding:24px 0}
.ec-footnote a{color:#047857;text-decoration:none}
.ec-footnote a:hover{text-decoration:underline}

/* ---------- fine utilities (1:1 port) ---------- */
.ec-root p,.ec-root figure,.ec-root figcaption,.ec-root h1,.ec-root h2,.ec-root h3{margin:0}
.ec-root ul{list-style:none;margin:0;padding:0}
.ec-rel{position:relative}
.ec-mx-auto{margin-left:auto;margin-right:auto}
.ec-max900{max-width:900px}
.ec-hidden{display:none}
.ec-flex{display:flex}
.ec-flex-col{flex-direction:column}
.ec-flex-wrap{flex-wrap:wrap}
.ec-items-center{align-items:center}
.ec-items-start{align-items:flex-start}
.ec-items-end{align-items:flex-end}
.ec-justify-between{justify-content:space-between}
.ec-justify-end{justify-content:flex-end}
.ec-gap2{gap:8px}.ec-gap3{gap:12px}.ec-gap4{gap:16px}.ec-gap5{gap:20px}.ec-gap6{gap:24px}
.ec-pt10{padding-top:40px}.ec-pt14{padding-top:56px}
.ec-mt1{margin-top:4px}.ec-mt2{margin-top:8px}.ec-mt3{margin-top:12px}.ec-mt4{margin-top:16px}
.ec-mt5{margin-top:20px}.ec-mt6{margin-top:24px}.ec-mt8{margin-top:32px}.ec-mt10{margin-top:40px}
.ec-mt12{margin-top:48px}.ec-mt16{margin-top:64px}.ec-mt24{margin-top:96px}.ec-mt36{margin-top:144px}
.ec-mb4{margin-bottom:16px}
.ec-p4{padding:16px}.ec-p5{padding:20px}
.ec-px4{padding-left:16px;padding-right:16px}.ec-px5{padding-left:20px;padding-right:20px}
.ec-py3{padding-top:12px;padding-bottom:12px}.ec-py4{padding-top:16px;padding-bottom:16px}
.ec-text-center{text-align:center}
.ec-w-full{width:100%}
.ec-shrink0{flex-shrink:0}
.ec-hidden-md{display:flex}
.ec-hidden-mobile{display:none}
@media (min-width:768px){
  .ec-hidden-md{display:none}
  .ec-hidden-mobile{display:flex}
  .ec-mt48md{margin-top:192px}
}
.ec-cols2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.ec-cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media (min-width:640px){
  .ec-cols2-sm{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
  .ec-cols3-sm{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
}
@media (max-width:639px){ .ec-cols2-sm{display:grid;grid-template-columns:1fr;gap:12px} .ec-cols3-sm{display:grid;grid-template-columns:1fr;gap:16px} }
.ec-offset2n{ }
@media (min-width:640px){ .ec-offset2:nth-child(even){transform:translateY(12px)} .ec-offset2{transition:transform .3s} }

/* phone frame phones */
.ec-shotratio{aspect-ratio:375/812}
.ec-shotratio995{aspect-ratio:375/995}
.ec-img-cover{object-fit:cover!important}
.ec-img-cover-top{object-fit:cover!important;object-position:top}

/* radius helpers */
.ec-r16{border-radius:16px}.ec-r22{border-radius:22px}.ec-r27{border-radius:27px}
.ec-r38{border-radius:38px}
.ec-pill{border-radius:999px}

/* font helpers */
.ec-fserif{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif}
.ec-fsans{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif}
.ec-c-green{color:#059669}.ec-c-em{color:#10b981}.ec-c-ink{color:#1a1a1a}.ec-c-gray{color:#6b7280}

/* long blue screenshot (GovScreenLong port) */
.ec-longbl{position:relative;overflow:hidden;border-radius:26px;background:#fff;box-shadow:0 26px 60px -32px rgba(30,58,138,.5);outline:1px solid rgba(0,0,0,.05)}
.ec-longbl-scroll{width:100%;max-height:540px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}
.ec-longbl-scroll::-webkit-scrollbar{display:none}
.ec-longbl-scroll img{display:block;width:100%;height:auto}
.ec-longbl-badge{position:absolute;right:12px;top:12px;border-radius:999px;background:rgba(30,58,138,.85);color:rgba(255,255,255,.95);padding:4px 10px;font-size:11px;font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.15)}
.ec-longbl-fade{position:absolute;left:0;right:0;bottom:0;height:48px;background:linear-gradient(to top,rgba(15,42,82,.1),transparent);pointer-events:none}
.ec-longbl-cap{border-top:1px solid rgba(0,0,0,.05);padding:14px 16px;text-align:center;font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:14px;font-weight:700;color:#1e3a8a}
@media (min-width:768px){ .ec-longbl-cap{padding:16px} .ec-longbl-scroll{max-height:640px} }

/* leaf/arrow sizes inside decorations */
.ec-ic-xl{width:56px;height:56px}

/* ================= agri port kit (sec 03 — end) ================= */
.ec-c6{grid-column:span 12}
@media (min-width:768px){ .ec-c6{grid-column:span 6} }

/* quote spacing variants */
.ec-q-mt8{margin-top:32px !important}
.ec-q-none{margin-top:0 !important}
.ec-quote p+p{margin-top:12px}

/* soft colored panels */
.ec-soft{overflow:hidden;border-radius:26px;padding:20px;box-shadow:0 1px 2px rgba(0,0,0,.05)}
.ec-soft-t{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:18px;font-weight:700;color:#1a1a1a}
.ec-soft-d{margin-top:8px;font-size:14px;line-height:1.85;color:#4a4f55}
.ec-soft--sky{background:#e0f2fe}
.ec-soft--amber{background:#fde68a}

/* leaf gradient card (S02 right) */
.ec-leafcard{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;aspect-ratio:4/3;border-radius:38px;background:linear-gradient(135deg,#34d399,#10b981,#0d9488);box-shadow:0 20px 25px -5px rgba(0,0,0,.12),0 10px 10px -5px rgba(0,0,0,.05);color:#fff}
.ec-leafcard svg{width:52px;height:52px;margin:0 auto 12px;color:#fff}
.ec-leafcard b{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:34px;font-weight:700;letter-spacing:.24em;line-height:1.1}
.ec-leafcard small{display:block;margin-top:6px;font-size:11px;letter-spacing:.4em;color:rgba(255,255,255,.82)}

/* emerald/brand gradient card with 「」 title */
.ec-cardg{border-radius:16px;background:linear-gradient(135deg,#34d399,#0d9488);padding:20px;color:#fff;box-shadow:0 10px 15px -3px rgba(0,0,0,.14)}
.ec-cardg .t{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:18px;font-weight:700}
.ec-cardg .d{margin-top:8px;font-size:14px;line-height:1.8;color:rgba(255,255,255,.92)}

/* small green/white step card */
.ec-stepcard{border-radius:16px;border:1px solid #d1fae5;background:#fff;padding:16px;box-shadow:0 1px 2px rgba(0,0,0,.05)}
.ec-stepcard .t{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:14px;font-weight:700;color:#047857}
.ec-stepcard .d{margin-top:6px;font-size:12px;line-height:1.7;color:#4a4f55}

/* sky scene (S04) custom */
.ec-scene-sky{position:relative;overflow:hidden;border-radius:38px;background:#e0f2fe;aspect-ratio:4/5;box-shadow:0 20px 25px -5px rgba(0,0,0,.08),0 10px 10px -5px rgba(0,0,0,.04)}
.ec-sun-glow{position:absolute;left:32px;right:32px;bottom:48px;height:24px;border-radius:50%;background:rgba(56,189,248,.4);filter:blur(24px)}
.ec-sun{position:absolute;left:40px;right:40px;bottom:40px;height:48px;border-top-left-radius:50%;border-top-right-radius:50%;background:linear-gradient(to bottom,rgba(255,255,255,.75),rgba(186,230,253,.9))}
.ec-scene-shot-c{position:absolute;left:50%;bottom:96px;width:58%;transform:translateX(-50%) rotate(-14deg);filter:drop-shadow(0 24px 24px rgba(0,0,0,.35))}

/* art deco tiles (S05) */
.ec-arttile{position:relative;overflow:hidden;border-radius:16px;box-shadow:0 4px 6px -1px rgba(0,0,0,.12);aspect-ratio:4/3}
.ec-arttile--lg{border-radius:38px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04)}
.ec-art-badge{position:absolute;top:16px;left:16px;z-index:3;border-radius:16px;background:rgba(255,255,255,.8);padding:8px 14px;font-size:14px;font-weight:700;color:#047857;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 1px 3px rgba(0,0,0,.08)}
.ec-art-badge--glass{left:24px;top:24px;background:rgba(255,255,255,.78)}
.ec-deco .ec-art-badge{position:absolute}

/* alert strip (S07) */
.ec-alert{display:flex;align-items:center;gap:12px;border-radius:16px;background:#fde68a;padding:16px}
.ec-alert i{flex:none;width:10px;height:10px;border-radius:50%;background:#f59e0b}
.ec-alert p{font-size:14px;line-height:1.7;color:#7c4a03}

/* status tiles (S07/S10) */
.ec-stat{flex:1;border-radius:16px;padding:16px}
.ec-stat .t{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:14px;font-weight:700;line-height:1.4}
.ec-stat .d{margin-top:4px;font-size:12px;line-height:1.7;color:#4a4f55}
.ec-stat--mint{background:#eef3ee}.ec-stat--mint .t{color:#047857}
.ec-stat--amber{background:#fff8e8}.ec-stat--amber .t{color:#b45309}
.ec-stat--sky{background:#e8f3ff}.ec-stat--sky .t{color:#0369a1}
.ec-statrow{display:grid;grid-template-columns:1fr;gap:16px;margin-top:24px}
@media (min-width:768px){ .ec-statrow{grid-template-columns:repeat(3,1fr)} }

/* tiny metric tiles (S06) */
.ec-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px}
.ec-metric b{font-size:32px}
.ec-metric small{font-size:11px}

/* link chain (S10) */
.ec-chain{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px}
.ec-chain span{display:inline-flex;align-items:center;gap:8px}
.ec-chain .chip{flex:none;border-radius:999px;background:#ecfdf5;padding:6px 12px;font-size:12px;font-weight:600;color:#047857;outline:1px solid #a7f3d0}
.ec-chain .arrow{color:#34d399;font-size:15px;line-height:1}

/* 2-col feature tiles (S10) */
.ec-feat2{display:grid;grid-template-columns:1fr;gap:16px;margin-top:20px}
@media (min-width:768px){ .ec-feat2{grid-template-columns:1fr 1fr} }
.ec-feat2 .bx{border-radius:16px;padding:16px;text-align:center}
.ec-feat2 .bx b{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:20px;font-weight:700;line-height:1.2}
.ec-feat2 .bx p{margin-top:4px;font-size:12px;line-height:1.7;color:#4a4f55}
.ec-feat2 .bx--green{background:#eef3ee}.ec-feat2 .bx--green b{color:#047857}
.ec-feat2 .bx--amber{background:#fff8e8}.ec-feat2 .bx--amber b{color:#b45309}

/* bottom caption for long blue card (GovScreenLong port) */
.ec-long-cap{border-top:1px solid rgba(0,0,0,.05);padding:14px 16px;text-align:center;font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:14px;font-weight:700;color:#1e3a8a}
@media (min-width:768px){ .ec-long-cap{padding:16px} }

/* H5 long hero card (S10) — larger */
.ec-h5s{position:relative;height:560px;overflow:hidden;border-radius:32px;background:#fff;box-shadow:0 30px 80px -40px rgba(0,0,0,.5);outline:1px solid rgba(0,0,0,.05)}
.ec-h5s img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top}
.ec-h5s-veil{position:absolute;left:0;right:0;bottom:0;height:40%;background:linear-gradient(to top,rgba(2,44,34,.85),rgba(6,78,59,.35),transparent)}
.ec-h5s-foot{position:absolute;left:24px;right:24px;bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.ec-h5s-foot p{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:18px;font-weight:700;color:#fff;line-height:1.3}
.ec-h5s-tag{display:none;flex:none;border-radius:999px;background:rgba(255,255,255,.2);padding:6px 14px;font-size:12px;font-weight:600;letter-spacing:.14em;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
@media (min-width:768px){ .ec-h5s-foot p{font-size:20px} .ec-h5s-tag{display:block} }
.ec-h5s-note{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:16px}
.ec-h5s-note>p{font-size:12px;line-height:1.6;color:#6b7280}
.ec-h5s-label{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:.18em;color:#047857}
.ec-h5s-label i{width:8px;height:8px;border-radius:50%;background:#10b981}

/* ending block (port of final section) */
.ec-endwrap{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:24px}
@media (min-width:768px){ .ec-endwrap{flex-direction:row;align-items:flex-end} }
.ec-endwrap .head p{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:14px;letter-spacing:.2em;color:#9aa0a6}
.ec-endwrap .head h3{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:24px;font-weight:700;color:#1a1a1a;margin-top:8px}
.ec-endwrap .head h3 em{color:#10b981;font-style:normal;margin-left:10px}
.ec-endwrap .head .desc{margin-top:8px;max-width:640px;font-size:14px;line-height:1.8;color:#4a4f55}
@media (min-width:768px){ .ec-endwrap .head h3{font-size:30px} .ec-endwrap .head .desc{font-size:15px} }

/* ---------- extra kit (sec 05 — 10) ---------- */
.ec-greenbox{border-radius:16px;border:1px solid #d1fae5;background:#eef5f0;padding:20px;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.ec-greenbox .t{font-family:"Work Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:16px;font-weight:700;color:#065f46;line-height:1.4}
.ec-greenbox .t em{color:#047857;font-style:normal}
.ec-greenbox .d{margin-top:8px;font-size:14px;line-height:1.9;color:#4a4f55}
.ec-shotcap-white .ec-shot-cap{color:#fff}
.ec-chain-note{margin-top:16px;font-size:12px;line-height:1.8;color:#6b7280}

/* ============================================================
   JO 首页浅色体系 · 统一覆盖（追加层，勿删）
   cloud-farm 由农业绿系对齐苹果浅色 token：
   #fff / #f5f5f7 / #1d1d1f / #6e6e73 / #d2d2d7 / #0071e3
   ============================================================ */
.ec-root{background:#ffffff;color:#1d1d1f}
.ec-bar{background:rgba(255,255,255,.86);border-bottom-color:rgba(0,0,0,.06)}
.ec-bar-back{background:#1d1d1f}
.ec-bar-back:hover{background:#0071e3}
.ec-bar-tag,
.ec-hero-sub,
.ec-cardw-t em,
.ec-longbl-cap,
.ec-long-cap,
.ec-metric b{color:#0071e3}
.ec-st-title,
.ec-st .d,
.ec-info-title,
.ec-feat-t,
.ec-layer-t,
.ec-quote-title,
.ec-end-title,
.ec-cardw-t,
.ec-soft-t,
.ec-endwrap .head h3,
.ec-leafcard b,
.ec-cardg .t{color:#1d1d1f}
.ec-chip-num{color:rgba(0,113,227,.35)}
.ec-step-n{background:#0071e3}
.ec-slide-dot--green{background:#0071e3}
.ec-stepcard .t{color:#0071e3}
.ec-greenbox{border-color:#d3e7ff;background:#f5f8fd}
.ec-greenbox .t{color:#1d1d1f}
.ec-greenbox .t em{color:#0071e3}

/* 数据/信息绿渐变卡 → 苹果蓝 */
.ec-leafcard{background:linear-gradient(145deg,#0a84ff,#0071e3 45%,#0a84ff);box-shadow:0 30px 60px -22px rgba(0,113,227,.4)}
.ec-cardg{background:linear-gradient(135deg,#0071e3,#0a84ff 55%,#34a1ff)}
.ec-info--brand{background:linear-gradient(150deg,#0a84ff,#0071e3)}
.ec-layer--emerald{background:linear-gradient(135deg,#0071e3,#0a84ff)}
.ec-diagram-core{background:linear-gradient(145deg,#0071e3,#0a84ff);border-color:rgba(255,255,255,.5)}

/* 图片占位，减少加载期白闪 */
.ec-container .ec-pshot,.ec-container .ec-pshot-scroll,.ec-container .ec-screen,.ec-container figure{background-color:#f5f5f7}

/* ============================================================
   JO 首页浅色体系 · 强化覆盖（追加层 2，勿删）
   覆盖层遗漏的 UI 残留：正文高亮/标签/遮罩/统计卡/装饰底
   全部对齐 #fff / #f5f5f7 / #1d1d1f / #6e6e73 / #0071e3
   （仅保留：语义琥珀告警、页面内"主色绿色"色板演示）
   ============================================================ */
/* 顶部/底部返回按钮 */
.ec-root .ec-end-back{background:#1d1d1f}
.ec-root .ec-end-back:hover{background:#0071e3}
/* 正文高亮 / 引号星号 */
.ec-root .ec-quote-body .hl,
.ec-root .ec-quote-body .ec-hl{background:#e7f1fd;color:#0062cc}
.ec-root .ec-quote-q{color:#0071e3}
.ec-root .ec-st-star{color:#0071e3}
.ec-root .ec-end-title em,
.ec-root .ec-endwrap .head h3 em{color:#0071e3}
/* 滚动提示 / 标签 chips / 链路 chips */
.ec-root .ec-rail-hint{background:rgba(255,255,255,.92);color:#0071e3;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.ec-root .ec-tag{background:#e7f1fd;color:#0062cc;outline:1px solid #d0e1f7}
.ec-root .ec-chain .chip{background:#e7f1fd;color:#0062cc;outline:1px solid #d0e1f7}
.ec-root .ec-chain .arrow{color:#0a84ff}
.ec-root .ec-chain-note{color:#6e6e73}
/* H5 长卡 label / 角标 */
.ec-root .ec-h5-label,
.ec-root .ec-h5s-label{color:#0071e3}
.ec-root .ec-h5-label i,
.ec-root .ec-h5s-label i{background:#0a84ff}
.ec-root .ec-h5-note small,
.ec-root .ec-h5s-note>p{color:#6e6e73}
/* 深绿遮罩 → 中性黑（保证白字可读且不偏绿） */
.ec-root .ec-h5-veil{background:linear-gradient(to top,rgba(12,15,18,.72),rgba(12,15,18,.18),transparent)}
.ec-root .ec-h5s-veil{background:linear-gradient(to top,rgba(12,15,18,.72),rgba(12,15,18,.22),transparent)}
/* 长截屏角标蓝统一 */
.ec-root .ec-pshot-badge,
.ec-root .ec-long-badge,
.ec-root .ec-longbl-badge{background:rgba(0,113,227,.92)}
/* 浅色语义卡：绿/青 mint → 苹果浅蓝；amber → 琥珀浅底 */
.ec-root .ec-feat--mint,
.ec-root .ec-feat--paper,
.ec-root .ec-feat2 .bx--green{background:#eef5fd;border-color:#d0e1f7}
.ec-root .ec-feat--mint .ec-feat-t,
.ec-root .ec-feat--paper .ec-feat-t,
.ec-root .ec-feat2 .bx--green b{color:#0062cc}
.ec-root .ec-feat--sky{background:#eef5fd}
.ec-root .ec-feat--sky .ec-feat-t{color:#0062cc}
.ec-root .ec-stat--mint,
.ec-root .ec-stat--sky{background:#eef5fd}
.ec-root .ec-stat--mint .t,
.ec-root .ec-stat--sky .t{color:#0062cc}
.ec-root .ec-soft--sky{background:#eaf3fd}
.ec-root .ec-soft--amber,
.ec-root .ec-stat--amber,
.ec-root .ec-feat--amber,
.ec-root .ec-feat2 .bx--amber,
.ec-root .ec-info--accent{background:#fff7e0}
.ec-root .ec-soft--amber,
.ec-root .ec-info--accent{border:1px solid #ffe1a8}
.ec-root .ec-stat--amber .t,
.ec-root .ec-feat--amber .ec-feat-t,
.ec-root .ec-feat2 .bx--amber b{color:#9a6200}
.ec-root .ec-info--accent{color:#1d1d1f}
.ec-root .ec-info--accent .ec-info-body{color:#56565d}
.ec-root .ec-alert{background:#fff7e0;border:1px solid #ffe1a8}
.ec-root .ec-alert p{color:#9a6200}
/* 产品/视觉/体验 三层的 mist 卡 */
.ec-root .ec-layer--mist{background:#f5f7fa}
.ec-root .ec-layer--mist .t{color:#0071e3}
.ec-root .ec-layer--mist .d{color:#56565d}
/* 步骤卡 / 描边卡 */
.ec-root .ec-stepcard{border-color:#d0e1f7}
.ec-root .ec-cardw-t em{color:#0071e3}
.ec-root .ec-footnote a{color:#0071e3}
/* 其余绿点：hero pill / tile 徽章 / info 引号 / 同心圆 */
.ec-root .ec-hero-pill em{color:#0a84ff}
.ec-root .ec-tile-badge{color:#0062cc}
.ec-root .ec-info-title .q{color:#0071e3}
.ec-root .ec-info--brand .ec-info-title .q{color:rgba(255,255,255,.92)}
.ec-root .ec-dnode-badge--green{background:#0071e3}
.ec-root .ec-diagram,
.ec-root .ec-diagram::before,
.ec-root .ec-diagram::after{border-color:rgba(0,113,227,.18)}
/* 装饰艺术卡（品质感/亲和力…）→ 极浅冷色渐变，弱化浓彩 */
.ec-root .ec-deco-art1{background:linear-gradient(135deg,#ffffff 0%,#e8f1fc 45%,#e3e9f8 75%,#cfe0f6 100%)}
.ec-root .ec-deco-art1::after{background:conic-gradient(from 220deg,rgba(0,113,227,.08),rgba(10,132,255,.1),rgba(167,199,240,.12),rgba(0,113,227,.08));opacity:.5}
.ec-root .ec-deco-art2{background:linear-gradient(135deg,#e3ecfb,#e8f1fc,#f2f4fd)}
.ec-root .ec-deco-art2::after{background:radial-gradient(ellipse at 30% 80%,rgba(0,113,227,.22),transparent 55%)}
.ec-root .ec-deco-art3{background:linear-gradient(135deg,#e9effb,#dfe9f9,#e6ebf9)}
.ec-root .ec-deco-blob{background:linear-gradient(to top right,rgba(0,113,227,.25),rgba(140,190,250,.18),transparent)}
/* 场景渐变底 → 苹果浅蓝柔光 */
.ec-root .ec-scene45--skygrad{background:linear-gradient(135deg,#eaf3fd 0%,#dce9fa 55%,#cfe2f7 100%)}
.ec-root .ec-scene45--skyflat{background:#eef4fb}
.ec-root .ec-sun-glow{background:rgba(0,113,227,.3)}
.ec-root .ec-scene-tag--white,
.ec-root .ec-art-badge,
.ec-root .ec-art-badge--glass,
.ec-root .ec-artcard-tag{color:#0062cc}
.ec-root .ec-art-badge{background:rgba(255,255,255,.92)}
.ec-root .ec-art-badge--glass{background:rgba(255,255,255,.8)}
/* 语义绿圆点仅保留页面内"主色绿色"色板演示，其余绿色结束 */
