:root{
  --ink-deep:#12221e;
  --ink-soft:#40504a;
  --champagne:#c6a56a;
  --champagne-soft:#e1c995;
  --linen:#f6f4ef;
  --mist:#e8ece7;
}
html,body{overflow-x:hidden;max-width:100%;}
body{background:var(--linen);color:var(--ink-deep)}
.topbar{height:76px;background:rgba(13,28,24,.98);border-bottom:1px solid rgba(198,165,106,.32);backdrop-filter:blur(14px)}
.brand{gap:14px}.brand-logo{width:46px;height:38px}.brand b{font-size:15px;letter-spacing:.08em}.brand small{letter-spacing:.16em;color:#c8d0cb}
.icon-button{border:1px solid rgba(225,201,149,.55);width:40px;height:40px;font-size:21px}
/* 背景图路径改为OSS完整地址，部署服务器后不依赖本地assets目录 */
.intro-band{position:relative;isolation:isolate;width:100%;min-height:475px;display:flex;flex-direction:column;justify-content:flex-end;padding-top:105px;padding-bottom:72px;overflow:hidden;background-color:var(--ink-deep);background-image:url("https://hnxqassets.oss-cn-wulanchabu.aliyuncs.com/assets/hainan-zhonghai-nanhai/01.jpeg");background-size:cover;background-position:center 48%}
.intro-band:before{content:"";position:absolute;inset:0;background:rgba(10,28,23,.6);z-index:-1}
.intro-band:after{content:"";position:absolute;right:7vw;top:84px;width:1px;height:180px;background:rgba(225,201,149,.72);z-index:-1}
.intro-band>*{position:relative;max-width:100%}.intro-band p{font-size:10px;letter-spacing:.3em;color:var(--champagne-soft);margin-bottom:18px}.intro-band h1{width:min(780px,100%);max-width:100%;font-family:Georgia,"Songti SC",serif;font-size:clamp(39px,7vw,76px);line-height:1.12;letter-spacing:.025em;margin-bottom:30px;text-shadow:0 2px 18px rgba(0,0,0,.18);overflow-wrap:anywhere}
.intro-row{gap:18px;color:#e2e9e3;font-size:12px;letter-spacing:.08em}.intro-row i{width:4px;height:4px;background:var(--champagne-soft)}
.about-band{width:100%;max-width:none;padding:52px 2vw 55px;background:#e5ebe5;border-bottom:1px solid #d1d9d0}.about-kicker{letter-spacing:.24em}.about-band h2{font-family:Georgia,"Songti SC",serif;font-size:clamp(26px,4vw,40px);letter-spacing:.03em;margin-bottom:16px}.about-band p{max-width:700px;font-size:14px;line-height:2;color:var(--ink-soft);overflow-wrap:anywhere}.about-grid{width:100%;max-width:640px;margin-top:29px;padding-top:20px;border-top-color:#bdc9be}.about-grid b{font-size:29px;color:var(--ink-deep)}
.catalog-note{width:100%;max-width:none;padding:40px 2vw;background:#f0ece3;border-top:0;border-bottom:1px solid #ddd6c8}.catalog-note h2{font-family:Georgia,"Songti SC",serif;font-size:clamp(23px,3.2vw,34px);line-height:1.25;overflow-wrap:anywhere}.catalog-note p{max-width:720px;font-size:13px;color:#5f6b64;overflow-wrap:anywhere}.catalog-note strong{font-size:48px;color:#8b7042}
.controls{width:100%;max-width:none;padding:30px 2vw 10px}.modes{background:transparent;border-bottom:1px solid #d8ddd6;padding:0;gap:5px}.modes button{position:relative;padding:14px 10px;color:#7a8580;transition:color .2s,background .2s;white-space:nowrap}.modes button:after{content:"";position:absolute;left:18%;right:18%;bottom:-1px;height:2px;background:transparent}.modes button.active{background:transparent;color:var(--ink-deep);box-shadow:none}.modes button.active:after{background:var(--champagne)}
.category-filters{padding:18px 0 10px}.category-filters button{border-color:#d4d9d2;background:#fff;color:#67736c;border-radius:999px;padding:8px 15px}.category-filters button.active{background:var(--ink-deep);border-color:var(--ink-deep)}.result-meta{padding-top:12px;color:#8b958f}
.case-grid{width:96%;max-width:none;margin:0 auto;padding:15px 0 82px;gap:22px}.case-card{min-width:0;border:1px solid #e4e6e1;box-shadow:0 9px 24px rgba(18,34,30,.055);transition:transform .25s,box-shadow .25s}.case-card:hover{transform:translateY(-4px);box-shadow:0 15px 30px rgba(18,34,30,.12)}.case-card .image{aspect-ratio:1.35;background:#e1e5df}.case-card .badge{left:14px;top:14px;padding:6px 10px;letter-spacing:.05em}.case-card .info{padding:17px 16px 19px}.case-card h2{font-family:Georgia,"Songti SC",serif;font-size:19px;letter-spacing:.02em;overflow-wrap:anywhere}.case-card p{font-size:11px;letter-spacing:.08em}.case-card .count{bottom:19px}
.case-card[data-id="company-profile"]{border:0;box-shadow:0 12px 30px rgba(18,34,30,.16)}.case-card[data-id="company-profile"] .image{aspect-ratio:2.55}.case-card[data-id="company-profile"] .info{padding:21px 23px 24px}.case-card[data-id="company-profile"] h2{font-family:Georgia,"Songti SC",serif;font-size:24px}
.contact-panel{padding-top:62px;padding-bottom:62px;background:#dfe7df}.contact-panel h2{font-family:Georgia,"Songti SC",serif;font-size:clamp(28px,4vw,40px);line-height:1.35}
footer{padding-top:34px;padding-bottom:34px;letter-spacing:.05em}
@media(min-width:760px){.case-grid{grid-template-columns:repeat(3,1fr)}.case-card:first-child{grid-column:span 2}.case-card:first-child .image{aspect-ratio:1.8}.case-card:first-child h2{font-size:25px}/* 单卡片时跨满整行，保持大尺寸居中展示 */.case-grid:has(.case-card:only-of-type) .case-card:first-child{grid-column:1/-1;max-width:1400px;margin:0 auto}.case-grid:has(.case-card:only-of-type) .case-card:first-child .image{aspect-ratio:3}.case-grid:has(.case-card:only-of-type) .case-card:first-child h2{font-size:32px}}
@media(max-width:620px){.topbar{height:68px}.intro-band{min-height:440px;padding:80px 18px 56px;background-position:58% center}.intro-band:after{right:18px;top:92px;height:120px}.intro-row{gap:9px;font-size:10px}.controls{padding-left:14px;padding-right:14px}.modes{overflow-x:auto}.modes button{min-width:76px}.case-grid{padding-left:14px;padding-right:14px;gap:13px}.case-card .image{aspect-ratio:1.18}.case-card .info{padding:13px 12px 16px}.case-card h2{font-size:16px}.case-card[data-id="company-profile"] .image{aspect-ratio:1.5}}
