/* ==========================================================================
   Overrides for static GitHub Pages — based on MH Magazine theme
   Accent color: #2a934a (green)
   ========================================================================== */

/* Header text all white */
.mh-header-title, .mh-header-title a, .mh-header-title a:hover { color: #fff; }
.mh-header-tagline { color: #fff; border-top-color: rgba(255,255,255,0.3); }
.mh-header { background: #2a2a2a; }

/* Footer widget titles & text white */
.mh-footer .mh-widget-title,
.mh-footer .mh-footer-widget-title,
.mh-footer h4,
.mh-footer h5,
.mh-footer h6 {
  color: #fff;
}

/* Green accent overrides (MH Magazine default is #e64946) */
a:hover { color: #2a934a; }
.mh-preheader, .mh-wide-layout .mh-subheader { background: #2a934a; }
.mh-header-tagline { color: #2a934a; }
.mh-main-nav li:hover { background: #2a934a; }
blockquote { border-left-color: #2a934a; }
.entry-content a { color: #2a934a; }
.entry-content a:hover { color: #2a934a; }
.mh-meta a:hover { color: #2a934a; }
.mh-subheading { background: #2a934a; }
.mh-breadcrumb a:hover { color: #2a934a; }
.entry-tags li:hover { background: #2a934a; }
.entry-tags .fa { background: #2a934a; }
.page-numbers:hover, .mh-loop-pagination .current { background: #2a934a; }
.pagelink { background: #2a934a; }
input[type=text]:hover, input[type=email]:hover, textarea:hover { border-color: #2a934a; }
input[type=submit] { background: #2a934a; }
.mh-back-to-top { background: #2a934a; }
#infinite-handle span { background: #2a934a; }
.mh-dropcap { color: #2a934a; }
.mh-ticker-title { background: #2a934a; }
.slicknav_btn { background: #2a934a; }
.slicknav_menu { background: #2a934a; }
.slicknav_nav .slicknav_item:hover, .slicknav_nav a:hover { background: #2a934a; }
.mh-main-nav-wrap .slicknav_nav ul { border-top-color: #2a934a; }
.mh-widget-layout1 .mh-widget-title { border-bottom-color: #2a934a; }
.mh-widget-layout2 .mh-widget-title, .mh-widget-layout4 .mh-widget-title-inner { background: #2a934a; }
.mh-widget-layout3 .mh-widget-title { border-left-color: #2a934a; }
.mh-widget-layout3 .mh-footer-widget-title { border-bottom-color: #2a934a; }
.mh-widget-layout5 .mh-widget-title { border-bottom-color: #2a934a; }
.mh-widget-layout5 .mh-widget-title-inner { background: #2a934a; }
.mh-widget-layout6 .mh-widget-title { background: #2a934a; }
.mh-widget-layout8 .mh-widget-title:after { border-bottom-color: #2a934a; }
.mh-image-caption { background: #2a934a; }
.mh-tab-button.active, .mh-tab-button.active:hover { background: #2a934a; }
.mh-tab-buttons { border-bottom-color: #2a934a; }
.tagcloud a:hover, .mh-widget .tagcloud a:hover, .mh-footer-widget .tagcloud a:hover { background: #2a934a; }
.mh-footer-nav { background: #2a934a; }
.mh-social-widget li:hover a { background: #2a934a; }
.mh-video-widget { border-bottom-color: #2a934a; }
.mh-spotlight-widget { border-bottom-color: #2a934a; }
.mh-author-bio-widget { border-bottom-color: #2a934a; }
.mh-author-bio-title { border-bottom-color: #2a934a; }
.mh-author-bio-image-frame { border-color: #2a934a; }
.mh-carousel-layout1 { border-color: #2a934a; }
.mh-carousel-layout1 .mh-carousel-caption { background: #2a934a; }
.mh-carousel-layout1 .flex-direction-nav a { color: #2a934a; }
.mh-carousel-layout2 .mh-carousel-caption { color: #2a934a; }
.mh-slider-layout1 .flex-control-paging li a.flex-active { background: #2a934a; }
.mh-slider-layout1 .mh-slider-caption { border-bottom-color: #2a934a; }
.mh-slider-layout2 .flex-control-paging li a.flex-active { background: #2a934a; }
.mh-slider-layout3 .flex-control-paging li a.flex-active { background: #2a934a; }
.mh-slider-layout4 .flex-control-paging li a.flex-active { background: #2a934a; }
.mh-slider-layout5 .flex-control-paging li a.flex-active { background: #2a934a; }
.mh-posts-stacked-item .mh-meta { background: #2a934a; }
.mh-posts-digest-small-category { color: #2a934a; }
.mh-posts-lineup-more { color: #2a934a; }
.required { color: #2a934a; }
.mh-comment-list .comment-reply-link:before { color: #2a934a; }
.mh-comment-list .comment-meta a:hover { color: #2a934a; }
.mh-comment-list .comment-awaiting-moderation { color: #2a934a; }
bypostauthor .fn:after { color: #2a934a; }
#respond #cancel-comment-reply-link:hover, #respond .logged-in-as a:hover { color: #2a934a; }
#respond #cancel-comment-reply-link:before { color: #2a934a; }
.mh-footer-widget .mh-author-bio-widget { background: #2a934a; }
.mh-footer-widget .mh-social-widget li a { background: #2a934a; }
.mh-footer-widget .mh-tab-button.active { background: #2a934a; }
.mh-subheading-top { border-bottom-color: #2a2a2a; }
#infinite-handle span:hover { background: #2a2a2a; }
input[type=submit]:hover { background: #2a2a2a; }

/* Noto Sans JP for Japanese */
body {
  font-family: 'Open Sans', 'Noto Sans JP', Helvetica, Arial, sans-serif;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Open Sans', 'Noto Sans JP', Helvetica, Arial, sans-serif;
}

/* News ticker static version */
.mh-ticker-static {
  overflow: hidden;
}

.mh-ticker-static .mh-ticker-item {
  padding: 0 20px;
}

/* WP content blocks from Gutenberg */
.entry-content .wp-block-columns,
.wp-content .wp-block-columns {
  display: flex;
  gap: 20px;
}

.entry-content .wp-block-column,
.wp-content .wp-block-column {
  flex: 1;
}

.entry-content .has-text-align-center,
.wp-content .has-text-align-center {
  text-align: center;
}

.entry-content .has-text-align-right,
.wp-content .has-text-align-right {
  text-align: right;
}

.entry-content .wp-block-separator,
.wp-content .wp-block-separator {
  border: none;
  border-top: 1px solid #ebebeb;
  margin: 25px 0;
}

.entry-content .wp-block-image img,
.wp-content .wp-block-image img {
  max-width: 100%;
  height: auto;
}

.entry-content .has-large-font-size,
.wp-content .has-large-font-size {
  font-size: 24px;
}

.entry-content .wp-block-list,
.wp-content .wp-block-list {
  margin: 0 0 20px 40px;
}

.entry-content .wp-block-list li,
.wp-content .wp-block-list li {
  margin-bottom: 5px;
}

.entry-content ul.wp-block-list {
  list-style: square;
}

.entry-content ol.wp-block-list {
  list-style: decimal;
}

/* News section / article styles */
.news-section {
  padding: 20px 0;
  border-bottom: 1px dotted #ebebeb;
}

.news-section:last-child {
  border-bottom: none;
}

.news-section .entry-thumbnail {
  margin-bottom: 15px;
  max-width: 100%;
  overflow: hidden;
}

.news-section .entry-thumbnail img {
  width: 100%;
  height: auto;
  display: block;
}

.news-section h3,
.news-section .entry-title {
  font-size: 20px;
  margin-bottom: 10px;
  font-weight: 700;
}

.news-section h3 a,
.news-section .entry-title a {
  color: #000;
}

.news-section h3 a:hover,
.news-section .entry-title a:hover {
  color: #2a934a;
}

.news-section .entry-meta {
  margin-top: 5px;
  padding: 5px 0;
  border-top: 1px dotted #ebebeb;
  border-bottom: 1px dotted #ebebeb;
}

/* MH Posts grid/list image handling */
.mh-posts-large-thumb img,
.mh-posts-grid-thumb img,
.mh-posts-list-thumb img {
  width: 100%;
  height: auto;
  display: block;
}

.mh-posts-large-title {
  font-size: 24px;
  font-weight: 700;
  margin: 15px 0 5px;
}

.mh-posts-large-title a {
  color: #000;
}

.mh-posts-large-title a:hover {
  color: #2a934a;
}

.mh-posts-large-excerpt {
  margin-top: 10px;
  color: #5c5c5c;
}

.mh-posts-grid-title {
  font-size: 16px;
  font-weight: 700;
  margin: 10px 0 5px;
}

.mh-posts-grid-title a {
  color: #000;
}

.mh-posts-grid-title a:hover {
  color: #2a934a;
}

.mh-posts-list-title {
  font-size: 18px;
  font-weight: 700;
}

.mh-posts-list-title a {
  color: #000;
}

.mh-posts-list-title a:hover {
  color: #2a934a;
}

.mh-posts-list-item {
  padding-bottom: 20px;
  margin-top: 20px;
  border-bottom: 1px dotted #ebebeb;
}

.mh-posts-list-item:first-child {
  margin-top: 0;
}

.mh-posts-list-thumb {
  float: left;
  margin-right: 20px;
  max-width: 235px;
}

.mh-posts-list-excerpt {
  overflow: hidden;
  margin-top: 10px;
}

/* Sidebar custom posts widget */
.mh-custom-posts-item {
  padding: 12px 0;
  border-bottom: 1px dotted #ebebeb;
}

.mh-custom-posts-item:first-child {
  padding-top: 0;
}

.mh-custom-posts-thumb {
  float: left;
  margin-right: 12px;
}

.mh-custom-posts-thumb img {
  width: 80px;
  height: 60px;
  object-fit: cover;
  display: block;
}

.mh-custom-posts-small-title {
  font-weight: 700;
  font-size: 13px;
  line-height: 1.3;
}

.mh-custom-posts-small-title a {
  color: #000;
}

.mh-custom-posts-small-title a:hover {
  color: #2a934a;
}

.mh-custom-posts-header {
  overflow: hidden;
}

/* Page title area for subpages */
.page-title-wrap {
  padding: 20px 0;
  margin-bottom: 20px;
  border-bottom: 3px solid #2a934a;
}

.page-title-wrap .page-title {
  font-size: 28px;
  line-height: 1.3;
}

/* Section dividers */
.section-divider {
  padding: 40px 0 20px;
  border-top: 1px solid #ebebeb;
  margin-top: 40px;
}

.section-divider:first-child {
  border-top: none;
  margin-top: 0;
  padding-top: 0;
}

/* Mobile menu */
.mobile-menu-toggle {
  display: none;
  background: #2a934a;
  color: #fff;
  border: none;
  padding: 10px 15px;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  width: 100%;
  text-align: left;
  text-transform: uppercase;
}

@media screen and (max-width: 767px) {
  .mobile-menu-toggle {
    display: block;
  }

  .mh-main-nav {
    display: none;
  }

  .mh-main-nav.open {
    display: block;
    background: #2a2a2a;
  }

  .mh-main-nav.open li {
    float: none;
    display: block;
  }

  .mh-main-nav.open li a {
    padding: 8px 20px;
    border-top: 1px solid rgba(255,255,255,0.1);
  }

  .mh-main-nav.open ul ul {
    display: block;
    position: relative;
    background: transparent;
  }

  .mh-main-nav.open ul ul li a {
    padding-left: 35px;
  }

  .mh-main-nav.open ul ul li a::before {
    content: "» ";
  }

  .entry-content .wp-block-columns,
  .wp-content .wp-block-columns {
    flex-direction: column;
  }
}

/* Fade in */
.fade-in {
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}

.fade-in.visible {
  opacity: 1;
  transform: translateY(0);
}
