/* ============================================================
   沐雨社区 单页官网样式表
   主题：雨雾水彩 · 湖绿（浅雾底、水彩晕染、细线编辑感）
   移动优先：375px 起步，640 / 900 / 1100 逐级扩展
   ============================================================ */

:root{
  --ink:#14313F;
  --ink-soft:#4C6773;
  --paper:#FFFFFF;
  --mist:#F1F7F8;
  --mist-2:#E6F1F3;
  --cream:#FBF7EF;
  --teal:#1F8F80;
  --teal-deep:#14615C;
  --teal-soft:#D8EFEA;
  --pink:#FF9AA2;
  --gold:#F2C14E;
  --line:rgba(20,49,63,.13);
  --radius:18px;
  --shadow:0 20px 44px rgba(20,49,63,.14);
  --font:"PingFang SC","Microsoft YaHei","Hiragino Sans GB","Noto Sans CJK SC",sans-serif;
  --serif:"Georgia","Times New Roman","Songti SC","Source Han Serif SC",serif;
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--font);color:var(--ink);background:var(--paper);line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
ul,ol{list-style:none}
button{font-family:inherit;cursor:pointer}

.container{width:100%;max-width:1120px;margin:0 auto;padding:0 20px}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

.skip{position:absolute;left:-999px;top:8px;z-index:200;background:var(--teal);color:#fff;padding:10px 16px;border-radius:10px;font-weight:700;text-decoration:none}
.skip:focus{left:8px}

section{scroll-margin-top:76px}

/* ============ 编辑感小标 ============ */
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--serif);font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:none;color:var(--teal-deep);margin-bottom:12px}
.eyebrow::before{content:"";width:26px;height:1px;background:var(--teal);display:inline-block}
.eyebrow-light{color:#CFF0E9}
.eyebrow-light::before{background:#CFF0E9}

.sec-head{max-width:620px;margin-bottom:36px}
.sec-title{font-size:clamp(25px,5.2vw,38px);font-weight:800;line-height:1.24;letter-spacing:.01em}
.sec-desc{color:var(--ink-soft);margin-top:10px;font-size:15px}

/* ============ 按钮 ============ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:16px;padding:13px 30px;border-radius:999px;text-decoration:none;border:0;white-space:nowrap;transition:transform .16s ease,background .16s ease,box-shadow .16s ease,color .16s ease}
.btn-primary{background:var(--teal);color:#fff;box-shadow:0 10px 22px rgba(31,143,128,.26)}
.btn-primary:hover{background:var(--teal-deep);transform:translateY(-2px)}
.btn-line{background:transparent;color:var(--ink);border:1.5px solid rgba(20,49,63,.28)}
.btn-line:hover{background:var(--mist-2);border-color:var(--teal)}
.btn-cream{background:#FFF6E6;color:var(--ink);box-shadow:0 12px 26px rgba(6,40,38,.28)}
.btn-cream:hover{background:#FFEFD3;transform:translateY(-2px)}
.btn-lg{padding:16px 42px;font-size:17px}

/* ============ 页头 ============ */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.93);border-bottom:1px solid var(--line)}
.site-header.is-scrolled{box-shadow:0 6px 20px rgba(20,49,63,.08)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.brand-logo{width:42px;height:42px;border-radius:12px;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line)}
.brand-logo img{width:100%;height:100%;object-fit:cover}
.brand-name{font-weight:800;font-size:19px;letter-spacing:.02em}

