:root { color-scheme: light; --ink:#123451; --muted:#456278; --blue:#1764ad; --sky:#eef8ff; --line:#cfdfeb; --orange:#ffb54c; --white:#fff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--white); font-family:"Avenir Next",Avenir,"PingFang SC","Microsoft YaHei",sans-serif; font-size:17px; line-height:1.75; }
a { color:var(--blue); text-underline-offset:4px; }
a:hover { text-decoration-thickness:2px; }
a:focus-visible { outline:3px solid var(--blue); outline-offset:5px; border-radius:3px; }
img { display:block; max-width:100%; }
.skip { position:absolute; top:8px; left:12px; z-index:5; padding:8px 16px; background:var(--white); transform:translateY(-150%); }
.skip:focus { transform:none; }
.wrap { width:min(1040px, calc(100% - 56px)); margin-inline:auto; }
.topbar { border-bottom:1px solid var(--line); }
.header { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:94px; }
.brand { display:flex; align-items:center; gap:12px; color:var(--ink); text-decoration:none; font-size:18px; font-weight:750; line-height:1.25; }
.brand img { width:42px; height:42px; }
.brand small { display:block; font-size:13px; font-weight:500; color:var(--muted); margin-top:4px; }
nav { display:flex; flex-wrap:wrap; align-items:center; gap:22px; }
nav a { color:var(--ink); font-size:15px; text-decoration:none; padding-block:8px; }
nav a[aria-current="page"] { color:var(--blue); text-decoration:underline; }
.language { border-left:1px solid var(--line); padding-left:22px; }
main { min-height:65vh; }
.hero { background:var(--sky); border-bottom:1px solid var(--line); }
.hero-inner { display:grid; grid-template-columns:1.4fr .6fr; align-items:center; gap:36px; padding-block:70px; }
h1,h2,h3 { line-height:1.22; letter-spacing:-.025em; }
h1 { font-size:clamp(38px,5.4vw,62px); margin:0 0 20px; font-weight:800; text-wrap:balance; }
h2 { font-size:28px; margin:0 0 14px; }
h3 { font-size:21px; }
p { margin:0 0 18px; }
.lead { font-size:21px; color:var(--muted); max-width:35em; }
.hero-art { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:220px; }
.hero-art img { width:200px; object-fit:contain; }
.parking-lines { width:240px; height:130px; border:7px solid var(--white); border-bottom:0; display:grid; place-items:center; transform:rotate(-6deg); }
.parking-lines img { width:150px; transform:rotate(6deg); }
.action-links { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.button { display:inline-flex; justify-content:center; align-items:center; min-height:48px; padding:10px 22px; border:2px solid var(--blue); border-radius:9px; background:var(--blue); color:var(--white); font-size:16px; font-weight:700; text-decoration:none; }
.button.secondary { background:var(--white); color:var(--blue); }
.notice { border-left:5px solid var(--orange); background:#fff5e5; padding:17px 22px; margin:30px 0; border-radius:0 8px 8px 0; }
.notice strong { display:block; line-height:1.45; margin-bottom:6px; }
.notice p:last-child { margin:0; }
.content { padding-block:44px 68px; }
.link-list { margin:26px 0 0; padding:0; list-style:none; }
.link-list li { padding:20px 0; border-top:1px solid var(--line); display:grid; grid-template-columns:220px 1fr; gap:20px; }
.link-list a { font-weight:700; font-size:20px; }
.link-list p { margin:0; color:var(--muted); }
.article { max-width:780px; padding-block:46px 72px; }
.article h1 { font-size:clamp(34px,5vw,48px); }
.article section { margin-top:36px; scroll-margin-top:20px; }
.article h2 { font-size:25px; }
.meta { color:var(--muted); font-size:15px; }
.toc { margin:24px 0 34px; padding:22px 26px; background:var(--sky); border-radius:10px; }
.toc ul { padding-left:20px; margin:10px 0 0; columns:2; column-gap:28px; }
.toc li { padding:3px 0; break-inside:avoid; }
.details { margin:28px 0; }
.details div { display:grid; grid-template-columns:180px 1fr; gap:20px; padding:18px 0; border-bottom:1px solid var(--line); }
.details dt { font-weight:700; }
.details dd { margin:0; overflow-wrap:anywhere; }
.pending { color:#76520b; font-weight:600; }
ul { padding-left:24px; }
li { padding-bottom:5px; }
footer { border-top:1px solid var(--line); background:var(--sky); }
.footer-inner { display:flex; flex-wrap:wrap; justify-content:space-between; gap:18px; padding-block:26px; font-size:14px; color:var(--muted); }
.footer-links { display:flex; flex-wrap:wrap; gap:20px; }
.footer-inner p { margin:0; }
@media(max-width:650px) {
  .wrap { width:calc(100% - 36px); }
  .header { align-items:flex-start; flex-direction:column; gap:8px; padding-block:20px 14px; }
  nav { width:100%; gap:18px; }
  nav a { font-size:14px; }
  .language { margin-left:auto; padding-left:16px; }
  .hero-inner { grid-template-columns:1fr; gap:20px; padding-block:40px; }
  .hero-art { min-height:150px; }
  .lead { font-size:18px; }
  .action-links .button { flex:1; }
  .link-list li { grid-template-columns:1fr; gap:6px; }
  .toc ul { columns:1; }
  .details div { grid-template-columns:1fr; gap:4px; }
  .notice { padding:16px; }
  .content,.article { padding-block:34px 48px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
