:root { --ink:#17252c; --muted:#66767a; --line:#dce6e3; --paper:#f7faf8; --green:#16835f; --green-dark:#0d6248; --blue:#2367a6; --cream:#f7f2e8; --orange:#e18a3d; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
.section-wrap { width:min(1160px,calc(100% - 48px)); margin:0 auto; }
.site-header { height:76px; display:flex; align-items:center; justify-content:space-between; padding:0 max(24px,calc((100% - 1160px)/2)); background:#fff; border-bottom:1px solid var(--line); }
.brand { display:flex; align-items:center; gap:11px; }
.brand-mark { display:grid; place-items:center; width:38px; height:38px; background:var(--green); color:#fff; font-weight:900; font-size:20px; }
.brand strong,.brand small { display:block; }
.brand strong { font-size:17px; }
.brand small { margin-top:3px; color:var(--muted); font-size:11px; }
.site-nav { display:flex; align-items:center; gap:28px; color:#657479; font-size:14px; }
.site-nav a:hover,.text-link:hover { color:var(--green); }
.nav-admin { padding:10px 16px; border:1px solid var(--green); color:var(--green); }
.hero { display:grid; grid-template-columns:1fr .98fr; gap:72px; align-items:center; min-height:610px; padding-top:70px; padding-bottom:78px; }
.kicker { margin:0 0 18px; color:var(--green); font-size:13px; font-weight:800; letter-spacing:2px; }
h1,h2,h3,p { margin-top:0; }
h1 { margin-bottom:22px; font-size:64px; line-height:1.15; letter-spacing:0; }
h1 em,h2 em { color:var(--green); font-style:normal; }
.hero-text { max-width:510px; color:var(--muted); font-size:16px; line-height:1.9; }
.hero-actions { display:flex; gap:12px; margin-top:30px; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:0 22px; font-size:14px; font-weight:800; }
.button-primary { background:var(--green); color:#fff; }
.button-primary:hover { background:var(--green-dark); }
.button-light { border:1px solid var(--line); background:#fff; }
.hero-note { display:flex; align-items:center; gap:8px; margin-top:30px; color:#7a888b; font-size:12px; }
.live-dot { width:8px; height:8px; background:var(--orange); border-radius:50%; }
.hero-visual { position:relative; padding:0 22px 28px 0; }
.hero-image-frame { overflow:hidden; height:440px; background:#dbe9e5; }
.hero-image-frame img { width:100%; height:100%; object-fit:cover; }
.floating-note { position:absolute; display:flex; align-items:center; gap:9px; padding:13px 16px; background:#fff; box-shadow:0 14px 30px rgba(24,45,54,.12); font-size:12px; }
.floating-note strong,.floating-note span,.floating-note small { display:block; }
.floating-note span:not(.mini-avatar),.floating-note small { color:var(--muted); margin-top:4px; }
.note-top { top:28px; right:0; border-left:3px solid var(--orange); }
.note-bottom { bottom:0; left:12px; }
.mini-avatar { display:grid; place-items:center; width:30px; height:30px; background:var(--green); color:#fff; font-weight:900; }
.trust-strip { background:#17322c; color:#fff; }
.trust-grid { display:grid; grid-template-columns:repeat(4,1fr); padding:22px 0; }
.trust-grid div { padding:4px 25px; border-left:1px solid rgba(255,255,255,.22); }
.trust-grid div:first-child { border-left:0; padding-left:0; }
.trust-grid strong,.trust-grid span { display:block; }
.trust-grid strong { font-size:15px; }
.trust-grid span { margin-top:5px; color:#b6c9c2; font-size:12px; }
.content-section { padding:100px 0 110px; }
.section-heading { display:flex; align-items:end; justify-content:space-between; margin-bottom:40px; }
.section-heading h2,.recycle-layout h2,.shop-copy h2,.download-inner h2 { margin-bottom:0; font-size:40px; line-height:1.25; letter-spacing:0; }
.feature-layout { display:grid; grid-template-columns:1fr 1fr .8fr; gap:16px; }
.feature-main,.feature-small { padding:28px; }
.feature-main { min-height:260px; display:flex; flex-direction:column; justify-content:space-between; color:#fff; }
.feature-main h3 { margin:28px 0 10px; font-size:23px; }
.feature-main p,.feature-small p { margin-bottom:18px; line-height:1.7; font-size:14px; }
.feature-main a { font-size:13px; font-weight:800; }
.feature-number { font-size:13px; opacity:.7; }
.feature-green { background:var(--green); }
.feature-blue { background:var(--blue); }
.feature-stack { display:grid; gap:16px; }
.feature-small { display:flex; gap:15px; align-items:flex-start; min-height:122px; background:#fff; border:1px solid var(--line); }
.feature-small h3 { margin:1px 0 8px; font-size:17px; }
.feature-small p { margin:0; color:var(--muted); font-size:12px; }
.feature-icon { display:grid; place-items:center; flex:0 0 auto; width:34px; height:34px; background:var(--cream); color:var(--orange); font-weight:900; }
.recycle-band { background:var(--cream); }
.recycle-layout { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; padding:86px 0; }
.recycle-layout p:not(.kicker) { max-width:450px; margin:20px 0 28px; color:var(--muted); line-height:1.8; }
.button-dark { background:var(--ink); color:#fff; }
.quote-visual { position:relative; justify-self:end; width:min(480px,100%); }
.quote-visual img { width:100%; height:310px; object-fit:cover; }
.quote-sticker { position:absolute; right:-16px; bottom:-18px; padding:16px 20px; background:var(--orange); color:#fff; font-size:12px; line-height:1.6; }
.quote-sticker strong { font-size:16px; }
.shop-section { display:grid; grid-template-columns:1.05fr 1fr; gap:80px; align-items:center; padding:110px 0; }
.shop-image { background:#dbe9e5; }
.shop-image img { width:100%; height:340px; object-fit:cover; }
.shop-copy p:not(.kicker) { max-width:460px; margin:20px 0; color:var(--muted); line-height:1.85; }
.shop-copy ul { display:grid; gap:10px; margin:25px 0 30px; padding:0; list-style:none; color:#4b5d62; font-size:14px; }
.shop-copy li::before { content:"✓"; margin-right:10px; color:var(--green); font-weight:900; }
.text-link { color:var(--green); font-weight:900; font-size:14px; }
.download-section { background:var(--green); color:#fff; }
.download-inner { display:flex; align-items:center; gap:42px; padding:65px 0; }
.download-inner .kicker { color:#bde2d1; }
.download-inner h2 { font-size:34px; }
.download-inner p:not(.kicker) { margin:16px 0 0; color:#d4ece2; line-height:1.7; }
.qr-placeholder { display:grid; place-items:center; width:112px; height:112px; margin-left:auto; background:#fff; color:var(--ink); text-align:center; }
.qr-placeholder span,.qr-placeholder small { display:block; }
.qr-placeholder span { font-size:14px; font-weight:900; }
.qr-placeholder small { margin-top:4px; color:var(--muted); font-size:10px; }
.button-white { background:#fff; color:var(--green-dark); }
.site-footer { background:#11251f; color:#a9bdb5; font-size:12px; }
.footer-inner { display:flex; justify-content:space-between; gap:18px; padding:22px 0 14px; }
.footer-inner > div,.footer-links { display:flex; align-items:center; flex-wrap:wrap; gap:18px; }
.footer-links { justify-content:flex-end; }
.footer-inner a { color:#fff; }
.filing-bar { padding:0 0 20px; text-align:center; }
.filing-bar a { color:#d2e8de; text-decoration:underline; text-underline-offset:3px; }
.community-section { background:#edf6f1; }
.community-grid { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:center; padding:96px 0; }
.community-grid h2 { margin-bottom:20px; font-size:40px; line-height:1.25; }
.community-grid > div:first-child > p:not(.kicker) { max-width:500px; color:var(--muted); line-height:1.9; }
.community-points { display:grid; gap:14px; }
.community-points div { padding:22px 24px; background:#fff; border-left:4px solid var(--green); }
.community-points strong,.community-points span { display:block; }
.community-points strong { color:var(--ink); font-size:17px; }
.community-points span { margin-top:7px; color:var(--muted); font-size:13px; }
.legal-page { max-width:860px; padding:72px 0 100px; }
.legal-page h1 { margin-bottom:12px; font-size:48px; }
.legal-page h2 { margin:42px 0 14px; font-size:24px; }
.legal-page p { color:var(--muted); font-size:15px; line-height:2; }
.legal-page .legal-updated { color:#8a9792; font-size:13px; }
@media (max-width:820px) { .site-header { padding:0 18px; } .site-nav { gap:12px; font-size:12px; } .site-nav a:not(.nav-admin) { display:none; } .section-wrap { width:min(100% - 32px,560px); } .hero,.recycle-layout,.shop-section { grid-template-columns:1fr; gap:42px; } .hero { padding-top:48px; } h1 { font-size:52px; } .hero-image-frame { height:330px; } .trust-grid { grid-template-columns:repeat(2,1fr); gap:18px 0; } .trust-grid div:nth-child(3) { border-left:0; padding-left:0; } .feature-layout { grid-template-columns:1fr; } .feature-stack { grid-template-columns:1fr 1fr; } .section-heading { display:block; } .section-heading h2 { font-size:33px; } .shop-image img { height:280px; } .download-inner { flex-wrap:wrap; gap:25px; } .qr-placeholder { margin-left:0; } .footer-inner { flex-wrap:wrap; } }
@media (max-width:480px) { .feature-stack { grid-template-columns:1fr; } .hero-actions { flex-wrap:wrap; } }
* { letter-spacing:0; }
.hero { display:flex; position:relative; width:100%; min-height:540px; padding:64px max(24px,calc((100% - 1160px)/2)); background:url('../assets/generated/home-hero-market.jpg') center/cover no-repeat; isolation:isolate; }
.hero::before { content:""; position:absolute; inset:0; background:rgba(247,250,248,.86); z-index:-1; }
.hero-copy { max-width:660px; }
.hero-tagline { font-size:27px; font-weight:700; color:var(--green-dark); }
.contact-block { margin-left:auto; min-width:240px; }
.contact-block a { display:block; margin:14px 0; color:white; font-size:24px; font-weight:700; }
a:focus-visible { outline:3px solid #df922c; outline-offset:5px; }
.button,.nav-admin { border-radius:4px; }
.content-section,.shop-section { scroll-margin-top:20px; }
@media(max-width:820px) { .hero { min-height:490px; padding:48px 24px; } .hero h1 { font-size:42px; } .hero-tagline { font-size:22px; } .contact-block { margin-left:0; } .community-grid { grid-template-columns:1fr; gap:36px; padding:68px 0; } .community-grid h2 { font-size:33px; } .footer-inner > div,.footer-links { gap:12px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
