html {
  box-sizing: border-box;
  color: #222;
  font-size: 16px;
}
*, *::before, *::after { box-sizing: inherit; }
body {
  margin: 0;
  background: #efefef;
  color: #222;
  font-family: "Microsoft JhengHei", "微軟正黑體", "PingFang TC", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
  overflow-x: hidden;
}
img { max-width: 100%; height: auto; }
a { color: #071041; }
.header-top-contact a { color: #dddddd; }
.header-top-contact a:hover,
.header-top-contact a:focus { color: #ffffff; }
.wrap {
  width: min(960px, calc(100% - 32px));
  margin: 0 auto;
}
main { padding: 28px 0 12px; }
.panel {
  background: #fff;
  padding: 24px 22px 8px;
}
h1 {
  margin: 0 0 12px;
  color: #071041;
  font-size: 30px;
  line-height: 1.35;
}
h2 {
  margin: 28px 0 8px;
  color: #071041;
  font-size: 22px;
  line-height: 1.4;
}
p { margin: 0 0 14px; }
ul, ol { margin: 0 0 16px; padding-left: 1.3em; }
li { margin: 0 0 6px; }
.lead { font-size: 17px; }
.group { margin: 28px 0; }
.group h2 { margin-top: 0; }
.card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 16px;
}
.card {
  display: block;
  min-width: 0;
  background: #fff;
  border-top: 4px solid #8abf00;
  padding: 16px 16px 14px;
  text-decoration: none;
}
.card strong {
  display: block;
  margin-bottom: 6px;
  color: #071041;
  font-size: 18px;
  line-height: 1.4;
}
.card span {
  display: block;
  color: #333;
  font-size: 15px;
}
.card:hover { outline: 2px solid #9dd40e; }
.related {
  margin: 22px 0 28px;
  background: #fff;
  padding: 18px 22px 8px;
}
.related h2 { margin-top: 0; }
.related a { font-weight: 700; }
.site-footer {
  background: #071041;
  color: #fff;
}
.site-footer .wrap { padding: 18px 0 22px; }
.site-footer p { margin: 0 0 8px; }
.site-footer a { color: #9dd40e; font-weight: 700; }
@media (max-width: 767px) {
  h1 { font-size: 26px; }
  h2 { font-size: 20px; }
  .panel, .related { padding-left: 16px; padding-right: 16px; }
}
@media (max-width: 479px) {
  .wrap { width: calc(100% - 20px); }
  h1 { font-size: 24px; }
}
