/*
Theme Name: The Meg Observer
Theme URI: https://themeg.cc/
Author: The Meg Observer
Description: Minimal, readable block theme for automated Lulea and AI reports.
Version: 1.4.5
Requires at least: 6.7
Requires PHP: 8.0
Text Domain: themeg-observer
*/

html { scroll-behavior: smooth; }
body { margin: 0; }
.wp-site-blocks { min-height: 100vh; }
.wp-block-post-title a:hover, .wp-block-navigation-item a:hover { opacity: .62; }
.wp-block-post-featured-image img { display: block; width: 100%; height: auto; }
.wp-block-table { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.wp-block-table table { min-width: 620px; border-collapse: collapse; }
.wp-block-table th, .wp-block-table td { padding: .7rem .8rem; border-color: #e5e5e5; }
.tmo-card { height: 100%; }
.tmo-kicker { letter-spacing: .055em; text-transform: uppercase; }
@media (max-width: 720px) {
  .tmo-ai-grid { display: block !important; }
  .tmo-ai-grid > * + * { margin-top: 42px; }
}

/* v1.2: denser article typography and mobile spacing */
.single .wp-block-post-content h2 { font-size: clamp(1.45rem, 2.3vw, 1.85rem); line-height: 1.18; margin-top: 2rem; margin-bottom: .75rem; }
.single .wp-block-post-content h3 { font-size: clamp(1.2rem, 1.8vw, 1.45rem); line-height: 1.22; margin-top: 1.6rem; margin-bottom: .6rem; }
.single .wp-block-post-content p { margin-top: 0; margin-bottom: 1rem; }
.single .wp-block-table { margin-top: 1rem; margin-bottom: 1.5rem; }
.single .wp-block-table table { width: 100%; min-width: 680px; }
.single .wp-block-table th, .single .wp-block-table td { padding: .62rem .75rem; text-align: left; vertical-align: top; }
@media (max-width: 720px) {
  .single main.wp-block-group { padding-top: 24px !important; padding-right: 18px !important; padding-bottom: 28px !important; padding-left: 18px !important; }
  .single .wp-block-post-title { font-size: 2.15rem !important; line-height: 1.04 !important; margin-bottom: 14px !important; }
  .single .wp-block-post-excerpt { font-size: 1.08rem !important; line-height: 1.48 !important; margin-bottom: 20px !important; }
  .single .wp-block-post-featured-image { margin-bottom: 24px !important; }
  .single .wp-block-post-content { font-size: 1rem !important; line-height: 1.62 !important; }
  .single .wp-block-post-content h2 { margin-top: 1.6rem; }
}


/* v1.3+: smaller article title */
.single .wp-block-post-title {
  font-size: clamp(2.2rem, 3.7vw, 2.5rem) !important;
  line-height: 1.08 !important;
}

/* v1.4: always-visible compact section navigation on mobile.
   No hamburger/overlay: three sections fit as a simple newspaper nav row. */
.tmo-section-nav .wp-block-navigation__responsive-container-open,
.tmo-section-nav .wp-block-navigation__responsive-container-close {
  display: none !important;
}

@media (max-width: 720px) {
  .single .wp-block-post-title {
    font-size: 1.875rem !important;
    line-height: 1.08 !important;
  }

  .tmo-header {
    display: block !important;
    padding-top: 18px !important;
    padding-right: 18px !important;
    padding-bottom: 14px !important;
    padding-left: 18px !important;
  }

  .tmo-header .wp-block-site-title {
    margin: 0 0 10px !important;
  }

  .tmo-section-nav,
  .tmo-section-nav .wp-block-navigation__responsive-container,
  .tmo-section-nav .wp-block-navigation__responsive-container-content {
    display: block !important;
    position: static !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    background: transparent !important;
  }

  .tmo-section-nav .wp-block-navigation__container {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 4px 0 !important;
    width: 100% !important;
  }

  .tmo-section-nav .wp-block-navigation-item {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    white-space: nowrap;
  }

  .tmo-section-nav .wp-block-navigation-item:not(:last-child)::after {
    content: "·";
    margin: 0 8px;
    color: #999;
  }

  .tmo-section-nav .wp-block-navigation-item__content {
    padding: 0 !important;
    font-size: .88rem !important;
    line-height: 1.45 !important;
  }
}


/* v1.4.1: newspaper-style masthead */
.tmo-header .wp-block-site-title {
  font-family: Georgia, "Times New Roman", Times, serif !important;
  font-size: clamp(2rem, 3.2vw, 2.55rem) !important;
  font-weight: 700 !important;
  line-height: .98 !important;
  letter-spacing: -0.035em !important;
}
.tmo-header .wp-block-site-title a {
  text-decoration: none !important;
}
@media (max-width: 720px) {
  .tmo-header .wp-block-site-title {
    font-size: 1.9rem !important;
    line-height: 1 !important;
    margin-bottom: 12px !important;
  }
}


/* v1.4.3: prominent newspaper masthead */
.tmo-header .meg-masthead {
  margin: 0 !important;
  font-family: Georgia, "Times New Roman", Times, serif !important;
  font-size: 3.5rem !important;
  font-weight: 700 !important;
  line-height: .96 !important;
  letter-spacing: -0.045em !important;
  white-space: nowrap;
}
.tmo-header .meg-masthead a {
  color: inherit !important;
  text-decoration: none !important;
}
@media (max-width: 720px) {
  .tmo-header .meg-masthead {
    font-size: 2.625rem !important;
    line-height: .98 !important;
    margin-bottom: 12px !important;
    white-space: normal;
  }
}
@media (max-width: 380px) {
  .tmo-header .meg-masthead { font-size: 2.35rem !important; }
}

/* v1.4.4: apply masthead typography directly to the anchor */
.tmo-header .meg-masthead,
.tmo-header .meg-masthead a {
  font-family: Georgia, "Times New Roman", Times, serif !important;
  font-size: 56px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: -0.035em !important;
  color: #171717 !important;
  text-decoration: none !important;
}
@media (max-width: 720px) {
  .tmo-header .meg-masthead,
  .tmo-header .meg-masthead a {
    font-size: 42px !important;
    line-height: 1 !important;
  }
}
@media (max-width: 380px) {
  .tmo-header .meg-masthead,
  .tmo-header .meg-masthead a {
    font-size: 38px !important;
  }
}
