html, body {
  margin: 0;
  min-height: 100%;
}

body {
  min-height: 100vh;
  background-color: #f5f5f5;
  font-size: 16px;
  font-family: "IBM Plex Sans", sans-serif; /* Google Sans Flex | IBM Plex Sans */
  color: #222;
  line-height: 1.6;
  display: flex;
  flex-direction: column;
}

p { font-size: 16px; margin: 0 0 14px 0; }

a        { text-decoration: none; }
a:hover  { color: #8b0000; text-decoration: underline; }

.topbar           { width: 100%; background-color: #ffffff; /* 131314 */ }
.topbar-inner     { width: min(1000px, calc(100% - 40px)); margin: 0 auto; padding: 20px 0; }
.topbar img       { width: 500px; display: block; }
.logo             { font-size: 24px; font-weight: 600; margin: 0; color: #2d3c5a; /* f5f5f5 */
                    font-family: "Google Sans Flex", sans-serif; font-optical-sizing: auto; font-style: normal; }
.highlight        { color: #2d3c5a; font-weight: 500; font-style: normal; }
.page             { width: min(1000px, calc(100% - 40px)); margin: 0 auto; flex: 1; padding-top: 24px; }

.product-table    { margin: 24px 80px; border-collapse: collapse; }
.product-table tr { border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }
.product-table td { padding: 10px 12px; }
.product-logo     { padding-left: 0; vertical-align: middle; }
.product-logo img { display: block; }
.product-text     { color: #888; font-size: 14px; vertical-align: middle; }

footer            { margin-top: 40px; padding: 20px 0; background: #fff; color: #111; font-size: 14px; }
.footer-inner     { width: min(1000px, calc(100% - 40px)); margin: 0 auto; }
.footer-addr      { color: #777; font-size: 13px; }





