/* roulang page: index */
:root{
  --mk-green:#0B3B2E;
  --mk-green-2:#14624A;
  --mk-lime:#C6F24E;
  --mk-orange:#F0552B;
  --mk-bg:#F5F6F1;
  --mk-card:#FFFFFF;
  --mk-dark-text:#EAEFE6;
  --mk-text:#17201C;
  --mk-muted:#5A6560;
  --mk-line:#E2E6DE;
  --mk-input:#F2F4EF;
  --mk-radius:16px;
  --mk-shadow:0 1px 2px rgba(11,59,46,.06),0 8px 24px rgba(11,59,46,.06);
  --mk-shadow-lg:0 12px 40px rgba(11,59,46,.16);
  --mk-ease:cubic-bezier(.22,.61,.36,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;
  background:var(--mk-bg);
  color:var(--mk-text);
  font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:17px;
  line-height:1.8;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
h1,h2,h3,h4,p,ul,ol,li,figure{margin:0}
ul,ol{padding:0;list-style:none}
:focus-visible{outline:3px solid rgba(198,242,78,.45);outline-offset:2px;border-radius:8px}
.mk-container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}
@media (min-width:768px){.mk-container{padding:0 32px}}
@media (min-width:1024px){.mk-container{padding:0 48px}}

/* ---------- Dock 导航 ---------- */
.mk-dock{position:fixed;top:16px;left:50%;transform:translateX(-50%);width:min(1100px,calc(100% - 32px));z-index:120}
.mk-dock-inner{
  display:flex;align-items:center;gap:16px;height:64px;padding:0 12px 0 18px;border-radius:999px;
  background:rgba(245,246,241,.84);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border:1px solid var(--mk-line);box-shadow:var(--mk-shadow);
  transition:height .3s var(--mk-ease),background .3s var(--mk-ease),box-shadow .3s var(--mk-ease);
}
.mk-dock.is-scrolled .mk-dock-inner{height:56px;background:rgba(245,246,241,.95);box-shadow:var(--mk-shadow-lg)}
.mk-logo{display:flex;align-items:center;gap:10px;flex:0 0 auto;font-size:15px;font-weight:800;letter-spacing:-.01em;color:var(--mk-green);white-space:nowrap}
.mk-logo-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--mk-green);color:var(--mk-lime);font-size:12px;font-weight:800;letter-spacing:.04em}
.mk-nav{display:none;align-items:center;gap:4px;margin-left:auto}
@media (min-width:1024px){.mk-nav{display:flex}}
.mk-nav-link{display:inline-flex;align-items:center;height:40px;padding:0 14px;border-radius:999px;font-size:15px;transition:background .25s var(--mk-ease),color .25s var(--mk-ease)}
.mk-nav-link:hover{background:rgba(11,59,46,.07)}
.mk-nav-link.is-active{background:rgba(198,242,78,.32);color:var(--mk-green);font-weight:700}
.mk-dock-actions{display:flex;align-items:center;gap:10px;margin-left:auto}
@media (min-width:1024px){.mk-dock-actions{margin-left:0}}
.mk-burger{display:inline-flex;flex-direction:column;justify-content:center;gap:4px;width:40px;height:40px;padding:0 9px;border-radius:12px;background:rgba(11,59,46,.06)}
@media (min-width:1024px){.mk-burger{display:none}}
.mk-burger span{display:block;height:2px;border-radius:2px;background:var(--mk-green);transition:transform .25s var(--mk-ease),opacity .25s var(--mk-ease)}
.mk-burger.is-open span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.mk-burger.is-open span:nth-child(2){opacity:0}
.mk-burger.is-open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.mk-drawer{
  overflow:hidden;max-height:0;margin-top:10px;border-radius:24px;
  background:rgba(245,246,241,.97);border:1px solid var(--mk-line);box-shadow:var(--mk-shadow-lg);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  transition:max-height .34s var(--mk-ease);
}
.mk-drawer.is-open{max-height:340px}
.mk-drawer-inner{padding:14px 16px 18px;display:flex;flex-direction:column;gap:6px}
.mk-drawer a{padding:12px 14px;border-radius:14px;font-size:15px;font-weight:600;color:var(--mk-green);transition:background .25s var(--mk-ease)}
.mk-drawer a:hover{background:rgba(11,59,46,.07)}
@media (min-width:1024px){.mk-drawer{display:none}}

/* ---------- 按钮 ---------- */
.mk-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;font-size:15px;font-weight:700;line-height:1;transition:transform .25s var(--mk-ease),box-shadow .25s var(--mk-ease),background .25s var(--mk-ease),color .25s var(--mk-ease),border-color .25s var(--mk-ease)}
.mk-btn:active{transform:translateY(0)}
.mk-btn-primary{height:44px;padding:0 26px;background:var(--mk-lime);color:var(--mk-green)}
.mk-btn-primary:hover{background:#d7fa72;transform:translateY(-1px);box-shadow:0 10px 26px rgba(11,59,46,.2)}
.mk-btn-ghost{height:44px;padding:0 26px;border:1px solid rgba(234,239,230,.4);color:var(--mk-dark-text)}
.mk-btn-ghost:hover{background:rgba(234,239,230,.14);transform:translateY(-1px)}
.mk-btn-outline{height:40px;padding:0 22px;border:1px solid var(--mk-green-2);color:var(--mk-green);background:#fff}
.mk-btn-outline:hover{background:var(--mk-green);border-color:var(--mk-green);color:#fff;transform:translateY(-1px)}
.mk-btn-sm{height:38px;padding:0 20px;font-size:14px}
.mk-btn-block{width:100%}
.mk-btn-text{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:700;color:var(--mk-green-2);text-decoration:underline;text-underline-offset:5px;transition:color .25s var(--mk-ease),transform .25s var(--mk-ease)}
.mk-btn-text:hover{color:var(--mk-green);transform:translateX(3px)}

/* ---------- 通用 ---------- */
.mk-section{padding:56px 0}
@media (min-width:768px){.mk-section{padding:72px 0}}
@media (min-width:1024px){.mk-section{padding:96px 0}}
.mk-section-dark{background:var(--mk-green);color:var(--mk-dark-text)}
.mk-h1{font-size:clamp(2rem,5vw,3.6rem);font-weight:900;letter-spacing:-.02em;line-height:1.15}
.mk-h2{font-size:clamp(1.5rem,3vw,2.25rem);font-weight:700;letter-spacing:-.02em;line-height:1.3;color:var(--mk-green)}
.mk-section-dark .mk-h2{color:var(--mk-dark-text)}
.mk-h3{font-size:1.125rem;font-weight:600;line-height:1.5;color:var(--mk-green)}
.mk-sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:32px}
.mk-sec-sub{font-size:15px;color:var(--mk-muted);max-width:62ch;margin-top:10px}
.mk-section-dark .mk-sec-sub{color:rgba(234,239,230,.75)}
.mk-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mk-num{font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-.02em}

/* ---------- Hero ---------- */
.mk-hero{position:relative;overflow:hidden;background:var(--mk-green);padding:132px 0 64px}
@media (min-width:768px){.mk-hero{padding:152px 0 80px}}
@media (min-width:1024px){.mk-hero{padding:176px 0 104px}}
.mk-hero-media{position:absolute;inset:0}
.mk-hero-media img{width:100%;height:100%;object-fit:cover}
.mk-hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,rgba(11,59,46,.96) 0%,rgba(11,59,46,.88) 45%,rgba(11,59,46,.72) 100%)}
@media (max-width:767px){.mk-hero-media::after{background:linear-gradient(180deg,rgba(11,59,46,.86) 0%,rgba(11,59,46,.94) 100%)}}
.mk-hero-inner{position:relative;display:grid;gap:36px}
@media (min-width:1024px){.mk-hero-inner{grid-template-columns:7fr 5fr;align-items:center;gap:48px}}
.mk-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;letter-spacing:.08em;color:var(--mk-lime);margin-bottom:18px}
.mk-eyebrow::before{content:"";width:22px;height:2px;background:var(--mk-lime);border-radius:2px}
.mk-hero .mk-h1{color:#fff;max-width:20ch}
.mk-hero-sub{margin-top:20px;font-size:17px;line-height:1.7;color:rgba(234,239,230,.86);max-width:34ch}
.mk-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.mk-trust{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:26px;font-size:13px;color:rgba(234,239,230,.8)}
.mk-trust li{display:flex;align-items:center;gap:10px}
.mk-trust li+li::before{content:"";width:4px;height:4px;border-radius:50%;background:var(--mk-lime);margin-right:10px}
.mk-hero-card{background:var(--mk-card);border-radius:20px;border:1px solid var(--mk-line);box-shadow:var(--mk-shadow-lg);padding:24px}
.mk-hero-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.mk-hero-card-note{font-size:13px;color:var(--mk-muted)}
.mk-slot-list{display:flex;flex-direction:column}
.mk-slot-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--mk-line);font-size:14px}
.mk-slot-list li:first-child{border-top:0}
.mk-slot-name{font-weight:600;color:var(--mk-green)}
.mk-slot-time{font-variant-numeric:tabular-nums;color:var(--mk-muted);font-size:13px}
.mk-slot-left{font-size:13px;font-weight:700;color:var(--mk-orange);white-space:nowrap}
.mk-hero-card .mk-btn{margin-top:20px}

/* ---------- 数字条 ---------- */
.mk-stats{background:#fff;border-bottom:1px solid var(--mk-line)}
.mk-stats-grid{display:grid;gap:0;grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:768px){.mk-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.mk-stat{padding:28px 20px;border-right:1px solid var(--mk-line);border-bottom:1px solid var(--mk-line)}
.mk-stat:nth-child(2n){border-right:0}
@media (min-width:768px){.mk-stat:nth-child(2n){border-right:1px solid var(--mk-line)}.mk-stat:last-child{border-right:0}}
@media (min-width:768px){.mk-stat{border-bottom:0}}
.mk-stat-value{font-size:clamp(1.7rem,2.6vw,2.2rem);color:var(--mk-green);line-height:1.1;font-variant-numeric:tabular-nums;font-weight:800}
.mk-stat-value em{color:var(--mk-green-2);font-style:normal;font-size:.5em;font-weight:700;margin-left:4px}
.mk-stat-label{margin-top:10px;font-size:13px;color:var(--mk-muted)}

/* ---------- 卡片 ---------- */
.mk-card{background:var(--mk-card);border:1px solid var(--mk-line);border-radius:var(--mk-radius);box-shadow:var(--mk-shadow);transition:transform .3s var(--mk-ease),box-shadow .3s var(--mk-ease)}
.mk-card:hover{transform:translateY(-4px);box-shadow:0 1px 2px rgba(11,59,46,.06),0 16px 34px rgba(11,59,46,.13)}
.mk-thumb{aspect-ratio:16/10;overflow:hidden;border-radius:12px;background:var(--mk-input)}
.mk-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--mk-ease)}
.mk-card:hover .mk-thumb img{transform:scale(1.04)}
.mk-badge{display:inline-flex;align-items:center;height:26px;padding:0 12px;border-radius:999px;font-size:13px;font-weight:600;background:rgba(198,242,78,.32);color:var(--mk-green)}
.mk-badge-orange{background:rgba(240,85,43,.12);color:var(--mk-orange)}

