.header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:1rem 1.5rem;background:transparent;transition:background .3s,box-shadow .3s}.header.scrolled{background:#0d1117eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--color-border)}.header-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center}.logo-image{height:40px;width:auto;object-fit:contain}.nav{display:flex;align-items:center;gap:2rem}.nav-link{font-size:.95rem;font-weight:500;color:var(--color-text-muted);transition:color .2s}.nav-link:hover{color:var(--color-accent)}.menu-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:28px;height:28px;background:none;border:none;cursor:pointer;padding:0}.menu-toggle span{display:block;width:100%;height:2px;background:var(--color-text);border-radius:1px;transition:transform .3s,opacity .3s}.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media (max-width: 768px){.menu-toggle{display:flex}.nav{position:fixed;top:0;right:0;width:min(320px,95vw);height:100vh;flex-direction:column;justify-content:center;gap:2rem;background:var(--color-surface);border-left:1px solid var(--color-border);transform:translate(100%);transition:transform .3s;padding:2rem 0}.nav.open{transform:translate(0)}.nav-link{font-size:1.2rem;padding:1rem 2rem;text-align:center;transition:all .2s ease;border-radius:8px;margin:0 1rem}.nav-link:hover{background:var(--color-accent);color:#fff;transform:translate(-4px)}.nav-link:active{transform:translate(-2px) scale(.98)}}.footer{background:var(--color-bg);border-top:1px solid var(--color-border);padding:3rem 1.5rem 2rem}.footer-inner{max-width:1200px;margin:0 auto;text-align:center}.footer-brand{margin-bottom:1.5rem}.footer-logo{font-size:1.1rem;font-weight:700;color:var(--color-accent)}.footer-tagline{font-size:.9rem;color:var(--color-text-muted);margin-top:.25rem}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;margin-bottom:2rem}.footer-links a{font-size:.9rem;color:var(--color-text-muted);transition:color .2s}.footer-links a:hover{color:var(--color-accent)}.footer-bottom{padding-top:1.5rem;border-top:1px solid var(--color-border)}.footer-bottom p{font-size:.85rem;color:var(--color-text-muted)}.footer-beian{margin-top:.75rem;display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap}.footer-beian a{font-size:.8rem;color:var(--color-text-muted);text-decoration:none;transition:color .2s;display:flex;align-items:center;gap:.3rem}.footer-beian a:hover{color:var(--color-accent)}.beian-divider{color:var(--color-text-muted);font-size:.8rem}.police-badge-icon{width:16px;height:16px;object-fit:contain}.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;position:relative;padding:6rem 1.5rem 4rem;overflow:hidden}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.hero-gradient{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(68,176,53,.15),transparent),radial-gradient(ellipse 60% 40% at 80% 60%,rgba(120,113,108,.08),transparent)}.hero-pattern{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:60px 60px}.hero-content{position:relative;z-index:1;max-width:720px}.hero-tag{font-size:.9rem;color:var(--color-accent);text-transform:uppercase;letter-spacing:.15em;margin-bottom:1rem;font-weight:500}.hero-title{font-size:clamp(2.25rem,6vw,3.5rem);font-weight:700;line-height:1.2;margin-bottom:1rem;color:var(--color-text)}.hero-title-accent{color:var(--color-accent)}.hero-desc{font-size:1.1rem;color:var(--color-text-muted);max-width:520px;margin:0 auto 2rem;line-height:1.7}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.875rem 1.75rem;font-size:1rem;font-weight:600;border-radius:8px;transition:background .2s,color .2s,border-color .2s;cursor:pointer;border:2px solid transparent}.btn-primary{background:var(--color-accent);color:#0d1117}.btn-primary:hover{background:var(--color-accent-light)}.btn-outline{background:transparent;color:var(--color-text);border-color:var(--color-border)}.btn-outline:hover{border-color:var(--color-accent);color:var(--color-accent)}.hero-scroll{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;color:var(--color-text-muted);font-size:.8rem}.hero-scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,var(--color-accent),transparent);border-radius:1px;animation:scrollPulse 2s ease-in-out infinite}.hero-scroll-text{letter-spacing:.1em}@keyframes scrollPulse{0%,to{opacity:.4;transform:scaleY(.8)}50%{opacity:1;transform:scaleY(1)}}.about{padding-top:5rem;padding-bottom:5rem}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;max-width:1100px;margin:0 auto}.section-tag{display:inline-block;font-size:.85rem;color:var(--color-accent);text-transform:uppercase;letter-spacing:.12em;margin-bottom:.75rem;font-weight:600}.section-title{font-size:clamp(1.75rem,3.5vw,2.25rem);font-weight:700;margin-bottom:1.25rem;color:var(--color-text);line-height:1.3}.about-lead{color:var(--color-text-muted);margin-bottom:1.5rem;line-height:1.75}.about-features{list-style:none}.about-features li{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;color:var(--color-text);font-size:.95rem}.about-feature-icon{color:var(--color-accent);font-size:.6rem}.about-visual{display:flex;justify-content:center;align-items:center}.about-card{width:100%;max-width:320px;aspect-ratio:4/3;background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.about-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(68,176,53,.08) 0%,transparent 50%);pointer-events:none}.about-card-inner{text-align:center;position:relative;z-index:1}.about-stat{display:block;font-size:3rem;font-weight:700;color:var(--color-accent);line-height:1}.about-stat-label{font-size:1.25rem;color:var(--color-text-muted);font-weight:500}@media (max-width: 768px){.about-grid{grid-template-columns:1fr;gap:2.5rem}.about-visual{order:-1}.about-card{max-width:280px}}.products-wrapper{background:var(--color-surface);width:100%}.products{max-width:1200px;margin:0 auto;padding:5rem 1.5rem}@media (max-width: 768px){.products{padding:3rem 1rem}}.products-header{text-align:center;max-width:600px;margin:0 auto 3rem}.products-view-all{display:inline-block;margin-top:1rem;font-size:.95rem;font-weight:500;color:var(--color-accent);transition:color .2s}.products-view-all:hover{color:var(--color-accent-light)}.product-card{text-decoration:none;color:inherit}.product-cat{display:block;font-size:.75rem;color:var(--color-accent);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.35rem}.section-desc{color:var(--color-text-muted);font-size:1rem;line-height:1.7;margin-top:.5rem}.products-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;max-width:1100px;margin:0 auto}.products-grid.single-category{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));max-width:900px;margin:0 auto}.product-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;padding:1.75rem;transition:border-color .2s,transform .2s;height:100%;display:flex;flex-direction:column}.products-grid.single-category .product-card{padding:1.5rem}.product-card:hover{border-color:var(--color-accent);transform:translateY(-2px)}.product-image{width:100%;height:140px;margin-bottom:1rem;border-radius:8px;overflow:hidden;background:var(--color-bg);display:flex;align-items:center;justify-content:center}.product-img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.product-card:hover .product-img{transform:scale(1.05)}.product-placeholder{font-size:2.5rem;color:var(--color-text-muted);opacity:.5}.products-grid.single-category .product-image{height:120px;margin-bottom:.75rem}.product-title{font-size:1.1rem;font-weight:600;margin-bottom:.5rem;color:var(--color-text)}.products-grid.single-category .product-title{font-size:1rem;margin-bottom:.4rem}.product-desc{font-size:.9rem;color:var(--color-text-muted);line-height:1.6;flex-grow:1}.products-grid.single-category .product-desc{font-size:.85rem}@media (max-width: 768px){.products-grid{grid-template-columns:1fr;gap:1rem}.products-grid.single-category{grid-template-columns:1fr;max-width:100%}.product-image{height:180px}.products-grid.single-category .product-image{height:160px}}@media (min-width: 769px) and (max-width: 1024px){.products-grid:not(.single-category){grid-template-columns:repeat(2,1fr)}.products-grid.single-category{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}.climbing-header{text-align:center;max-width:600px;margin:0 auto 3rem}.climbing-list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:0}.climbing-item{display:grid;grid-template-columns:auto 1fr;gap:1.5rem;align-items:start;padding:1.75rem 0;border-bottom:1px solid var(--color-border)}.climbing-item:last-child{border-bottom:none}.climbing-num{font-size:1.5rem;font-weight:700;color:var(--color-accent);opacity:.9;line-height:1}.climbing-item-title{font-size:1.1rem;font-weight:600;margin-bottom:.35rem;color:var(--color-text)}.climbing-item-text{font-size:.95rem;color:var(--color-text-muted);line-height:1.6}@media (max-width: 768px){.climbing-item{grid-template-columns:1fr;gap:.5rem;padding:1.25rem 0}.climbing-num{font-size:1.25rem}}.contact-wrapper{background:var(--color-surface);width:100%}.contact{max-width:1200px;margin:0 auto;padding:5rem 1.5rem}@media (max-width: 768px){.contact{padding:3rem 1rem}}.contact-wrap{display:grid;grid-template-columns:1fr 1fr;gap:3rem;max-width:1000px;margin:0 auto;align-items:start}.contact-desc{color:var(--color-text-muted);margin-top:.5rem;margin-bottom:1.5rem;line-height:1.7}.contact-list{list-style:none}.contact-list li{margin-bottom:1rem;display:flex;flex-direction:column;gap:.25rem}.contact-label{font-size:.85rem;color:var(--color-text-muted)}.contact-link{color:var(--color-accent);font-weight:500}.contact-link:hover{text-decoration:underline}.contact-form-wrap{background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;padding:2rem}.contact-form{display:flex;flex-direction:column;gap:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-input,.form-textarea{width:100%;padding:.75rem 1rem;font-size:1rem;font-family:inherit;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;transition:border-color .2s}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-text-muted)}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--color-accent)}.form-textarea{resize:vertical;min-height:100px}.form-success{font-size:.9rem;color:var(--color-accent)}.form-error{font-size:.9rem;color:#f87171}.btn-block{width:100%}@media (max-width: 768px){.contact-wrap,.form-row{grid-template-columns:1fr}}.product-list-page{max-width:1200px;margin:0 auto;padding:6rem 1.5rem 5rem}.product-list-loading,.product-list-error,.product-list-empty{text-align:center;padding:4rem 1rem;color:var(--color-text-muted)}.product-list-error p{color:var(--color-accent)}.product-list-header{text-align:center;margin-bottom:3rem}.product-list-header h1{font-size:2rem;font-weight:700;margin-bottom:.5rem;color:var(--color-text)}.product-list-desc{color:var(--color-text-muted);margin-bottom:2rem;max-width:560px;margin-left:auto;margin-right:auto;line-height:1.7}.product-list-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.filter-btn{padding:.5rem 1rem;font-size:.9rem;font-weight:500;font-family:inherit;color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;transition:color .2s,border-color .2s,background .2s}.filter-btn:hover{color:var(--color-text);border-color:var(--color-text-muted)}.filter-btn.active{color:var(--color-accent);border-color:var(--color-accent);background:#44b0351a}.product-list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.product-list-card{display:block;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:1.75rem;text-decoration:none;color:inherit;transition:border-color .2s,transform .2s,box-shadow .2s}.product-list-card:hover{border-color:var(--color-accent);transform:translateY(-2px);box-shadow:0 8px 24px #0000004d}.product-list-card-image{width:100%;height:160px;margin-bottom:.75rem;border-radius:8px;overflow:hidden;background:var(--color-bg);display:flex;align-items:center;justify-content:center}.product-list-card-img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.product-list-card:hover .product-list-card-img{transform:scale(1.05)}.product-list-card-placeholder{font-size:3rem;color:var(--color-text-muted);opacity:.5}.product-list-card-cat{display:inline-block;font-size:.75rem;color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.5rem}.product-list-card-title{font-size:1.15rem;font-weight:600;margin-bottom:.5rem;color:var(--color-text)}.product-list-card-desc{font-size:.9rem;color:var(--color-text-muted);line-height:1.6;margin-bottom:1rem}.product-list-card-link{font-size:.9rem;font-weight:500;color:var(--color-accent)}@media (max-width: 768px){.product-list-page{padding:5rem 1rem 4rem}.product-list-grid{grid-template-columns:1fr}.product-list-card-image{height:200px}}.product-detail-page{max-width:800px;margin:0 auto;padding:6rem 1.5rem 5rem}.product-detail-loading{text-align:center;padding:4rem 1rem;color:var(--color-text-muted)}.product-detail-back{display:inline-block;font-size:.9rem;color:var(--color-text-muted);margin-bottom:2rem;transition:color .2s}.product-detail-back:hover{color:var(--color-accent)}.product-detail-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;padding:2.5rem}.product-detail-hero{margin-bottom:2rem}.product-hero-image{width:100%;height:400px;border-radius:16px;overflow:hidden;background:var(--color-bg);display:flex;align-items:center;justify-content:center}.product-hero-img{width:100%;height:100%;object-fit:cover}.product-hero-placeholder{font-size:4rem;color:var(--color-text-muted);opacity:.5}.product-detail-info{margin-bottom:2rem}.product-detail-header{display:flex;align-items:flex-start;gap:1.5rem;margin-bottom:1.25rem}.product-detail-image{width:80px;height:80px;border-radius:12px;overflow:hidden;background:var(--color-bg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.product-detail-img{width:100%;height:100%;object-fit:cover}.product-detail-placeholder{font-size:2.5rem;color:var(--color-text-muted);opacity:.5}.product-detail-cat{display:inline-block;font-size:.8rem;color:var(--color-accent);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.35rem}.product-detail-title{font-size:1.75rem;font-weight:700;color:var(--color-text)}.product-detail-lead{font-size:1.05rem;color:var(--color-text-muted);line-height:1.7;margin-bottom:2rem}.product-rich-content{margin-bottom:2rem}.product-rich-content h3{font-size:1rem;font-weight:600;color:var(--color-text);margin-bottom:1rem}.product-rich-content p{color:var(--color-text-muted);line-height:1.75}.product-gallery{margin-bottom:2rem}.product-gallery h3{font-size:1.1rem;font-weight:600;color:var(--color-text);margin-bottom:1rem}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.gallery-item{border-radius:8px;overflow:hidden;background:var(--color-bg)}.gallery-image{width:100%;height:180px;object-fit:cover;transition:transform .3s ease}.gallery-item:hover .gallery-image{transform:scale(1.05)}.gallery-caption{padding:.75rem;font-size:.9rem;color:var(--color-text-muted);text-align:center;background:var(--color-surface)}.rich-content-wrapper{color:var(--color-text-muted);line-height:1.75}.rich-content-wrapper h1,.rich-content-wrapper h2,.rich-content-wrapper h3,.rich-content-wrapper h4{color:var(--color-text);margin:1.5rem 0 1rem;font-weight:600}.rich-content-wrapper h1{font-size:1.5rem}.rich-content-wrapper h2{font-size:1.3rem}.rich-content-wrapper h3{font-size:1.1rem}.rich-content-wrapper h4{font-size:1rem}.rich-content-wrapper p{margin-bottom:1rem}.rich-content-wrapper ul,.rich-content-wrapper ol{margin:1rem 0;padding-left:1.5rem}.rich-content-wrapper li{margin-bottom:.5rem}.rich-content-wrapper strong{font-weight:600;color:var(--color-text)}.rich-content-wrapper em{font-style:italic}.rich-content-wrapper a{color:var(--color-accent);text-decoration:none}.rich-content-wrapper a:hover{text-decoration:underline}.rich-content-wrapper img{max-width:100%;height:auto;border-radius:8px;margin:1rem 0}.rich-content-wrapper blockquote{border-left:4px solid var(--color-accent);padding-left:1rem;margin:1rem 0;color:var(--color-text-muted);font-style:italic}.product-detail-specs{margin-bottom:2rem}.product-detail-specs h3{font-size:1rem;font-weight:600;color:var(--color-text);margin-bottom:.75rem}.product-detail-spec-list{display:grid;gap:.5rem}.product-detail-spec-item{display:grid;grid-template-columns:100px 1fr;gap:1rem;padding:.6rem 0;border-bottom:1px solid var(--color-border)}.product-detail-spec-item:last-child{border-bottom:none}.product-detail-spec-item dt{font-size:.9rem;color:var(--color-text-muted)}.product-detail-spec-item dd{font-size:.95rem;color:var(--color-text)}.product-detail-actions{padding-top:1rem}.product-detail-error{text-align:center;padding:4rem 2rem}.product-detail-error h2{font-size:1.25rem;margin-bottom:1.5rem;color:var(--color-text-muted)}.image-viewer{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.image-viewer-content{position:relative;max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center}.image-viewer-close{position:absolute;top:-40px;right:0;background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;padding:.5rem;transition:opacity .2s}.image-viewer-close:hover{opacity:.7}.image-viewer-img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}.product-hero-image:hover,.gallery-item:hover{cursor:pointer}.product-hero-image:hover:after,.gallery-item:hover:after{content:"🔍";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000b3;color:#fff;padding:.5rem 1rem;border-radius:4px;font-size:.9rem;pointer-events:none;z-index:10}.product-hero-image,.gallery-item{position:relative}@media (max-width: 768px){.product-detail-page{padding:5rem 1rem 4rem}.product-detail-card{padding:1.5rem}.product-hero-image{height:250px}.product-hero-placeholder{font-size:3rem}.product-detail-spec-item{grid-template-columns:1fr;gap:.25rem}.product-detail-image{width:60px;height:60px}.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem}.gallery-image{height:140px}.image-viewer-close{top:-35px;font-size:1.5rem}.product-hero-image:hover:after,.gallery-item:hover:after{font-size:.8rem;padding:.4rem .8rem}}:root{--color-bg: #0d1117;--color-surface: #161b22;--color-surface-hover: #21262d;--color-border: #30363d;--color-text: #e6edf3;--color-text-muted: #8b949e;--color-accent: #44b035;--color-accent-light: #66c055;--color-rock: #78716c;--font-sans: "Noto Sans SC", -apple-system, BlinkMacSystemFont, sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);line-height:1.6;overflow-x:hidden}#root{min-height:100vh}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}section{padding:5rem 1.5rem;max-width:1200px;margin:0 auto}@media (max-width: 768px){section{padding:3rem 1rem}}
