*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
font-family:Arial,"Microsoft YaHei",sans-serif;
background:#070807;
color:#fff;
overflow-x:hidden;
line-height:1.6;
}

/* ================= links ================= */
a{
text-decoration:none;
color:inherit;
cursor:pointer;
}

/* ================= images ================= */
img{
display:block;
max-width:100%;
height:auto;
}

/* ================= header ================= */
header{
position:sticky;
top:0;
z-index:1000;
min-height:74px;
display:flex;
align-items:center;
justify-content:space-between;
gap:18px;
padding:14px 34px;
background:rgba(6,6,6,.94);
border-bottom:1px solid rgba(224,181,90,.25);
backdrop-filter:blur(10px);
}

.brand{
display:flex;
align-items:center;
gap:10px;
color:#f6d98a;
white-space:nowrap;
}

.brand span{
width:34px;
height:34px;
border:2px solid #d6aa4a;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
font-weight:900;
}

.brand b{
font-size:20px;
}

nav{
display:flex;
align-items:center;
gap:22px;
white-space:nowrap;
}

nav a{
font-size:14px;
color:#eee;
opacity:.9;
transition:.3s;
}

nav a:hover{
color:#f6d98a;
opacity:1;
}

/* ================= buttons ================= */
.topbtn,.btn{
display:inline-flex;
align-items:center;
justify-content:center;
border-radius:999px;
background:linear-gradient(135deg,#c9993b,#ffe6a7,#c9993b);
color:#160f05;
font-weight:900;
padding:12px 24px;
box-shadow:0 8px 22px rgba(0,0,0,.28);
transition:.3s;
}

.topbtn:hover,.btn:hover{
transform:translateY(-2px);
}

/* ================= hero ================= */
.hero{
position:relative;
min-height:670px;
display:flex;
align-items:center;
padding:88px 7% 90px;
overflow:hidden;
}

.hero-bg{
position:absolute;
inset:0;
background:
linear-gradient(90deg,rgba(4,4,4,.96) 0%,rgba(4,4,4,.76) 38%,rgba(4,4,4,.18) 100%),
url('assets/images/hero.jpg') center/cover no-repeat;
z-index:1;
}

.hero-content{
position:relative;
z-index:2;
max-width:700px;
}

.tag{
display:inline-flex;
border:1px solid rgba(246,217,138,.4);
color:#f6d98a;
border-radius:999px;
padding:8px 16px;
margin-bottom:20px;
background:rgba(0,0,0,.28);
font-size:13px;
}

.hero-content h1{
font-size:56px;
line-height:1.2;
color:#f6d98a;
margin-bottom:18px;
}

.hero-content p{
font-size:17px;
color:#eee;
opacity:.9;
}

/* ================= grid ================= */
.grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:22px;
}

/* ================= card ================= */
.card{
position:relative;
min-height:220px;
border-radius:18px;
overflow:hidden;
border:1px solid rgba(246,217,138,.25);
background:#111;
box-shadow:0 16px 40px rgba(0,0,0,.25);
transition:.3s;
}

.card:hover{
transform:translateY(-5px);
box-shadow:0 22px 60px rgba(0,0,0,.4);
}

.card img{
position:absolute;
inset:0;
width:100%;
height:100%;
object-fit:cover;
opacity:.65;
}

.card:after{
content:'';
position:absolute;
inset:0;
background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.86));
}

.card strong,.card em{
position:relative;
z-index:2;
display:block;
}

.card strong{
padding:130px 20px 6px;
color:#f6d98a;
font-size:22px;
}

.card em{
padding:0 20px;
color:#e8e0ca;
font-style:normal;
font-size:14px;
}

/* ================= intro ================= */
.intro{
display:grid;
grid-template-columns:1fr 1fr;
gap:34px;
padding:48px 7%;
align-items:center;
}

.intro h2{
color:#f6d98a;
font-size:30px;
margin-bottom:16px;
}

.intro p{
color:#d6d0c0;
line-height:1.9;
margin-bottom:12px;
}

/* ================= float ================= */
.float{
position:fixed;
right:22px;
bottom:28px;
z-index:1200;
background:linear-gradient(135deg,#c9993b,#ffe6a7,#c9993b);
color:#160f05;
border-radius:999px;
padding:16px 22px;
font-weight:900;
box-shadow:0 14px 34px rgba(0,0,0,.42);
}

/* ================= footer ================= */
footer{
padding:34px 7%;
background:#050505;
border-top:1px solid rgba(246,217,138,.16);
color:#aaa;
}

/* ================= mobile ================= */
@media(max-width:900px){

header{
padding:13px 14px;
flex-wrap:wrap;
}

nav{
order:3;
width:100%;
overflow-x:auto;
gap:16px;
padding:8px 0;
}

.hero{
padding:80px 20px;
min-height:600px;
}

.hero-content h1{
font-size:38px;
}

.grid{
grid-template-columns:1fr;
gap:16px;
}

.intro{
grid-template-columns:1fr;
padding:34px 18px;
}

.float{
right:14px;
bottom:18px;
padding:13px 17px;
}
}