.nav-toggle{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;background:transparent;border:0;border-radius:10px}
.nav-toggle span{display:block;width:24px;height:2px;border-radius:2px;background:var(--ink);transition:transform .2s ease,opacity .2s ease}
body.nav-open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
body.nav-open .nav-toggle span:nth-child(2){opacity:0}
body.nav-open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.site-nav{display:none;position:absolute;top:68px;left:0;right:0;background:#fff;padding:12px 20px 22px;border-bottom:1px solid var(--line);flex-direction:column;gap:4px}
body.nav-open .site-nav{display:flex}
.site-nav a{color:var(--ink);text-decoration:none;font-weight:600;padding:11px 12px;border-radius:10px;font-size:16px}
.site-nav a:hover{background:var(--mist-2);color:var(--teal-deep)}
.nav-download{text-align:center;background:var(--teal);color:#fff !important;border-radius:999px;margin-top:8px;font-weight:800}
.nav-download:hover{background:var(--teal-deep)}

/* ============ Hero ============ */
.hero{position:relative;overflow:hidden;background:linear-gradient(180deg,#F7FCFD 0%,#EFF7F8 68%,#F7FBFC 100%)}
.hero::before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(102deg,rgba(20,49,63,.055) 0 1px,transparent 1px 14px);opacity:.7;pointer-events:none}
.blob{position:absolute;border-radius:50%;filter:blur(46px);opacity:.85;pointer-events:none}
.blob-a{width:340px;height:340px;right:-90px;top:-60px;background:radial-gradient(circle,rgba(160,214,232,.85),rgba(160,214,232,0) 70%)}
.blob-b{width:300px;height:300px;left:-110px;bottom:-80px;background:radial-gradient(circle,rgba(255,178,186,.72),rgba(255,178,186,0) 70%)}
.blob-c{width:220px;height:220px;left:38%;top:52%;background:radial-gradient(circle,rgba(242,193,78,.35),rgba(242,193,78,0) 72%)}

.hero-grid{position:relative;z-index:1;display:grid;gap:46px;padding-top:52px;padding-bottom:64px}
.hero-title{font-size:clamp(46px,11.5vw,82px);font-weight:800;line-height:1.06;letter-spacing:.02em;margin-bottom:16px}
.hero-sub{font-size:16px;color:var(--ink-soft);max-width:470px;margin-bottom:26px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:32px}
.hero-meta{display:flex;flex-wrap:wrap;align-items:stretch;gap:0;max-width:470px}
.meta-item{padding:0 18px;border-left:1px solid var(--line)}
.meta-item:first-child{padding-left:0;border-left:0}
.meta-item dt{font-family:var(--serif);font-size:19px;font-weight:700;color:var(--teal-deep);line-height:1.2}
.meta-item dd{font-size:12px;color:var(--ink-soft);margin-top:3px;letter-spacing:.04em}

.hero-visual{position:relative;display:flex;justify-content:center}
.phone{position:relative;border-radius:30px;padding:8px;background:#fff;border:1px solid rgba(20,49,63,.1);box-shadow:var(--shadow)}
.phone img{width:100%;height:auto;border-radius:23px}
.hero-visual .phone{width:min(282px,68vw)}
.hero-tag{position:absolute;z-index:2;top:6%;left:2%;background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 14px;font-size:12px;font-weight:700;color:var(--teal-deep);transform:rotate(-2.5deg);box-shadow:0 8px 18px rgba(20,49,63,.1);white-space:nowrap}

/* ============ 社区玩法 ============ */
.features{background:#fff;padding:74px 0}
.feat-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:14px}
.feat-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 22px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.feat-card:hover{transform:translateY(-3px);border-color:rgba(31,143,128,.34);box-shadow:0 14px 28px rgba(20,49,63,.08)}
.feat-icon{width:46px;height:46px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:var(--teal-soft);color:var(--teal-deep);margin-bottom:14px}
.feat-icon svg{width:24px;height:24px}
.feat-card h3{font-size:17px;font-weight:800;margin-bottom:6px}
.feat-card p{font-size:14px;color:var(--ink-soft)}

/* ============ 热门小组 ============ */
.groups{background:var(--mist);padding:74px 0}
.groups-grid{display:grid;gap:30px}
.groups-copy .sec-desc{margin-bottom:0}
.group-note{margin-top:22px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;max-width:360px}
.group-note-title{font-size:12px;font-weight:800;letter-spacing:.14em;color:var(--teal-deep);margin-bottom:8px}
.group-note ul{display:flex;flex-direction:column;gap:6px}
.group-note li{position:relative;padding-left:14px;font-size:13px;color:var(--ink-soft);line-height:1.6}
.group-note li::before{content:"";position:absolute;left:0;top:10px;width:6px;height:1px;background:var(--teal)}
.group-list{display:flex;flex-direction:column;gap:10px}
.group-row{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 16px;transition:transform .16s ease,box-shadow .16s ease}
.group-row:hover{transform:translateX(3px);box-shadow:0 8px 18px rgba(20,49,63,.07)}
.group-avatar{width:44px;height:44px;flex:0 0 44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:16px;letter-spacing:.02em}
.g1{background:linear-gradient(135deg,#3FB6C8,#1F8F80)}
.g2{background:linear-gradient(135deg,#E8B173,#C97F45)}
.g3{background:linear-gradient(135deg,#9AA9E8,#6C7BD0)}
.g4{background:linear-gradient(135deg,#F59AA6,#DC6B86)}
.g5{background:linear-gradient(135deg,#8FCBA0,#4F9D72)}
.group-main{flex:1;min-width:0}
.group-main h3{font-size:15px;font-weight:800;line-height:1.4}
.group-main p{font-size:12.5px;color:var(--ink-soft);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.group-meta{font-size:12px;color:var(--teal-deep);font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}

/* ============ 界面预览 ============ */
.preview{background:#fff;padding:74px 0}
.shot-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:28px;justify-items:center}
.shot-item{text-align:center}
.shot-item .phone{width:min(238px,66vw)}
.shot-item figcaption{font-size:13px;font-weight:700;color:var(--teal-deep);margin-top:14px;letter-spacing:.04em}

/* ============ 用户说 ============ */
.reviews{background:var(--cream);padding:74px 0}
.review-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:16px}
.review-card{background:#fff;border:1px solid rgba(20,49,63,.1);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;gap:13px}
.stars svg{display:block}
.review-card p{font-size:15px;flex:1}
.review-card footer{font-size:13px;font-weight:700;color:var(--ink-soft);letter-spacing:.02em}

/* ============ 常见问题 ============ */
.faq{background:#fff;padding:74px 0}
.faq-list{display:flex;flex-direction:column;gap:10px;max-width:760px}
.faq-item{background:var(--mist);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.faq-item summary{list-style:none;cursor:pointer;padding:17px 20px;font-weight:700;font-size:15.5px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";font-family:var(--serif);font-size:20px;color:var(--teal-deep);transition:transform .2s ease}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item p{padding:0 20px 18px;color:var(--ink-soft);font-size:14px;max-width:640px}

/* ============ 下载 CTA ============ */
.cta{position:relative;overflow:hidden;background:linear-gradient(140deg,#124E49,#14615C 46%,#1C8175);padding:82px 0;color:#fff;text-align:center}
.cta::before{content:"";position:absolute;width:360px;height:360px;right:-100px;top:-120px;border-radius:50%;background:radial-gradient(circle,rgba(207,240,233,.28),rgba(207,240,233,0) 70%)}
.cta::after{content:"";position:absolute;width:300px;height:300px;left:-90px;bottom:-120px;border-radius:50%;background:radial-gradient(circle,rgba(255,178,186,.22),rgba(255,178,186,0) 70%)}
.cta-inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:16px}
.cta-title{font-size:clamp(27px,6vw,44px);font-weight:800;line-height:1.2;letter-spacing:.02em}
.cta-desc{font-size:15.5px;color:rgba(255,255,255,.88);max-width:500px}
.cta-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin-top:6px}
.cta-chips li{border:1px solid rgba(255,255,255,.42);background:rgba(255,255,255,.1);padding:6px 15px;border-radius:999px;font-size:12.5px;font-weight:600;color:#F2FCFA}

/* ============ 页脚 ============ */
.site-footer{background:#0F2A33;color:rgba(255,255,255,.76);padding:34px 0}
.footer-inner{display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center}
.site-footer .brand{color:#fff}
.site-footer .brand-logo{width:36px;height:36px;border-radius:10px;border-color:rgba(255,255,255,.2)}
.site-footer .brand-name{font-size:15px}
.footer-slogan{font-size:12.5px;color:rgba(255,255,255,.58);letter-spacing:.06em}
.footer-copy{font-size:12px;color:rgba(255,255,255,.44)}

/* ============ 焦点可见 ============ */
:focus-visible{outline:2px solid var(--teal);outline-offset:3px}

/* ============ 动效偏好 ============ */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition:none !important;animation:none !important}
}

/* ============ 响应式：640px ============ */
@media (min-width:640px){
  .feat-grid{grid-template-columns:repeat(2,1fr)}
  .review-grid{grid-template-columns:repeat(3,1fr)}
  .shot-grid{grid-template-columns:repeat(3,1fr)}
  .group-row{padding:15px 18px}
}

/* ============ 响应式：900px ============ */
@media (min-width:900px){
  .nav-toggle{display:none}
  .site-nav{display:flex;position:static;background:transparent;border:0;padding:0;flex-direction:row;align-items:center;gap:4px}
  .site-nav a{padding:9px 13px;font-size:14.5px;border-radius:8px}
  .nav-download{margin-top:0;padding:10px 22px}
  .hero-grid{grid-template-columns:1.06fr .94fr;align-items:center;gap:30px;padding-top:76px;padding-bottom:92px}
  .feat-grid{grid-template-columns:repeat(3,1fr)}
  .groups-grid{grid-template-columns:.88fr 1.12fr;gap:48px;align-items:start}
  .groups-copy{position:sticky;top:96px}
  section{scroll-margin-top:84px}
}

/* ============ 响应式：1100px ============ */
@media (min-width:1100px){
  .container{padding:0 32px}
  .hero-sub{font-size:17.5px}
}
