@font-face {
  font-family: "LINESeedJP";
  src: url("/fonts/LINESeedJP-Thin.woff2") format("woff2");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "LINESeedJP";
  src: url("/fonts/LINESeedJP-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "LINESeedJP";
  src: url("/fonts/LINESeedJP-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "LINESeedJP";
  src: url("/fonts/LINESeedJP-ExtraBold.woff2") format("woff2");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

body {
  font-family: "LINESeedJP", sans-serif;
  max-width: 96vw;
  margin: 2rem auto;
  line-height: 1.6;
  font-size: 20px;
}

.ticker {
  overflow: hidden;
  white-space: nowrap;
  background: #fff;
  color: #1a1a1a;
  padding-block: 0.5rem;
}
.ticker-track {
  display: inline-flex;
  animation: ticker-scroll 20s linear infinite;
}
.ticker-track span {
  font-family: ui-monospace, Menlo, Consolas, "Courier New", monospace;
  font-size: 0.9rem;
  padding-right: 3rem;
}

@keyframes ticker-scroll {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

@media (prefers-reduced-motion: reduce) {
  .ticker-track {
    animation: none;
  }
}

.grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 1.5rem;
  margin-top: 3rem;
}

.col-12 { grid-column: span 12; }

.col-6 { grid-column: span 6; }

.col-center {
  grid-column: 3 / span 8;
}

img { max-width: 100%; height: auto; }

.logo-col {
  display: flex;
  align-items: center;
}
.cfri-logo {
  min-width: 80%;
}

.timeline-heading {
  text-align: center;
  padding-block: 3rem 2rem;
}

.update-content {
  padding: 0 1.5rem 1.5rem;
}

.update {
  border: 1px solid #ddd;
  border-radius: 6px;
  margin-bottom: 1rem;
  background: #fff;
}.update summary {
  cursor: pointer;
  list-style: none;
  padding: 1.5rem;
}
.update summary::-webkit-details-marker {
  display: none;
}
.update summary::after {
  content: "+ expand";
  font-size: 0.85rem;
  color: #666;
  font-weight: 400;
}
.update[open] summary::after {
  content: "− collapse";
}
.update summary:hover::after {
  color: #1a1a1a;
}
.update:hover {
  border-color: #999;
}
@media (max-width: 40rem) {
  .grid > [class*="col-"] { grid-column: span 12; }
}
