:root{--gold:#B8860B;--gold-light:#D4A84B;--wine:#722F37;--wine-dark:#5A1F26;--cream:#FAF6EF;--dark:#1E1810;--brown:#3D2B1F;}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;overflow-x:hidden;width:100%;max-width:100vw;}
body{font-family:'Noto Serif SC',serif;background:var(--cream);color:var(--brown);overflow-x:hidden;width:100%;max-width:100vw;}
img,video,iframe{max-width:100%;display:block;height:auto;}
section,header,footer,nav,main{max-width:100vw;overflow-x:clip;}
.font-display{font-family:'Playfair Display',serif;}
.top-bar{background:var(--dark);color:#c9b88a;font-size:13px;}
.nav-link{position:relative;padding:6px 2px;transition:color .3s;color:#fff;}
.nav-link::after{content:'';position:absolute;left:50%;bottom:-4px;width:0;height:2px;background:var(--gold);transition:all .3s;transform:translateX(-50%);}
.nav-link:hover{color:var(--gold);}.nav-link:hover::after{width:100%;}
.nav-link.active{color:var(--gold);}.nav-link.active::after{width:100%;}
.nav-scrolled{background:rgba(30,24,16,.95)!important;backdrop-filter:blur(12px);box-shadow:0 2px 20px rgba(0,0,0,.3);}
.page-hero{height:420px;min-height:320px;position:relative;overflow:hidden;display:flex;align-items:center;}
.page-hero-bg{position:absolute;inset:0;background:url('http://img0.baidu.com/it/u=2237809897,3832751587&fm=253&fmt=auto&app=138&f=JPEG?w=1286&h=800') center/cover no-repeat;background-attachment:scroll;z-index:0;}
@media(min-width:768px){.page-hero-bg{background-attachment:fixed;}}
.page-hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(114,47,55,.55),rgba(30,24,16,.8));z-index:1;}
.page-hero-content{position:relative;z-index:3;color:#fff;text-align:center;width:100%;padding-top:60px;}
.breadcrumb{font-size:14px;color:#c9b88a;margin-top:12px;}
.breadcrumb a{color:#c9b88a;transition:color .3s;}
.breadcrumb a:hover{color:var(--gold-light);}
.btn-primary{background:linear-gradient(135deg,var(--gold) 0%,var(--gold-light) 100%);color:#fff;padding:14px 36px;border-radius:50px;font-weight:600;transition:all .4s;display:inline-flex;align-items:center;gap:8px;box-shadow:0 4px 20px rgba(184,134,11,.35);border:none;cursor:pointer;font-size:16px;text-decoration:none;}
.btn-primary:hover{transform:translateY(-3px);box-shadow:0 8px 30px rgba(184,134,11,.55);}
.btn-gold-outline{border:2px solid var(--gold);color:var(--gold);padding:12px 34px;border-radius:50px;font-weight:600;transition:all .4s;display:inline-flex;align-items:center;gap:8px;background:transparent;cursor:pointer;font-size:15px;text-decoration:none;}
.btn-gold-outline:hover{background:var(--gold);color:#fff;}
.section-title{text-align:center;margin-bottom:60px;}
.section-sub{font-family:'Playfair Display',serif;font-style:italic;color:var(--gold);letter-spacing:4px;font-size:16px;margin-bottom:8px;}
.section-head{font-size:38px;font-weight:700;color:var(--dark);letter-spacing:2px;margin-bottom:20px;}
.title-divider{display:flex;align-items:center;justify-content:center;gap:14px;margin:0 auto;}
.title-divider .line{width:60px;height:1px;background:linear-gradient(90deg,transparent,var(--gold));}
.title-divider .line-r{background:linear-gradient(90deg,var(--gold),transparent);}
.title-divider .heart{color:var(--gold);font-size:18px;animation:heartbeat 1.8s ease-in-out infinite;}
@keyframes heartbeat{0%,100%{transform:scale(1);}50%{transform:scale(1.25);}}
.reveal{opacity:0;transform:translateY(40px);transition:all .8s cubic-bezier(.25,.46,.45,.94);}
.reveal.visible{opacity:1;transform:translateY(0);}
.delay-1{transition-delay:.1s;}.delay-2{transition-delay:.2s;}.delay-3{transition-delay:.3s;}.delay-4{transition-delay:.4s;}.delay-5{transition-delay:.5s;}.delay-6{transition-delay:.6s;}
.filter-tab{padding:8px 22px;border-radius:50px;border:1px solid #d4b87d;background:transparent;color:var(--brown);font-size:14px;cursor:pointer;transition:all .3s;font-family:'Noto Serif SC',serif;}
.filter-tab:hover,.filter-tab.active{background:linear-gradient(135deg,var(--gold),var(--gold-light));color:#fff;border-color:var(--gold);}
.case-card{position:relative;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 4px 20px rgba(0,0,0,.08);transition:all .5s;display:block;text-decoration:none;color:inherit;}
.case-card:hover{transform:translateY(-10px);box-shadow:0 25px 50px rgba(114,47,55,.2);}
.case-img{height:280px;overflow:hidden;position:relative;}
.case-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s;}
.case-card:hover .case-img img{transform:scale(1.1);}
.case-img::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(30,24,16,.75) 0%,transparent 60%);}
.case-badge{position:absolute;top:14px;right:14px;background:linear-gradient(135deg,var(--wine),var(--wine-dark));color:#fff;font-size:11px;padding:4px 12px;border-radius:20px;font-weight:600;z-index:3;}
.case-info{padding:22px;}
.case-info h3{font-size:20px;font-weight:700;margin-bottom:6px;color:var(--dark);}
.case-meta{font-size:13px;color:#999;margin-bottom:12px;}
.case-tags{display:flex;gap:8px;flex-wrap:wrap;}
.case-tag{font-size:11px;padding:3px 10px;border-radius:20px;background:#f5e6c8;color:var(--gold);}
.case-hover{position:absolute;inset:0;background:rgba(30,24,16,.6);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .4s;z-index:4;color:#fff;flex-direction:column;gap:8px;}
.case-card:hover .case-hover{opacity:1;}
.case-hover i{font-size:36px;}
.stats-banner{background:linear-gradient(135deg,rgba(30,24,16,.92),rgba(114,47,55,.88)),url('http://img1.baidu.com/it/u=793311592,3995100272&fm=253&fmt=auto&app=138&f=JPEG?w=771&h=500') center/cover no-repeat;padding:60px 0;color:#fff;text-align:center;}
@supports (-webkit-touch-callout:none){.stats-banner{background-attachment:scroll;}}
@media(min-width:768px){.stats-banner{background-attachment:fixed;}}
.stat-num{font-family:'Playfair Display',serif;font-size:48px;font-weight:700;color:var(--gold-light);line-height:1;}
.cta-section{background:linear-gradient(135deg,#2a1810,#3d2b1f);padding:70px 0;text-align:center;color:#fff;}
footer{background:var(--dark);}
.float-side{position:fixed;right:20px;bottom:100px;z-index:50;display:flex;flex-direction:column;gap:10px;}
.float-btn{width:54px;height:54px;border-radius:50%;background:var(--gold);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 4px 20px rgba(184,134,11,.5);cursor:pointer;transition:all .4s;text-decoration:none;}
.float-btn:hover{transform:scale(1.1);background:var(--wine);}
.float-btn.phone{animation:pulse 2s infinite;}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(184,134,11,.7);}70%{box-shadow:0 0 0 12px rgba(184,134,11,0);}100%{box-shadow:0 0 0 0 rgba(184,134,11,0);}}
.mobile-menu-toggle{display:none;background:none;border:none;color:#fff;font-size:24px;cursor:pointer;z-index:30;}
.mobile-nav{position:fixed;top:0;right:-100%;width:75%;max-width:320px;height:100vh;background:var(--dark);z-index:100;padding:80px 30px 30px;transition:right .4s ease;box-shadow:-5px 0 30px rgba(0,0,0,.5);}
.mobile-nav.open{right:0;}
.mobile-nav-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:99;opacity:0;pointer-events:none;transition:opacity .3s;}
.mobile-nav-overlay.open{opacity:1;pointer-events:auto;}
.mobile-nav a{display:block;padding:14px 0;color:#ddd;border-bottom:1px solid rgba(255,255,255,.08);font-size:16px;text-decoration:none;}
.mobile-nav a:hover{color:var(--gold-light);}
.mobile-nav-close{position:absolute;top:20px;right:20px;background:none;border:none;color:#c9b88a;font-size:26px;cursor:pointer;}
.toast{position:fixed;top:80px;left:50%;transform:translateX(-50%) translateY(-100px);background:var(--dark);color:#fff;padding:12px 28px;border-radius:50px;z-index:200;transition:transform .4s;font-size:14px;border:1px solid var(--gold);}
.toast.show{transform:translateX(-50%) translateY(0);}

@media (max-width: 1023px){.mobile-menu-toggle{display:block;}}
@media (max-width: 767px){
  html,body{overflow-x:hidden!important;}
  .page-hero{height:280px!important;min-height:280px!important;}
  .page-hero-content{padding:70px 16px 0!important;}
  .page-hero-content h1{font-size:30px!important;}
  .breadcrumb{font-size:12px!important;}
  .max-w-7xl,.max-w-6xl{padding-left:16px!important;padding-right:16px!important;width:100%!important;}
  section{overflow-x:hidden!important;padding:40px 0!important;}
  .top-bar{font-size:11px!important;padding:8px 0!important;}
  .top-bar .flex{flex-wrap:wrap;gap:6px!important;justify-content:center!important;}
  .top-bar .hidden{display:none!important;}
  nav .max-w-7xl{padding:0 16px!important;}
  nav .btn-primary{padding:8px 16px!important;font-size:13px;}
  .section-title{margin-bottom:28px!important;}
  .section-head{font-size:24px!important;letter-spacing:1px!important;}
  .section-sub{font-size:12px!important;letter-spacing:2px!important;}
  .case-img{height:200px!important;}
  .case-info{padding:16px!important;}
  .case-info h3{font-size:16px!important;}
  .case-meta{font-size:12px!important;}
  .filter-tab{padding:6px 14px!important;font-size:12px!important;}
  .filter-tabs{gap:8px!important;flex-wrap:wrap!important;justify-content:center!important;}
  .stats-banner{padding:50px 16px!important;}
  .stat-num{font-size:32px!important;}
  .cta-section{padding:50px 16px!important;}
  .cta-section h2{font-size:24px!important;}
  footer{padding:40px 0 20px!important;}
  footer .grid{gap:24px!important;}
  .float-side{right:10px!important;bottom:70px!important;gap:8px!important;}
  .float-btn{width:42px!important;height:42px!important;font-size:16px!important;}
  .btn-primary,.btn-gold-outline{font-size:14px!important;padding:12px 22px!important;}
}
@media (max-width: 480px){
  .page-hero-content h1{font-size:26px!important;}
  .grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr!important;}
  .section-head{font-size:22px!important;}
}