:root{
  --ink:#23221f;--muted:#77746d;--yellow:#ffd437;--cream:#faf9f6;
  --paper:#fff;--line:#e9e7e0;--radius:22px;--nav-h:72px;
  --shadow:0 26px 70px rgba(37,32,18,.1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  color:var(--ink);-webkit-font-smoothing:antialiased}
button,input,textarea,select{font:inherit}button{cursor:pointer}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #bba000;outline-offset:3px}
::selection{background:#ffe077}
body.lock{overflow:hidden}

/* ===== Nav ===== */
.nav{position:fixed;top:0;left:0;right:0;z-index:200;background:rgba(250,249,246,.78);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.04);
  transition:background .25s,box-shadow .25s}
.nav.scrolled{background:rgba(255,255,255,.96);box-shadow:0 3px 18px #00000008}
.nav-inner{max-width:1440px;height:var(--nav-h);padding:0 58px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:flex;align-items:center;flex:none;cursor:pointer}.brand img{width:146px;height:auto}
.nav-links{display:flex;align-items:stretch;justify-content:center;gap:34px;height:100%}
.nav-item{display:flex;align-items:center;gap:4px;position:relative;border:0;background:transparent;font-size:13px;font-weight:550;color:#393733;transition:color .2s;padding:0}
.nav-item:hover,.nav-item.active{color:#c09a00}
.nav-item svg{width:12px;transition:transform .2s}.nav-item.open svg{transform:rotate(180deg)}
.nav-right{display:flex;align-items:center;gap:13px;flex:none}
.nav-pill{border:1px solid #222;border-radius:100px;padding:11px 17px;font-size:12px;font-weight:650;transition:.2s;background:transparent}
.nav-pill:hover{background:var(--ink);color:white}
.lang-switch{border:1px solid #cac8be;border-radius:100px;padding:9px 14px;font-size:12px;font-weight:600;color:#393733;background:transparent;transition:.2s}
.lang-switch:hover{background:#26241e;color:#fff;border-color:#26241e}
.nav-menu{display:none;width:100%;background:#fff;box-shadow:0 22px 34px #00000012;position:absolute;top:100%;left:0;border-top:1px solid #f0eee8}
.nav-menu.visible{display:block;animation:down .2s both}
.nav-menu-wrap{max-width:1324px;margin:auto;padding:35px 60px 42px;display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.nav-menu-col span{font-size:12px;color:#9b988f}
.nav-menu-col a{display:block;font-size:18px;font-weight:650;margin-top:16px;transition:.2s}
.nav-menu-col a:hover{color:#b89508;transform:translateX(4px)}
.hamburger{display:none;background:none;border:0;padding:8px}.hamburger svg{width:25px}
.mobile-panel{display:none}

/* ===== Main & typography ===== */
main{min-height:65vh;margin-top:var(--nav-h)}
.container{max-width:1328px;margin:auto;padding:0 58px}
.eyebrow{display:block;text-transform:uppercase;letter-spacing:.21em;font-size:11px;font-weight:650;color:#a28c46;margin-bottom:22px}
.h1{font-size:clamp(46px,6.2vw,94px);line-height:1.17;font-weight:650;letter-spacing:-.055em;margin:0}
.h2{font-size:clamp(33px,4.4vw,64px);line-height:1.22;font-weight:650;letter-spacing:-.05em;margin:0}
.h3{font-size:clamp(26px,2.8vw,40px);line-height:1.32;letter-spacing:-.04em;margin:0}
.lead{font-size:clamp(16px,1.7vw,21px);line-height:1.95;color:#6a675f;font-weight:400}
.text{font-size:15px;line-height:2;color:#77736c}
.btn{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:100px;padding:15px 24px;background:#25241f;color:#fff;font-weight:600;font-size:13px;transition:transform .22s,background .22s,color .22s}
.btn:hover{transform:translateY(-3px);background:#4c4840}
.btn.secondary{background:transparent;border-color:#cac8be;color:var(--ink)}
.btn.secondary:hover{background:white}
.btn.yellow{background:var(--yellow);color:#25241f}
.btn.yellow:hover{background:#ffe37a}
.arrow{font-size:20px;font-weight:400;line-height:0}
.section{padding:118px 0}.section-sm{padding:80px 0}
.section-title-row{display:flex;align-items:end;justify-content:space-between;margin-bottom:42px;gap:30px}
.section-sub{max-width:550px;color:#77736c;font-size:15px;line-height:1.85;margin-top:18px}
.link-arrow{font-size:14px;font-weight:600;white-space:nowrap;display:inline-flex;align-items:center;gap:12px;transition:gap .2s}
.link-arrow:hover{gap:20px}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .75s cubic-bezier(.18,.65,.25,1),transform .75s cubic-bezier(.18,.65,.25,1)}
.reveal.seen{opacity:1;transform:translateY(0)}

/* ===== Hero ===== */
.hero{height:min(810px,88vh);min-height:620px;position:relative;overflow:hidden;background:#e6decf}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.05s ease;pointer-events:none}
.hero-slide.is-active{opacity:1;pointer-events:auto}
.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center 35%;transform:scale(1.035);transition:transform 6.5s ease}
.hero-slide.is-active .hero-photo{transform:scale(1)}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(21,22,18,.55) 0%,rgba(22,22,18,.2) 48%,rgba(22,22,18,.015) 100%)}
.hero-copy{position:absolute;left:max(7.8vw,calc((100vw - 1280px)/2));top:50%;transform:translateY(-48%);z-index:3;width:min(620px,80vw);color:white}
.hero-tag{font-size:13px;letter-spacing:.26em;margin-bottom:26px;font-weight:550}
.hero h1{font-size:clamp(48px,5.6vw,88px);letter-spacing:-.045em;line-height:1.18;margin:0 0 24px;font-weight:600}
.hero-copy p{font-size:clamp(15px,1.5vw,20px);line-height:1.85;color:#f4f3ef;margin:0 0 34px}
.hero .btn{background:white;color:#2a2924}.hero .btn:hover{background:var(--yellow)}
.hero-control{position:absolute;bottom:40px;left:max(7.8vw,calc((100vw - 1280px)/2));display:flex;align-items:center;gap:10px;z-index:8}
.hero-dot{height:3px;width:38px;border:0;background:#ffffff76;padding:0;transition:.3s}
.hero-dot.active{width:60px;background:#fff}
.hero-next{position:absolute;right:6%;bottom:29px;color:white;background:#ffffff24;border:1px solid #ffffff7a;border-radius:50%;width:46px;height:46px;z-index:8;font-size:22px}
.hero-next:hover{background:#ffffff48}

/* ===== Statement / Products / Values ===== */
.statement{text-align:center;padding:112px 24px 108px}
.statement p{font-size:clamp(26px,3.2vw,48px);line-height:1.62;letter-spacing:-.035em;font-weight:570;margin:0 auto;max-width:900px}
.statement em{font-style:normal;color:#d0ad19}
.statement small{display:block;color:#98948b;font-size:13px;margin-top:30px}
.products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}
.product-card{background:#fff;border-radius:20px;overflow:hidden;cursor:pointer;border:1px solid #eeece7;transition:transform .35s,box-shadow .35s;display:flex;flex-direction:column}
.product-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}
.product-photo{height:268px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#f7f4ed}
.product-photo img{width:100%;height:100%;object-fit:cover;transition:transform .65s}
.product-card:hover .product-photo img{transform:scale(1.07)}
.product-info{padding:20px 20px 23px}
.product-kind{color:#ad955a;font-size:11px;letter-spacing:.1em}
.product-name{font-size:18px;font-weight:650;margin:11px 0 6px}
.product-note{color:#8a857e;font-size:12px}
.product-more{display:flex;justify-content:space-between;align-items:center;margin-top:17px;border-top:1px solid #eceae6;padding-top:14px;color:#9c8251;font-size:12px}
.product-more b{font-size:22px;font-weight:400}

/* ===== Split / Values ===== */
.split{display:grid;grid-template-columns:1fr 1fr;min-height:550px;gap:0;background:#f3f0e8}
.split.reverse .split-text{order:2}.split.reverse .split-photo{order:1}
.split-text{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:70px max(70px,7vw)}
.split-photo{min-height:520px;overflow:hidden}
.split-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s}
.split-photo:hover img{transform:scale(1.035)}
.split-text h2{font-size:clamp(34px,3.8vw,59px);line-height:1.3;letter-spacing:-.05em;margin:0}
.split-text p{margin:26px 0 35px;font-size:16px;line-height:2;color:#77736c}
.values{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.value-card{background:#fff;padding:44px 32px;border-radius:16px;min-height:255px;border:1px solid #f0ede7}
.value-index{font-size:12px;color:#c3ae77;margin-bottom:37px}
.value-card h3{font-size:26px;margin:0 0 16px}
.value-card p{font-size:14px;color:#89847b;line-height:1.9;margin:0}

/* ===== Image banner / Stats / News ===== */
.image-banner{height:550px;position:relative;overflow:hidden}
.image-banner img{width:100%;height:100%;object-fit:cover}
.image-banner:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#12100caa,transparent 85%)}
.image-banner-copy{position:absolute;z-index:2;left:10%;top:50%;transform:translateY(-50%);color:white;max-width:620px}
.image-banner-copy h2{font-size:clamp(38px,5vw,70px);margin:0 0 17px}
.image-banner-copy p{font-size:17px;line-height:1.9}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;text-align:center;padding:70px 0;border-bottom:1px solid var(--line)}
.stat-value{font-size:clamp(40px,4vw,65px);font-weight:600;letter-spacing:-.04em}
.stat-value span{font-size:24px}
.stat-label{font-size:14px;color:#858079;margin-top:7px}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.news-card{cursor:pointer}
.news-card .cover{aspect-ratio:1.45;overflow:hidden;border-radius:18px;background:#eee}
.news-card img{height:100%;width:100%;object-fit:cover;transition:transform .65s}
.news-card:hover img{transform:scale(1.06)}
.news-label{font-size:12px;color:#a59062;margin:18px 0 10px}
.news-card h3{font-size:21px;line-height:1.55;letter-spacing:-.02em;margin:0 0 13px}
.news-card p{font-size:13px;color:#827d73;line-height:1.7}
.contact-cta{background:var(--yellow);text-align:center;padding:110px 24px}
.contact-cta .btn{margin-top:24px}
.contact-cta p{font-size:16px;color:#685d38}

/* ===== Page hero ===== */
.page-hero{padding:165px 0 74px;text-align:center}
.page-hero .lead{max-width:730px;margin:24px auto 0}
.page-hero.pale{background:#fff}
.page-hero.yellow{background:#fce279}
.page-hero small{color:#a18329;letter-spacing:.22em;font-weight:650}
.filterbar{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 32px}
.filter{background:#fff;border:1px solid #ece8df;color:#68645d;padding:12px 19px;border-radius:100px;font-size:13px;transition:.25s}
.filter.active,.filter:hover{background:#26241e;border-color:#26241e;color:white}
.feature-wide{width:100%;aspect-ratio:2.35;overflow:hidden;border-radius:22px}
.feature-wide img{width:100%;height:100%;object-fit:cover}
.story-intro{max-width:880px;margin:60px auto 100px;font-size:clamp(20px,2.6vw,32px);line-height:1.9;text-align:center}
.founder{display:grid;grid-template-columns:42% 1fr;gap:9%;align-items:center}
.founder img{border-radius:20px;max-height:520px;width:100%;object-fit:cover;object-position:center top}
.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.time-card{padding:28px;background:#fff;border-top:3px solid var(--yellow)}
.time-card h3{margin:0 0 18px;font-size:32px}
.time-card p{font-size:13px;line-height:1.9;color:#807b72}
.factory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.factory-card{background:white;border-radius:18px;padding:32px;border:1px solid #eceae2}
.factory-card .place{font-size:24px;font-weight:650;margin-bottom:13px}
.factory-card .job{color:#ac965f;font-size:12px;margin-bottom:26px}
.factory-card p{color:#7d786e;font-size:14px;line-height:1.85}
.factory-card strong{display:block;font-size:18px;margin-top:22px}
.photo-triptych{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px;height:460px}
.photo-triptych img{width:100%;height:100%;object-fit:cover;border-radius:14px}
.logo-wall{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.logo-tile{background:#fff;min-height:116px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;color:#4b473c;border:1px solid #ece9e1;letter-spacing:.01em}
.logo-tile small{font-size:11px;color:#a5a096}
.partner-feature{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center}
.partner-feature img{width:100%;height:430px;object-fit:cover;border-radius:18px}
.partner-feature p{line-height:2;color:#777}
.consult-box{padding:56px;background:#fff;border-radius:24px;border:1px solid #eeeae3;max-width:920px;margin:0 auto}
.fieldrow{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{margin-bottom:20px}
.field label{font-size:13px;font-weight:650;display:block;margin-bottom:11px}
.field input,.field select,.field textarea{width:100%;background:#fbfaf8;border:1px solid #e8e5dd;border-radius:11px;padding:15px 15px;resize:vertical;outline:0;color:#32312b}
.field input:focus,.field textarea:focus,.field select:focus{border-color:#d1ac19;box-shadow:0 0 0 3px #ffdb4340}
.field textarea{min-height:125px}
.form-msg{font-size:13px;margin-top:16px;line-height:1.8;color:#6f6a61}
.footnote{font-size:12px;color:#8e897f;line-height:1.85}

/* ===== FAQ ===== */
.faq-list{max-width:860px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--line);padding:28px 0}
.faq-item h3{font-size:20px;margin:0 0 14px;font-weight:650}
.faq-item p{font-size:15px;line-height:1.9;color:#666259;margin:0}

/* ===== Footer ===== */
.footer{background:#23221f;color:#fff;padding:86px 0 34px;margin-top:0}
.footer-grid{display:grid;grid-template-columns:1.65fr repeat(5,1fr);gap:35px}
.footer-logo{width:146px;filter:grayscale(1) brightness(0) invert(1)}
.footer-desc{color:#d1cec6;line-height:2.05;font-size:14px;margin-top:26px}
.footer-col h4{font-size:14px;margin:0 0 24px;font-weight:650}
.footer-col a{display:block;color:#bbb9b3;font-size:12px;line-height:2.1;margin:9px 0;transition:.2s}
.footer-col a:hover{color:#ffdd65}
.footer-bottom{margin-top:80px;border-top:1px solid #ffffff23;padding-top:25px;display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:11px;color:#a6a49e}
.footer-bottom a{color:#c4c1b8;font-size:11px;background:none;border:0;cursor:pointer}
.footer-bottom a:hover{color:#fff}
.socials{display:flex;gap:15px;margin-top:32px;font-size:12px;color:#ddd;flex-wrap:wrap}

/* ===== Modal ===== */
.modal-wrap{position:fixed;inset:0;z-index:400;background:#0009;backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:25px;animation:fade .22s}
.modal{width:min(930px,100%);max-height:min(90vh,900px);overflow:auto;background:#fff;border-radius:23px;box-shadow:0 30px 120px #0006;position:relative;animation:up .27s}
.modal-close{position:sticky;float:right;top:18px;right:18px;z-index:3;background:#f4f1eb;border:0;border-radius:50%;width:42px;height:42px;font-size:23px;margin:18px 18px -50px auto}
.modal-body{display:grid;grid-template-columns:1fr 1fr;min-height:490px}
.modal-img{background:#faf7ee;min-height:490px}
.modal-img img{width:100%;height:100%;object-fit:cover}
.modal-copy{padding:80px 47px 44px}
.modal-copy h2{font-size:36px;letter-spacing:-.05em;margin:8px 0 24px}
.modal-copy p{color:#79746a;font-size:14px;line-height:2}
.detail-dots{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 32px}
.detail-dots span{background:#f4f1e6;padding:9px 12px;border-radius:100px;font-size:11px;color:#85744b}
.notice{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:#27251e;color:#fff;padding:14px 24px;border-radius:12px;z-index:500;font-size:13px;box-shadow:0 16px 50px #0004;animation:up .25s}

@keyframes fade{from{opacity:0}to{opacity:1}}
@keyframes up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes down{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}

@media (max-width:1100px){
  .nav-inner{padding:0 30px}.nav-links{gap:18px}.container{padding:0 35px}
  .footer-grid{grid-template-columns:1.4fr repeat(3,1fr)}.footer-col:nth-last-child(-n+2){display:none}
  .product-photo{height:230px}.split-text{padding:55px}
}
@media (max-width:820px){
  :root{--nav-h:62px}.nav-inner{padding:0 22px}.brand img{width:124px}
  .nav-links,.nav-pill{display:none}.hamburger{display:block}
  .mobile-panel{position:absolute;top:100%;left:0;right:0;background:white;box-shadow:0 20px 40px #0002;padding:16px 26px 32px;max-height:calc(100vh - var(--nav-h));overflow:auto}
  .mobile-panel.visible{display:block}
  .mobile-panel a,.mobile-panel button{display:block;background:none;width:100%;text-align:left;padding:17px 6px;border:0;border-bottom:1px solid #eee;font-size:17px;color:inherit}
  .container{padding:0 22px}.section{padding:78px 0}.section-sm{padding:58px 0}
  .hero{height:740px;min-height:620px}
  .hero-shade{background:linear-gradient(0deg,#1c1a17af,transparent 70%)}
  .hero-photo{object-position:60% center}
  .hero-copy{left:7%;top:auto;bottom:123px;transform:none;width:86%}
  .hero h1{font-size:50px}.hero-control{left:7%}
  .statement{padding:75px 20px}
  .products-grid{grid-template-columns:repeat(2,1fr)}
  .split{grid-template-columns:1fr}.split.reverse .split-text,.split.reverse .split-photo{order:initial}
  .split-photo{min-height:380px;height:380px;order:-1!important}
  .split-text{padding:55px 30px}
  .values{grid-template-columns:1fr;gap:12px}.value-card{min-height:initial;padding:30px}.value-index{margin-bottom:20px}
  .news-grid{grid-template-columns:1fr 1fr}
  .page-hero{padding:116px 0 64px}
  .factory-grid{grid-template-columns:1fr}.photo-triptych{height:310px}.timeline{grid-template-columns:repeat(2,1fr)}
  .partner-feature{grid-template-columns:1fr}.partner-feature img{height:300px}
  .footer-grid{grid-template-columns:repeat(3,1fr)}.footer-intro{grid-column:span 3}.footer-col:nth-last-child(-n+2){display:block}
  .footer-bottom{margin-top:52px;flex-direction:column;align-items:flex-start}
  .modal-body{grid-template-columns:1fr}.modal-img{height:310px;min-height:310px}.modal-copy{padding:40px 27px}
  .consult-box{padding:30px 23px}.image-banner{height:520px}
}
@media (max-width:520px){
  .hero{height:690px;min-height:630px}.hero h1{font-size:42px}.hero-tag{font-size:11px}.hero-copy p{font-size:15px}
  .section-title-row{align-items:start;flex-direction:column}
  .products-grid{gap:10px}.product-photo{height:195px}.product-info{padding:15px}.product-name{font-size:15px}.product-note{font-size:11px}
  .news-grid{grid-template-columns:1fr}.photo-triptych{height:220px}
  .stats{grid-template-columns:1fr;gap:26px}.logo-wall{grid-template-columns:1fr 1fr}
  .fieldrow{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-intro{grid-column:span 2}
  .footer-col h4{margin-bottom:14px}.image-banner-copy{left:7%;right:7%}.hero-next{right:7%}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
  .reveal{opacity:1;transform:none}
}

/* ==== 奖项 / Awards ==== */
.awards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:34px}
.award-card{background:#fff;border-radius:14px;padding:28px 26px;box-shadow:0 4px 18px rgba(0,0,0,.05);transition:transform .25s,box-shadow .25s}
.award-card:hover{transform:translateY(-4px);box-shadow:0 8px 26px rgba(0,0,0,.08)}
.award-year{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#c9a961;margin-bottom:10px}
.award-title{font-size:18px;font-weight:600;color:#1a1a1a;margin-bottom:8px;line-height:1.4}
.award-text{font-size:14px;color:#666;line-height:1.65;margin:0}

/* ==== 体育合作清单 / feature-list ==== */
.feature-list{list-style:none;padding:0;margin:18px 0 22px}
.feature-list li{position:relative;padding:8px 0 8px 22px;font-size:14px;color:#444;line-height:1.6;border-bottom:1px dashed rgba(0,0,0,.07)}
.feature-list li:last-child{border-bottom:none}
.feature-list li::before{content:"";position:absolute;left:0;top:14px;width:8px;height:8px;border-radius:50%;background:#c9a961}