/* ---------- 权益阶梯 ---------- */
.mk-ladder{display:flex;flex-direction:column;gap:0;margin-top:8px}
.mk-ladder-item{position:relative;display:grid;gap:18px;background:#fff;border:1px solid var(--mk-line);border-radius:var(--mk-radius);box-shadow:var(--mk-shadow);padding:24px;transition:transform .3s var(--mk-ease),box-shadow .3s var(--mk-ease)}
.mk-ladder-item:hover{transform:translateY(-4px);box-shadow:0 1px 2px rgba(11,59,46,.06),0 16px 34px rgba(11,59,46,.13)}
@media (min-width:768px){
  .mk-ladder-item{grid-template-columns:1fr auto;align-items:center}
  .mk-ladder-item:nth-child(1){margin-right:12%}
  .mk-ladder-item:nth-child(2){margin-right:6%}
}
.mk-ladder-item+.mk-ladder-item{margin-top:26px}
.mk-ladder-item+.mk-ladder-item::before{content:"";position:absolute;left:28px;top:-14px;width:1px;height:14px;border-left:1px dashed rgba(20,98,74,.5)}
.mk-ladder-item+.mk-ladder-item::after{content:"";position:absolute;left:25px;top:-16px;width:7px;height:7px;border-radius:50%;background:var(--mk-lime);box-shadow:0 0 0 1px rgba(11,59,46,.15)}
.mk-ladder-tag{font-size:13px;font-weight:700;color:var(--mk-green-2);letter-spacing:.06em}
.mk-ladder-item h3{margin-top:8px}
.mk-ladder-item p{margin-top:10px;font-size:15px;color:var(--mk-muted);max-width:56ch}
.mk-ladder-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.mk-chip{display:inline-flex;align-items:center;height:28px;padding:0 12px;border-radius:999px;border:1px solid var(--mk-line);background:var(--mk-input);font-size:13px;color:var(--mk-muted)}
.mk-ladder-level{font-size:clamp(2.4rem,4vw,3.2rem);line-height:1;color:var(--mk-green);font-variant-numeric:tabular-nums;font-weight:900;opacity:.18}

/* ---------- 套餐 ---------- */
.mk-plans{display:flex;gap:20px;overflow-x:auto;padding:6px 4px 20px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
@media (min-width:1024px){.mk-plans{overflow:visible;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0}}
.mk-plan{position:relative;flex:0 0 84%;scroll-snap-align:start;background:#fff;border:1px solid var(--mk-line);border-radius:var(--mk-radius);box-shadow:var(--mk-shadow);padding:26px;display:flex;flex-direction:column;transition:transform .3s var(--mk-ease),box-shadow .3s var(--mk-ease)}
.mk-plan:hover{transform:translateY(-4px);box-shadow:0 1px 2px rgba(11,59,46,.06),0 16px 34px rgba(11,59,46,.13)}
@media (min-width:640px){.mk-plan{flex:0 0 60%}}
@media (min-width:1024px){.mk-plan{flex:1 1 auto}}
.mk-plan.is-featured{background:var(--mk-green);border-color:var(--mk-green);color:var(--mk-dark-text)}
.mk-plan.is-featured .mk-h3,.mk-plan.is-featured .mk-plan-price{color:#fff}
.mk-plan.is-featured .mk-plan-desc,.mk-plan.is-featured .mk-plan-feature span{color:rgba(234,239,230,.82)}
.mk-plan-flag{position:absolute;top:-12px;right:20px;height:26px;display:inline-flex;align-items:center;padding:0 12px;border-radius:999px;background:var(--mk-orange);color:#fff;font-size:12px;font-weight:700}
.mk-plan-desc{margin-top:8px;font-size:14px;color:var(--mk-muted)}
.mk-plan-price{margin-top:20px;font-size:clamp(2rem,3.4vw,2.6rem);line-height:1;color:var(--mk-green);font-variant-numeric:tabular-nums;font-weight:800}
.mk-plan-price em{font-style:normal;font-size:.42em;font-weight:600;color:var(--mk-muted);margin-left:6px}
.mk-plan.is-featured .mk-plan-price em{color:rgba(234,239,230,.75)}
.mk-plan-features{margin-top:22px;display:flex;flex-direction:column;gap:12px;border-top:1px solid var(--mk-line);padding-top:20px;flex:1}
.mk-plan.is-featured .mk-plan-features{border-color:rgba(234,239,230,.16)}
.mk-plan-feature{display:flex;align-items:flex-start;gap:10px;font-size:14px}
.mk-plan-feature span{color:var(--mk-muted)}
.mk-plan-feature i{flex:0 0 auto;width:16px;height:16px;margin-top:5px;border-radius:50%;background:rgba(198,242,78,.4);position:relative}
.mk-plan-feature i::after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border-right:2px solid var(--mk-green);border-bottom:2px solid var(--mk-green);transform:rotate(40deg)}
.mk-plan-feature.is-off i{background:rgba(90,101,96,.18)}
.mk-plan-feature.is-off i::after{border-color:transparent;left:4px;top:5px;width:8px;height:2px;background:var(--mk-muted);transform:none}
.mk-plan .mk-btn{margin-top:24px}
.mk-plan.is-featured .mk-btn-primary{background:var(--mk-lime);color:var(--mk-green)}

/* ---------- 时段条带 ---------- */
.mk-strip{position:relative;overflow:hidden;border-radius:24px;background:var(--mk-green);color:var(--mk-dark-text);padding:32px;display:grid;gap:22px}
@media (min-width:900px){.mk-strip{grid-template-columns:1fr auto;align-items:center;padding:38px 44px}}
.mk-strip::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(234,239,230,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(234,239,230,.07) 1px,transparent 1px);background-size:44px 44px;pointer-events:none}
.mk-strip-content{position:relative;z-index:1}
.mk-strip h2{font-size:1.15rem;font-weight:700;color:#fff}
.mk-strip p{margin-top:10px;font-size:13px;color:rgba(234,239,230,.75)}
.mk-strip-actions{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.mk-strip-mark{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 14px;border-radius:999px;border:1px solid rgba(234,239,230,.24);font-size:13px;font-variant-numeric:tabular-nums}

/* ---------- 资讯列表 ---------- */
.mk-news-grid{display:grid;gap:24px}
@media (min-width:700px){.mk-news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.mk-news-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.mk-news-card{display:flex;flex-direction:column;padding:18px}
.mk-news-body{display:flex;flex-direction:column;gap:12px;padding:16px 6px 6px}
.mk-news-body p{font-size:14px;color:var(--mk-muted)}
.mk-news-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;color:var(--mk-muted);margin-top:auto;padding-top:6px;border-top:1px solid var(--mk-line);font-variant-numeric:tabular-nums}
.mk-empty{display:flex;flex-direction:column;align-items:center;gap:14px;padding:52px 24px;border:1px dashed var(--mk-line);border-radius:var(--mk-radius);background:#fff;text-align:center}
.mk-empty-icon{width:56px;height:56px;border-radius:18px;background:rgba(198,242,78,.3);position:relative}
.mk-empty-icon::after{content:"";position:absolute;left:18px;top:20px;width:20px;height:14px;border-radius:3px;border:2px solid var(--mk-green)}
.mk-empty p{font-size:15px;color:var(--mk-muted)}

/* ---------- 分类概览 ---------- */
.mk-cat-grid{display:grid;gap:24px}
@media (min-width:960px){.mk-cat-grid{grid-template-columns:7fr 5fr}}
.mk-cat-card{display:flex;flex-direction:column;gap:16px;padding:20px;background:#fff;border:1px solid var(--mk-line);border-radius:var(--mk-radius);box-shadow:var(--mk-shadow);transition:transform .3s var(--mk-ease),box-shadow .3s var(--mk-ease)}
.mk-cat-card:hover{transform:translateY(-4px);box-shadow:0 1px 2px rgba(11,59,46,.06),0 16px 34px rgba(11,59,46,.13)}
.mk-cat-card p{font-size:15px;color:var(--mk-muted)}
.mk-cat-card .mk-thumb{border-radius:14px}
.mk-cat-lg .mk-thumb{aspect-ratio:16/9}

/* ---------- 流程 ---------- */
.mk-steps{display:grid;gap:20px}
@media (min-width:700px){.mk-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.mk-steps{grid-template-columns:repeat(4,minmax(0,1fr))}}
.mk-step{background:#fff;border:1px solid var(--mk-line);border-radius:var(--mk-radius);box-shadow:var(--mk-shadow);padding:24px;transition:transform .3s var(--mk-ease),box-shadow .3s var(--mk-ease)}
.mk-step:hover{transform:translateY(-4px);box-shadow:0 1px 2px rgba(11,59,46,.06),0 16px 34px rgba(11,59,46,.13)}
.mk-step-num{font-size:1.6rem;line-height:1;color:var(--mk-green);font-variant-numeric:tabular-nums;font-weight:900;opacity:.22}
.mk-step h3{margin-top:14px}
.mk-step p{margin-top:10px;font-size:14px;color:var(--mk-muted)}

/* ---------- FAQ ---------- */
.mk-faq{border-bottom:1px solid var(--mk-line)}
.mk-faq-item{border-top:1px solid var(--mk-line)}
.mk-faq-q{display:flex;width:100%;align-items:center;justify-content:space-between;gap:16px;padding:20px 2px;text-align:left;font-size:16px;font-weight:600;color:var(--mk-green);transition:color .25s var(--mk-ease)}
.mk-faq-q:hover{color:var(--mk-green-2)}
.mk-faq-icon{position:relative;width:16px;height:16px;flex:0 0 auto}
.mk-faq-icon::before,.mk-faq-icon::after{content:"";position:absolute;background:var(--mk-green-2);border-radius:2px;transition:transform .3s var(--mk-ease),opacity .3s var(--mk-ease)}
.mk-faq-icon::before{top:7px;left:0;width:16px;height:2px}
.mk-faq-icon::after{left:7px;top:0;width:2px;height:16px}
.mk-faq-item.is-open .mk-faq-icon::after{transform:rotate(45deg);opacity:0}
.mk-faq-a{max-height:0;overflow:hidden;transition:max-height .34s var(--mk-ease)}
.mk-faq-a p{padding:0 2px 22px;font-size:15px;line-height:1.8;color:var(--mk-muted);max-width:72ch}
.mk-faq-item.is-open .mk-faq-a{max-height:360px}

/* ---------- 表单 ---------- */
.mk-form-wrap{display:grid;gap:32px}
@media (min-width:960px){.mk-form-wrap{grid-template-columns:5fr 7fr;gap:48px;align-items:start}}
.mk-form-points{display:flex;flex-direction:column;gap:14px;margin-top:22px}
.mk-form-points li{display:flex;gap:12px;font-size:15px;color:var(--mk-muted)}
.mk-form-points i{flex:0 0 auto;width:18px;height:18px;margin-top:6px;border-radius:50%;background:rgba(198,242,78,.35);position:relative}
.mk-form-points i::after{content:"";position:absolute;left:6px;top:3px;width:4px;height:8px;border-right:2px solid var(--mk-green);border-bottom:2px solid var(--mk-green);transform:rotate(40deg)}
.mk-form-meta{margin-top:26px;padding-top:20px;border-top:1px solid var(--mk-line);display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--mk-muted);font-variant-numeric:tabular-nums}
.mk-form-card{background:#fff;border:1px solid var(--mk-line);border-radius:20px;box-shadow:var(--mk-shadow);padding:26px}
@media (min-width:768px){.mk-form-card{padding:32px}}
.mk-fields{display:grid;gap:18px}
@media (min-width:700px){.mk-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.mk-field-full{grid-column:1/-1}}
.mk-field label{display:block;font-size:14px;font-weight:600;color:var(--mk-green);margin-bottom:8px}
.mk-input,.mk-select,.mk-textarea{width:100%;background:var(--mk-input);border:1px solid var(--mk-line);border-radius:12px;padding:12px 14px;font-size:15px;color:var(--mk-text);font-family:inherit;transition:border-color .25s var(--mk-ease),box-shadow .25s var(--mk-ease),background .25s var(--mk-ease)}
.mk-textarea{min-height:118px;resize:vertical}
.mk-input:focus,.mk-select:focus,.mk-textarea:focus{outline:none;border-color:var(--mk-green-2);background:#fff;box-shadow:0 0 0 4px rgba(198,242,78,.35)}
.mk-field.has-error .mk-input,.mk-field.has-error .mk-select,.mk-field.has-error .mk-textarea{border-color:var(--mk-orange)}
.mk-error{display:none;margin-top:6px;font-size:12px;color:var(--mk-orange)}
.mk-field.has-error .mk-error{display:block}
.mk-success{display:none;padding:18px;border-radius:12px;background:rgba(198,242,78,.26);border:1px solid rgba(11,59,46,.16);color:var(--mk-green);font-size:15px}

/* ---------- 页脚 ---------- */
.mk-footer{background:var(--mk-green);color:var(--mk-dark-text);padding:64px 0 28px}
@media (min-width:768px){.mk-footer{padding:80px 0 32px}}
.mk-footer-grid{display:grid;gap:32px}
@media (min-width:700px){.mk-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.mk-footer-grid{grid-template-columns:2fr 1fr 1fr 1.2fr}}
.mk-footer h3{font-size:15px;font-weight:700;color:#fff;margin-bottom:16px}
.mk-footer p{font-size:14px;color:rgba(234,239,230,.72);max-width:36ch}
.mk-footer-links{display:flex;flex-direction:column;gap:10px;font-size:14px}
.mk-footer-links a{color:rgba(234,239,230,.78);transition:color .25s var(--mk-ease),transform .25s var(--mk-ease);display:inline-block}
.mk-footer-links a:hover{color:var(--mk-lime);transform:translateX(3px)}
.mk-footer-logo{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:800;color:#fff;margin-bottom:16px}
.mk-footer-logo .mk-logo-mark{background:rgba(234,239,230,.12)}
.mk-footer-bottom{margin-top:48px;padding-top:22px;border-top:1px solid rgba(234,239,230,.14);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;font-size:13px;color:rgba(234,239,230,.6)}

/* ---------- 入场动效 ---------- */
.mk-reveal{opacity:0;transform:translateY(12px);transition:opacity .4s var(--mk-ease),transform .4s var(--mk-ease)}
.mk-reveal.is-visible{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .mk-reveal{opacity:1;transform:none;transition:none}
  .mk-card,.mk-btn,.mk-plan,.mk-step,.mk-cat-card,.mk-ladder-item,.mk-nav-link,.mk-faq-a,.mk-faq-icon::after,.mk-drawer,.mk-dock-inner{transition:none}
  .mk-card:hover,.mk-btn:hover,.mk-plan:hover,.mk-step:hover,.mk-cat-card:hover,.mk-ladder-item:hover{transform:none}
  .mk-thumb img{transition:none}
  .mk-card:hover .mk-thumb img{transform:none}
}

/* roulang page: article */
:root{
    --mk-green:#0B3B2E;
    --mk-green-soft:#14624A;
    --mk-lime:#C6F24E;
    --mk-orange:#F0552B;
    --mk-bg:#F5F6F1;
    --mk-card:#FFFFFF;
    --mk-dark-text:#EAEFE6;
    --mk-ink:#17201C;
    --mk-muted:#5A6560;
    --mk-line:#E2E6DE;
    --mk-input:#F2F4EF;
    --mk-radius:16px;
    --mk-radius-sm:12px;
    --mk-shadow:0 1px 2px rgba(11,59,46,.06),0 8px 24px rgba(11,59,46,.06);
    --mk-shadow-lg:0 12px 40px rgba(11,59,46,.16);
    --mk-ease:cubic-bezier(.22,.61,.36,1);
  }
  *,*::before,*::after{box-sizing:border-box;}
  html{scroll-behavior:smooth;scroll-padding-top:120px;-webkit-text-size-adjust:100%;}
  body.mk-body{
    margin:0;
    background:var(--mk-bg);
    color:var(--mk-ink);
    font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Source Han Sans SC","Noto Sans SC",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
    font-size:16.5px;
    line-height:1.8;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  img{max-width:100%;}
  h1,h2,h3,h4,p,ul,ol,figure,blockquote{margin:0;}
  a{text-decoration:none;color:inherit;}
  button,input,select,textarea{font:inherit;color:inherit;}
  a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
    outline:3px solid rgba(198,242,78,.6);outline-offset:2px;border-radius:10px;
  }
  .mk-container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px;}
  @media (min-width:768px){.mk-container{padding:0 32px;}}
  @media (min-width:1024px){.mk-container{padding:0 48px;}}

  /* ============ 浮动 Dock 导航 ============ */
  .mk-dock-wrap{
    position:fixed;top:16px;left:0;right:0;z-index:60;
    display:flex;flex-direction:column;align-items:center;
    pointer-events:none;
  }
  .mk-dock{
    pointer-events:auto;position:relative;
    width:min(1100px,calc(100% - 32px));
    display:flex;align-items:center;gap:16px;
    height:64px;padding:0 10px 0 16px;
    border-radius:999px;
    background:rgba(245,246,241,.82);
    -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
    border:1px solid var(--mk-line);
    box-shadow:var(--mk-shadow-lg);
    transition:height .3s var(--mk-ease),background .3s var(--mk-ease),box-shadow .3s var(--mk-ease);
  }
  .mk-dock.is-scrolled{height:56px;background:rgba(245,246,241,.95);box-shadow:0 12px 40px rgba(11,59,46,.22);}
  .mk-logo{display:inline-flex;align-items:center;gap:10px;color:var(--mk-green);font-weight:800;letter-spacing:-.01em;white-space:nowrap;flex-shrink:0;}
  .mk-logo-mark{
    display:inline-flex;align-items:center;justify-content:center;
    width:36px;height:36px;border-radius:11px;
    background:var(--mk-green);color:var(--mk-lime);
    font-size:13.5px;font-weight:900;letter-spacing:.02em;
  }
  .mk-logo-text{font-size:16px;line-height:1;}
  .mk-only-sm{display:none;}
  @media (max-width:639px){
    .mk-only-lg{display:none;}
    .mk-only-sm{display:inline;}
    .mk-logo-text{font-size:15px;}
  }
  .mk-nav{display:none;align-items:center;gap:2px;}
  @media (min-width:1024px){.mk-nav{display:flex;}}
  .mk-nav-link{
    position:relative;padding:9px 14px;border-radius:999px;
    font-size:15px;color:#2b3a33;
    transition:color .25s var(--mk-ease),background .25s var(--mk-ease);
  }
  .mk-nav-link:hover{color:var(--mk-green);background:rgba(11,59,46,.06);}
  .mk-nav-link.is-active{color:var(--mk-green);font-weight:600;background:rgba(198,242,78,.55);}
  .mk-dock-cta{display:none;margin-left:auto;}
  @media (min-width:1024px){.mk-dock-cta{display:flex;}}
  .mk-burger{
    display:inline-flex;flex-direction:column;justify-content:center;gap:5px;
    width:42px;height:42px;margin-left:auto;padding:0 11px;
    border:1px solid var(--mk-line);border-radius:999px;background:transparent;cursor:pointer;
  }
  .mk-burger span{display:block;height:2px;border-radius:2px;background:var(--mk-green);transition:transform .3s var(--mk-ease),opacity .3s var(--mk-ease);}
  .mk-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .mk-burger[aria-expanded="true"] span:nth-child(2){opacity:0;}
  .mk-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
  @media (min-width:1024px){.mk-burger{display:none;}}
  .mk-drawer{
    pointer-events:auto;
    width:min(1100px,calc(100% - 32px));
    margin-top:10px;padding:14px;
    border-radius:24px;border:1px solid var(--mk-line);
    background:rgba(245,246,241,.97);
    -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
    box-shadow:var(--mk-shadow-lg);
    display:none;flex-direction:column;gap:6px;
  }
  .mk-drawer.is-open{display:flex;}
  @media (min-width:1024px){.mk-drawer{display:none !important;}}
  .mk-drawer-link{padding:12px 14px;border-radius:14px;font-size:15px;color:#2b3a33;transition:background .25s var(--mk-ease),color .25s var(--mk-ease);}
  .mk-drawer-link:hover{background:rgba(11,59,46,.06);color:var(--mk-green);}

  /* ============ 按钮 ============ */
  .mk-btn{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    height:44px;padding:0 22px;border-radius:999px;
    font-size:15px;font-weight:600;border:1px solid transparent;cursor:pointer;
    transition:transform .25s var(--mk-ease),box-shadow .25s var(--mk-ease),background .25s var(--mk-ease),color .25s var(--mk-ease),border-color .25s var(--mk-ease);
  }
  .mk-btn-primary{background:var(--mk-lime);color:var(--mk-green);}
  .mk-btn-primary:hover{background:#d6ff5f;transform:translateY(-1px);box-shadow:0 10px 24px rgba(11,59,46,.18);}
  .mk-btn-primary:active{transform:translateY(0);box-shadow:none;}
  .mk-btn-ghost{background:transparent;border-color:var(--mk-green-soft);color:var(--mk-green);}
  .mk-btn-ghost:hover{background:rgba(20,98,74,.08);transform:translateY(-1px);}
  .mk-btn-ghost:active{transform:translateY(0);}
  .mk-btn-sm{height:40px;padding:0 18px;font-size:14px;}
  .mk-btn-block{width:100%;}
  .mk-text-link{
    display:inline-flex;align-items:center;gap:6px;
    font-size:14.5px;font-weight:600;color:var(--mk-green-soft);
    border-bottom:1px solid transparent;
    transition:color .25s var(--mk-ease),border-color .25s var(--mk-ease),transform .25s var(--mk-ease);
  }
  .mk-text-link:hover{color:var(--mk-green);border-bottom-color:var(--mk-green);transform:translateX(2px);}

  /* ============ 文章头图区 ============ */
  .mk-article-hero{
    position:relative;
    padding:150px 0 64px;
    background:
      linear-gradient(180deg,rgba(11,59,46,.93),rgba(11,59,46,.74)),
      url('/assets/images/backpic/back-2.webp') center/cover no-repeat;
    color:var(--mk-dark-text);
  }
  .mk-article-hero::after{
    content:"";position:absolute;left:0;right:0;bottom:0;height:1px;
    background:rgba(234,239,230,.14);
  }
  .mk-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13.5px;color:rgba(234,239,230,.72);}
  .mk-breadcrumb a{color:rgba(234,239,230,.86);border-bottom:1px solid transparent;transition:color .25s var(--mk-ease),border-color .25s var(--mk-ease);}
  .mk-breadcrumb a:hover{color:var(--mk-lime);border-bottom-color:var(--mk-lime);}
  .mk-crumb-now{color:rgba(234,239,230,.6);max-width:52ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .mk-badge{
    display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px;
    border-radius:999px;font-size:13px;font-weight:600;
    background:rgba(198,242,78,.18);color:var(--mk-lime);
    border:1px solid rgba(198,242,78,.42);
  }
  .mk-article-title{
    margin-top:16px;
    font-size:clamp(1.85rem,4.2vw,2.9rem);
    line-height:1.25;font-weight:800;letter-spacing:-.02em;color:#fff;
    max-width:900px;
  }
  .mk-article-meta{
    display:flex;flex-wrap:wrap;align-items:center;gap:14px;
    margin-top:20px;font-size:13.5px;color:rgba(234,239,230,.76);
    font-variant-numeric:tabular-nums;
  }
  .mk-dot{width:4px;height:4px;border-radius:50%;background:rgba(234,239,230,.4);display:inline-block;}
  .mk-article-cover{
    margin-top:40px;border-radius:20px;overflow:hidden;
    border:1px solid rgba(234,239,230,.16);
    box-shadow:0 20px 50px rgba(0,0,0,.28);
  }
  .mk-article-cover img{display:block;width:100%;aspect-ratio:16/8;object-fit:cover;}

  /* ============ 正文布局 ============ */
  .mk-article-wrap{padding:72px 0 96px;}
  @media (max-width:1024px){.mk-article-wrap{padding:56px 0 72px;}}
  .mk-article-layout{
    display:grid;grid-template-columns:minmax(0,720px) 240px;
    gap:56px;justify-content:center;align-items:start;
  }
  @media (max-width:1024px){
    .mk-article-layout{grid-template-columns:minmax(0,1fr);gap:32px;}
  }
  .mk-article-main{min-width:0;}
  .mk-article-body{
    font-size:17px;line-height:1.85;color:#233029;
    overflow-wrap:anywhere;
  }
  .mk-article-body > *:first-child{margin-top:0;}
  .mk-article-body p{margin:0 0 1.2em;}
  .mk-article-body h2{
    font-size:clamp(1.35rem,2.4vw,1.7rem);line-height:1.4;font-weight:700;
    letter-spacing:-.01em;color:var(--mk-green);
    margin:2em 0 .6em;padding-bottom:.35em;border-bottom:1px solid var(--mk-line);
  }
  .mk-article-body h3{font-size:1.2rem;font-weight:600;color:var(--mk-green);margin:1.6em 0 .5em;}
  .mk-article-body h4{font-size:1.05rem;font-weight:600;color:var(--mk-green-soft);margin:1.4em 0 .4em;}
  .mk-article-body ul,.mk-article-body ol{margin:0 0 1.2em;padding-left:1.35em;}
  .mk-article-body li{margin:.42em 0;}
  .mk-article-body ul li::marker{color:var(--mk-green-soft);}
  .mk-article-body ol li::marker{color:var(--mk-green-soft);font-weight:700;}
  .mk-article-body a{color:var(--mk-green-soft);text-decoration:underline;text-underline-offset:3px;}
  .mk-article-body a:hover{color:var(--mk-green);}
  .mk-article-body strong{font-weight:700;color:var(--mk-green);}
  .mk-article-body blockquote{
    margin:1.6em 0;padding:18px 22px;
    border-left:3px solid var(--mk-lime);
    background:rgba(198,242,78,.14);
    border-radius:0 12px 12px 0;color:#2c3a33;
  }
  .mk-article-body blockquote p:last-child{margin-bottom:0;}
  .mk-article-body img{border-radius:14px;display:block;margin:1.4em auto;}
  .mk-article-body figure{margin:1.6em 0;}
  .mk-article-body figcaption{font-size:13px;color:var(--mk-muted);text-align:center;margin-top:10px;}
  .mk-article-body table{width:100%;border-collapse:collapse;margin:1.5em 0;font-size:15px;}
  .mk-article-body th,.mk-article-body td{border:1px solid var(--mk-line);padding:10px 14px;text-align:left;}
  .mk-article-body th{background:var(--mk-input);font-weight:600;color:var(--mk-green);}
  .mk-article-body code{background:var(--mk-input);padding:2px 6px;border-radius:6px;font-size:.92em;}
  .mk-article-body pre{background:var(--mk-green);color:var(--mk-dark-text);padding:18px;border-radius:14px;overflow-x:auto;margin:1.5em 0;}
  .mk-article-body pre code{background:transparent;color:inherit;padding:0;}

  /* 空态 */
  .mk-empty{
    background:var(--mk-card);border:1px dashed var(--mk-line);
    border-radius:var(--mk-radius);box-shadow:var(--mk-shadow);
    padding:56px 28px;text-align:center;
  }
  .mk-empty-icon{color:var(--mk-green-soft);display:flex;justify-content:center;margin-bottom:16px;}
  .mk-empty-title{font-size:19px;font-weight:700;color:var(--mk-green);margin-bottom:8px;}
  .mk-empty-text{font-size:15px;color:var(--mk-muted);max-width:42ch;margin:0 auto 22px;}

  /* 文章尾部 */
  .mk-article-nav{display:flex;flex-wrap:wrap;gap:14px;margin-top:56px;padding-top:28px;border-top:1px solid var(--mk-line);}
  .mk-article-back{margin-top:22px;}
  .mk-article-back a{
    font-size:14px;color:var(--mk-muted);
    border-bottom:1px solid transparent;
    transition:color .25s var(--mk-ease),border-color .25s var(--mk-ease);
  }
  .mk-article-back a:hover{color:var(--mk-green);border-bottom-color:var(--mk-green);}

  /* 目录 */
  .mk-toc{position:sticky;top:104px;}
  .mk-toc-card{background:var(--mk-card);border:1px solid var(--mk-line);border-radius:var(--mk-radius);box-shadow:var(--mk-shadow);padding:20px;}
  .mk-toc-title{font-size:12.5px;letter-spacing:.14em;color:var(--mk-muted);font-weight:600;margin-bottom:12px;}
  .mk-toc-list{display:flex;flex-direction:column;max-height:60vh;overflow-y:auto;}
  .mk-toc-list a{
    display:block;font-size:14px;line-height:1.5;
    padding:7px 0 7px 12px;border-left:2px solid var(--mk-line);
    color:#3a4740;
    transition:color .25s var(--mk-ease),border-color .25s var(--mk-ease);
  }
  .mk-toc-list a:hover{color:var(--mk-green);border-left-color:var(--mk-lime);}
  @media (max-width:1024px){.mk-toc{display:none;}}

  /* ============ 板块 ============ */
  .mk-section{padding:72px 0;}
  @media (min-width:1024px){.mk-section{padding:96px 0;}}
  .mk-section-head{max-width:680px;margin-bottom:40px;}
  .mk-section-title{
    font-size:clamp(1.5rem,3vw,2.1rem);font-weight:700;
    letter-spacing:-.02em;color:var(--mk-green);margin-bottom:10px;
  }
  .mk-section-desc{font-size:15.5px;color:var(--mk-muted);}

  /* 卡片 */
  .mk-post-grid{display:grid;gap:24px;grid-template-columns:1fr;}
  @media (min-width:768px){.mk-post-grid{grid-template-columns:repeat(2,1fr);}}
  @media (min-width:1024px){.mk-post-grid{grid-template-columns:repeat(3,1fr);}}
  .mk-card{
    display:flex;flex-direction:column;
    background:var(--mk-card);border:1px solid var(--mk-line);
    border-radius:var(--mk-radius);box-shadow:var(--mk-shadow);
    overflow:hidden;color:inherit;
    transition:transform .3s var(--mk-ease),box-shadow .3s var(--mk-ease);
  }
  .mk-card:hover{transform:translateY(-4px);box-shadow:var(--mk-shadow-lg);}
  .mk-card:active{transform:translateY(-1px);}
  .mk-thumb{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--mk-input);}
  .mk-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s var(--mk-ease);}
  .mk-card:hover .mk-thumb img{transform:scale(1.04);}
  .mk-card-body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:10px;flex:1;}
  .mk-tag{
    align-self:flex-start;font-size:12.5px;font-weight:600;
    color:var(--mk-green-soft);background:rgba(20,98,74,.08);
    border-radius:999px;padding:4px 10px;
  }
  .mk-card-title{
    font-size:17px;font-weight:600;line-height:1.5;color:var(--mk-green);
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  }
  .mk-card-text{
    font-size:14.5px;color:var(--mk-muted);
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  }
  .mk-card-foot{
    margin-top:auto;display:flex;justify-content:space-between;align-items:center;
    font-size:13px;color:var(--mk-muted);
    border-top:1px solid var(--mk-line);padding-top:12px;
  }

  /* 深色条带 */
  .mk-band{
    position:relative;overflow:hidden;
    background:var(--mk-green);color:var(--mk-dark-text);
    border-radius:24px;padding:38px;
    box-shadow:var(--mk-shadow-lg);
  }
  @media (max-width:640px){.mk-band{padding:28px 22px;border-radius:20px;}}
  .mk-band::before{
    content:"";position:absolute;inset:0;pointer-events:none;
    background-image:
      repeating-linear-gradient(0deg,rgba(234,239,230,.05) 0 1px,transparent 1px 44px),
      repeating-linear-gradient(90deg,rgba(234,239,230,.05) 0 1px,transparent 1px 44px);
  }
  .mk-band-inner{position:relative;}
  .mk-band-title{font-size:clamp(1.2rem,2.4vw,1.55rem);font-weight:700;color:#fff;margin-bottom:8px;}
  .mk-band-text{font-size:14px;color:rgba(234,239,230,.76);max-width:56ch;}
  .mk-band-chip{
    display:inline-flex;align-items:center;height:30px;padding:0 14px;
    border-radius:999px;font-size:13px;font-weight:600;
    background:rgba(240,85,43,.16);color:#FFB59B;border:1px solid rgba(240,85,43,.4);
    font-variant-numeric:tabular-nums;
  }

  /* ============ 页脚 ============ */
  .mk-footer{background:var(--mk-green);color:var(--mk-dark-text);padding:72px 0 28px;}
  .mk-footer-grid{display:grid;gap:36px;grid-template-columns:1fr;}
  @media (min-width:640px){.mk-footer-grid{grid-template-columns:repeat(2,1fr);}}
  @media (min-width:1024px){.mk-footer-grid{grid-template-columns:1.6fr 1fr 1fr 1.1fr;gap:32px;}}
  .mk-footer-logo{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:16px;color:#fff;margin-bottom:14px;}
  .mk-footer p{color:rgba(234,239,230,.72);font-size:14px;line-height:1.8;max-width:36ch;}
  .mk-footer h3{font-size:15px;font-weight:600;color:var(--mk-lime);margin-bottom:14px;}
  .mk-footer-links{display:flex;flex-direction:column;gap:10px;}
  .mk-footer-links a,.mk-footer-links span{color:rgba(234,239,230,.78);font-size:14px;transition:color .25s var(--mk-ease);}
  .mk-footer-links a:hover{color:var(--mk-lime);}
  .mk-footer-bottom{
    display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;
    margin-top:48px;padding-top:22px;
    border-top:1px solid rgba(234,239,230,.14);
    font-size:13px;color:rgba(234,239,230,.6);
  }

  /* 动效 */
  .mk-js .mk-reveal{opacity:0;transform:translateY(12px);transition:opacity .5s var(--mk-ease),transform .5s var(--mk-ease);}
  .mk-js .mk-reveal.is-visible{opacity:1;transform:none;}
  @media (prefers-reduced-motion:reduce){
    html{scroll-behavior:auto;}
    .mk-js .mk-reveal{opacity:1;transform:none;transition:none;}
    *,*::before,*::after{animation-duration:.001ms !important;transition-duration:.001ms !important;}
  }

/* roulang page: category1 */
:root{
  --mk-green:#0B3B2E;
  --mk-green-2:#14624A;
  --mk-lime:#C6F24E;
  --mk-orange:#F0552B;
  --mk-bg:#F5F6F1;
  --mk-card:#FFFFFF;
  --mk-dark-text:#EAEFE6;
  --mk-ink:#17201C;
  --mk-muted:#5A6560;
  --mk-line:#E2E6DE;
  --mk-input:#F2F4EF;
  --mk-radius-card:16px;
  --mk-radius-input:12px;
  --mk-radius-pill:999px;
  --mk-shadow-card:0 1px 2px rgba(11,59,46,.06), 0 8px 24px rgba(11,59,46,.06);
  --mk-shadow-float:0 12px 40px rgba(11,59,46,.16);
  --mk-ease:cubic-bezier(.22,.61,.36,1);
  --mk-section:96px;
}
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--mk-bg);
  color:var(--mk-ink);
  font-family:"Noto Sans SC","PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:16px;
  line-height:1.8;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,p,ul,ol,figure{margin:0;}
ul,ol{padding:0;list-style:none;}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;height:auto;}
button,input,select,textarea{font:inherit;color:inherit;}
button{background:none;border:0;cursor:pointer;}
:focus-visible{outline:3px solid rgba(198,242,78,.55);outline-offset:3px;border-radius:6px;}
::selection{background:var(--mk-lime);color:var(--mk-green);}

.mk-container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px;}
@media (min-width:768px){.mk-container{padding:0 32px;}}
@media (min-width:1024px){.mk-container{padding:0 48px;}}

.mk-num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;}

/* ============ 浮动 Dock 导航 ============ */
.mk-dock{
  position:fixed;top:16px;left:50%;transform:translateX(-50%);
  width:min(1100px,calc(100% - 32px));
  z-index:80;
}
.mk-dock-inner{
  display:flex;align-items:center;gap:10px;
  height:64px;padding:0 12px 0 16px;
  border-radius:var(--mk-radius-pill);
  background:rgba(245,246,241,.82);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  border:1px solid var(--mk-line);
  box-shadow:var(--mk-shadow-float);
  transition:height .3s var(--mk-ease),background-color .3s var(--mk-ease),box-shadow .3s var(--mk-ease);
}
.mk-dock.is-scrolled .mk-dock-inner{
  height:56px;
  background:rgba(245,246,241,.96);
  box-shadow:0 12px 40px rgba(11,59,46,.22);
}
.mk-brand{display:inline-flex;align-items:center;gap:10px;font-weight:800;color:var(--mk-green);white-space:nowrap;letter-spacing:-.01em;}
.mk-logo-mark{
  width:34px;height:34px;flex:0 0 34px;border-radius:11px;
  background:var(--mk-green);color:var(--mk-lime);
  display:grid;place-items:center;font-size:12px;font-weight:900;letter-spacing:.04em;
  transition:transform .3s var(--mk-ease);
}
.mk-brand:hover .mk-logo-mark{transform:translateY(-1px) rotate(-3deg);}
.mk-brand-text{font-size:15px;}
@media (max-width:479px){.mk-brand-text{font-size:13px;}}

.mk-nav{display:flex;align-items:center;gap:4px;margin-left:auto;}
.mk-nav-link{
  position:relative;padding:9px 15px;border-radius:var(--mk-radius-pill);
  font-size:14px;color:var(--mk-muted);white-space:nowrap;
  transition:color .25s var(--mk-ease),background-color .25s var(--mk-ease);
}
.mk-nav-link:hover{color:var(--mk-green);background:rgba(198,242,78,.32);}
.mk-nav-link:active{transform:translateY(1px);}
.mk-nav-link.is-active{color:var(--mk-green);background:var(--mk-lime);font-weight:700;}
.mk-nav-link.is-active:hover{background:var(--mk-lime);}

.mk-dock-actions{display:flex;align-items:center;gap:8px;margin-left:10px;}
.mk-burger{
  display:none;width:44px;height:44px;border-radius:var(--mk-radius-pill);
  border:1px solid var(--mk-line);background:var(--mk-card);
  place-items:center;transition:background-color .25s var(--mk-ease),transform .25s var(--mk-ease);
}
.mk-burger:hover{background:var(--mk-input);}
.mk-burger span{display:block;width:18px;height:2px;background:var(--mk-green);border-radius:2px;position:relative;}
.mk-burger span::before,.mk-burger span::after{
  content:"";position:absolute;left:0;width:18px;height:2px;background:var(--mk-green);border-radius:2px;
}
.mk-burger span::before{top:-6px;}
.mk-burger span::after{top:6px;}

.mk-drawer{
  display:none;margin-top:10px;padding:14px;
  background:var(--mk-card);border:1px solid var(--mk-line);
  border-radius:24px;box-shadow:var(--mk-shadow-float);
}
.mk-drawer.is-open{display:block;}
.mk-drawer a{
  display:block;padding:13px 16px;border-radius:14px;
  font-size:15px;color:var(--mk-ink);
  transition:background-color .25s var(--mk-ease),color .25s var(--mk-ease);
}
.mk-drawer a:hover{background:var(--mk-input);color:var(--mk-green);}
.mk-drawer a.is-active{background:var(--mk-lime);color:var(--mk-green);font-weight:700;}
.mk-drawer .mk-btn{width:100%;margin-top:10px;}

@media (max-width:1023px){
  .mk-nav{display:none;}
  .mk-burger{display:grid;}
}
@media (min-width:1024px){
  .mk-drawer{display:none !important;}
}

/* ============ 按钮 ============ */
.mk-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  border-radius:var(--mk-radius-pill);
  border:1px solid transparent;
  font-size:14px;font-weight:700;line-height:1;
  cursor:pointer;
  transition:transform .25s var(--mk-ease),box-shadow .25s var(--mk-ease),background-color .25s var(--mk-ease),color .25s var(--mk-ease),border-color .25s var(--mk-ease);
}
.mk-btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(11,59,46,.16);}
.mk-btn:active{transform:translateY(0);box-shadow:none;}
.mk-btn[disabled],.mk-btn.is-disabled{opacity:.4;filter:saturate(.5);pointer-events:none;}
.mk-btn-sm{height:40px;padding:0 20px;}
.mk-btn-md{height:44px;padding:0 24px;}
.mk-btn-lg{height:48px;padding:0 28px;font-size:15px;}
.mk-btn-primary{background:var(--mk-lime);color:var(--mk-green);}
.mk-btn-primary:hover{background:var(--mk-lime);color:var(--mk-green);}
.mk-btn-ghost{border-color:var(--mk-green-2);color:var(--mk-green);background:transparent;}
.mk-btn-ghost:hover{background:rgba(20,98,74,.08);}
.mk-btn-onDark{border-color:rgba(234,239,230,.42);color:var(--mk-dark-text);background:transparent;}
.mk-btn-onDark:hover{background:rgba(234,239,230,.12);}
.mk-link-more{
  display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:700;color:var(--mk-green-2);
  border-bottom:1px solid transparent;padding-bottom:2px;
  transition:border-color .25s var(--mk-ease),gap .25s var(--mk-ease);
}
.mk-link-more:hover{border-color:var(--mk-green-2);gap:10px;}

/* ============ 标签 / 徽章 ============ */
.mk-tag{
  display:inline-flex;align-items:center;gap:6px;
  padding:5px 12px;border-radius:var(--mk-radius-pill);
  background:var(--mk-input);color:var(--mk-green-2);
  font-size:12.5px;font-weight:600;line-height:1.6;
}
.mk-tag-lime{background:rgba(198,242,78,.4);color:var(--mk-green);}
.mk-tag-ember{background:rgba(240,85,43,.12);color:var(--mk-orange);}
.mk-badge{
  display:inline-flex;align-items:center;
  padding:4px 10px;border-radius:var(--mk-radius-pill);
  background:var(--mk-green);color:var(--mk-lime);
  font-size:12px;font-weight:700;letter-spacing:.02em;
}

/* ============ 页头 Hero ============ */
.mk-page-hero{
  position:relative;
  padding:152px 0 84px;
  color:var(--mk-dark-text);
  background-image:
    linear-gradient(180deg,rgba(11,59,46,.94) 0%,rgba(11,59,46,.86) 45%,rgba(11,59,46,.94) 100%),
    url("/assets/images/backpic/back-2.webp");
  background-size:cover;
  background-position:center;
  overflow:hidden;
}
.mk-page-hero::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(234,239,230,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(234,239,230,.05) 1px,transparent 1px);
  background-size:56px 56px;
}
.mk-page-hero .mk-container{position:relative;z-index:2;}
.mk-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;color:rgba(234,239,230,.72);}
.mk-crumb a{transition:color .25s var(--mk-ease);}
.mk-crumb a:hover{color:var(--mk-lime);}
.mk-crumb .sep{opacity:.5;}
.mk-crumb .now{color:var(--mk-dark-text);}
.mk-hero-title{
  margin-top:22px;
  font-size:clamp(2rem,5vw,3.4rem);
  font-weight:900;letter-spacing:-.02em;line-height:1.15;
  max-width:20ch;
}
.mk-hero-title em{font-style:normal;color:var(--mk-lime);}
.mk-hero-lead{
  margin-top:18px;max-width:56ch;
  font-size:16.5px;line-height:1.85;color:rgba(234,239,230,.85);
}
.mk-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px;}
.mk-trust{
  display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;
  margin-top:28px;font-size:13px;color:rgba(234,239,230,.72);
}
.mk-trust i{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--mk-lime);opacity:.85;}

/* ============ 区块间距 ============ */
.mk-section{padding:56px 0;}
@media (min-width:768px){.mk-section{padding:72px 0;}}
@media (min-width:1024px){.mk-section{padding:96px 0;}}
.mk-section-head{max-width:720px;}
.mk-section-head h2{
  font-size:clamp(1.5rem,3vw,2.15rem);
  font-weight:700;letter-spacing:-.015em;line-height:1.25;color:var(--mk-green);
}
.mk-section-head p{margin-top:14px;font-size:16px;color:var(--mk-muted);}

/* ============ 分类页布局 A：左 sticky 导航 ============ */
.mk-cat-layout{
  display:grid;grid-template-columns:268px minmax(0,1fr);gap:40px;align-items:start;
}
@media (max-width:1023px){
  .mk-cat-layout{grid-template-columns:minmax(0,1fr);gap:28px;}
}
.mk-side-nav{
  position:sticky;top:104px;
  background:var(--mk-card);border:1px solid var(--mk-line);
  border-radius:var(--mk-radius-card);box-shadow:var(--mk-shadow-card);
  padding:20px;
}
.mk-side-nav h2{
  font-size:13px;font-weight:700;letter-spacing:.08em;
  color:var(--mk-muted);text-transform:uppercase;margin-bottom:12px;
}
.mk-side-nav a{
  display:flex;align-items:center;gap:10px;
  padding:11px 13px;border-radius:14px;
  font-size:14.5px;color:var(--mk-muted);
  transition:background-color .25s var(--mk-ease),color .25s var(--mk-ease),transform .25s var(--mk-ease);
}
.mk-side-nav a::before{
  content:"";width:6px;height:6px;border-radius:50%;
  background:var(--mk-line);flex:0 0 6px;
  transition:background-color .25s var(--mk-ease);
}
.mk-side-nav a:hover{background:var(--mk-input);color:var(--mk-green);transform:translateX(2px);}
.mk-side-nav a:hover::before{background:var(--mk-green-2);}
.mk-side-nav a.is-current{background:var(--mk-lime);color:var(--mk-green);font-weight:700;}
.mk-side-nav a.is-current::before{background:var(--mk-green);}
.mk-side-note{
  margin-top:18px;padding-top:16px;border-top:1px dashed var(--mk-line);
  font-size:13px;line-height:1.75;color:var(--mk-muted);
}
@media (max-width:1023px){
  .mk-side-nav{position:static;top:auto;}
  .mk-side-nav ul{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px;}
  .mk-side-nav li{scroll-snap-align:start;}
  .mk-side-nav a{white-space:nowrap;background:var(--mk-input);}
}
.mk-side-nav ul::-webkit-scrollbar{height:4px;}
.mk-side-nav ul::-webkit-scrollbar-thumb{background:var(--mk-line);border-radius:4px;}

/* ============ 概览数字 ============ */
.mk-stats{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px;
}
@media (max-width:639px){.mk-stats{grid-template-columns:minmax(0,1fr);}}
.mk-stat{
  background:var(--mk-card);border:1px solid var(--mk-line);
  border-radius:var(--mk-radius-card);padding:22px;
  box-shadow:var(--mk-shadow-card);
  transition:transform .3s var(--mk-ease),box-shadow .3s var(--mk-ease);
}
.mk-stat:hover{transform:translateY(-4px);box-shadow:var(--mk-shadow-float);}
.mk-stat .val{
  font-size:2rem;font-weight:900;line-height:1.1;color:var(--mk-green);
}
.mk-stat .val span{font-size:1rem;font-weight:700;color:var(--mk-green-2);margin-left:4px;}
.mk-stat .k{margin-top:8px;font-size:14px;color:var(--mk-muted);}

/* ============ 时段一览 ============ */
.mk-slot-card{
  margin-top:28px;
  background:var(--mk-card);border:1px solid var(--mk-line);
  border-radius:var(--mk-radius-card);box-shadow:var(--mk-shadow-card);
  overflow:hidden;
}
.mk-slot-head{
  display:grid;grid-template-columns:158px minmax(0,1.4fr) minmax(0,1fr) 96px;
  gap:16px;padding:14px 22px;
  background:var(--mk-input);
  font-size:12.5px;font-weight:700;letter-spacing:.04em;color:var(--mk-muted);
}
.mk-slot-row{
  display:grid;grid-template-columns:158px minmax(0,1.4fr) minmax(0,1fr) 96px;
  gap:16px;align-items:center;
  padding:18px 22px;border-top:1px solid var(--mk-line);
  transition:background-color .25s var(--mk-ease);
}
.mk-slot-row:hover{background:rgba(198,242,78,.12);}
.mk-slot-time{font-size:15.5px;font-weight:800;color:var(--mk-green);font-variant-numeric:tabular-nums;}
.mk-slot-name{font-size:15px;font-weight:600;color:var(--mk-ink);}
.mk-slot-place{font-size:14px;color:var(--mk-muted);}
.mk-slot-state{
  justify-self:start;padding:4px 12px;border-radius:var(--mk-radius-pill);
  background:rgba(198,242,78,.4);color:var(--mk-green);
  font-size:12.5px;font-weight:700;font-variant-numeric:tabular-nums;
}
.mk-slot-state.is-tight{background:rgba(240,85,43,.12);color:var(--mk-orange);}
@media (max-width:767px){
  .mk-slot-head{display:none;}
  .mk-slot-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:16px 18px;}
  .mk-slot-time{grid-column:1 / -1;}
  .mk-slot-place{font-size:13.5px;}
  .mk-slot-state{grid-column:2;grid-row:2;}
}

