@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600&family=Noto+Serif+SC:wght@500;600;700&display=swap');

:root{--green:#35583a;--deep:#183425;--ink:#24352a;--gold:#b59a57;--sand:#e8d9a9;--paper:#f8f5ec;--paper2:#efe8d8;--blue:#419cd5;--red:#db372c;--muted:#69736c;--line:rgba(53,88,58,.16);--sans:"Noto Sans SC","PingFang SC",sans-serif;--serif:"Noto Serif SC","Songti SC",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:18px;line-height:1.8;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:90;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit}.container{width:min(1120px,calc(100% - 56px));margin:auto}.section-anchor{scroll-margin-top:72px}.skip{position:fixed;top:-60px;left:20px;z-index:200;padding:10px 18px;background:#fff}.skip:focus{top:12px}
.site-header{height:76px;position:fixed;z-index:100;inset:0 0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 34px;border-bottom:1px solid transparent;transition:.3s;background:rgba(248,245,236,.78);backdrop-filter:blur(16px)}.site-header.scrolled{border-color:var(--line);box-shadow:0 8px 28px rgba(23,52,37,.06)}.brand{display:flex;align-items:center;gap:11px;justify-self:start}.brand img,.footer-brand img{width:42px;height:42px;object-fit:cover;border-radius:50%;clip-path:circle(49%)}.brand span{display:flex;flex-direction:column;line-height:1.2}.brand b{font-family:var(--serif);font-size:18px;letter-spacing:.12em}.brand small{margin-top:3px;font-size:9px;color:var(--muted);letter-spacing:.16em}.site-header nav{display:flex;gap:34px}.site-header nav a{font-size:14px;color:#5d685f;position:relative;padding:27px 0}.site-header nav a:after{content:"";position:absolute;left:0;right:100%;bottom:18px;height:1px;background:var(--green);transition:.25s}.site-header nav a:hover:after,.site-header nav a.active:after{right:0}.header-cta{justify-self:end;border:1px solid var(--green);padding:9px 16px;font-size:14px}.header-cta span{margin-left:8px}
.hero{min-height:100vh;position:relative;display:grid;align-items:center;padding:132px 0 90px;overflow:hidden;background:linear-gradient(115deg,#faf8f1 0%,#f6f2e7 60%,#eee5cb 100%)}.hero-pattern{position:absolute;inset:76px 0 0;opacity:.28;background-image:radial-gradient(circle,rgba(53,88,58,.22) 1px,transparent 1.2px);background-size:20px 20px;mask-image:linear-gradient(90deg,#000 0%,transparent 62%)}.hero-inner{width:min(1120px,calc(100% - 56px));margin:auto;display:grid;grid-template-columns:1.35fr .65fr;gap:70px;align-items:center;position:relative}.kicker,.eyebrow{margin:0 0 22px;color:var(--green);font-weight:500;font-size:14px;letter-spacing:.12em}.eyebrow span{color:var(--gold);margin-right:14px}.hero h1{font-family:var(--serif);font-weight:600;font-size:clamp(62px,6.1vw,88px);line-height:1.15;letter-spacing:-.04em;margin:0 0 28px}.hero h1 em{color:var(--green);font-style:normal}.hero-lead{font-size:20px;color:#67736b;margin:0;line-height:1.9}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:42px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 26px;font-size:16px;font-weight:600;transition:.25s}.btn.primary{color:#fff;background:var(--deep);box-shadow:0 10px 30px rgba(24,52,37,.16)}.btn.primary:hover{transform:translateY(-2px);background:var(--green)}.text-link{font-size:15px;border-bottom:1px solid var(--line);padding:10px 0}.text-link span{margin-left:10px}.hero-emblem{text-align:center;position:relative}.hero-emblem img{width:min(320px,78%);margin:auto;position:relative;z-index:2;border-radius:50%;clip-path:circle(49%);filter:drop-shadow(0 26px 38px rgba(35,53,42,.18))}.emblem-halo{position:absolute;width:390px;height:390px;border:1px solid rgba(53,88,58,.18);border-radius:50%;left:50%;top:45%;transform:translate(-50%,-50%)}.emblem-halo:before,.emblem-halo:after{content:"";position:absolute;border:1px solid rgba(53,88,58,.1);border-radius:50%;inset:28px}.emblem-halo:after{inset:-26px}.hero-emblem p{font-family:var(--serif);color:var(--green);font-size:17px;letter-spacing:.16em;line-height:1.8;margin:26px 0 0}.scroll-cue{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11px;letter-spacing:.14em;color:var(--muted)}.scroll-cue i{font-style:normal;font-size:20px;animation:bob 1.8s infinite}@keyframes bob{50%{transform:translateY(5px)}}
.services{padding:120px 0 110px}.section-head{display:grid;grid-template-columns:1fr 1.35fr;gap:90px;align-items:end;margin-bottom:62px}.section-head .eyebrow{grid-column:1/-1;margin-bottom:-50px}.section-head h2,.advantage-copy h2,.contact h2{font-family:var(--serif);font-size:clamp(42px,4.2vw,60px);line-height:1.27;letter-spacing:-.025em;margin:0;font-weight:600}.section-head>p:last-child{font-size:17px;color:var(--muted);margin:0 0 8px;max-width:430px}.service-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.service-card{display:grid;grid-template-columns:190px 1fr;gap:24px;align-items:center;padding:32px 24px 32px 0;border-bottom:1px solid var(--line)}.service-card:nth-child(odd){border-right:1px solid var(--line);padding-right:38px}.service-card:nth-child(even){padding-left:38px}.service-card img{width:190px;aspect-ratio:20/13;object-fit:cover}.service-card small{color:var(--blue);letter-spacing:.1em;font-size:10px}.service-card h3{font-family:var(--serif);font-size:27px;font-weight:600;margin:5px 0 8px}.service-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.8}.path-line{margin-top:58px;background:var(--green);color:#fff;min-height:92px;display:flex;align-items:center;justify-content:center;gap:34px}.path-line span{font-family:var(--serif);font-size:22px;letter-spacing:.12em}.path-line i{font-style:normal;color:var(--sand)}
.origin{background:var(--deep);color:#fff;padding:130px 0;position:relative;overflow:hidden}.origin:after{content:"武心";position:absolute;right:-10px;bottom:-100px;font-family:var(--serif);font-size:280px;color:rgba(232,217,169,.035);line-height:1}.origin-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:110px;align-items:center;position:relative;z-index:1}.origin-portrait{position:relative}.portrait-frame{background:var(--sand);padding:18px 18px 0;transform:rotate(-2deg);box-shadow:28px 32px 0 rgba(232,217,169,.08)}.portrait-frame img{width:100%;height:570px;object-fit:cover;object-position:center top;filter:saturate(.75) sepia(.08)}.origin-portrait>p{margin:30px 0 0 14px;display:flex;flex-direction:column}.origin-portrait b{font-family:var(--serif);font-size:20px}.origin-portrait span{font-size:12px;color:rgba(255,255,255,.55);letter-spacing:.08em}.eyebrow.light{color:var(--sand)}.origin-copy h2{font-family:var(--serif);font-size:clamp(58px,5.4vw,78px);line-height:1.18;letter-spacing:-.02em;margin:0 0 40px;font-weight:600}.origin-copy blockquote{margin:0 0 30px;padding-left:22px;border-left:2px solid var(--sand);font-family:var(--serif);font-size:28px;color:var(--sand);line-height:1.7}.origin-copy>p:not(.eyebrow){color:rgba(255,255,255,.68);max-width:590px}.seal{display:inline-block;margin-top:26px;padding:9px 14px;border:1px solid rgba(232,217,169,.45);color:var(--sand);font-size:12px;letter-spacing:.14em}
.heritage{padding:125px 0;background:var(--paper2);overflow:hidden}.heritage-head{grid-template-columns:1fr auto;align-items:end;margin-bottom:48px}.heritage-head .eyebrow{grid-column:auto;margin-bottom:20px}.slider-controls{display:flex;align-items:center;gap:16px}.slider-controls button{width:48px;height:48px;border:1px solid var(--line);background:transparent;color:var(--green);cursor:pointer;transition:.2s}.slider-controls button:hover{background:var(--green);color:#fff}.slider-count{font-size:13px;color:var(--muted);min-width:62px;text-align:center}.slider-count b{font-size:18px;color:var(--green)}.heritage-viewport{width:min(1280px,calc(100% - 56px));margin:auto;overflow:hidden}.heritage-track{display:flex;transition:transform .65s cubic-bezier(.22,.7,.24,1)}.generation-slide{min-width:100%;display:grid;grid-template-columns:.82fr 1.18fr;background:#fff;min-height:610px}.generation-photo{position:relative;background:#d9cfb3;overflow:hidden}.generation-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.74) sepia(.08)}.generation-photo span{position:absolute;left:22px;bottom:22px;padding:8px 12px;background:rgba(24,52,37,.88);color:var(--sand);font-size:11px;letter-spacing:.16em}.generation-copy{padding:58px 68px;align-self:center}.generation-copy>small{color:var(--gold);letter-spacing:.16em}.generation-copy h3{font-family:var(--serif);font-size:54px;line-height:1.1;margin:8px 0 8px;color:var(--green)}.generation-copy .tags{font-size:13px;color:var(--blue);letter-spacing:.06em;margin:0 0 28px}.generation-copy>p:not(.tags){font-size:17px;color:var(--muted);line-height:2}.generation-copy blockquote{font-family:var(--serif);font-size:24px;color:var(--gold);margin:30px 0 0}.bio-block{display:grid;grid-template-columns:90px 1fr;border-top:1px solid var(--line);padding:13px 0}.bio-block b{font-family:var(--serif);color:var(--green)}.bio-block p{margin:0;font-size:14px;line-height:1.75;color:var(--muted)}.featured .generation-copy{padding-top:34px;padding-bottom:34px}.slider-dots{display:flex;justify-content:center;gap:9px;margin-top:30px}.slider-dots button{border:0;width:28px;height:3px;padding:0;background:rgba(53,88,58,.2);cursor:pointer}.slider-dots button.active{background:var(--green)}
.advantages{padding:130px 0}.advantage-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:90px;align-items:center}.advantage-visual{position:relative}.advantage-visual:before{content:"";position:absolute;inset:-22px 22px 22px -22px;border:1px solid var(--sand);z-index:-1}.advantage-visual img{width:100%;aspect-ratio:4/3;object-fit:cover}.advantage-visual>span{position:absolute;bottom:18px;left:18px;background:var(--deep);color:var(--sand);padding:9px 14px;font-size:11px;letter-spacing:.14em}.advantage-copy h2{margin-bottom:24px}.advantage-copy .intro{color:var(--muted);font-size:16px;margin-bottom:32px}.advantage-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.advantage-list li{display:grid;grid-template-columns:50px 1fr;gap:8px;padding:19px 0;border-bottom:1px solid var(--line)}.advantage-list li>span{font-family:var(--serif);color:var(--gold);font-size:17px}.advantage-list h3{font-family:var(--serif);font-size:21px;margin:0 0 2px}.advantage-list p{margin:0;color:var(--muted);font-size:13px}
.mission{position:relative;padding:145px 0;background:var(--green);color:#fff;overflow:hidden}.mission-pattern{position:absolute;right:-60px;top:40px;font-family:var(--serif);font-size:330px;color:rgba(232,217,169,.08);line-height:1;white-space:nowrap}.mission-inner{position:relative}.mission h2{font-family:var(--serif);font-size:clamp(70px,7.8vw,110px);line-height:1.13;letter-spacing:-.04em;margin:20px 0 80px}.mission-pair{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.mission-pair>div{padding:28px 34px 30px 0}.mission-pair>div+div{border-left:1px solid rgba(255,255,255,.2);padding-left:34px}.mission-pair small{font-size:10px;color:var(--sand);letter-spacing:.16em}.mission-pair h3{font-family:var(--serif);font-size:28px;margin:6px 0}.mission-pair p{margin:0;color:rgba(255,255,255,.72)}.mission-quote{font-family:var(--serif);font-size:28px;color:var(--sand);margin:54px 0 0;text-align:right}.contact{padding:105px 0;background:#fbf9f2}.contact-inner{display:flex;justify-content:space-between;align-items:center}.contact h2{margin:0 0 18px}.contact p:last-child{color:var(--muted);font-size:15px}footer{min-height:170px;background:#11291c;color:rgba(255,255,255,.6);padding:42px max(34px,calc((100% - 1120px)/2));display:grid;grid-template-columns:1fr auto auto;gap:60px;align-items:center;font-size:12px}.footer-brand{display:flex;align-items:center;gap:14px}.footer-brand div{display:flex;flex-direction:column}.footer-brand b{font-family:var(--serif);font-size:19px;color:#fff;letter-spacing:.12em}.footer-brand span{font-size:10px;margin-top:4px}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}
@media(max-width:900px){body{font-size:16px}.site-header{grid-template-columns:1fr auto;padding:0 20px}.site-header nav{display:none}.header-cta{font-size:12px}.hero-inner{grid-template-columns:1fr;text-align:left}.hero{padding-top:120px}.hero h1{font-size:54px}.hero-emblem{display:none}.section-head,.origin-grid,.advantage-grid{grid-template-columns:1fr;gap:44px}.section-head .eyebrow{margin:0;grid-column:auto}.service-grid{grid-template-columns:1fr}.service-card:nth-child(odd){border-right:0;padding-right:0}.service-card:nth-child(even){padding-left:0}.origin-portrait{max-width:520px}.generation-slide{grid-template-columns:1fr}.generation-photo{height:470px}.generation-copy{padding:42px 36px}.heritage-head{grid-template-columns:1fr}.slider-controls{margin-top:20px}.contact-inner{align-items:flex-start;flex-direction:column;gap:28px}footer{grid-template-columns:1fr;gap:14px}}
@media(max-width:560px){.container,.hero-inner,.heritage-viewport{width:calc(100% - 32px)}.site-header{height:68px}.brand img{width:36px;height:36px}.brand small{display:none}.header-cta{padding:7px 11px}.hero{min-height:760px}.hero h1{font-size:43px;line-height:1.25}.hero-lead{font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.services,.heritage,.advantages{padding:82px 0}.section-head h2,.advantage-copy h2,.contact h2{font-size:36px}.service-card{grid-template-columns:118px 1fr;gap:14px;padding:22px 0}.service-card img{width:118px}.service-card h3{font-size:20px}.service-card p{font-size:12px}.path-line{gap:10px}.path-line span{font-size:16px}.origin{padding:88px 0}.origin-grid{gap:58px}.portrait-frame img{height:420px}.origin-copy h2{font-size:49px}.origin-copy blockquote{font-size:22px}.generation-photo{height:400px}.generation-copy{padding:34px 24px}.generation-copy h3{font-size:42px}.generation-copy>p:not(.tags){font-size:15px}.bio-block{grid-template-columns:1fr}.mission{padding:90px 0}.mission h2{font-size:54px;margin-bottom:54px}.mission-pair{grid-template-columns:1fr}.mission-pair>div+div{border-left:0;border-top:1px solid rgba(255,255,255,.2);padding-left:0}.mission-quote{text-align:left;font-size:23px}.contact{padding:75px 0}footer{padding:36px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.scroll-cue i{animation:none}}

/* V3.1 · 根据逐屏反馈重新平衡字号、图片和信息密度 */
.site-header nav{gap:27px}
.hero-lead strong{display:block;font-size:22px;line-height:1.7;font-weight:600;color:var(--ink)}
.services{padding:72px 0 96px}
.services-label{margin:0 0 26px}
.service-card{grid-template-columns:205px 1fr;gap:28px;padding-top:28px;padding-bottom:28px}
.service-card img{width:205px;aspect-ratio:4/3;object-fit:cover;background:#f4eddd}
.service-card small{font-size:12px}
.service-card h3{font-size:26px}
.service-card p{font-size:15px;line-height:1.85}
.path-line{margin-top:40px;min-height:84px}

.origin{padding:105px 0}
.origin-content{display:grid;grid-template-columns:.82fr 1.18fr;column-gap:100px;row-gap:34px;align-items:start;position:relative;z-index:1}
.origin-title{grid-row:1/3}
.origin-title h2{font-family:var(--serif);font-size:52px;line-height:1.35;font-weight:600;max-width:330px;margin:0}
.origin-motto blockquote{margin:4px 0 0;padding-left:24px;border-left:2px solid var(--sand);font-family:var(--serif);font-size:31px;line-height:1.75;color:var(--sand)}
.origin-note{border-top:1px solid rgba(232,217,169,.22);padding-top:26px}
.origin-note p{font-size:17px;line-height:2;color:rgba(255,255,255,.72);max-width:640px;margin:0}
.origin-note .seal{font-size:13px;margin-top:22px}

.principal{padding:112px 0;background:#fbf9f2}
.principal-grid{display:grid;grid-template-columns:.84fr 1.16fr;gap:78px;align-items:center}
.principal-photo{position:relative;background:var(--sand);padding:14px 14px 0}
.principal-photo img{width:100%;height:590px;object-fit:cover;object-position:center top}
.principal-photo>span{position:absolute;left:28px;bottom:18px;background:rgba(24,52,37,.9);color:var(--sand);padding:9px 14px;font-size:12px;letter-spacing:.12em}
.principal-copy h2{font-family:var(--serif);font-size:58px;line-height:1.1;color:var(--green);margin:0 0 10px}
.principal-tags{font-size:15px;color:var(--blue);letter-spacing:.06em;margin:0 0 30px}
.principal-bio{border-top:1px solid var(--line)}
.principal-bio article{display:grid;grid-template-columns:110px 1fr;gap:22px;padding:22px 0;border-bottom:1px solid var(--line)}
.principal-bio h3{font-family:var(--serif);font-size:22px;color:var(--green);margin:0}
.principal-bio p{font-size:16px;line-height:1.9;color:var(--muted);margin:0}

.heritage{padding:104px 0}
.heritage-head{margin-bottom:36px}
.heritage-head h2{font-size:50px}
.generation-slide{grid-template-columns:.38fr .62fr;min-height:510px;padding:34px;background:#fff}
.generation-photo{margin:0;background:var(--paper2);height:442px;align-self:center}
.generation-photo img{height:100%;object-fit:cover;object-position:center top}
.generation-photo span{left:14px;bottom:14px}
.generation-copy{padding:34px 54px;align-self:center}
.generation-copy h3{font-size:46px}
.generation-copy>p:not(.tags){font-size:16px;line-height:1.95}
.generation-copy blockquote{font-size:22px;margin-top:24px}

.advantages{padding:112px 0}
.advantage-grid{grid-template-columns:1.12fr .88fr;gap:64px;align-items:stretch}
.advantage-visual{align-self:center}
.advantage-visual img{height:540px;aspect-ratio:auto;object-fit:cover}
.advantage-copy{align-self:center}
.advantage-copy h2{font-size:49px;line-height:1.3;margin-bottom:18px}
.advantage-copy .intro{font-size:17px;line-height:1.85;margin-bottom:24px}
.advantage-list li{grid-template-columns:42px 1fr;padding:15px 0}
.advantage-list h3{font-size:22px}
.advantage-list p{font-size:15px;line-height:1.7}

.mission{padding:112px 0}
.mission-pattern{font-size:270px}
.mission h2{font-size:clamp(58px,5.6vw,78px);line-height:1.22;margin:18px 0 60px;letter-spacing:-.025em}
.mission-pair small{font-size:12px}
.mission-pair h3{font-size:31px;margin:8px 0}
.mission-pair p{font-size:18px}
.mission-pair>div{padding-top:32px;padding-bottom:34px}
.mission-quote{font-size:25px;margin-top:42px}

@media(max-width:900px){
  .site-header nav{display:none}
  .origin-content,.principal-grid{grid-template-columns:1fr}
  .origin-title{grid-row:auto}
  .origin-title h2{max-width:none}
  .principal-photo{max-width:560px}
  .generation-slide{grid-template-columns:1fr;padding:24px}
  .generation-photo{height:390px}
  .advantage-grid{grid-template-columns:1fr}
  .advantage-visual img{height:auto;aspect-ratio:4/3}
}
@media(max-width:560px){
  .hero-lead strong{font-size:18px}
  .services{padding-top:58px}
  .service-card{grid-template-columns:125px 1fr;gap:14px}
  .service-card img{width:125px}
  .service-card small{font-size:10px}
  .service-card h3{font-size:20px}
  .service-card p{font-size:13px}
  .origin-title h2{font-size:38px}
  .origin-motto blockquote{font-size:24px}
  .principal{padding:80px 0}
  .principal-photo img{height:430px}
  .principal-copy h2{font-size:45px}
  .principal-bio article{grid-template-columns:1fr;gap:5px}
  .principal-bio p{font-size:14px}
  .heritage-head h2{font-size:38px}
  .generation-photo{height:350px}
  .generation-copy{padding:30px 12px 14px}
  .advantage-copy h2{font-size:38px}
  .mission h2{font-size:48px}
  .mission-pair p{font-size:16px}
}

/* V3.2 · 家训命名、原比例人物照片与项目优势重排 */
.eyebrow{font-size:17px;font-weight:600;letter-spacing:.1em}
.eyebrow span{font-size:18px;margin-right:16px}
.generation-photo{height:442px;display:flex;align-items:center;justify-content:center;background:var(--paper2);overflow:hidden}
.generation-photo img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:center;flex:none}
.advantages{padding:104px 0}
.advantage-label{margin:0 0 30px}
.advantage-grid{grid-template-columns:.88fr 1.12fr;gap:72px;align-items:start}
.advantage-visual{width:100%;max-width:470px;justify-self:start;align-self:start}
.advantage-visual img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
.advantage-copy{align-self:start}
.advantage-list li{min-height:88px;align-items:center;padding:14px 0}
.advantage-list li>span{font-size:19px}
.advantage-list h3{font-size:23px}
.advantage-list p{font-size:15px}
@media(max-width:900px){
  .advantage-grid{grid-template-columns:1fr;gap:42px}
  .advantage-visual{max-width:560px}
}
@media(max-width:560px){
  .eyebrow{font-size:15px}
  .eyebrow span{font-size:16px}
  .generation-photo{height:350px}
  .advantage-label{margin-bottom:22px}
}

/* V3.3 · 照片容器等比、优势图垂直居中、传承标题单行 */
.heritage-head h2{white-space:nowrap;font-size:48px}
.generation-photo{height:442px;max-width:100%;justify-self:center;background:transparent;overflow:hidden}
.generation-slide[data-index="0"] .generation-photo{width:354px}
.generation-slide[data-index="1"] .generation-photo{width:330px}
.generation-slide[data-index="2"] .generation-photo{width:350px}
.generation-photo img{width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}
.generation-photo span{left:14px;right:auto;bottom:14px;transform:none;max-width:calc(100% - 28px);white-space:nowrap}
.advantage-grid{align-items:center}
.advantage-visual{align-self:center}
.advantage-copy{align-self:center}
@media(max-width:900px){
  .heritage-head h2{white-space:normal}
}
@media(max-width:560px){
  .generation-photo,.generation-slide[data-index="0"] .generation-photo,.generation-slide[data-index="1"] .generation-photo,.generation-slide[data-index="2"] .generation-photo{width:auto;height:350px;aspect-ratio:auto}
}

/* V3.4 · 优势序号对比度 + 预约咨询区 */
.advantage-list li>span{color:var(--deep);font-size:19px}
.contact{padding:110px 0}
.contact-label{margin:0 0 30px}
.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}
.contact-info h2{font-family:var(--serif);font-size:50px;line-height:1.25;margin:0 0 20px}
.contact-lead{font-size:16px;color:var(--muted);margin:0 0 32px;max-width:470px;line-height:1.8}
.contact-meta{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.contact-meta li{display:grid;grid-template-columns:96px 1fr;gap:18px;padding:16px 0;border-bottom:1px solid var(--line)}
.contact-meta span{font-size:13px;color:var(--gold);letter-spacing:.08em}
.contact-meta b{font-size:16px;font-weight:500;line-height:1.7;color:var(--ink)}
.tel-link{border-bottom:1px solid var(--line);transition:color .2s,border-color .2s}
.tel-link:hover,.tel-link:focus-visible{color:var(--green);border-color:var(--green)}
.contact-qrs{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.qr-card{background:#fff;border:1px solid var(--line);padding:26px 22px;text-align:center}
.qr-box{aspect-ratio:1;background:#f4efe2;border:1px dashed rgba(53,88,58,.32);display:grid;place-items:center;color:#97a09a;font-size:13px;line-height:1.8;margin-bottom:16px}
.qr-box small{display:block;color:#b6bdb8;font-size:11px}
.qr-card h3{font-family:var(--serif);font-size:20px;margin:0 0 4px;color:var(--green)}
.qr-card p{margin:0;font-size:13px;color:var(--muted);line-height:1.6}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr;gap:40px}}
@media(max-width:560px){
  .contact-info h2{font-size:38px}
  .contact-meta li{grid-template-columns:80px 1fr;gap:12px}
  .contact-qrs{grid-template-columns:1fr;gap:16px}
}

/* V3.5 · 页脚 Finch 署名 */
footer p .finch-credit{display:block;margin-top:7px;color:var(--sand);letter-spacing:.16em;font-size:11px;opacity:.9}

/* V3.6 · 页脚 Finch 企业合作署名 */
.footer-brand .partner-sep{width:1px;height:36px;background:rgba(255,255,255,.24);margin:0 8px}
.footer-brand .partner b{font-size:17px;letter-spacing:.06em}
.footer-brand .partner span{font-size:9px;color:rgba(255,255,255,.52);letter-spacing:.04em;margin-top:5px}

/* V3.7 · 按 Finch 署名规范（官网 Footer 合作曝光版·深色） */
.footer-brand .finch-partner{display:flex;align-items:center;gap:14px}
.footer-brand .finch-partner img{width:46px;height:46px;object-fit:cover;border-radius:10px}
.footer-brand .finch-partner .fp-tx{display:flex;flex-direction:column;gap:3px}
.footer-brand .finch-partner .fp-l1{font-family:var(--sans);font-size:15px;line-height:1.2;color:#F2EFE7;letter-spacing:.02em}
.footer-brand .finch-partner .fp-l1 b{font-family:var(--sans);font-weight:700;font-size:15px;color:#F2EFE7;letter-spacing:.02em}
.footer-brand .finch-partner .fp-l2{font-family:var(--sans);font-size:10px;line-height:1.2;color:#B8C2BA;letter-spacing:.04em}
@media(max-width:560px){
  .footer-brand .finch-partner img{width:36px;height:36px}
  .footer-brand .finch-partner .fp-l1{font-size:13px}
  .footer-brand .finch-partner .fp-l1 b{font-size:13px}
  .footer-brand .finch-partner .fp-l2{font-size:9px}
}

/* V3.8 · footer 对齐修复：Finch 图标不被圆形裁剪，两行文字与图标垂直居中 */
.footer-brand{display:flex;align-items:center;gap:14px}
.footer-brand .finch-partner{display:flex;align-items:center;gap:12px;flex-shrink:0}
.footer-brand .finch-partner img{width:46px;height:46px;border-radius:10px;clip-path:none!important;object-fit:cover;flex-shrink:0}
.footer-brand .finch-partner .fp-tx{display:flex;flex-direction:column;gap:3px;justify-content:center}
.footer-brand .finch-partner .fp-l1{display:flex;align-items:baseline;gap:4px;font-family:var(--sans);font-size:15px;line-height:1.2;color:#F2EFE7;letter-spacing:.02em;margin:0}
.footer-brand .finch-partner .fp-l1 b{font-family:var(--sans);font-weight:700;font-size:15px;line-height:1.2;color:#F2EFE7;letter-spacing:.02em;margin:0}
.footer-brand .finch-partner .fp-l2{font-family:var(--sans);font-size:10px;line-height:1.2;color:#B8C2BA;letter-spacing:.04em;margin:0}
@media(max-width:560px){
  .footer-brand .finch-partner img{width:36px;height:36px}
  .footer-brand .finch-partner .fp-l1,.footer-brand .finch-partner .fp-l1 b{font-size:13px}
  .footer-brand .finch-partner .fp-l2{font-size:9px}
}

/* V3.9 · 彻底修复 Finch 署名错行：.footer-brand div 的 column 方向被显式覆盖为 row */
.footer-brand .finch-partner{display:flex!important;flex-direction:row!important;align-items:center!important;gap:12px;flex-shrink:0}
.footer-brand .finch-partner img{width:46px;height:46px;border-radius:10px;clip-path:none!important;object-fit:cover;flex-shrink:0}
.footer-brand .finch-partner .fp-tx{display:flex;flex-direction:column;gap:3px;justify-content:center}

/* V3.10 · 修复 "Powered by Finch" 被纵向拆成两行 */
.footer-brand .finch-partner .fp-l1{display:flex!important;flex-direction:row!important;align-items:baseline!important;gap:4px;white-space:nowrap}

/* V3.11 · 二维码实图样式 */
.qr-box{aspect-ratio:1;background:#fff;border:1px solid var(--line);display:grid;place-items:center;overflow:hidden;padding:8px;color:#97a09a;font-size:13px;line-height:1.8;margin-bottom:16px}
.qr-box img{width:100%;height:100%;object-fit:contain;display:block}
.qr-box small{display:block;color:#b6bdb8;font-size:11px}

/* V3.12 · 透明底 logo：去除圆形裁剪，完整显示徽章 */
.brand img,.footer-brand img{width:44px;height:44px;object-fit:contain;border-radius:0;clip-path:none}
.hero-emblem img{width:min(320px,78%);border-radius:0;clip-path:none;object-fit:contain}

/* V3.13 · Finch 合作署名退居页脚右侧，降低对主品牌的视觉干扰 */
footer{grid-template-columns:1fr auto auto;align-items:center}
.footer-brand{gap:14px}
.footer-partner{display:flex;align-items:center;gap:10px;opacity:1;flex-shrink:0}
.footer-partner>img{width:34px;height:34px;object-fit:cover;border-radius:8px;clip-path:none!important}
.footer-partner .fp-tx{display:flex;flex-direction:column;justify-content:center;gap:2px}
.footer-partner .fp-l1{font-family:var(--sans);font-size:12px;line-height:1.2;color:#F2EFE7;white-space:nowrap}
.footer-partner .fp-l1 b{font-family:var(--sans);font-size:12px;font-weight:700;color:#F2EFE7}
.footer-partner .fp-l2{font-family:var(--sans);font-size:8px;line-height:1.2;color:#B8C2BA;white-space:nowrap}
@media(max-width:900px){footer{grid-template-columns:1fr auto;gap:22px}.footer-partner{grid-column:2;grid-row:1}.footer>p{grid-column:1;grid-row:2}.footer>p:last-child{grid-column:2;grid-row:2}}
@media(max-width:560px){.footer-partner>img{width:28px;height:28px}.footer-partner .fp-l1,.footer-partner .fp-l1 b{font-size:10px}.footer-partner .fp-l2{font-size:7px}}

/* V3.14 · 强制限制 Finch 页脚图标，避免被全局图片规则撑破页面 */
.footer-partner{min-width:0;max-width:290px;overflow:hidden}
.footer-partner>img{display:block!important;width:34px!important;height:34px!important;min-width:34px!important;max-width:34px!important;min-height:34px!important;max-height:34px!important;object-fit:cover!important;border-radius:8px!important;clip-path:none!important;flex:0 0 34px!important}
.footer-partner .fp-tx{min-width:0;max-width:230px;overflow:hidden}
.footer-partner .fp-l1,.footer-partner .fp-l2{overflow:hidden;text-overflow:ellipsis}

/* V3.15 · 恢复 Finch 署名原展示比例，保留右侧独立位置与尺寸保护 */
.footer-partner>img{width:46px!important;height:46px!important;min-width:46px!important;max-width:46px!important;min-height:46px!important;max-height:46px!important;flex:0 0 46px!important}
.footer-partner .fp-l1,.footer-partner .fp-l1 b{font-size:15px}
.footer-partner .fp-l2{font-size:10px}

/* V3.16 · 页脚主副品牌平衡：金句绝对居中，Finch 图标微调至 40px */
footer{position:relative;grid-template-columns:1fr auto;align-items:center}
.footer-partner>img{width:40px!important;height:40px!important;min-width:40px!important;max-width:40px!important;min-height:40px!important;max-height:40px!important;flex:0 0 40px!important}
footer>p{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);margin:0;white-space:nowrap;text-align:center}
@media(max-width:900px){
  footer{grid-template-columns:1fr auto}
  footer>p{position:static;transform:none;grid-column:1/-1;grid-row:2;margin:0;text-align:left}
}
.hero{min-height:850px!important}.reveal{opacity:1!important;transform:none!important}
/* V3.21 · 顶部品牌改用最新透明徽章与武心绿色艺术字 */
.brand{gap:4px}
.brand-wordmark{width:82px!important;height:42px!important;object-fit:contain!important;border-radius:0!important;clip-path:none!important;margin-left:-6px}
@media(max-width:560px){.brand-wordmark{width:72px!important;height:36px!important}}

/* V3.24 · 透明 Logo 全部位置统一，品牌艺术字缩小并贴近 */
.brand{gap:0}
.brand-wordmark{width:57px!important;height:30px!important;margin-left:-5px;object-fit:contain!important}
.footer-brand>div .footer-wordmark{width:58px!important;height:30px!important;margin:0 0 2px!important;object-fit:contain!important;border-radius:0!important;clip-path:none!important}
@media(max-width:560px){.brand-wordmark{width:50px!important;height:27px!important;margin-left:-4px}.footer-brand>div .footer-wordmark{width:52px!important;height:27px!important}}

/* V3.25 · 首屏徽章说明靠近，顶部品牌间距精确为 5px */
.hero-emblem p{margin-top:8px!important}
.brand{gap:5px!important}
.brand-wordmark{margin-left:0!important}
@media(max-width:560px){.brand{gap:5px!important}.brand-wordmark{margin-left:0!important}}

/* V3.28 · 最新 Logo/二维码 + 页脚艺术字浅灰蒙层 */
.footer-brand>div .footer-wordmark{filter:drop-shadow(0 0 6px rgba(242,239,231,.6)) drop-shadow(0 0 2px rgba(242,239,231,.35))}

/* V3.32 · 服务标题字号调小防换行 */
.service-card h3{font-size:22px;white-space:nowrap}
@media(max-width:560px){.service-card h3{font-size:18px;white-space:nowrap}}

/* V3.34 · ICP 备案信息 */
.icp-record{grid-column:1/-1;margin:8px 0 0;text-align:center;font-size:11px;line-height:1.5;color:rgba(242,239,231,.55)}
.icp-record a{text-decoration:none;color:inherit}
.icp-record a:hover{text-decoration:underline;color:#F2EFE7}

/* V3.35 · ICP 与页脚金句分层，避免重叠 */
footer>.icp-record{position:absolute;left:0;right:0;bottom:12px;transform:none!important;grid-column:auto;margin:0;text-align:center}
@media(max-width:900px){footer>.icp-record{position:static;grid-column:1/-1;grid-row:3;margin:0;text-align:left}}

/* V3.36 · 页脚中央金句与 ICP 使用独立上下布局 */
footer>.footer-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:8px;white-space:nowrap}
footer>.footer-center>p{position:static!important;transform:none!important;margin:0;text-align:center}
footer>.footer-center .icp-record{font-size:11px}
@media(max-width:900px){footer>.footer-center{position:static;transform:none;grid-column:1/-1;grid-row:2;align-items:flex-start;white-space:normal}footer>.footer-center .icp-record{text-align:left;grid-column:auto;grid-row:auto}}

/* V3.40 · 非首屏区块跳过离屏渲染，缩短首次可交互时间 */
@media(min-width:901px){.principal,.heritage,.advantages,.mission,.contact{content-visibility:auto;contain-intrinsic-size:auto 760px}}
