:root{--ink:#24211f;--muted:#77706a;--paper:#f5f1ea;--card:#fbfaf7;--wine:#8c4039;--wine2:#b86152;--line:#ded6cc;--sage:#697269;--shadow:0 20px 60px rgba(45,35,29,.10)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;overflow-x:hidden;background:var(--paper);color:var(--ink);font-family:"Microsoft YaHei","PingFang SC",sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img,video{display:block;max-width:100%}
button{font:inherit}
.topbar{height:82px;padding:0 clamp(24px,5vw,76px);display:flex;align-items:center;justify-content:space-between;background:rgba(245,241,234,.96);border-bottom:1px solid rgba(100,84,72,.14);position:sticky;top:0;z-index:30;backdrop-filter:blur(14px)}
.brand{display:flex;gap:12px;align-items:center;font-family:"Noto Serif SC",serif;font-weight:700;letter-spacing:.08em}
.brand-logo{display:block;width:54px;height:58px;object-fit:contain}
.brand small{display:block;margin-top:3px;color:var(--muted);font:10px/1.2 Arial,sans-serif;letter-spacing:.22em;text-transform:uppercase}
.topbar nav{display:flex;gap:34px;color:#5f5954;font-size:14px}
.topbar nav a{padding:9px 0;border-bottom:1px solid transparent}
.topbar nav a:hover{color:var(--wine);border-color:var(--wine)}
.home-hero{min-height:calc(100vh - 82px);display:grid;grid-template-columns:56% 44%;position:relative;background:#d9d0c6}
.home-hero-media{height:calc(100vh - 82px);min-height:680px;overflow:hidden;background:#d8cfc6}
.home-hero-media img{width:100%;height:100%;object-fit:contain;object-position:center}
.home-hero-copy{min-width:0;padding:clamp(60px,9vw,140px) clamp(35px,7vw,105px);display:flex;flex-direction:column;justify-content:center;background:#e8dfd5;position:relative}
.hero-brand-emblem{position:absolute;top:clamp(34px,5vh,68px);right:clamp(34px,4vw,72px);width:clamp(145px,11vw,205px);height:auto;object-fit:contain}
.home-hero-copy>.kicker{color:#7d3240;font-weight:700;text-shadow:0 1px 0 rgba(255,255,255,.45)}
.hero-kicker-tail::before{content:" · "}
.kicker{margin:0 0 22px;color:#fff;font:600 11px/1.4 Arial,sans-serif;letter-spacing:.28em}
.kicker.dark{color:var(--wine)}
.home-hero h1,.category-hero h1,.case-head h1,.section-intro h2{font-family:"Noto Serif SC",serif;font-weight:600}
.home-hero h1{margin:0;font-size:clamp(38px,4vw,64px);line-height:1.38;letter-spacing:.02em}
.hero-lead{max-width:540px;margin:30px 0 42px;color:#625c56;font-size:16px;line-height:2;overflow-wrap:anywhere}
.primary-link{width:max-content;display:flex;align-items:center;gap:36px;padding:15px 24px;background:var(--wine);color:#fff;font-size:14px;letter-spacing:.08em}
.primary-link span{font-size:18px}
.hero-index{position:absolute;right:38px;bottom:30px;color:rgba(36,33,31,.43);font:12px Arial;letter-spacing:.2em}
.page-section{padding:110px clamp(24px,7vw,110px)}
.brand-story{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);gap:clamp(55px,8vw,130px);background:#eee7de;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.brand-story h2{margin:0;font:600 clamp(34px,3.5vw,54px)/1.45 "Noto Serif SC",serif}
.brand-story-copy>p{max-width:820px;margin:0 0 42px;color:#625c56;font-size:15px;line-height:2}
.advantage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.advantage-grid article{min-height:210px;padding:26px 24px;background:#f6f2ec}
.advantage-grid b{color:var(--wine);font:italic 600 16px "Playfair Display",serif}
.advantage-grid h3{margin:24px 0 12px;font:600 18px "Noto Serif SC",serif}
.advantage-grid p{margin:0;color:var(--muted);font-size:12px;line-height:1.8}
.section-intro{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:54px}
.section-intro h2{margin:0;font-size:clamp(30px,3vw,46px);line-height:1.3}
.section-intro>p{max-width:410px;margin:0;color:var(--muted);line-height:1.9}
.major-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.major-card{min-height:520px;position:relative;overflow:hidden;background:#817873;color:#fff;box-shadow:var(--shadow)}
.major-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:transform .7s ease}
.major-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,15,13,.02) 35%,rgba(18,15,13,.82) 100%)}
.major-card:hover>img{transform:scale(1.04)}
.major-card-content{position:absolute;z-index:2;left:30px;right:30px;bottom:24px;height:210px;display:grid;grid-template-rows:34px 48px 48px 68px;align-content:end}
.major-number{display:block;align-self:start;font:italic 600 20px "Playfair Display",serif}
.major-card h3{align-self:start;margin:0;font-size:27px;line-height:1.45;font-weight:600;white-space:nowrap}
.major-card p{align-self:start;margin:0;color:rgba(255,255,255,.82);font-size:12px;line-height:1.7}
.minor-list{align-self:start;display:flex;align-content:flex-start;gap:7px;flex-wrap:wrap;max-height:68px;overflow:hidden}
.minor-list span{padding:6px 9px;border:1px solid rgba(255,255,255,.35);font-size:11px}
.major-children::after{background:linear-gradient(180deg,rgba(75,42,59,.02) 30%,rgba(74,36,57,.92) 100%)}
.major-children .major-number,.major-children h3{color:#ffe0ec}.major-children h3{font-family:"STKaiti","KaiTi","Noto Serif SC",serif;font-size:30px}.major-children .minor-list span{border-color:rgba(255,202,222,.52);background:rgba(171,80,117,.18)}
.major-adult::after{background:linear-gradient(180deg,rgba(54,42,35,.02) 30%,rgba(65,45,35,.93) 100%)}
.major-adult .major-number,.major-adult h3{color:#f5d9a9}.major-adult h3{font-family:"FangSong","STFangsong","Noto Serif SC",serif;font-size:29px;font-weight:700}.major-adult .minor-list span{border-color:rgba(245,217,169,.52);background:rgba(161,118,70,.18)}
.major-wedding::after{background:linear-gradient(180deg,rgba(79,31,31,.02) 30%,rgba(94,32,34,.94) 100%)}
.major-wedding .major-number,.major-wedding h3{color:#ffd8cd}.major-wedding h3{font-family:"Noto Serif SC","Songti SC",serif;letter-spacing:.08em}.major-wedding .minor-list span{border-color:rgba(255,195,181,.55);background:rgba(184,73,67,.2)}
.major-business::after{background:linear-gradient(180deg,rgba(26,50,46,.02) 30%,rgba(27,55,50,.95) 100%)}
.major-business .major-number,.major-business h3{color:#d5eee7}.major-business h3{font-family:"Microsoft YaHei","PingFang SC",sans-serif;font-size:25px;font-weight:700;letter-spacing:.04em}.major-business .minor-list span{border-color:rgba(190,230,220,.52);background:rgba(62,123,110,.2)}
.featured-section{background:#ebe5dd}
.text-link{color:var(--wine);font-size:14px}
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 24px}
.product-card{display:block;background:var(--card);transition:transform .25s ease,box-shadow .25s ease}
.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.product-cover{aspect-ratio:4/3;background:#ded6ce;overflow:hidden;position:relative}
.product-cover img,.product-cover video{width:100%;height:100%;object-fit:contain}
.product-cover video{pointer-events:none}
.play-mark{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:46px;height:46px;transform:translate(-50%,-50%);border-radius:50%;background:rgba(250,248,244,.9);color:var(--wine);font-size:14px;box-shadow:0 8px 26px rgba(30,25,22,.18)}
.product-info{padding:22px 22px 24px}
.product-topline{display:flex;justify-content:space-between;gap:12px;color:var(--wine);font-size:12px}
.product-price{font:600 17px "Noto Serif SC",serif;white-space:nowrap}
.product-info h3{margin:13px 0 8px;font:600 21px/1.45 "Noto Serif SC",serif}
.product-info p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}
.source-note{display:grid;grid-template-columns:150px 1fr;gap:40px;border-top:1px solid var(--line);padding-top:56px;padding-bottom:56px}
.source-note span{color:var(--wine);font-weight:700}
.source-note p{margin:0;max-width:900px;color:var(--muted);line-height:1.9}
footer{padding:50px clamp(24px,7vw,110px);display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);background:#e6dfd6}
footer p{color:var(--muted);font-size:12px}

.category-hero{padding:48px clamp(24px,7vw,110px) 42px;border-bottom:1px solid var(--line)}
.back-link{display:inline-block;margin-bottom:30px;color:var(--muted);font-size:13px}
.category-hero h1{margin:0 0 18px;font-size:clamp(38px,5vw,68px)}
.category-hero>p:last-child{margin:0;color:var(--muted)}
.category-browser{padding:58px clamp(24px,7vw,110px) 110px;display:grid;grid-template-columns:210px minmax(0,1fr);gap:54px}
.category-browser aside{border-right:1px solid var(--line);padding-right:28px}
.category-browser aside>p{margin:0 0 20px;color:var(--muted);font-size:11px;letter-spacing:.18em}
.major-nav{display:flex;flex-direction:column;gap:5px}
.major-nav a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;color:#665f59;font-size:14px;border-left:2px solid transparent}
.major-nav a span,.major-nav a small{white-space:nowrap}
.major-nav a.active{color:var(--wine);border-color:var(--wine);background:#eee7de}
.minor-tabs{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:40px}
.minor-tabs button{padding:10px 18px;border:1px solid var(--line);background:transparent;color:#635d57;cursor:pointer}
.minor-tabs button.active{background:var(--ink);border-color:var(--ink);color:#fff}
.result-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.result-meta b{font:600 21px "Noto Serif SC",serif}
.result-meta span{color:var(--muted);font-size:12px}
.empty-state{padding:80px;text-align:center;color:var(--muted);background:#ebe5dd}

.case-detail-body{height:100vh;overflow:hidden}
.case-detail-body .topbar{position:relative}
.case-page{height:calc(100vh - 82px);display:grid;grid-template-columns:minmax(320px,31vw) minmax(0,1fr);margin:0;padding:0;background:#ece5dc}
.case-panel{position:relative;min-height:0;overflow-y:auto;padding:44px clamp(28px,3.4vw,60px);background:var(--paper);border-right:1px solid var(--line)}
.case-breadcrumb{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:12px;margin-bottom:42px}
.case-breadcrumb a:hover{color:var(--wine)}
.case-panel h1{margin:10px 0 28px;font:600 clamp(31px,3vw,48px)/1.4 "Noto Serif SC",serif}
.case-price{padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--wine);font:600 30px "Noto Serif SC",serif}
.case-price small{display:block;margin-bottom:5px;color:var(--muted);font:11px "Microsoft YaHei";letter-spacing:.08em}
.case-details{padding-top:25px}
.detail-block{margin-bottom:24px}
.detail-block h2{margin:0 0 10px;font:600 15px "Noto Serif SC",serif}
.detail-block p,.detail-block ul{margin:0;color:#625c56;font-size:13px;line-height:1.85}
.detail-block ul{padding-left:18px}
.case-note{padding:16px;background:#ece5dc;color:#746c65;font-size:11px;line-height:1.8}
.case-back{display:inline-block;margin-top:20px;color:var(--wine);font-size:12px}
.case-viewer{min-width:0;min-height:0;display:grid;grid-template-rows:48px minmax(0,1fr) 82px;padding:20px 28px 16px;background:#dcd3c9}
.viewer-toolbar{display:flex;justify-content:flex-end;align-items:start;color:#766d65;font:10px Arial,sans-serif;letter-spacing:.2em}
.viewer-toolbar b{font-weight:400}.viewer-toolbar i{color:var(--wine);font:italic 600 19px "Playfair Display",serif}
.carousel-stage{min-width:0;min-height:0;position:relative;display:grid;place-items:center;overflow:hidden;background:#d4cac0}
.carousel-slide{position:absolute;inset:0;margin:0;display:none;place-items:center}
.carousel-slide.active{display:grid}
.carousel-slide img,.carousel-slide video{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;object-position:center}
.carousel-arrow{position:absolute;top:50%;z-index:3;width:48px;height:48px;margin-top:-24px;border:0;border-radius:50%;background:rgba(248,245,240,.92);color:var(--ink);font-size:20px;cursor:pointer;box-shadow:0 8px 28px rgba(30,25,22,.16)}
.carousel-arrow:hover{background:var(--wine);color:#fff}
.carousel-arrow.prev{left:18px}.carousel-arrow.next{right:18px}
.carousel-thumbs{display:flex;justify-content:center;gap:9px;min-width:0;padding-top:12px;overflow-x:auto}
.carousel-thumb{flex:0 0 82px;height:58px;padding:3px;border:1px solid transparent;background:transparent;cursor:pointer;opacity:.58}
.carousel-thumb.active{border-color:var(--wine);opacity:1}
.carousel-thumb img{width:100%;height:100%;object-fit:contain}
.carousel-thumb span{height:100%;display:grid;place-items:center;background:#c8bdb3}.carousel-thumb small{display:block;font-size:9px}
.loading{padding:120px;text-align:center;color:var(--muted)}
.not-found{padding:120px 20px;text-align:center}.not-found h1{font-family:"Noto Serif SC",serif}.not-found a{color:var(--wine)}

.contact-dock{position:fixed;z-index:50;right:20px;bottom:24px;display:flex;align-items:center;gap:12px;width:214px;padding:11px;background:rgba(250,248,244,.96);border:1px solid rgba(140,64,57,.28);box-shadow:0 12px 38px rgba(47,36,30,.18);backdrop-filter:blur(12px)}
.contact-qr{width:58px;height:58px;flex:0 0 58px;display:grid;place-items:center;background:#fff;border:1px solid var(--line)}
.qr-placeholder{text-align:center;color:var(--wine);font-size:10px;line-height:1.3}.qr-placeholder small{color:#958b82;font-size:8px}
.contact-dock>div:last-child{min-width:0}.contact-dock>div:last-child small{display:block;margin-bottom:5px;color:var(--muted);font-size:10px;letter-spacing:.12em}.contact-dock strong{display:block;color:var(--ink);font-size:13px;white-space:nowrap}
.case-detail-body .contact-dock{left:20px;right:auto;bottom:18px}

@media(max-width:1050px){.major-grid{grid-template-columns:repeat(2,1fr)}.major-card{min-height:480px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-hero{grid-template-columns:52% 48%}.home-hero-copy{padding:60px 40px}.category-browser{grid-template-columns:170px minmax(0,1fr);gap:30px}}
@media(max-width:720px){.topbar{height:68px;padding:0 18px}.brand{font-size:14px}.brand-logo{width:39px;height:39px}.topbar nav{gap:16px}.topbar nav a{font-size:12px}.home-hero{display:flex;min-height:auto;flex-direction:column}.home-hero-media{min-height:0;height:60vh}.home-hero-copy{padding:50px 24px 64px}.home-hero h1{font-size:34px}.hero-lead{margin:23px 0 32px;font-size:14px}.hero-index{display:none}.page-section{padding:76px 18px}.brand-story{grid-template-columns:1fr;gap:34px}.brand-story-copy>p{margin-bottom:30px}.advantage-grid{grid-template-columns:1fr}.advantage-grid article{min-height:0}.section-intro{display:block;margin-bottom:34px}.section-intro>p{margin-top:16px}.major-grid{grid-template-columns:1fr}.major-card{min-height:450px}.product-grid{grid-template-columns:1fr;gap:22px}.source-note{grid-template-columns:1fr;gap:12px;padding-top:40px;padding-bottom:40px}footer{padding:38px 18px;display:block}footer p{margin-top:24px;line-height:1.7}.category-hero{padding:44px 18px 38px}.back-link{margin-bottom:30px}.category-browser{display:block;padding:34px 18px 76px}.category-browser aside{border:0;padding:0;margin-bottom:26px}.category-browser aside>p{display:none}.major-nav{flex-direction:row;overflow-x:auto;padding-bottom:7px}.major-nav a{white-space:nowrap;border-left:0;border-bottom:2px solid transparent}.minor-tabs{overflow-x:auto;flex-wrap:nowrap;margin-bottom:30px}.minor-tabs button{white-space:nowrap}.case-page{height:calc(100vh - 68px);grid-template-columns:1fr;grid-template-rows:270px minmax(0,1fr)}.case-panel{padding:18px}.case-breadcrumb{margin-bottom:10px}.case-panel .kicker{margin-bottom:7px}.case-panel h1{margin:0 0 8px;font-size:23px}.case-price{position:static;padding:7px 0;border-top:1px solid var(--line);border-bottom:0;text-align:left;font-size:18px}.case-price small{display:inline;margin-right:10px}.case-details{padding-top:7px}.detail-block{margin-bottom:6px}.detail-block h2{margin-bottom:3px}.detail-block p,.detail-block ul{font-size:10px;line-height:1.55}.case-note,.case-back{display:none}.case-viewer{width:100%;max-width:100vw;overflow:hidden;grid-template-rows:28px minmax(0,1fr) 60px;padding:10px 10px 8px}.carousel-stage{width:100%;max-width:calc(100vw - 20px)}.carousel-arrow{width:38px;height:38px;margin-top:-19px}.carousel-arrow.prev{left:8px}.carousel-arrow.next{right:8px}.carousel-thumb{flex-basis:64px;height:45px}.contact-dock,.case-detail-body .contact-dock{left:auto;right:10px;bottom:10px;width:56px;height:56px;padding:5px;overflow:hidden}.contact-qr{width:44px;height:44px;flex-basis:44px}.contact-dock>div:last-child{display:none}.loading{padding:80px 20px}}
@media(max-width:720px){.case-detail-body .carousel-arrow{position:fixed;top:58vh;margin-top:0}.case-detail-body .carousel-arrow.prev{left:8px}.case-detail-body .carousel-arrow.next{right:8px}}
@media(max-width:560px){.topbar nav{display:none}.home-hero-media{height:52vh}.home-hero h1{font-size:30px;line-height:1.45}.major-card{min-height:400px}.product-info{padding:18px}.category-hero h1{font-size:36px}}

@media(max-width:1050px) and (min-width:721px){.hero-brand-emblem{width:130px;right:34px}}
@media(max-width:720px){.home-hero-copy{padding-top:42px}.hero-brand-emblem{position:static;width:142px;margin:0 auto 28px}.home-hero-copy>.kicker{max-width:100%;text-align:center;letter-spacing:.16em;line-height:1.8}.hero-kicker-tail{display:block}.hero-kicker-tail::before{content:""}}