/* ============ 图文交替长条卡 ============ */
.mk-rows{display:grid;gap:26px;margin-top:28px;}
.mk-row-card{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  background:var(--mk-card);border:1px solid var(--mk-line);
  border-radius:var(--mk-radius-card);overflow:hidden;
  box-shadow:var(--mk-shadow-card);
  transition:transform .3s var(--mk-ease),box-shadow .3s var(--mk-ease);
}
.mk-row-card:hover{transform:translateY(-4px);box-shadow:var(--mk-shadow-float);}
.mk-row-media{position:relative;aspect-ratio:16/10;background:var(--mk-green);}
.mk-row-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--mk-ease);}
.mk-row-card:hover .mk-row-media img{transform:scale(1.04);}
.mk-row-media::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(11,59,46,.10),rgba(11,59,46,.34));
}
.mk-row-media .mk-media-mark{
  position:absolute;left:16px;bottom:14px;z-index:2;
  font-size:13px;font-weight:700;color:var(--mk-dark-text);
  font-variant-numeric:tabular-nums;
}
.mk-row-body{padding:30px;display:flex;flex-direction:column;gap:14px;justify-content:center;}
.mk-row-body h3{font-size:1.2rem;font-weight:700;color:var(--mk-green);line-height:1.4;}
.mk-row-body p{font-size:15.5px;color:var(--mk-muted);}
.mk-row-tags{display:flex;flex-wrap:wrap;gap:8px;}
.mk-row-card.is-reverse .mk-row-media{order:2;}
@media (max-width:767px){
  .mk-row-card{grid-template-columns:minmax(0,1fr);}
  .mk-row-card.is-reverse .mk-row-media{order:0;}
  .mk-row-body{padding:22px;}
}

