
:root{
  --bg:#0b0b10;
  --panel:#17171f;
  --line:#34343f;
  --text:#f7f5f5;
  --muted:#bcbcc6;
  --pink:#f04b83;
  --gold:#e9bc76;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:Arial,"Microsoft YaHei",sans-serif;
  line-height:1.7;
}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.container{width:min(1120px,calc(100% - 32px));margin:auto}
.topbar{
  background:#111119;
  border-bottom:1px solid #282832;
}
.top-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:10px 0;
}
.brand{display:flex;align-items:center;gap:10px}
.brand img{width:48px;height:48px;object-fit:contain}
.brand strong{font-size:23px;letter-spacing:2px;color:var(--gold)}
nav{display:flex;gap:18px;flex-wrap:wrap;font-size:14px}
nav a:hover{color:var(--pink)}
.hero{
  min-height:680px;
  display:flex;
  align-items:center;
  position:relative;
  text-align:center;
  background:#15151c url("/hero.jpg") center center/cover no-repeat;
}
.hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,.84));
}
.hero-content{position:relative;z-index:1;padding:55px 0}
.hero-logo{
  width:150px;height:150px;
  object-fit:contain;
  filter:drop-shadow(0 8px 18px #000);
}
.eyebrow{
  font-size:12px;letter-spacing:3px;
  color:var(--gold);font-weight:bold;
}
h1{font-size:clamp(30px,5vw,48px);line-height:1.25;margin:12px 0}
h2{font-size:clamp(22px,3vw,29px);line-height:1.35}
h3{font-size:17px}
p{color:var(--muted)}
.hero-subtitle{font-size:19px;color:#fff}
.hero-subtitle span{display:block;font-size:15px;color:#dedee5}
.hero-desc{max-width:690px;margin:18px auto 25px}
.hero-actions,.contact-actions{
  display:flex;justify-content:center;flex-wrap:wrap;gap:12px;
}
.contact-actions{margin-top:12px}
.btn{
  display:inline-block;
  border-radius:30px;
  padding:13px 26px;
  font-size:15px;
  font-weight:bold;
  text-align:center;
  transition:transform .2s,filter .2s;
}
.btn:hover{transform:translateY(-2px);filter:brightness(1.1)}
.btn-primary{
  color:#fff;
  background:linear-gradient(110deg,#c12b69,#d47c28);
  min-width:245px;
}
.btn-wa{background:#178956;color:white;min-width:135px}
.btn-tg{background:#1988b7;color:white;min-width:135px}
.hero-location{margin-top:25px;color:#eee;font-size:14px}
.section{padding-top:45px;padding-bottom:20px}
.section-heading{text-align:center;margin-bottom:25px}
.section-heading h2{margin:8px 0}
.gallery{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.photo{
  display:flex;flex-direction:column;
  min-width:0;overflow:hidden;
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:12px;
}
.photo img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  background:#111119;
}
.photo span{
  display:block;
  text-align:center;
  padding:10px 4px;
  font-size:13px;
  font-weight:bold;
  color:var(--gold);
}
.photo:hover{border-color:var(--pink)}
.panel{
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:15px;
  padding:28px;
}
.panel h2,.panel h3{color:var(--gold)}
.area-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.area{
  border:1px solid var(--line);
  border-radius:12px;
  padding:16px;
  background:var(--panel);
}
.area h3{margin:0 0 5px;color:var(--gold)}
.area p{font-size:13px;margin:0}
.faq-list{
  border:1px solid var(--line);
  border-radius:14px;
  overflow:hidden;
}
details{
  padding:15px 20px;
  background:var(--panel);
  border-bottom:1px solid var(--line);
}
details:last-child{border-bottom:0}
summary{cursor:pointer;font-weight:bold}
details p{margin-bottom:0}
.bottom-cta{
  text-align:center;
  padding:45px 0;
  margin-top:35px;
  background:linear-gradient(120deg,#22121f,#151520);
}
.bottom-cta h2{margin:0}
.bottom-cta .btn{margin-top:12px}
footer{
  padding:25px 0;
  text-align:center;
  border-top:1px solid var(--line);
  font-size:13px;
}
footer p{margin:4px}
footer a{color:var(--gold)}
@media(max-width:700px){
  .top-inner{flex-direction:column}
  nav{justify-content:center;gap:12px;font-size:12px}
  .hero{min-height:600px}
  .hero-content{padding:35px 0}
  .hero-logo{width:115px;height:115px}
  .hero-desc{font-size:13px}
  .hero-subtitle{font-size:16px}
  .gallery{gap:6px}
  .photo span{font-size:10px;padding:6px 2px}
  .area-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .area{padding:10px}
  .area h3{font-size:13px}
  .area p{font-size:11px}
  .panel{padding:17px}
  .btn-primary{min-width:220px}
}
@media(max-width:360px){
  .gallery{gap:4px}
  .photo span{font-size:9px}
}
