
:root{
  --bg:#ffffff;
  --text:#0f172a;
  --muted:#475569;
  --card:#f8fafc;
  --border:#e2e8f0;
  --primary:#1d4ed8;
  --shadow: 0 10px 30px rgba(2,6,23,.08);
  --radius:16px;
  --max:1100px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Noto Sans", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
  background:var(--bg);
  color:var(--text);
  line-height:1.6;
}
a{color:var(--primary); text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:var(--max); margin:0 auto; padding:0 20px}

header{
  position:sticky; top:0; z-index:80;
  background:rgba(255,255,255,.94);
  backdrop-filter:saturate(160%) blur(10px);
  border-bottom:1px solid var(--border);
}
.nav{
  display:flex; align-items:center; justify-content:space-between;
  min-height:68px; gap:12px;
}
.brand{display:flex; align-items:center; gap:12px; font-weight:800; color:var(--text); flex:0 0 auto}
.brand img{height:28px; width:auto}
.right{display:flex; align-items:center; gap:10px; flex:0 0 auto}

.navlinks{display:flex; gap:6px; align-items:center}
.navlinks a{
  color:var(--text);
  font-weight:800;
  font-size:14px;
  padding:8px 10px;
  border-radius:12px;
  white-space:nowrap;
}
.navlinks a.active, .navlinks a:hover{background:var(--card); text-decoration:none}

.lang{
  display:flex; gap:6px; align-items:center;
  border:1px solid var(--border); border-radius:14px; padding:6px;
  background:#fff;
}
.lang a{
  display:inline-flex; align-items:center; justify-content:center;
  font-size:12px; padding:7px 10px; border-radius:12px;
  color:var(--muted); font-weight:900; min-width:44px;
  gap:6px;
}
.lang a.current{background:var(--card); color:var(--text); text-decoration:none}
.flag{font-size:14px; line-height:1}

.burger{
  display:none;
  border:1px solid var(--border);
  background:#fff;
  border-radius:12px;
  padding:10px 12px;
  font-weight:900;
  color:var(--text);
}
.burger:hover{cursor:pointer; background:var(--card)}

@media (max-width: 860px){
  .navlinks{display:none}
  .burger{display:inline-flex}
}

/* Drawer */
.drawerBack{
  position:fixed; inset:0;
  background:rgba(2,6,23,.45);
  display:none;
  z-index:90;
}
.drawer{
  position:fixed; top:0; right:0;
  height:100%;
  width:min(360px, 88vw);
  background:#fff;
  border-left:1px solid var(--border);
  box-shadow: -10px 0 30px rgba(2,6,23,.18);
  transform:translateX(100%);
  transition:transform .22s ease;
  padding:14px;
  z-index:91;
}
.drawer.open{transform:translateX(0)}
.drawerBack.show{display:block}
.drawerHeader{display:flex; align-items:center; justify-content:space-between; gap:10px; padding:6px 4px 12px}
.drawerNav{display:grid; gap:10px; padding:4px}
.drawerNav a{
  border:1px solid var(--border);
  background:var(--card);
  border-radius:14px;
  padding:12px 12px;
  font-weight:900;
  color:var(--text);
}
.drawerNav a:hover{text-decoration:none; background:#fff}
.drawerClose{
  border:1px solid var(--border);
  background:#fff;
  border-radius:12px;
  padding:10px 12px;
  font-weight:900;
}

/* Hero */
.hero{padding:52px 0 26px}
.herogrid{display:grid; gap:18px; grid-template-columns: 1.05fr .95fr; align-items:start}
@media (max-width: 900px){ .herogrid{grid-template-columns:1fr} }

.badge{
  display:inline-flex; align-items:center; gap:8px;
  background:rgba(29,78,216,.08);
  color:var(--primary);
  border:1px solid rgba(29,78,216,.18);
  padding:8px 12px;
  border-radius:999px;
  font-weight:800;
  font-size:13px;
}
h1{font-size:40px; line-height:1.15; margin:14px 0 10px}
@media (max-width: 520px){ h1{font-size:32px} }
.lead{color:var(--muted); font-size:16px; margin:0 0 18px}
.ctaRow{display:flex; gap:12px; flex-wrap:wrap; margin-top:14px}
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid var(--border);
  background:#fff;
  color:var(--text);
  font-weight:900;
  font-size:14px;
  min-width:220px;
}
.btn.primary{
  background:var(--primary);
  color:#fff;
  border-color:rgba(29,78,216,.5);
  box-shadow: 0 10px 18px rgba(29,78,216,.18);
}
.btn:hover{text-decoration:none; transform: translateY(-1px)}

/* Find card (replaces huge image) */
.findCard{
  position:relative;
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:18px;
  box-shadow:var(--shadow);
  overflow:hidden;
  min-height:220px;
}
.findCard::before{
  content:"";
  position:absolute; inset:-20px;
  background: url("../assets/soft_bg.jpg") center/cover no-repeat;
  opacity:.22;
  filter: saturate(120%) blur(0.5px);
}
.findCard::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,255,255,.75));
}
.findCard > *{position:relative; z-index:1}
.findCard h3{margin:0 0 10px; font-size:16px}
.findCard ul{margin:0; padding-left:18px; color:var(--muted)}
.findCard li{margin:6px 0}

/* Sections */
.section{padding:24px 0}
.grid{display:grid; gap:16px; grid-template-columns: repeat(3, minmax(0,1fr))}
@media (max-width: 900px){ .grid{grid-template-columns:1fr} }
.card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:18px;
  box-shadow: 0 8px 20px rgba(2,6,23,.05);
}
.card h3{margin:0 0 8px; font-size:16px}
.card p{margin:0; color:var(--muted); font-size:14px}

.pageTitle{padding:26px 0 8px}
.pageTitle h1{font-size:30px; margin:0 0 8px}
.pageTitle p{margin:0; color:var(--muted)}
.subnav{display:flex; gap:10px; flex-wrap:wrap; margin:14px 0 0}
.pill{
  display:inline-flex; padding:10px 12px; border-radius:999px;
  border:1px solid var(--border); background:var(--card);
  color:var(--text); font-weight:900; font-size:13px;
}
.pill:hover{text-decoration:none; background:#fff}
.block{margin-top:16px}
.block h2{font-size:18px; margin:0 0 10px; display:flex; align-items:center; gap:10px}
.block ul{margin:0; padding-left:18px; color:var(--muted)}
.block li{margin:6px 0}

footer{margin-top:34px; border-top:1px solid var(--border); padding:22px 0 34px; color:var(--muted); font-size:13px}
.footergrid{display:grid; gap:10px; grid-template-columns: 1.4fr .6fr; align-items:start}
@media (max-width: 900px){ .footergrid{grid-template-columns:1fr} }
.small{font-size:12px; color:var(--muted)}