/* ============ 深色条带 ============ */
.mk-stripe{
  background:var(--mk-green);color:var(--mk-dark-text);
  padding:52px 0;
  position:relative;overflow:hidden;
}
.mk-stripe::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(234,239,230,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(234,239,230,.05) 1px,transparent 1px);
  background-size:48px 48px;
}
.mk-stripe .mk-container{
  position:relative;z-index:2;
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;
}
.mk-stripe h2{font-size:1.15rem;font-weight:800;letter-spacing:-.01em;}
.mk-stripe p{margin-top:8px;font-size:13px;color:rgba(234,239,230,.72);}
.mk-stripe-right{display:flex;flex-wrap:wrap;align-items:center;gap:14px;}
.mk-stripe-mark{
  padding:8px 16px;border-radius:var(--mk-radius-pill);
  border:1px solid rgba(234,239,230,.28);
  font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;
  color:var(--mk-lime);
}

/* ============ FAQ ============ */
.mk-faq{margin-top:26px;border-top:1px solid var(--mk-line);}
.mk-faq-item{border-bottom:1px solid var(--mk-line);}
.mk-faq-q{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:20px 0;text-align:left;
  font-size:16px;font-weight:600;color:var(--mk-green);
  transition:color .25s var(--mk-ease);
}
.mk-faq-q:hover{color:var(--mk-green-2);}
.mk-faq-q .plus{
  flex:0 0 26px;width:26px;height:26px;border-radius:50%;
  border:1px solid var(--mk-line);position:relative;
  transition:transform .3s var(--mk-ease),background-color .3s var(--mk-ease),border-color .3s var(--mk-ease);
}
.mk-faq-q .plus::before,.mk-faq-q .plus::after{
  content:"";position:absolute;left:50%;top:50%;background:var(--mk-green);border-radius:2px;
  transform:translate(-50%,-50%);
}
.mk-faq-q .plus::before{width:11px;height:1.6px;}
.mk-faq-q .plus::after{width:1.6px;height:11px;}
.mk-faq-item.is-open .mk-faq-q .plus{transform:rotate(45deg);background:var(--mk-lime);border-color:var(--mk-lime);}
.mk-faq-a{max-height:0;overflow:hidden;transition:max-height .35s var(--mk-ease);}
.mk-faq-a p{
  padding:0 0 22px;max-width:72ch;
  font-size:15px;line-height:1.8;color:var(--mk-muted);
}

