:root{--cream:#fff8ed;--paper:#fffdf8;--ink:#3b2a22;--muted:#715f55;--orange:#ed921f;--orange2:#f7b246;--peach:#f8d9c7;--coral:#e96a5a;--sage:#8fac94;--line:#ead6ba;--shadow:0 18px 50px rgba(80,48,24,.11)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:MiSans,"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}.shell{width:min(1240px,calc(100% - 48px));margin:auto}.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(234,214,186,.6);background:rgba(255,248,237,.92);backdrop-filter:blur(16px)}.header-inner{height:86px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:12px}.brand>span:last-child{display:flex;flex-direction:column;line-height:1}.brand strong{font-size:21px;letter-spacing:.04em}.brand small{margin-top:7px;color:var(--muted);font-size:11px;letter-spacing:.2em}.brand-mark{position:relative;display:grid;place-items:center;width:46px;height:46px;color:var(--orange)}.brand-mark i{position:absolute;width:43px;height:25px;border:2px solid currentColor;border-radius:50%;transform:rotate(-27deg)}.brand-mark i:after{content:"";position:absolute;right:0;top:1px;width:6px;height:6px;border-radius:50%;background:currentColor}.brand-mark b{position:relative;padding-bottom:14px;font-size:20px}.desktop-nav{display:flex;align-items:center;gap:clamp(20px,2.5vw,38px)}.desktop-nav a{position:relative;padding:34px 0 29px;font-size:15px;font-weight:700}.desktop-nav a:after{content:"";position:absolute;left:50%;right:50%;bottom:20px;height:2px;background:var(--orange);transition:.2s}.desktop-nav a:hover,.desktop-nav a.active{color:#d67a12}.desktop-nav a:hover:after,.desktop-nav a.active:after{left:20%;right:20%}.mobile-nav{display:none;position:relative}.mobile-nav summary{list-style:none;display:grid;gap:5px;padding:10px;cursor:pointer}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary span{width:22px;height:2px;background:var(--ink)}.mobile-nav nav{position:absolute;right:0;top:48px;width:210px;padding:12px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow)}.mobile-nav nav a{display:block;padding:11px 13px;border-radius:10px;font-weight:700}.mobile-nav nav a.active{color:#d67a12;background:#fff0db}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:54px;padding:0 27px;border-radius:13px;font-weight:800;transition:.18s}.button:hover{transform:translateY(-2px)}.button-primary{color:#fff;background:linear-gradient(135deg,var(--orange2),var(--orange));box-shadow:0 12px 26px rgba(237,146,31,.24)}.button-secondary{border:1px solid #ab8366;background:rgba(255,255,255,.45)}.button-secondary:hover{color:#d67a12;background:#fff1dc}.text-link{display:inline-flex;gap:12px;padding-bottom:5px;border-bottom:1px solid;font-weight:800}.eyebrow,.kicker{color:#d67a12;font-size:13px;font-weight:900;letter-spacing:.18em}.section{padding:105px 0}.section-heading{max-width:680px}.section-heading.center{text-align:center;margin:auto}.section-heading h2{font-size:clamp(36px,4vw,54px);line-height:1.22;letter-spacing:-.035em}.section-heading p:last-child{color:var(--muted);font-size:17px;line-height:1.8}.home-hero{position:relative;overflow:hidden;min-height:calc(100vh - 86px);padding:70px 0}.home-hero:before{content:"";position:absolute;left:-180px;bottom:-260px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(242,162,58,.18),transparent 68%)}.home-grid{position:relative;z-index:1;display:grid;grid-template-columns:.92fr 1.08fr;gap:42px;align-items:center;min-height:640px}.pill{width:max-content;padding:10px 18px;border:1px solid #efc88e;border-radius:999px;color:#8a581f;background:#fff2db;font-weight:700}.pill b{color:var(--orange)}.hero-copy h1{margin:25px 0 22px;font-size:clamp(54px,5.4vw,78px);line-height:1.14;letter-spacing:-.05em}.hero-copy h1 em{font-style:normal;position:relative}.hero-copy h1 em:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:12px;border-radius:50%;background:linear-gradient(2deg,transparent 38%,var(--orange2) 41% 59%,transparent 62%)}.hero-copy>p:not(.pill){max-width:540px;color:var(--muted);font-size:18px;line-height:1.85}.hero-actions{display:flex;gap:16px;margin:28px 0}.hero-tags{display:flex;flex-wrap:wrap;gap:10px}.hero-tags span{padding:10px 14px;border-radius:999px;background:rgba(248,217,199,.6);font-size:14px;font-weight:700}.hero-visual{position:relative;min-height:585px}.hero-photo{position:absolute;inset:20px 20px 12px 0;border-radius:48% 36% 45% 31%/33% 33% 41% 47%;background:url('../images/hero-companionship.png') center/cover;box-shadow:var(--shadow)}.float-card{position:absolute;z-index:2;display:grid;width:150px;padding:16px;border:1px solid #fff;border-radius:20px;background:rgba(255,255,255,.92);box-shadow:var(--shadow)}.float-card b{font-size:14px}.float-card small{margin-top:4px;color:var(--muted)}.float-one{top:120px;right:0}.float-two{right:15px;bottom:50px}.star{position:absolute;left:-8px;bottom:26px;color:#f7bd55;font-size:60px}.values{background:var(--paper)}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:48px}.soft-card{min-height:250px;padding:34px;border:1px solid #eedfc8;border-radius:28px;background:var(--cream);transition:.2s}.soft-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.soft-card>span{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;color:#d67a12;background:#fff;font-size:22px}.soft-card h3{margin:27px 0 12px;font-size:23px}.soft-card p{color:var(--muted);line-height:1.8}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}.project-card{min-height:420px;display:flex;flex-direction:column;padding:30px;border-radius:30px;transition:.2s}.project-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.project-card:nth-child(1){background:#ffe9ca}.project-card:nth-child(2){background:#e4eee4}.project-card:nth-child(3){background:#f9dcd5}.project-card .num{opacity:.45;font-weight:900;letter-spacing:.14em}.project-card .art{display:grid;place-items:center;height:125px;font-size:62px;color:rgba(139,75,17,.5)}.project-card h3{font-size:28px}.project-card p{color:var(--muted);line-height:1.75}.project-card .text-link{margin-top:auto;width:max-content}.story{background:var(--paper)}.split{display:grid;grid-template-columns:1fr 1fr;gap:76px;align-items:center}.story-photo{min-height:540px;border-radius:46% 28% 38% 31%/35% 34% 42% 38%;background:url('../images/hero-companionship.png') center/cover;box-shadow:var(--shadow)}.story-copy h2{font-size:clamp(38px,4vw,54px);line-height:1.22}.story-copy>p{color:var(--muted);font-size:17px;line-height:1.85}.quote{margin:28px 0;padding:22px 25px;border-left:3px solid var(--orange);background:var(--cream);font-weight:700;line-height:1.75}.action{padding:0 0 95px;background:var(--paper)}.action-inner{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center;padding:60px 68px;border-radius:36px;color:#fff;background:linear-gradient(130deg,#e78c20,#e36442)}.action-inner h2{margin:8px 0 14px;font-size:clamp(35px,4vw,51px)}.action-inner p{margin:0;max-width:700px;color:rgba(255,255,255,.84);line-height:1.75}.action .button{color:#d67a12;background:#fff}.page-hero{position:relative;overflow:hidden;padding:90px 0;background:linear-gradient(145deg,#fffaf1,#ffefd8)}.page-hero-grid{display:grid;grid-template-columns:1fr 280px;gap:70px;align-items:center;min-height:320px}.page-hero h1{margin:22px 0;font-size:clamp(50px,6vw,78px);line-height:1.13;letter-spacing:-.05em}.page-lead{max-width:760px;color:var(--muted);font-size:19px;line-height:1.85}.page-symbol{display:grid;place-items:center;width:240px;height:240px;border:1px solid var(--line);border-radius:46% 54% 43% 57%;color:var(--orange);background:rgba(255,255,255,.72);box-shadow:var(--shadow);font-size:82px}.prose p{color:var(--muted);font-size:17px;line-height:1.95}.note{padding:16px 18px;border-left:3px solid var(--orange);background:#fff0db;color:#8a654b!important;font-size:13px!important}.quote-card{min-height:360px;display:grid;align-content:center;padding:60px;border-radius:42% 28% 38% 32%/32% 38% 29% 42%;background:linear-gradient(140deg,#ffe5bd,#f6cfc0);box-shadow:var(--shadow);font-family:"Noto Serif SC","Songti SC",serif;font-size:27px;line-height:1.8}.duo{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:48px}.statement{min-height:320px;padding:42px;border-radius:30px}.statement:first-child{background:#ffe3b7}.statement:last-child{background:#dfece2}.statement h3{margin-top:70px;font-size:28px}.statement p{line-height:1.85}.list-lines{margin-top:40px;border-top:1px solid var(--line)}.list-lines article{display:grid;grid-template-columns:80px 1fr;gap:25px;padding:28px 10px;border-bottom:1px solid var(--line)}.list-lines b{color:var(--orange)}.list-lines h3{margin-bottom:7px}.list-lines p{margin:0;color:var(--muted);line-height:1.7}.detail-list{display:grid;gap:28px;margin-top:42px}.detail-card{display:grid;grid-template-columns:.72fr 1.28fr;overflow:hidden;min-height:400px;border-radius:32px}.detail-card:nth-child(1){background:#ffe8c5}.detail-card:nth-child(2){background:#e8e1f0}.detail-card:nth-child(3){background:#dfece2}.detail-art{display:grid;place-items:center;font-size:100px;background:rgba(255,255,255,.18)}.detail-copy{align-self:center;padding:48px}.detail-copy h2{font-size:42px}.detail-copy p{color:var(--muted);line-height:1.8}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.chips span{padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.6);font-size:13px;font-weight:700}.steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:45px;border:1px solid var(--line);border-radius:25px;overflow:hidden}.steps article{min-height:240px;padding:30px;border-right:1px solid var(--line);background:rgba(255,255,255,.4)}.steps article:last-child{border:0}.steps b{color:var(--orange)}.steps h3{margin-top:65px}.steps p{color:var(--muted);line-height:1.7}.activity-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:42px}.activity-card{min-height:330px;padding:34px;border-radius:30px;display:flex;flex-direction:column}.activity-card:nth-child(1){background:#8c5532;color:#fff}.activity-card:nth-child(2){background:#f9d6c8}.activity-card:nth-child(3){background:#dbe9df}.activity-card:nth-child(4){background:#ffe7c0}.activity-card .art{margin:auto;opacity:.55;font-size:82px}.activity-card h3{font-size:28px}.activity-card p{line-height:1.8;opacity:.78}.role-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:48px}.role-card{min-height:320px;display:flex;flex-direction:column;padding:28px;border:1px solid var(--line);border-radius:26px;background:var(--cream)}.role-card>span{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;color:#d67a12;background:#fff;font-size:22px}.role-card h3{margin:35px 0 12px}.role-card p{color:var(--muted);line-height:1.75}.role-card small{margin-top:auto;padding-top:17px;border-top:1px solid var(--line);color:#9a7252}.faq{margin-top:40px;border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{display:flex;justify-content:space-between;padding:24px 0;cursor:pointer;font-size:18px;font-weight:800}.faq details p{max-width:850px;color:var(--muted);line-height:1.8}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.contact-cards{display:grid;gap:12px;margin-top:34px}.contact-cards article{display:grid;grid-template-columns:52px 1fr;gap:15px;align-items:center;padding:17px;border:1px solid var(--line);border-radius:18px;background:var(--cream)}.contact-cards article>span{display:grid;place-items:center;width:50px;height:50px;border-radius:14px;color:#d67a12;background:#fff;font-size:21px}.contact-cards p{margin:0 0 5px;color:var(--muted);font-size:12px}.form-card{padding:44px;border:1px solid var(--line);border-radius:30px;background:var(--cream);box-shadow:var(--shadow)}.form-card h2{font-size:34px}.form-card form{display:grid;gap:17px}.form-card label{display:grid;gap:8px;font-size:13px;font-weight:800}.form-card input,.form-card select,.form-card textarea{width:100%;padding:14px;border:1px solid #dec7a8;border-radius:12px;background:#fff;font:inherit}.form-card button{border:0}.form-card small{color:var(--muted);line-height:1.6}.site-footer{padding:72px 0 24px;color:#f7eadd;background:#33251f}.footer-grid{display:grid;grid-template-columns:1.5fr .7fr 1fr;gap:75px;padding-bottom:54px}.brand-light strong{color:#fff}.brand-light small,.site-footer p{color:#cdb9aa}.footer-grid>div:first-child p{max-width:420px;margin-top:23px;line-height:1.8}.site-footer h3{color:#fff}.footer-grid>div:nth-child(2) a{display:block;margin:12px 0;color:#cdb9aa}.muted-small{font-size:13px}.accent-link{color:#ffc675;font-weight:800}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);color:#a99587;font-size:12px}
@media(max-width:980px){.desktop-nav{display:none}.mobile-nav{display:block}.home-grid,.split,.page-hero-grid,.contact-grid{grid-template-columns:1fr}.page-symbol{display:none}.card-grid,.project-grid,.duo{grid-template-columns:1fr 1fr}.role-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.steps article:nth-child(2){border-right:0}.detail-card{grid-template-columns:.7fr 1.3fr}.action-inner{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.shell{width:calc(100% - 30px)}.header-inner{height:72px}.brand strong{font-size:17px}.brand-mark{width:38px;height:38px}.home-hero{padding:40px 0}.home-grid{min-height:auto}.hero-copy h1{font-size:44px}.hero-actions{display:grid}.hero-visual{min-height:390px}.hero-photo{inset:8px}.float-card{width:130px;padding:11px}.section{padding:72px 0}.card-grid,.project-grid,.duo,.role-grid,.steps,.activity-grid{grid-template-columns:1fr}.detail-card{grid-template-columns:1fr}.detail-art{min-height:230px}.detail-copy{padding:30px 24px}.split{gap:45px}.story-photo{min-height:390px}.action-inner{padding:40px 27px}.page-hero{padding:62px 0}.page-hero h1{font-size:47px}.quote-card{min-height:320px;padding:40px;font-size:22px}.contact-grid{gap:45px}.form-card{padding:29px 21px}.footer-grid{grid-template-columns:1fr;gap:38px}.footer-bottom{flex-direction:column}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Official navigation logo */
.brand-logo-link{flex:0 0 auto}
.brand-logo{display:block;width:184px;height:62px;object-fit:contain;object-position:left center}
.footer-logo-link{padding:0;background:transparent}
.footer-logo{width:196px;height:66px}
@media(max-width:680px){.brand-logo{width:150px;height:54px}}

/* Real activity archive */
.story-photo-real{background-image:url('../images/events/warm-concert.jpg')}
.detail-photo{min-height:100%;background-position:center;background-size:cover}
.detail-photo-music{background-image:url('../images/events/warm-concert.jpg')}
.detail-photo-library{background-image:url('../images/events/library-role-v2.jpg');background-position:54% center}
.detail-photo-peach-lake{background-image:url('../images/events/peach-lake-study-v2.jpg');background-position:52% center}
.detail-photo-community{background-image:url('../images/events/moon-bay-inclusion.jpg');background-position:46% center}
.activity-grid-real{align-items:stretch}
.activity-card.activity-card-photo{padding:0;overflow:hidden;color:var(--ink);background:#fff!important;border:1px solid var(--line);box-shadow:0 16px 45px rgba(80,48,24,.08)}
.activity-card-photo img{display:block;width:100%;height:250px;object-fit:cover}
.activity-card-photo .activity-copy{display:flex;flex:1;flex-direction:column;padding:28px 30px}
.activity-card-photo .activity-copy h3{margin:14px 0 10px}
.activity-card-photo .activity-copy p{margin:0;color:var(--muted);opacity:1}
@media(max-width:680px){.activity-card-photo img{height:220px}.detail-photo{min-height:260px}}

/* Research-backed public sources */
.research-strip{background:linear-gradient(155deg,#fffdf8,#fff2df)}
.fact-grid,.source-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:42px}
.fact-grid article,.source-card{padding:30px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.74)}
.fact-grid b{display:block;margin-bottom:14px;color:#d67a12;font-size:19px}
.fact-grid p,.source-card p{margin:0;color:var(--muted);line-height:1.8}
.source-card{display:flex;min-height:310px;flex-direction:column;box-shadow:0 12px 34px rgba(80,48,24,.06)}
.source-card h3{margin:17px 0 12px;font-size:23px;line-height:1.45}
.source-meta{color:#b46b18;font-size:12px;font-weight:900;letter-spacing:.1em}
.source-link{width:max-content;margin-top:auto;padding-top:25px;border-bottom:1px solid;font-weight:900;color:#c96e09}
.campus-note{display:block;margin-top:15px;padding-top:13px;border-top:1px dashed var(--line);color:#8b7465;line-height:1.6}
@media(max-width:980px){.fact-grid,.source-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.fact-grid,.source-grid{grid-template-columns:1fr}.source-card{min-height:0}}

/* WeChat QR entry */
.footer-contact{min-width:250px}.footer-wechat{display:grid;grid-template-columns:112px 1fr;gap:18px;align-items:center;margin:16px 0 18px}.footer-wechat img{display:block;width:112px;height:112px;padding:7px;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:#3d2d25;object-fit:contain}.footer-wechat b{color:#fff;line-height:1.5}.footer-wechat p{margin:8px 0 0!important;line-height:1.6!important}
.wechat-section{background:var(--paper)}.wechat-panel{display:grid;grid-template-columns:1fr 360px;gap:70px;align-items:center;padding:56px 68px;border:1px solid #efc98e;border-radius:36px;color:var(--ink);background:radial-gradient(circle at 84% 18%,rgba(255,255,255,.7),transparent 30%),linear-gradient(135deg,#ffe7bd,#ffd394);box-shadow:0 18px 50px rgba(174,102,25,.15)}.wechat-copy h2{margin:14px 0 18px;font-size:clamp(36px,4vw,54px)}.wechat-copy>p:not(.kicker){max-width:600px;color:#715344;font-size:17px;line-height:1.8}.wechat-copy small{color:#a85c0a;font-weight:800}.wechat-qr-stage{justify-self:end;display:grid;justify-items:center;gap:13px}.wechat-qr-stage img{display:block;width:300px;height:300px;padding:14px;border:1px solid rgba(110,68,26,.14);border-radius:24px;background:rgba(255,250,240,.72);object-fit:contain;box-shadow:0 14px 34px rgba(125,73,20,.12)}.wechat-qr-stage span{color:#76513b;font-size:13px;font-weight:700;letter-spacing:.12em}
@media(max-width:980px){.wechat-panel{grid-template-columns:1fr 300px;gap:40px;padding:48px}.wechat-qr-stage img{width:270px;height:270px}}
@media(max-width:680px){.footer-wechat{grid-template-columns:96px 1fr}.footer-wechat img{width:96px;height:96px}.wechat-panel{grid-template-columns:1fr;padding:38px 24px}.wechat-qr-stage{justify-self:center}.wechat-qr-stage img{width:min(270px,76vw);height:min(270px,76vw)}}

/* Direction-aware glass navigation */
.site-header{will-change:transform;transform:translateY(0);transition:transform .34s cubic-bezier(.22,1,.36,1),background-color .25s ease,box-shadow .25s ease;border-bottom-color .25s ease;background:rgba(255,248,237,.78);-webkit-backdrop-filter:blur(18px) saturate(145%);backdrop-filter:blur(18px) saturate(145%)}
.site-header.header-scrolled{background:rgba(255,248,237,.68);border-bottom-color:rgba(234,214,186,.48);box-shadow:0 10px 30px rgba(80,48,24,.08)}
.site-header.header-hidden{transform:translateY(calc(-100% - 2px));box-shadow:none}
@media(prefers-reduced-motion:reduce){.site-header{transition:none}}

/* Fixed viewport anchor avoids sticky/transform repaint issues */
body{padding-top:86px}
.site-header{position:fixed;inset:0 0 auto 0;width:100%}
@media(max-width:680px){body{padding-top:72px}}

/* Contact card jump to WeChat QR */
.contact-wechat-link{display:grid;grid-template-columns:52px 1fr;gap:15px;align-items:center;padding:17px;border:1px solid var(--line);border-radius:18px;background:var(--cream);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background-color .18s ease}
.contact-wechat-link:hover{transform:translateY(-2px);border-color:#efb65f;background:#fff8e9;box-shadow:0 12px 26px rgba(168,92,10,.1)}
.contact-wechat-link:focus-visible{outline:3px solid rgba(237,146,31,.35);outline-offset:3px}
.contact-wechat-logo{display:grid;place-items:center;width:50px;height:50px;padding:8px;border-radius:14px;background:#fff}
.contact-wechat-logo img{display:block;width:100%;height:100%;object-fit:contain}
.contact-wechat-link p{margin:0 0 5px;color:var(--muted);font-size:12px}
.contact-wechat-link strong{display:block}
.contact-wechat-link small{display:block;margin-top:5px;color:#c96e09;font-weight:800}
#wechat-follow{scroll-margin-top:100px}
@media(max-width:680px){.contact-wechat-link{grid-template-columns:52px 1fr}.contact-wechat-logo{width:50px;height:50px}}

/* Staff WeChat and official account pair */
.contact-staff-mark{display:grid;place-items:center;width:50px;height:50px;border-radius:14px;color:#d67a12;background:#fff;font-size:18px;font-weight:900}
.contact-staff-mark img{display:block;width:38px;height:38px;object-fit:contain;border-radius:9px}
.contact-location-mark img{display:block;width:34px;height:34px;object-fit:contain;border-radius:8px}
.contact-cards article>.contact-phone-mark{color:#f3881c;font-family:"Segoe UI Symbol","Arial Unicode MS",sans-serif;font-size:22px;font-weight:700}

/* Shared Moon Bay companionship image */
.hero-photo{background-image:url('../images/events/moon-bay-companionship.jpg');background-position:52% center}
.story-photo:not(.story-photo-real){background-image:url('../images/events/moon-bay-companionship.jpg');background-position:52% center}
.wechat-panel{grid-template-columns:minmax(260px,.82fr) minmax(500px,1.18fr)}
.wechat-qr-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.wechat-qr-grid .wechat-qr-stage{justify-self:stretch;align-content:start;gap:10px;padding:18px;border:1px solid rgba(110,68,26,.13);border-radius:25px;background:rgba(255,250,240,.66);box-shadow:0 12px 28px rgba(125,73,20,.09);scroll-margin-top:110px;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.wechat-qr-grid .wechat-qr-stage.is-highlighted{transform:translateY(-3px);border-color:#de8c22;box-shadow:0 16px 36px rgba(168,92,10,.18)}
.wechat-qr-grid .wechat-qr-stage img{width:min(220px,100%);height:auto;aspect-ratio:1;padding:8px;border:0;border-radius:17px;background:rgba(255,255,255,.72);box-shadow:none}
.wechat-qr-grid .wechat-qr-stage strong{color:var(--ink);font-size:16px;text-align:center}
.wechat-qr-grid .wechat-qr-stage span{color:#76513b;font-size:12px;font-weight:700;letter-spacing:.04em;text-align:center}
#staff-wechat,#wechat-official{scroll-margin-top:110px}
@media(max-width:1100px){.wechat-panel{grid-template-columns:1fr}.wechat-qr-grid{width:100%;max-width:620px;margin:auto}}
@media(max-width:680px){.wechat-qr-grid{grid-template-columns:1fr;max-width:320px}.wechat-qr-grid .wechat-qr-stage img{width:min(240px,72vw)}}

/* Stronger focus feedback after an in-page QR jump */
.wechat-qr-grid .wechat-qr-stage{position:relative;isolation:isolate}
.wechat-qr-grid .wechat-qr-stage::before{content:"";position:absolute;z-index:-1;inset:-16px;border-radius:34px;background:radial-gradient(circle at center,rgba(242,146,31,.48),rgba(242,146,31,.18) 46%,transparent 72%);filter:blur(15px);opacity:0;pointer-events:none}
.wechat-qr-grid .wechat-qr-stage.is-highlighted{border-color:#e78814;box-shadow:0 18px 46px rgba(190,104,12,.28);will-change:transform;backface-visibility:hidden;transform:translate3d(0,0,0);-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision;animation:qr-card-float 6.2s cubic-bezier(.45,0,.55,1) infinite}
.wechat-qr-grid .wechat-qr-stage.is-highlighted::before{animation:qr-warm-glow 3.8s ease-in-out infinite}
.wechat-qr-grid .wechat-qr-stage.is-highlighted img{animation:none;will-change:auto;transform:none}
@keyframes qr-warm-glow{0%,100%{opacity:.42}50%{opacity:.9}}
@keyframes qr-card-float{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-8px,0)}}
@media(prefers-reduced-motion:reduce){.wechat-qr-grid .wechat-qr-stage.is-highlighted,.wechat-qr-grid .wechat-qr-stage.is-highlighted::before{animation:none}.wechat-qr-grid .wechat-qr-stage.is-highlighted::before{opacity:.72}}
.wechat-qr-grid a.wechat-qr-stage{cursor:pointer}
.wechat-qr-grid a.wechat-qr-stage:focus-visible{outline:3px solid rgba(222,140,34,.48);outline-offset:4px}
.org-section{background:var(--paper)}
.member-levels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:34px}
.member-levels article{padding:34px;border:1px solid var(--line);border-radius:30px;background:linear-gradient(145deg,#fffaf1,#fff3dd)}
.member-levels span{display:inline-block;margin-bottom:18px;padding:7px 13px;border-radius:999px;background:var(--orange);color:#fff;font-size:13px;font-weight:800;letter-spacing:.08em}
.member-levels h3{margin:0 0 13px;font-size:30px;color:var(--brown)}
.member-levels p,.department-grid p{margin:0;color:var(--muted);line-height:1.9}
.department-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:20px}
.department-grid article{padding:26px;border-radius:24px;background:#fff;border:1px solid rgba(242,162,58,.24)}
.department-grid b{display:block;margin-bottom:9px;color:var(--brown);font-size:20px}
.growth-section{background:linear-gradient(180deg,#fffaf1 0%,#fff4df 100%)}
.growth-line{display:grid;grid-template-columns:minmax(125px,1fr) auto minmax(125px,1fr) auto minmax(125px,1fr) auto minmax(125px,1fr);align-items:center;gap:14px;margin-top:34px}
.growth-line span{display:flex;align-items:center;justify-content:center;min-height:84px;padding:18px;text-align:center;border-radius:24px;background:#fff;border:1px solid var(--line);color:var(--brown);font-weight:800;box-shadow:0 12px 30px rgba(80,51,30,.06)}
.growth-line i{font-style:normal;color:var(--orange);font-size:28px;font-weight:800}
.growth-note,.standards-note{margin:24px 0 0;padding:18px 22px;border-left:4px solid var(--orange);background:rgba(255,255,255,.66);color:var(--muted);line-height:1.8}
.volunteer-standards{background:var(--paper)}
.promise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:34px}
.promise-grid article{padding:28px;border-radius:25px;background:#fff;border:1px solid rgba(242,162,58,.26)}
.promise-grid b{display:block;margin-bottom:10px;color:var(--brown);font-size:20px}
.promise-grid p{margin:0;color:var(--muted);line-height:1.85}
@media(max-width:980px){.department-grid,.promise-grid{grid-template-columns:1fr 1fr}.growth-line{grid-template-columns:1fr}.growth-line i{transform:rotate(90deg);text-align:center;line-height:1}}
@media(max-width:680px){.member-levels,.department-grid,.promise-grid{grid-template-columns:1fr}.member-levels article{padding:26px}.growth-line span{min-height:68px}.member-levels h3{font-size:26px}}
.role-card-primary{grid-column:auto;border-color:rgba(242,162,58,.72);background:linear-gradient(145deg,#fff2d8,#ffe3ae);box-shadow:0 18px 44px rgba(184,108,31,.14)}
.role-card-primary .text-link{margin-top:22px;color:#c76b08}
.process-cta{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;margin-top:28px;padding:26px 30px;border-radius:24px;background:#fff0d8;border:1px solid rgba(242,162,58,.35)}
.process-cta p{margin:0;color:var(--muted);line-height:1.75}.process-cta b{color:var(--brown);font-size:20px}
@media(max-width:980px){.process-cta{grid-template-columns:1fr}}
@media(max-width:680px){.role-card-primary{grid-column:auto}.process-cta{padding:23px}.process-cta .button{width:100%;text-align:center}}
.role-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;align-items:stretch;gap:22px}
.role-card{position:relative;height:100%;min-height:370px;padding:32px}
.role-card h3{margin-top:28px;font-size:26px}
.role-card p strong,.member-levels p strong,.growth-note strong{color:#9f5000}
.role-badge{position:absolute;top:34px;right:32px;padding:7px 12px;border-radius:999px;background:#f2eadf;color:#7b604c;font-size:12px;font-style:normal;font-weight:800;letter-spacing:.08em}
.role-badge-open{background:#d77a0c;color:#fff}
.role-card-core{border-style:dashed;border-color:#d9b98d}
@media(max-width:680px){.role-grid{grid-template-columns:1fr;grid-auto-rows:auto}.role-card{min-height:340px;padding:27px}.role-badge{top:29px;right:27px}}
.faq summary span{display:inline-grid;place-items:center;min-width:1.2em;font-size:0;line-height:1}
.faq summary span::before{content:"＋";font-size:22px;font-weight:700}
.faq details[open] summary span::before{content:"−"}
.required-mark{margin-left:6px;color:#c96800;font-size:11px;font-weight:800}
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.privacy-notice{padding:16px 18px;border:1px solid rgba(221,151,66,.35);border-radius:15px;background:#fff7e9;color:#795c47;font-size:12px;line-height:1.75}
.privacy-notice strong{display:block;margin-bottom:5px;color:var(--ink);font-size:13px}.privacy-notice p{margin:0}
.form-card label.form-consent{display:flex;grid-template-columns:none;gap:11px;align-items:flex-start;font-weight:600;line-height:1.6;cursor:pointer}
.form-card .form-consent input{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0;accent-color:var(--orange)}
.form-card .form-consent span{color:#765f4e;font-size:13px}
.form-card button[disabled]{cursor:wait;opacity:.68;transform:none}
.form-status{display:none;margin:0;padding:13px 15px;border-radius:12px;font-size:13px;line-height:1.6}
.form-status[data-state="success"]{display:block;color:#376139;background:#e7f2e5;border:1px solid #bad5b7}
.form-status[data-state="error"]{display:block;color:#9b3f28;background:#fff0e8;border:1px solid #edc0b1}
.footer-beian-link{color:#cdb9aa;text-decoration:underline;text-decoration-color:rgba(205,185,170,.45);text-underline-offset:3px;transition:color .18s ease,text-decoration-color .18s ease}
.footer-beian-link:hover{color:#ffc675;text-decoration-color:currentColor}
.footer-beian-link:focus-visible{outline:3px solid rgba(255,198,117,.38);outline-offset:4px;border-radius:3px;color:#ffd79f}
