:root{
  --paper:#fbfcf7;
  --ink:#22301f;
  --brand:#4c8a3f;
  --accent:#e8873a;
  --soft:#eef4e6;
  --line:#d8e4cc;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:"SimYou","Microsoft YaHei",sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.8;
  font-size:16px;
}
img{max-width:100%;display:block}
a{color:var(--brand);text-decoration:none}
a:hover{color:var(--accent)}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}
h1,h2,h3,h4{font-weight:700;line-height:1.4}
.en{font-family:"Verdana",sans-serif}

/* ===== topbar ===== */
.topbar{background:var(--ink);color:#e8f0e0;font-size:13px}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:6px 20px;flex-wrap:wrap}
.topbar .badge{background:var(--brand);color:#fff;padding:1px 10px;border-radius:999px}

/* ===== nav ===== */
#nav{position:sticky;top:0;z-index:50;background:rgba(251,252,247,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);transition:box-shadow .3s}
#nav.scrolled{box-shadow:0 6px 24px rgba(34,48,31,.10)}
#nav .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
.logo{font-size:20px;font-weight:700;color:var(--ink)}
.logo span{color:var(--brand)}
#nav ul{display:flex;gap:26px;list-style:none;align-items:center}
#nav ul a{color:var(--ink);font-size:15px}
#nav ul a:hover{color:var(--brand)}
.btn{display:inline-block;background:var(--brand);color:#fff!important;padding:10px 26px;border-radius:999px;font-weight:700;border:none;cursor:pointer;transition:transform .2s,background .2s;font-size:15px}
.btn:hover{background:#3d7132;transform:translateY(-2px)}
.btn.orange{background:var(--accent)}
.btn.orange:hover{background:#d1731f}
.btn.ghost{background:transparent;border:2px solid var(--brand);color:var(--brand)!important}
.btn.ghost:hover{background:var(--soft)}
#burger{display:none;background:none;border:none;font-size:24px;cursor:pointer;color:var(--ink)}
#drawer{display:none;background:var(--paper);border-bottom:1px solid var(--line)}
#drawer.open{display:block}
#drawer a{display:block;padding:14px 24px;border-top:1px solid var(--line);color:var(--ink)}
@media(max-width:860px){
  #nav ul{display:none}
  #burger{display:block}
}

/* ===== hero ===== */
.hero{
  position:relative;
  background:
    radial-gradient(circle at 8% 20%, rgba(232,135,58,.12) 0 6px, transparent 7px),
    radial-gradient(circle at 92% 70%, rgba(76,138,63,.14) 0 8px, transparent 9px),
    radial-gradient(circle at 80% 15%, rgba(76,138,63,.10) 0 5px, transparent 6px),
    linear-gradient(160deg,var(--soft) 0%,var(--paper) 70%);
  overflow:hidden;
}
.hero::before{
  content:"";position:absolute;left:-80px;top:-80px;width:420px;height:420px;
  border:40px solid rgba(76,138,63,.10);border-radius:60% 40% 55% 45%/50% 60% 40% 55%;
}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;padding:72px 20px 80px;position:relative}
.hero h1{font-size:clamp(28px,4.4vw,44px);letter-spacing:1px}
.hero h1 em{font-style:normal;color:var(--brand)}
.hero .sub{margin:18px 0 26px;color:#4a5a45;max-width:34em}
.hero .cta{display:flex;gap:14px;flex-wrap:wrap}
.hero .badges{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap}
.hero .badges span{background:#fff;border:1px solid var(--line);padding:6px 16px;border-radius:999px;font-size:13px;color:#3c4c38}
.hero figure{border-radius:120px 24px 120px 24px;overflow:hidden;box-shadow:0 24px 48px rgba(34,48,31,.16);border:6px solid #fff}
.hero .note{margin-top:14px;font-size:12px;color:#8a9784}
@media(max-width:860px){.hero .wrap{grid-template-columns:1fr;padding:48px 20px 60px}}

/* ===== wave divider ===== */
.wave{height:34px;background:
  radial-gradient(circle at 12px -6px, transparent 14px, var(--soft) 15px) 0 0/48px 34px repeat-x,
  radial-gradient(circle at 36px 40px, transparent 14px, var(--soft) 15px) 0 0/48px 34px repeat-x;
}
.wave.flip{transform:scaleY(-1)}

/* ===== sections ===== */
section{padding:64px 0}
.sec-head{text-align:center;margin-bottom:40px}
.sec-head .en{color:var(--accent);font-size:13px;letter-spacing:3px;text-transform:uppercase}
.sec-head h2{font-size:clamp(24px,3vw,32px);margin-top:6px}
.sec-head p{color:#5c6b57;max-width:44em;margin:10px auto 0}
.dots{background-image:radial-gradient(rgba(76,138,63,.10) 2px,transparent 2.5px),radial-gradient(rgba(232,135,58,.10) 2px,transparent 2.5px);background-size:26px 26px,34px 34px;background-position:0 0,12px 14px}

/* trust band */
.trust .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.trust .item{background:#fff;border:1px solid var(--line);border-radius:24px 8px 24px 8px;padding:26px 18px;text-align:center}
.trust .num{font-size:30px;font-weight:700;color:var(--brand)}
.trust .num small{font-size:14px;color:var(--accent)}
.trust .item p{font-size:13px;color:#6b7a64;margin-top:6px}
@media(max-width:860px){.trust .grid{grid-template-columns:repeat(2,1fr)}}

/* about */
.about .wrap{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
.about figure{border-radius:24px 8px 24px 8px;overflow:hidden;box-shadow:0 16px 36px rgba(34,48,31,.14)}
.about h2{margin-bottom:16px}
.about p{margin-bottom:12px;color:#43523f}
.about .leaf-list{list-style:none;margin-top:8px}
.about .leaf-list li{padding:6px 0 6px 26px;position:relative;color:#43523f}
.about .leaf-list li::before{content:"";position:absolute;left:0;top:14px;width:14px;height:14px;background:linear-gradient(135deg,var(--brand),#7dbb6d);border-radius:12px 2px 12px 2px}
@media(max-width:860px){.about .wrap{grid-template-columns:1fr}}

/* service cards */
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.card{background:#fff;border:1px solid var(--line);border-radius:24px 8px 24px 8px;overflow:hidden;transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column}
.card:hover{transform:translateY(-6px);box-shadow:0 18px 36px rgba(34,48,31,.14)}
.card img{aspect-ratio:16/9;object-fit:cover;width:100%}
.card .body{padding:20px 18px 24px;flex:1;display:flex;flex-direction:column}
.card h3{font-size:17px;margin-bottom:8px}
.card p{font-size:14px;color:#5c6b57;flex:1}
.card .price{margin-top:12px;color:var(--accent);font-weight:700;font-size:15px}
.card .price small{color:#8a9784;font-weight:400}
@media(max-width:1024px){.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.cards{grid-template-columns:1fr}}

/* process */
.process{background:linear-gradient(120deg,var(--soft),#f6f9ef);border-radius:48px 12px 48px 12px;position:relative}
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;counter-reset:step}
.step{background:#fff;border-radius:24px 8px 24px 8px;padding:24px 16px;text-align:center;border:1px solid var(--line);position:relative}
.step::before{counter-increment:step;content:counter(step);display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--brand),#7dbb6d);color:#fff;border-radius:50% 50% 50% 8px;font-weight:700;font-size:18px;margin-bottom:10px}
.step h3{font-size:16px;margin-bottom:6px}
.step p{font-size:13px;color:#6b7a64}
@media(max-width:860px){.steps{grid-template-columns:repeat(2,1fr)}.steps .step:last-child{grid-column:1/-1}}

/* team */
.team .cards{grid-template-columns:repeat(3,1fr)}
.team .tag{display:inline-block;background:var(--soft);color:var(--brand);font-size:12px;padding:2px 10px;border-radius:999px;margin:2px 4px 2px 0}
@media(max-width:860px){.team .cards{grid-template-columns:1fr}}

/* gallery */
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.gallery figure{border-radius:24px 8px 24px 8px;overflow:hidden;border:4px solid #fff;box-shadow:0 10px 24px rgba(34,48,31,.12)}
.gallery img{aspect-ratio:16/11;object-fit:cover;width:100%;transition:transform .4s}
.gallery figure:hover img{transform:scale(1.05)}
@media(max-width:860px){.gallery{grid-template-columns:repeat(2,1fr)}}

/* reviews */
.reviews{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.review{background:#fff;border:1px solid var(--line);border-radius:24px 8px 24px 8px;padding:24px 22px;position:relative}
.review::before{content:"“";position:absolute;top:6px;left:16px;font-size:44px;color:rgba(76,138,63,.18);font-family:Georgia,serif}
.review p{color:#43523f;font-size:15px;padding-left:20px}
.review .who{margin-top:12px;font-size:13px;color:#8a9784;padding-left:20px}
.review .who b{color:var(--brand)}
@media(max-width:860px){.reviews{grid-template-columns:1fr}}

/* faq */
.faq-list{max-width:820px;margin:0 auto}
.qa{background:#fff;border:1px solid var(--line);border-radius:24px 8px 24px 8px;margin-bottom:12px;overflow:hidden}
.qa .q{width:100%;text-align:left;background:none;border:none;padding:18px 22px;font-size:16px;font-weight:700;color:var(--ink);cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-family:inherit}
.qa .q::after{content:"+";color:var(--accent);font-size:22px;font-weight:400;transition:transform .3s}
.qa.open .q::after{transform:rotate(45deg)}
.qa .a{max-height:0;overflow:hidden;transition:max-height .35s ease;padding:0 22px;color:#5c6b57;font-size:15px}
.qa.open .a{max-height:320px;padding-bottom:18px}

/* news */
.news .card .meta{font-size:12px;color:#8a9784;margin-bottom:6px}
.news .card .more{margin-top:12px;font-size:14px;font-weight:700}

/* booking */
.book{background:linear-gradient(140deg,var(--brand),#35652c);border-radius:48px 12px 48px 12px;color:#fff;position:relative;overflow:hidden}
.book::before{content:"";position:absolute;right:-60px;bottom:-60px;width:280px;height:280px;background:radial-gradient(circle,rgba(232,135,58,.35),transparent 70%);border-radius:50%}
.book .wrap{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;position:relative}
.book h2{color:#fff}
.book .lead{color:#dcead2;margin-top:12px}
.book .lead b{color:#ffd9ad}
#vForm{background:#fff;border-radius:24px 8px 24px 8px;padding:28px;color:var(--ink)}
.field{margin-bottom:16px}
.field label{display:block;font-size:13px;font-weight:700;margin-bottom:6px}
.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:12px 4px 12px 4px;padding:10px 14px;font-family:inherit;font-size:15px;background:var(--paper);color:var(--ink)}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--brand);outline-offset:1px}
.field .msg{display:none;font-size:12px;color:#c0392b;margin-top:4px}
.field.err input,.field.err select,.field.err textarea{border-color:#c0392b}
.field.err .msg{display:block}
#vOk{margin-top:16px;background:#eaf5e4;border:1px solid var(--brand);color:var(--brand);padding:14px 18px;border-radius:12px 4px 12px 4px;font-size:14px}
#vOk.hidden{display:none}
@media(max-width:860px){.book .wrap{grid-template-columns:1fr}}

/* footer */
footer{background:var(--ink);color:#b8c6ae;font-size:14px}
footer .wrap{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:32px;padding:52px 20px 32px}
footer h4{color:#fff;font-size:16px;margin-bottom:14px}
footer ul{list-style:none}
footer li{margin-bottom:8px}
footer a{color:#b8c6ae}
footer a:hover{color:var(--accent)}
footer .demo{border-top:1px solid #3a4a35;padding:18px 20px;font-size:12px;color:#7e8c74;text-align:center}
@media(max-width:860px){footer .wrap{grid-template-columns:1fr 1fr}}

/* reveal */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}
.reveal.in{opacity:1;transform:none}

/* ===== inner pages ===== */
.page-head{background:linear-gradient(150deg,var(--soft),var(--paper));padding:52px 0 44px}
.crumb{font-size:13px;color:#8a9784;margin-bottom:14px}
.crumb a{color:var(--brand)}
.page-head h1{font-size:clamp(24px,3.4vw,36px)}
.page-head .meta{color:#8a9784;font-size:13px;margin-top:10px}

.layout{display:grid;grid-template-columns:1fr 300px;gap:40px;align-items:start}
@media(max-width:960px){.layout{grid-template-columns:1fr}}
.aside .box{background:#fff;border:1px solid var(--line);border-radius:24px 8px 24px 8px;padding:22px;margin-bottom:22px}
.aside h3{font-size:16px;margin-bottom:14px}
.tagcloud a{display:inline-block;background:var(--soft);color:var(--brand);font-size:13px;padding:4px 12px;border-radius:999px;margin:0 6px 8px 0}
.tagcloud a:hover{background:var(--brand);color:#fff}
.aside .cta-box{background:linear-gradient(140deg,var(--brand),#35652c);color:#fff;border:none}
.aside .cta-box h3{color:#fff}
.aside .cta-box p{font-size:13px;color:#dcead2;margin-bottom:14px}

/* article list */
.art-card{display:grid;grid-template-columns:320px 1fr;background:#fff;border:1px solid var(--line);border-radius:24px 8px 24px 8px;overflow:hidden;margin-bottom:24px;transition:transform .25s,box-shadow .25s}
.art-card:hover{transform:translateY(-4px);box-shadow:0 16px 32px rgba(34,48,31,.12)}
.art-card img{width:100%;height:100%;object-fit:cover;aspect-ratio:16/10}
.art-card .body{padding:24px 26px}
.art-card .meta{font-size:12px;color:#8a9784;margin-bottom:8px}
.art-card h2{font-size:19px;margin-bottom:10px}
.art-card p{font-size:14px;color:#5c6b57;margin-bottom:14px}
@media(max-width:720px){.art-card{grid-template-columns:1fr}}

/* article detail */
.article h2{font-size:22px;margin:36px 0 14px;padding-left:16px;border-left:5px solid var(--brand);border-radius:0 4px 4px 0}
.article h3{font-size:17px;margin:22px 0 10px;color:var(--brand)}
.article p{margin-bottom:14px;color:#3c4b38}
.article ul,.article ol{margin:0 0 14px 22px;color:#3c4b38}
.article li{margin-bottom:6px}
.article figure{margin:26px 0;border-radius:24px 8px 24px 8px;overflow:hidden}
.article figcaption{font-size:12px;color:#8a9784;text-align:center;padding:8px;background:var(--soft)}
.article .tip{background:var(--soft);border-radius:24px 8px 24px 8px;padding:18px 22px;margin:22px 0;font-size:14px;color:#43523f}
.rel-read{margin-top:44px;background:#fff;border:1px solid var(--line);border-radius:24px 8px 24px 8px;padding:24px}
.rel-read h3{margin-bottom:12px;font-size:17px}
.rel-read li{margin-bottom:8px}
.art-cta{margin-top:28px;background:linear-gradient(140deg,var(--soft),#f6f9ef);border:1px solid var(--line);border-radius:24px 8px 24px 8px;padding:26px;text-align:center}
.art-cta h3{font-size:19px;margin-bottom:8px}
.art-cta p{font-size:14px;color:#5c6b57;margin-bottom:16px}

/* =============================================================
   新增四栏目(2026-10):活力理疗 / 青藤理疗师 / 空间一览 / 顾客心声
   全部规则以页根 class 限定,不影响首页与文章页既有样式
   ============================================================= */

/* 导航当前页高亮(由 main.js 自动标注) */
#nav ul a.active:not(.btn){color:var(--brand);font-weight:700;position:relative}
#nav ul a.active:not(.btn)::after{content:"";position:absolute;left:2px;right:2px;bottom:-6px;height:3px;border-radius:3px;background:var(--accent)}
#drawer a.active{color:var(--brand);font-weight:700;background:var(--soft)}
/* 区块“查看全部”链接 */
.view-all{display:inline-block;margin-top:14px;color:var(--accent);font-weight:700;font-size:14px;letter-spacing:1px}
.view-all:hover{color:var(--brand)}

/* ============ pg-services 服务列表:行式列表 · 虚线分隔 · 无阴影 ============ */
.pg-services .svc-list{max-width:1080px;margin:0 auto;padding:14px 0 56px}
.pg-services .svc-row{display:grid;grid-template-columns:300px 1fr 226px;gap:32px;align-items:center;padding:34px 8px;border-bottom:2px dashed var(--line)}
.pg-services .svc-row:last-child{border-bottom:none}
.pg-services .svc-img{display:block;height:240px;border-radius:24px 8px 24px 8px;overflow:hidden;background:var(--soft)}
.pg-services .svc-img img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.pg-services .svc-row:hover .svc-img img{transform:scale(1.06)}
.pg-services .svc-meta h2{font-size:22px;margin-bottom:10px}
.pg-services .svc-meta h2 a{color:var(--ink)}
.pg-services .svc-meta h2 a:hover{color:var(--accent)}
.pg-services .svc-meta p{color:#5c6b57;font-size:15px;margin-bottom:14px}
.pg-services .svc-tags{display:flex;flex-wrap:wrap;gap:8px}
.pg-services .svc-tags span{font-size:12px;padding:3px 13px;border-radius:999px;letter-spacing:.5px}
.pg-services .svc-tags span:nth-child(odd){background:var(--soft);color:var(--brand)}
.pg-services .svc-tags span:nth-child(even){background:#fdeee0;color:var(--accent)}
.pg-services .svc-param{text-align:right}
.pg-services .svc-price{font-size:32px;font-weight:800;color:var(--brand);line-height:1.15;letter-spacing:1px}
.pg-services .svc-price small{display:block;font-size:12px;font-weight:400;color:#8a9784;letter-spacing:0}
.pg-services .svc-dur{font-size:14px;color:#43523f;margin:10px 0 12px}
.pg-services .svc-book{color:var(--accent);font-weight:700;font-size:15px;white-space:nowrap}
.pg-services .svc-book:hover{color:var(--brand)}
@media(max-width:960px){
  .pg-services .svc-row{grid-template-columns:1fr;gap:18px;text-align:left;padding:28px 4px}
  .pg-services .svc-img{height:210px}
  .pg-services .svc-param{text-align:left}
}

/* ============ pg-service 服务详情:左 sticky 参数栏 + 右长文 ============ */
.pg-service .svc-detail{display:grid;grid-template-columns:288px 1fr;gap:42px;align-items:start;padding:48px 20px 76px;max-width:1120px;margin:0 auto}
.pg-service .svc-aside{position:sticky;top:86px}
.pg-service .svc-aside-card{background:#fff;border:1px solid var(--line);border-radius:24px 8px 24px 8px;padding:24px 22px}
.pg-service .svc-aside-price{font-size:32px;font-weight:800;color:var(--brand);line-height:1.2}
.pg-service .svc-aside-price small{display:block;font-size:12px;font-weight:400;color:#8a9784;margin-top:2px}
.pg-service .svc-aside-card dl{margin:18px 0 16px;border-top:1px dashed var(--line)}
.pg-service .svc-aside-card dt{font-size:12px;color:#8a9784;margin-top:14px}
.pg-service .svc-aside-card dd{font-size:14px;color:#3c4b38;margin-top:2px}
.pg-service .svc-aside-note{font-size:12px;color:#8a9784;margin-top:10px;text-align:center;line-height:1.6}
.pg-service .svc-hero-img{border-radius:24px 8px 24px 8px;overflow:hidden;margin-bottom:10px}
.pg-service .svc-hero-img img{width:100%;aspect-ratio:16/7;object-fit:cover}
.pg-service .svc-article h2{font-size:21px;margin:32px 0 12px;padding-left:14px;border-left:5px solid var(--brand);border-radius:0 4px 4px 0}
.pg-service .svc-article h2:first-child{margin-top:8px}
.pg-service .svc-article p{color:#3c4b38;margin-bottom:12px;font-size:15.5px}
.pg-service .svc-flow{list-style:none;counter-reset:f;margin:6px 0}
.pg-service .svc-flow li{position:relative;padding:12px 0 12px 48px;border-bottom:1px dashed var(--line);counter-increment:f}
.pg-service .svc-flow li:last-child{border-bottom:none}
.pg-service .svc-flow li::before{content:counter(f);position:absolute;left:0;top:13px;width:32px;height:32px;background:var(--soft);color:var(--brand);border-radius:50% 50% 50% 8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px}
.pg-service .svc-flow b{display:block;font-size:15.5px;color:var(--ink)}
.pg-service .svc-flow span{font-size:13px;color:#6b7a64}
.pg-service .svc-notes{list-style:none;margin:6px 0}
.pg-service .svc-notes li{position:relative;padding:8px 0 8px 30px;color:#43523f;font-size:15px}
.pg-service .svc-notes li::before{content:"";position:absolute;left:3px;top:17px;width:12px;height:12px;border-radius:12px 2px 12px 2px;background:linear-gradient(135deg,var(--brand),#7dbb6d);transform:rotate(45deg)}
.pg-service .svc-near{margin-top:36px;background:#fff;border:1px solid var(--line);border-radius:24px 8px 24px 8px;padding:22px 24px}
.pg-service .svc-near h3{font-size:16px;margin-bottom:10px}
.pg-service .svc-near a{margin-right:18px;font-size:14px;font-weight:700}
@media(max-width:960px){
  .pg-service .svc-detail{grid-template-columns:1fr;gap:28px}
  .pg-service .svc-aside{position:static}
}

/* ============ pg-team 团队列表:三列名片墙 · 叶片徽章 · 无阴影 ============ */
.pg-team .t-wall{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding:14px 0 30px}
.pg-team .t-card{background:#fff;border:1px solid var(--line);border-radius:28px 10px 28px 10px;overflow:hidden;display:flex;flex-direction:column}
.pg-team .t-photo{position:relative;display:block;aspect-ratio:3/4;overflow:hidden;background:var(--soft)}
.pg-team .t-photo img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.pg-team .t-card:hover .t-photo img{transform:scale(1.05)}
.pg-team .t-badge{position:absolute;right:12px;bottom:12px;width:56px;height:56px;background:linear-gradient(135deg,var(--brand),#7dbb6d);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.25;border-radius:100% 0 100% 0;transform:rotate(-8deg);border:2px solid #fff;letter-spacing:1px}
.pg-team .t-info{padding:18px 20px 22px}
.pg-team .t-info h2{font-size:19px}
.pg-team .t-info h2 small{font-size:12px;color:#8a9784;font-weight:400;margin-left:4px}
.pg-team .t-info h2 a{color:var(--ink)}
.pg-team .t-info h2 a:hover{color:var(--accent)}
.pg-team .t-good{font-size:13.5px;color:#43523f;margin:8px 0 6px}
.pg-team .t-years{font-size:12px;color:var(--accent)}
.pg-team .t-note{text-align:center;font-size:12px;color:#8a9784;padding:10px 0 40px}
@media(max-width:860px){.pg-team .t-wall{grid-template-columns:1fr 1fr;gap:18px}}
@media(max-width:560px){.pg-team .t-wall{grid-template-columns:1fr}}

/* ============ pg-teacher 技师详情:左照40% + 右绿色节点时间线 ============ */
.pg-teacher .t-detail{display:grid;grid-template-columns:40% 1fr;gap:44px;align-items:start;max-width:1080px;margin:0 auto;padding:48px 20px 76px}
.pg-teacher .t-detail-photo{border-radius:28px 10px 28px 10px;overflow:hidden;border:5px solid #fff;position:sticky;top:86px;background:var(--soft)}
.pg-teacher .t-detail-photo img{width:100%;aspect-ratio:3/4;object-fit:cover}
.pg-teacher .t-tags{margin:14px 0 4px}
.pg-teacher .t-tags span{display:inline-block;background:var(--soft);color:var(--brand);font-size:12px;padding:3px 12px;border-radius:999px;margin:0 6px 6px 0}
.pg-teacher .t-tags span.hot{background:#fdeee0;color:var(--accent)}
.pg-teacher .t-lead{color:#43523f;font-size:15.5px;margin:10px 0 6px}
.pg-teacher h2{font-size:19px;margin:26px 0 4px}
.pg-teacher .t-timeline{list-style:none;margin:14px 0 8px;padding-left:30px;border-left:2px solid var(--line);position:relative}
.pg-teacher .t-timeline li{position:relative;padding:0 0 24px 16px}
.pg-teacher .t-timeline li::before{content:"";position:absolute;left:-38px;top:6px;width:14px;height:14px;border-radius:100% 0 100% 0;background:var(--brand);border:3px solid var(--paper);transform:rotate(45deg)}
.pg-teacher .t-timeline time{font-weight:700;color:var(--accent);font-size:14px;letter-spacing:1px}
.pg-teacher .t-timeline h3{font-size:15.5px;margin:2px 0 4px}
.pg-teacher .t-timeline p{font-size:14px;color:#5c6b57}
.pg-teacher .t-det-cta{margin-top:28px}
@media(max-width:860px){
  .pg-teacher .t-detail{grid-template-columns:1fr;gap:28px}
  .pg-teacher .t-detail-photo{position:static;max-width:340px}
}

/* ============ pg-gallery 瀑布流:columns:3 · 无边框 · hover藤蔓绿图说条 ============ */
.pg-gallery .masonry{columns:3;column-gap:18px;padding:14px 0 56px}
.pg-gallery .m-item{break-inside:avoid;margin-bottom:18px;position:relative;border-radius:24px 8px 24px 8px;overflow:hidden;display:block;background:var(--soft)}
.pg-gallery .m-item img{width:100%;transition:transform .45s ease}
.pg-gallery .m-item:hover img{transform:scale(1.05)}
.pg-gallery .m-cap{position:absolute;left:0;right:0;bottom:0;padding:30px 18px 12px;background:linear-gradient(transparent,rgba(76,138,63,.88));opacity:0;transform:translateY(10px);transition:opacity .3s ease,transform .3s ease}
.pg-gallery .m-item:hover .m-cap{opacity:1;transform:none}
.pg-gallery .m-cap a{color:#fff;font-weight:700;font-size:15px;letter-spacing:1px}
.pg-gallery .m-cap small{display:block;font-weight:400;font-size:12px;color:#dcead2;margin-top:2px}
@media(max-width:860px){.pg-gallery .masonry{columns:2}}
@media(max-width:560px){.pg-gallery .masonry{columns:1}}

/* ============ pg-scene 场景详情:60vh全宽首图 + 窄栏大字图说 + 纵列补充图 ============ */
.pg-scene .scene-crumb{max-width:1120px;margin:0 auto;padding:20px 20px 0}
.pg-scene .scene-hero{width:100%;height:60vh;min-height:340px;overflow:hidden;background:var(--soft)}
.pg-scene .scene-hero img{width:100%;height:100%;object-fit:cover}
.pg-scene .scene-narrow{max-width:720px;margin:0 auto;padding:50px 20px 30px}
.pg-scene .scene-narrow h1{font-size:clamp(26px,3.6vw,38px);text-align:center;line-height:1.4;margin-bottom:14px}
.pg-scene .scene-sub{text-align:center;color:#8a9784;font-size:14px;margin-bottom:32px}
.pg-scene .scene-narrow p{color:#3c4b38;margin-bottom:16px;font-size:16px}
.pg-scene .scene-narrow p:first-letter{color:var(--brand);font-weight:700}
.pg-scene .scene-more{display:flex;flex-direction:column;gap:22px;margin:38px 0 10px}
.pg-scene .scene-more figure{border-radius:24px 8px 24px 8px;overflow:hidden;background:#fff}
.pg-scene .scene-more img{width:100%;object-fit:cover}
.pg-scene .scene-more figcaption{font-size:12px;color:#8a9784;text-align:center;padding:9px;background:var(--soft)}
.pg-scene .scene-nav{max-width:720px;margin:0 auto;padding:8px 20px 72px;display:flex;justify-content:space-between;gap:16px;font-size:14px;font-weight:700}
.pg-scene .scene-nav .next{margin-left:auto}

/* ============ pg-reviews 评价:双列引号气泡墙 · 嫩绿底 · 橙引号 ============ */
.pg-reviews .r-wall{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:1000px;margin:0 auto;padding:14px 0 30px}
.pg-reviews .r-bubble{background:#eef4e6;border-radius:26px 10px 26px 10px;padding:30px 26px 22px;position:relative}
.pg-reviews .r-bubble::before{content:"\201C";position:absolute;top:2px;left:16px;font-size:58px;line-height:1;color:var(--accent);font-family:Georgia,serif;opacity:.85}
.pg-reviews .r-bubble p{padding-left:26px;color:#3c4b38;font-size:15px}
.pg-reviews .r-who{margin-top:14px;padding-left:26px;font-size:13px;color:#6b7a64}
.pg-reviews .r-who b{color:var(--brand)}
.pg-reviews .r-who .stars{color:var(--accent);letter-spacing:2px;margin-right:6px}
.pg-reviews .r-note{text-align:center;font-size:12px;color:#8a9784;padding:10px 0 48px}
@media(max-width:760px){.pg-reviews .r-wall{grid-template-columns:1fr}}

/* =============================================================
   首页差异化改版(2026-10):久坐自查 / 一日到店时间线 / 办公舒展三式
   仅新增类,全部为静态区块,不影响既有规则
   ============================================================= */

/* ---- selfcheck 久坐自查:勾选框小卡 · 三列两行 ---- */
.selfcheck .sc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:920px;margin:0 auto}
.selfcheck .sc-card{display:flex;align-items:flex-start;gap:14px;background:#fff;border:1px solid var(--line);border-radius:24px 8px 24px 8px;padding:20px 22px;transition:transform .25s,box-shadow .25s}
.selfcheck .sc-card:hover{transform:translateY(-4px);box-shadow:0 14px 28px rgba(34,48,31,.10)}
.selfcheck .sc-box{flex:none;width:22px;height:22px;margin-top:5px;border:2px solid var(--brand);border-radius:7px 2px 7px 2px;background:var(--soft);position:relative}
.selfcheck .sc-box::after{content:"";position:absolute;left:5px;top:1px;width:6px;height:11px;border-right:3px solid var(--brand);border-bottom:3px solid var(--brand);transform:rotate(42deg);opacity:.25;transition:opacity .25s}
.selfcheck .sc-card:hover .sc-box::after{opacity:1}
.selfcheck .sc-txt b{display:block;font-size:16px}
.selfcheck .sc-txt small{display:block;font-size:13px;color:#6b7a64;margin-top:2px}
.selfcheck .sc-note{max-width:920px;margin:18px auto 0;text-align:center;font-size:12px;color:#8a9784}
@media(max-width:860px){.selfcheck .sc-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.selfcheck .sc-grid{grid-template-columns:1fr}}

/* ---- dayline 一日到店时间线:叶片节点 · 虚线轨迹 ---- */
.dayline .dl-track{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:960px;margin:0 auto;position:relative}
.dayline .dl-track::before{content:"";position:absolute;left:12%;right:12%;top:9px;border-top:2px dashed var(--line)}
.dayline .dl-item{position:relative;text-align:center;padding-top:38px}
.dayline .dl-dot{position:absolute;top:0;left:50%;width:20px;height:20px;margin-left:-10px;background:linear-gradient(135deg,var(--brand),#7dbb6d);border-radius:100% 0 100% 0;transform:rotate(45deg);border:3px solid #fff;box-shadow:0 4px 10px rgba(34,48,31,.18)}
.dayline .dl-time{display:inline-block;background:var(--soft);color:var(--brand);font-size:12px;padding:3px 14px;border-radius:999px;letter-spacing:1px}
.dayline .dl-item h3{font-size:18px;margin:10px 0 8px}
.dayline .dl-item p{font-size:14px;color:#5c6b57;max-width:22em;margin:0 auto}
@media(max-width:860px){
  .dayline .dl-track{grid-template-columns:1fr;max-width:400px;gap:30px}
  .dayline .dl-track::before{left:9px;right:auto;top:8px;bottom:8px;border-top:none;border-left:2px dashed var(--line)}
  .dayline .dl-item{text-align:left;padding-top:0;padding-left:44px}
  .dayline .dl-dot{left:0;top:4px;margin-left:0}
}

/* ---- stretch 办公舒展三式:轻量横带 · CSS 造型小图标 ---- */
.stretch{padding:48px 0;background:linear-gradient(120deg,var(--soft),#f6f9ef)}
.stretch .st-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:880px;margin:0 auto}
.stretch .st-card{background:rgba(255,255,255,.72);border:1px dashed var(--line);border-radius:18px 6px 18px 6px;padding:24px 16px;text-align:center;transition:transform .25s}
.stretch .st-card:hover{transform:translateY(-3px)}
.stretch .st-ico{display:block;width:46px;height:46px;margin:0 auto 12px;position:relative}
.stretch .st-neck::before{content:"";position:absolute;left:16px;top:0;width:14px;height:14px;border-radius:50%;background:var(--brand)}
.stretch .st-neck::after{content:"";position:absolute;left:19px;top:15px;width:8px;height:27px;border-radius:5px;background:#7dbb6d;transform:rotate(18deg);transform-origin:top center}
.stretch .st-shoulder::before{content:"";position:absolute;inset:3px;border:3px dashed var(--brand);border-radius:50%}
.stretch .st-shoulder::after{content:"";position:absolute;left:31px;top:3px;width:11px;height:11px;border-radius:50%;background:var(--accent)}
.stretch .st-back::before{content:"";position:absolute;left:5px;right:5px;bottom:4px;height:28px;border:4px solid var(--brand);border-bottom:none;border-radius:26px 26px 0 0}
.stretch .st-back::after{content:"";position:absolute;left:1px;bottom:0;width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:35px 0 0 var(--accent)}
.stretch .st-card h3{font-size:17px;margin-bottom:6px}
.stretch .st-card p{font-size:13px;color:#5c6b57;margin:0}
.stretch .st-note{text-align:center;font-size:12px;color:#8a9784;margin:18px 0 0}
@media(max-width:860px){.stretch .st-row{grid-template-columns:1fr;max-width:420px}}