/* ============ 表单 ============ */
.mk-consult{
  display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:40px;align-items:start;
}
@media (max-width:1023px){.mk-consult{grid-template-columns:minmax(0,1fr);gap:26px;}}
.mk-consult-points{display:grid;gap:14px;margin-top:22px;}
.mk-consult-points li{
  display:flex;gap:12px;align-items:flex-start;
  font-size:14.5px;color:var(--mk-muted);
}
.mk-consult-points li b{color:var(--mk-green);font-weight:700;}
.mk-dot{
  flex:0 0 22px;width:22px;height:22px;border-radius:50%;
  background:rgba(198,242,78,.45);color:var(--mk-green);
  display:grid;place-items:center;font-size:12px;font-weight:800;margin-top:3px;
}
.mk-consult-meta{
  margin-top:26px;padding-top:18px;border-top:1px dashed var(--mk-line);
  display:grid;gap:8px;font-size:14px;color:var(--mk-muted);
}
.mk-consult-meta strong{color:var(--mk-green);font-variant-numeric:tabular-nums;}
.mk-form-card{
  background:var(--mk-card);border:1px solid var(--mk-line);
  border-radius:var(--mk-radius-card);box-shadow:var(--mk-shadow-card);
  padding:28px;
}
@media (max-width:520px){.mk-form-card{padding:20px;}}
.mk-form{display:grid;gap:18px;}
.mk-field{display:grid;gap:8px;}
.mk-field label{font-size:13.5px;font-weight:700;color:var(--mk-green);}
.mk-field input,.mk-field select,.mk-field textarea{
  width:100%;padding:13px 15px;
  background:var(--mk-input);
  border:1px solid transparent;border-radius:var(--mk-radius-input);
  font-size:15px;color:var(--mk-ink);
  transition:border-color .25s var(--mk-ease),box-shadow .25s var(--mk-ease),background-color .25s var(--mk-ease);
}
.mk-field input::placeholder,.mk-field textarea::placeholder{color:#92A09A;}
.mk-field input:hover,.mk-field select:hover,.mk-field textarea:hover{background:#EDF0E9;}
.mk-field input:focus,.mk-field select:focus,.mk-field textarea:focus{
  outline:none;background:var(--mk-card);
  border-color:var(--mk-green-2);
  box-shadow:0 0 0 3px rgba(198,242,78,.35);
}
.mk-field.is-error input,.mk-field.is-error select,.mk-field.is-error textarea{border-color:var(--mk-orange);}
.mk-err{display:none;font-size:12px;color:var(--mk-orange);}
.mk-field.is-error .mk-err{display:block;}
.mk-form-note{font-size:12.5px;color:var(--mk-muted);text-align:center;}
.mk-form-ok{
  display:none;padding:18px 20px;border-radius:var(--mk-radius-input);
  background:rgba(198,242,78,.35);color:var(--mk-green);
  font-size:14.5px;font-weight:600;
}
.mk-form-ok.is-shown{display:block;}

/* ============ 页脚 ============ */
.mk-footer{
  background:var(--mk-green);color:var(--mk-dark-text);
  padding:72px 0 26px;margin-top:56px;
}
@media (min-width:1024px){.mk-footer{margin-top:96px;}}
.mk-footer-grid{
  display:grid;grid-template-columns:1.5fr 1fr 1fr 1.1fr;gap:38px;
}
@media (max-width:1023px){.mk-footer-grid{grid-template-columns:1fr 1fr;gap:32px;}}
@media (max-width:639px){.mk-footer-grid{grid-template-columns:1fr;}}
.mk-footer-logo{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:800;color:var(--mk-dark-text);}
.mk-footer .mk-logo-mark{background:var(--mk-lime);color:var(--mk-green);}
.mk-footer p{margin-top:16px;font-size:14px;line-height:1.8;color:rgba(234,239,230,.72);max-width:34ch;}
.mk-footer h3{font-size:15px;font-weight:700;color:var(--mk-lime);margin-bottom:16px;}
.mk-footer-links{display:grid;gap:11px;font-size:14px;color:rgba(234,239,230,.78);}
.mk-footer-links a{transition:color .25s var(--mk-ease),transform .25s var(--mk-ease);display:inline-block;}
.mk-footer-links a:hover{color:var(--mk-lime);transform:translateX(2px);}
.mk-footer-bottom{
  display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;
  margin-top:48px;padding-top:20px;
  border-top:1px solid rgba(234,239,230,.14);
  font-size:13px;color:rgba(234,239,230,.62);
}

/* ============ 入场动画 ============ */
.mk-reveal{opacity:0;transform:translateY(12px);transition:opacity .5s var(--mk-ease),transform .5s var(--mk-ease);}
.mk-reveal.is-in{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition:none !important;}
  .mk-reveal{opacity:1;transform:none;}
  html{scroll-behavior:auto;}
}

/* roulang page: category2 */
:root{
    --ink:#0B3B2E;
    --ink-2:#14624A;
    --lime:#C6F24E;
    --orange:#F0552B;
    --bg:#F5F6F1;
    --card:#FFFFFF;
    --darktext:#EAEFE6;
    --text:#17201C;
    --muted:#5A6560;
    --line:#E2E6DE;
    --field:#F2F4EF;
    --r-card:16px;
    --r-input:12px;
    --r-pill:999px;
    --sh-card:0 1px 2px rgba(11,59,46,.06), 0 8px 24px rgba(11,59,46,.06);
    --sh-float:0 12px 40px rgba(11,59,46,.16);
    --ease:cubic-bezier(.22,.61,.36,1);
    --sec:96px;
  }

  *,*::before,*::after{box-sizing:border-box}
  html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
  body{
    margin:0;
    background:var(--bg);
    color:var(--text);
    font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC","Helvetica Neue",sans-serif;
    font-size:16.5px;
    line-height:1.8;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  img{max-width:100%;display:block}
  a{color:inherit;text-decoration:none;transition:color .25s var(--ease)}
  button{font:inherit;color:inherit}
  input,select,textarea{font:inherit;color:inherit}
  h1,h2,h3,h4,p,ul,ol{margin:0}
  ul,ol{padding:0;list-style:none}
  :focus-visible{outline:3px solid rgba(198,242,78,.55);outline-offset:2px;border-radius:8px}

  .mk-container{width:100%;max-width:1200px;margin:0 auto;padding-left:20px;padding-right:20px}
  @media (min-width:768px){.mk-container{padding-left:32px;padding-right:32px}}
  @media (min-width:1024px){.mk-container{padding-left:48px;padding-right:48px}}

  /* ---------- 浮动 Dock 导航 ---------- */
  .mk-dock-wrap{
    position:fixed;top:16px;left:50%;transform:translateX(-50%);
    width:min(1100px,calc(100% - 32px));z-index:80;
  }
  .mk-dock{
    display:flex;align-items:center;gap:16px;
    height:64px;padding:0 14px 0 16px;
    border-radius:var(--r-pill);
    background:rgba(245,246,241,.82);
    border:1px solid rgba(226,230,222,.9);
    box-shadow:var(--sh-float);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    transition:height .3s var(--ease),background .3s var(--ease),box-shadow .3s var(--ease);
  }
  .mk-dock.is-scrolled{
    height:56px;
    background:rgba(245,246,241,.96);
    box-shadow:0 16px 44px rgba(11,59,46,.2);
  }
  .mk-brand{display:flex;align-items:center;gap:10px;flex:none}
  .mk-logo-mark{
    display:grid;place-items:center;width:34px;height:34px;border-radius:11px;
    background:var(--ink);color:var(--lime);font-size:13px;font-weight:900;letter-spacing:.02em;
  }
  .mk-brand-name{font-size:15px;font-weight:800;color:var(--ink);letter-spacing:-.01em;white-space:nowrap}
  .mk-nav{display:flex;align-items:center;gap:4px;margin-left:auto}
  .mk-nav-link{
    padding:9px 14px;border-radius:var(--r-pill);font-size:15px;color:var(--ink);
    opacity:.76;white-space:nowrap;
    transition:background .25s var(--ease),opacity .25s var(--ease),color .25s var(--ease);
  }
  .mk-nav-link:hover{background:rgba(11,59,46,.07);opacity:1}
  .mk-nav-link:active{background:rgba(11,59,46,.12)}
  .mk-nav-link.is-active{background:rgba(11,59,46,.1);color:var(--ink);font-weight:700;opacity:1}
  .mk-dock-actions{display:flex;align-items:center;gap:8px;flex:none}
  .mk-burger{
    display:none;flex-direction:column;align-items:center;justify-content:center;gap:4px;
    width:40px;height:40px;padding:0;border-radius:var(--r-pill);cursor:pointer;
    background:rgba(11,59,46,.08);border:1px solid var(--line);
    transition:background .25s var(--ease);
  }
  .mk-burger:hover{background:rgba(11,59,46,.14)}
  .mk-burger span{display:block;width:16px;height:2px;border-radius:2px;background:var(--ink);transition:transform .3s var(--ease),opacity .3s var(--ease)}
  .mk-burger.is-open span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .mk-burger.is-open span:nth-child(2){opacity:0}
  .mk-burger.is-open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

  .mk-drawer{
    display:none;margin-top:10px;padding:12px;
    border-radius:22px;border:1px solid var(--line);
    background:rgba(245,246,241,.97);
    box-shadow:var(--sh-float);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
  }
  .mk-drawer.is-open{display:block;animation:mkDrop .28s var(--ease)}
  @keyframes mkDrop{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
  .mk-drawer .mk-nav-link{display:block;padding:14px 16px;border-radius:14px;font-size:16px}
  .mk-drawer .mk-btn{width:100%;margin-top:10px}

  @media (max-width:940px){
    .mk-nav{display:none}
    .mk-dock-actions .mk-btn{display:none}
    .mk-burger{display:flex}
    .mk-brand-name{font-size:14px}
  }

  /* ---------- 按钮 ---------- */
  .mk-btn{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    height:44px;padding:0 24px;border-radius:var(--r-pill);
    font-size:15px;font-weight:600;border:1px solid transparent;cursor:pointer;
    transition:transform .25s var(--ease),background .25s var(--ease),box-shadow .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease);
  }
  .mk-btn:hover{transform:translateY(-1px)}
  .mk-btn:active{transform:translateY(0)}
  .mk-btn-primary{background:var(--lime);color:#0B3B2E;box-shadow:0 6px 18px rgba(198,242,78,.28)}
  .mk-btn-primary:hover{background:#d5f873;box-shadow:0 12px 28px rgba(198,242,78,.36)}
  .mk-btn-ghost{background:transparent;color:var(--darktext);border-color:rgba(234,239,230,.42)}
  .mk-btn-ghost:hover{background:rgba(234,239,230,.12);border-color:rgba(234,239,230,.72)}
  .mk-btn-outline{background:transparent;color:var(--ink);border-color:var(--ink-2)}
  .mk-btn-outline:hover{background:rgba(20,98,74,.09)}
  .mk-btn-sm{height:40px;padding:0 18px;font-size:14px}
  .mk-btn:disabled{opacity:.4;filter:saturate(.4);cursor:not-allowed;transform:none}

  /* ---------- 页头 / Hero ---------- */
  .mk-hero{position:relative;overflow:hidden;background:var(--ink);color:var(--darktext);padding:148px 0 80px}
  .mk-hero-bg{
    position:absolute;inset:0;
    background-image:url('/assets/images/backpic/back-2.webp');
    background-size:cover;background-position:center;
    opacity:.34;
  }
  .mk-hero::after{
    content:'';position:absolute;inset:0;
    background:linear-gradient(115deg,rgba(11,59,46,.94) 0%,rgba(11,59,46,.74) 52%,rgba(11,59,46,.42) 100%);
  }
  .mk-hero-inner{position:relative;z-index:2}
  .mk-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;color:rgba(234,239,230,.66);margin-bottom:20px}
  .mk-crumb a:hover{color:var(--lime)}
  .mk-crumb span[aria-current]{color:rgba(234,239,230,.9)}
  .mk-crumb .sep{opacity:.5}
  .mk-eyebrow{
    display:inline-flex;align-items:center;gap:8px;
    padding:6px 14px;border-radius:var(--r-pill);
    background:rgba(198,242,78,.16);color:var(--lime);
    font-size:13px;font-weight:600;letter-spacing:.02em;margin-bottom:20px;
  }
  .mk-hero h1{
    font-size:clamp(2rem,5vw,3.6rem);font-weight:900;line-height:1.15;letter-spacing:-.02em;
    color:#fff;max-width:18ch;margin-bottom:20px;
  }
  .mk-hero-sub{max-width:56ch;color:rgba(234,239,230,.82);font-size:17px;margin-bottom:30px}
  .mk-hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:8px}
  .mk-stats{
    display:grid;grid-template-columns:repeat(4,1fr);gap:20px;
    margin-top:36px;padding-top:28px;border-top:1px solid rgba(234,239,230,.14);
  }
  .mk-stat-num{
    font-size:clamp(1.6rem,3vw,2.3rem);font-weight:800;line-height:1.1;
    color:var(--lime);letter-spacing:-.02em;font-variant-numeric:tabular-nums;
  }
  .mk-stat-label{font-size:13px;color:rgba(234,239,230,.72);margin-top:6px}
  @media (max-width:768px){
    .mk-hero{padding:126px 0 60px}
    .mk-stats{grid-template-columns:repeat(2,1fr);gap:22px 18px}
  }

  /* ---------- 区块 ---------- */
  .mk-section{padding:var(--sec) 0}
  .mk-section--tight{padding:72px 0}
  .mk-sec-head{max-width:760px;margin-bottom:40px}
  .mk-tag{
    display:inline-block;padding:5px 12px;border-radius:var(--r-pill);
    background:rgba(20,98,74,.1);color:var(--ink-2);
    font-size:13px;font-weight:600;margin-bottom:14px;
  }
  .mk-h2{
    font-size:clamp(1.5rem,3vw,2.25rem);font-weight:700;line-height:1.25;
    letter-spacing:-.02em;color:var(--ink);margin-bottom:12px;
  }
  .mk-sec-sub{color:var(--muted);max-width:70ch}

  /* ---------- 筛选标签（静态） ---------- */
  .mk-chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}
  .mk-chip{
    padding:8px 16px;border-radius:var(--r-pill);
    border:1px solid var(--line);background:var(--card);color:var(--muted);
    font-size:14px;cursor:default;
    transition:border-color .25s var(--ease),color .25s var(--ease),background .25s var(--ease);
  }
  .mk-chip:hover{border-color:var(--ink-2);color:var(--ink)}
  .mk-chip.is-on{background:var(--ink);border-color:var(--ink);color:var(--lime);font-weight:600}

  /* ---------- 4 列紧凑卡片 ---------- */
  .mk-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
  @media (max-width:1023px){.mk-grid-4{grid-template-columns:repeat(2,1fr)}}
  @media (max-width:560px){.mk-grid-4{grid-template-columns:1fr}}

  .mk-tile{
    display:flex;flex-direction:column;
    background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);
    overflow:hidden;box-shadow:var(--sh-card);
    transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease);
  }
  .mk-tile:hover{transform:translateY(-4px);box-shadow:var(--sh-float);border-color:rgba(20,98,74,.34)}
  .mk-tile:active{transform:translateY(-1px)}
  .mk-tile-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--field)}
  .mk-tile-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s var(--ease)}
  .mk-tile:hover .mk-tile-media img{transform:scale(1.04)}
  .mk-tile-body{padding:18px 20px 20px;display:flex;flex-direction:column;gap:8px;flex:1}
  .mk-tile-title{font-size:17px;font-weight:700;color:var(--ink);line-height:1.45}
  .mk-tile-desc{font-size:14px;color:var(--muted);line-height:1.7}
  .mk-tile-link{
    margin-top:auto;padding-top:10px;font-size:14px;font-weight:600;color:var(--ink-2);
    display:inline-flex;align-items:center;gap:6px;
  }
  .mk-tile-link i{font-style:normal;transition:transform .3s var(--ease)}
  .mk-tile:hover .mk-tile-link i{transform:translateX(4px)}

  /* ---------- 对比 ---------- */
  .mk-compare{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
  @media (max-width:820px){.mk-compare{grid-template-columns:1fr}}
  .mk-compare-col{
    position:relative;padding:28px 26px 30px;border-radius:var(--r-card);
    background:var(--card);border:1px solid var(--line);box-shadow:var(--sh-card);
    transition:transform .3s var(--ease),box-shadow .3s var(--ease);
  }
  .mk-compare-col:hover{transform:translateY(-4px);box-shadow:var(--sh-float)}
  .mk-compare-col.is-featured{background:var(--ink);border-color:var(--ink);color:var(--darktext)}
  .mk-compare-col h3{font-size:19px;font-weight:700;margin-bottom:6px}
  .mk-compare-col.is-featured h3{color:#fff}
  .mk-compare-note{font-size:13px;color:var(--muted);margin-bottom:20px}
  .mk-compare-col.is-featured .mk-compare-note{color:rgba(234,239,230,.7)}
  .mk-feat-list{display:flex;flex-direction:column;gap:12px}
  .mk-feat-list li{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.6}
  .mk-feat-list .mark{
    flex:none;width:20px;height:20px;border-radius:50%;
    display:grid;place-items:center;font-size:12px;font-weight:700;
    background:rgba(198,242,78,.9);color:var(--ink);margin-top:4px;
  }
  .mk-feat-list li.is-off{color:var(--muted)}
  .mk-feat-list li.is-off .mark{background:rgba(11,59,46,.1);color:var(--muted)}
  .mk-compare-col.is-featured .mk-feat-list li{color:var(--darktext)}
  .mk-badge-orange{
    position:absolute;top:-12px;right:22px;
    padding:5px 14px;border-radius:var(--r-pill);
    background:var(--orange);color:#fff;font-size:12px;font-weight:700;letter-spacing:.04em;
  }

  /* ---------- 时段条带 ---------- */
  .mk-strip{
    position:relative;overflow:hidden;background:var(--ink);color:var(--darktext);
    border-radius:24px;padding:38px 40px;
    display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;
  }
  .mk-strip::before{
    content:'';position:absolute;inset:0;
    background-image:url('/assets/images/backpic/back-3.png');
    background-size:cover;background-position:center;opacity:.16;
  }
  .mk-strip::after{
    content:'';position:absolute;inset:0;
    background-image:linear-gradient(rgba(234,239,230,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(234,239,230,.06) 1px,transparent 1px);
    background-size:36px 36px;
  }
  .mk-strip > *{position:relative;z-index:2}
  .mk-strip-title{font-size:18px;font-weight:700;color:#fff;margin-bottom:8px}
  .mk-strip-note{font-size:13px;color:rgba(234,239,230,.74);max-width:52ch}
  .mk-strip-side{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
  .mk-strip-badge{
    padding:8px 16px;border-radius:var(--r-pill);
    border:1px solid rgba(234,239,230,.32);font-size:13px;color:var(--darktext);
    font-variant-numeric:tabular-nums;
  }
  @media (max-width:768px){.mk-strip{padding:28px 24px;border-radius:20px}}

  /* ---------- FAQ ---------- */
  .mk-faq-list{border-top:1px solid var(--line)}
  .mk-faq{border-bottom:1px solid var(--line)}
  .mk-faq summary{
    display:flex;align-items:center;justify-content:space-between;gap:16px;
    padding:20px 0;font-size:16px;font-weight:600;color:var(--ink);
    cursor:pointer;list-style:none;
  }
  .mk-faq summary::-webkit-details-marker{display:none}
  .mk-faq summary::after{
    content:'+';flex:none;font-size:22px;line-height:1;color:var(--ink-2);
    transition:transform .3s var(--ease),color .3s var(--ease);
  }
  .mk-faq summary:hover{color:var(--ink-2)}
  .mk-faq[open] summary::after{transform:rotate(45deg);color:var(--orange)}
  .mk-faq-body{padding:0 0 22px;color:var(--muted);font-size:15px;line-height:1.8;max-width:72ch}

  /* ---------- 表单 ---------- */
  .mk-consult-grid{display:grid;grid-template-columns:5fr 7fr;gap:40px;align-items:start}
  @media (max-width:900px){.mk-consult-grid{grid-template-columns:1fr;gap:28px}}
  .mk-points{display:flex;flex-direction:column;gap:16px;margin-top:22px}
  .mk-points li{display:flex;gap:12px;align-items:flex-start;font-size:15px;color:var(--text)}
  .mk-points .dot{
    flex:none;width:8px;height:8px;border-radius:50%;background:var(--lime);
    border:2px solid var(--ink-2);margin-top:11px;
  }
  .mk-contact-line{
    margin-top:26px;padding-top:20px;border-top:1px dashed var(--line);
    display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--muted);
  }
  .mk-form-card{
    background:var(--card);border:1px solid var(--line);border-radius:20px;
    padding:28px;box-shadow:var(--sh-card);
  }
  @media (max-width:520px){.mk-form-card{padding:22px 18px}}
  .mk-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
  @media (max-width:560px){.mk-form-grid{grid-template-columns:1fr}}
  .mk-field{display:flex;flex-direction:column;gap:8px}
  .mk-field label{font-size:14px;font-weight:600;color:var(--ink)}
  .mk-field input,.mk-field select,.mk-field textarea{
    width:100%;padding:13px 15px;border-radius:var(--r-input);
    background:var(--field);border:1px solid transparent;
    font-size:15px;color:var(--text);
    transition:border-color .25s var(--ease),background .25s var(--ease),box-shadow .25s var(--ease);
  }
  .mk-field input::placeholder,.mk-field textarea::placeholder{color:#8C958F}
  .mk-field input:hover,.mk-field select:hover,.mk-field textarea:hover{border-color:rgba(20,98,74,.28)}
  .mk-field input:focus,.mk-field select:focus,.mk-field textarea:focus{
    outline:none;background:#fff;border-color:var(--ink-2);
    box-shadow:0 0 0 4px rgba(20,98,74,.12);
  }
  .mk-field textarea{resize:vertical;min-height:104px}
  .mk-field-full{grid-column:1 / -1}
  .mk-err{display:none;font-size:12px;color:var(--orange)}
  .mk-field.is-error input,.mk-field.is-error select,.mk-field.is-error textarea{border-color:var(--orange)}
  .mk-field.is-error .mk-err{display:block}
  .mk-form-actions{margin-top:20px}
  .mk-form-actions .mk-btn{width:100%}
  .mk-form-hint{margin-top:12px;font-size:13px;color:var(--muted)}
  .mk-form-success{
    display:flex;flex-direction:column;gap:6px;padding:26px;
    border-radius:var(--r-card);background:rgba(198,242,78,.22);
    border:1px solid rgba(20,98,74,.3);
  }
  .mk-form-success strong{color:var(--ink);font-size:17px}
  .mk-form-success span{font-size:14px;color:var(--muted)}

  /* ---------- 页脚 ---------- */
  .mk-footer{background:var(--ink);color:var(--darktext);padding:72px 0 0;margin-top:0}
  .mk-footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:32px}
  @media (max-width:900px){.mk-footer-grid{grid-template-columns:1fr 1fr;gap:32px 24px}}
  @media (max-width:520px){.mk-footer-grid{grid-template-columns:1fr}}
  .mk-footer-logo{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:800;color:#fff;margin-bottom:16px}
  .mk-footer .mk-logo-mark{background:var(--lime);color:var(--ink)}
  .mk-footer p{font-size:14px;color:rgba(234,239,230,.7);max-width:42ch;line-height:1.8}
  .mk-footer h3{font-size:14px;font-weight:700;color:var(--lime);letter-spacing:.04em;margin-bottom:16px}
  .mk-footer-links{display:flex;flex-direction:column;gap:10px;font-size:14px;color:rgba(234,239,230,.74)}
  .mk-footer-links a{color:rgba(234,239,230,.74)}
  .mk-footer-links a:hover{color:var(--lime)}
  .mk-footer-bottom{
    margin-top:48px;padding:20px 0;
    border-top:1px solid rgba(234,239,230,.14);
    display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;
    font-size:13px;color:rgba(234,239,230,.58);
  }
  @media (max-width:768px){
    .mk-footer{padding:56px 0 0}
    .mk-footer-bottom{margin-top:36px}
  }

  /* ---------- 入场动效 ---------- */
  .reveal{opacity:0;transform:translateY(12px);transition:opacity .5s var(--ease),transform .5s var(--ease)}
  .reveal.is-in{opacity:1;transform:none}
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto}
    .reveal{opacity:1 !important;transform:none !important;transition:none !important}
    *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
  }

  @media (max-width:640px){
    :root{--sec:56px}
    .mk-chips{
      flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x mandatory;
      padding-bottom:8px;-webkit-overflow-scrolling:touch;
    }
    .mk-chip{flex:none;scroll-snap-align:start}
  }
  @media (min-width:641px) and (max-width:1023px){
    :root{--sec:72px}
  }
