/* Mars Dispatch — editorial skin
   Dark paper, rust accent. Readable type. Only the four-reasons piece is centered. */

@import url("https://fonts.googleapis.com/css2?family=Source+Sans+3:ital,wght@0,400;0,600;0,700;1,400&family=Source+Serif+4:opsz,wght@8..60,600;8..60,700&display=swap");

:root {
  --md-bg: #100c0a;
  --md-paper: #181210;
  --md-ink: #f6eee6;
  --md-muted: #c4a994;
  --md-rust: #d2683a;
  --md-rust-deep: #9a3f22;
  --md-line: rgba(242, 196, 160, 0.14);
  --md-body: "Source Sans 3", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --md-display: "Source Serif 4", Georgia, "Times New Roman", serif;
}

html, body,
body.home, body.blog, body.page, body.single,
.site {
  background: var(--md-bg) !important;
  color: var(--md-ink) !important;
}
body, p, li, td, article, .entry-content, .content-area {
  color: var(--md-ink) !important;
  font-family: var(--md-body) !important;
  font-size: 1.125rem !important;
  line-height: 1.75 !important;
  font-weight: 400;
  letter-spacing: 0.01em;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, h5, h6,
.site-title, .entry-title, .page-title {
  font-family: var(--md-display) !important;
  color: var(--md-ink) !important;
  font-weight: 700;
  letter-spacing: -0.015em;
  line-height: 1.3 !important;
}

a {
  color: var(--md-rust);
  text-decoration: none;
}
a:hover {
  color: #e58a5a;
}

/* ----- Header ----- */
.sheader.site-header {
  min-height: 460px !important;
  padding-top: 0 !important;
  padding-bottom: 36px !important;
  background-size: cover !important;
  background-position: center 78% !important;
  background-color: #1a0e08 !important;
  position: relative;
  border-bottom: 0 !important;
  display: flex !important;
  flex-direction: column !important;
}
.sheader > nav.primary-menu {
  order: 1;
  width: 100%;
}
.sheader > .content-wrap {
  order: 2;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sheader > .super-menu {
  order: 0;
}
.sheader > #mobile-menu-overlay {
  order: 4;
}

.sheader.site-header::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to bottom,
    rgba(8, 5, 4, 0.55) 0%,
    rgba(8, 5, 4, 0.18) 42%,
    rgba(8, 5, 4, 0.55) 100%
  );
  pointer-events: none;
}

.sheader .content-wrap,
.sheader .site-branding,
.sheader nav {
  position: relative;
  z-index: 1;
}

.site-branding {
  text-align: center;
  padding: 24px 16px 8px !important;
}

.site-title {
  font-size: clamp(2.4rem, 6vw, 4.4rem) !important;
  line-height: 1.05 !important;
  margin: 0 !important;
  text-shadow: 0 2px 24px rgba(0, 0, 0, 0.55);
}

.site-title a,
.site-title a:hover,
.header-text,
.sheader .site-title a,
.sheader .site-description {
  color: #fff8f0 !important;
}

.site-description {
  margin: 14px 0 0 !important;
  font-family: var(--md-body) !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  color: #f0d2b8 !important;
  opacity: 0.95;
}

.primary-menu,
.super-menu,
#smobile-menu {
  background: transparent !important;
  border: 0 !important;
}

.primary-menu .content-wrap {
  padding: 8px 0 18px !important;
}

.main-navigation ul {
  justify-content: center;
}

.main-navigation ul li a,
.main-navigation ul li .sub-arrow,
.toggle-mobile-menu,
.toggle-mobile-menu:before,
.smenu-hide {
  color: #fff8f0 !important;
  font-family: var(--md-body) !important;
  font-size: 0.82rem !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
}

.main-navigation ul li a:hover {
  color: var(--md-rust) !important;
}

.pmenu ul {
  display: flex;
  justify-content: center;
  gap: 28px;
  list-style: none;
  padding: 0;
  margin: 12px 0 0;
}

.pmenu ul li a {
  border-bottom: 1px solid transparent;
  padding-bottom: 4px;
}
.pmenu ul li a:hover,
.pmenu ul li.current_page_item a {
  border-bottom-color: var(--md-rust);
  color: #fff !important;
}

/* ----- Content ----- */
#content.site-content,
.featured-content,
.content-area,
.site-main {
  background: transparent !important;
}

.content-wrap {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

article.posts-entry,
article.fbox,
.blogposts-list.fbox,
.single article.fbox,
.page article.fbox {
  background: var(--md-paper) !important;
  border: 1px solid var(--md-line) !important;
  border-radius: 2px !important;
  box-shadow: none !important;
  padding: 2.4rem 2.2rem 2rem !important;
  margin: 2rem auto !important;
}

.blogposts-list h2 a,
 .blogposts-list h2 a:hover,
.entry-title a,
.single .content-area h1,
.page .content-area h1 {
  color: var(--md-ink) !important;
}

.blogposts-list h2,
.entry-title {
  font-size: clamp(1.55rem, 2.8vw, 2rem) !important;
  line-height: 1.3 !important;
  margin-bottom: 0.45em !important;
}

.post-data-text,
.blogposts-list .post-data-text,
.blogposts-list .post-data-text a,
.single .post-data-text,
.page .post-data-text,
.entry-meta,
.posted-on,
.byline,
.byline a {
  color: var(--md-muted) !important;
  font-family: var(--md-body) !important;
  font-size: 0.8rem !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.post-data-divider {
  background: var(--md-rust) !important;
  width: 36px !important;
  height: 2px !important;
}

.blogposts-list p,
.entry-content p {
  color: #efe4d8 !important;
  font-size: 1.125rem !important;
  line-height: 1.75 !important;
  max-width: 38em;
}

.blogpost-button,
.page-numbers li a {
  background: transparent !important;
  color: var(--md-rust) !important;
  border: 1px solid var(--md-rust) !important;
  border-radius: 0 !important;
  font-family: var(--md-body) !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  padding: 0.7em 1.2em !important;
}

.blogpost-button:hover,
.page-numbers li a:hover {
  background: var(--md-rust) !important;
  color: #140c0a !important;
}

.tag-cat-container,
.tag-cat-container a,
.blog .tag-cat-container a {
  color: var(--md-muted) !important;
  border-color: var(--md-line) !important;
}

.single .entry-content,
.page .entry-content {
  font-size: 1.125rem !important;
  line-height: 1.75 !important;
  color: #efe4d8 !important;
}

.single .entry-content a,
.page .entry-content a,
.comment-content a {
  color: var(--md-rust) !important;
  border-bottom: 1px solid rgba(210, 104, 58, 0.4);
}

.single .content-area h1,
.page .content-area h1,
.page .content-area h2,
.single .content-area h2 {
  color: var(--md-ink) !important;
}

.comments-area,
.page .comments-area,
.single .comments-area {
  border-color: var(--md-line) !important;
  color: var(--md-muted) !important;
}

.site-footer,
.site-info {
  background: #0a0706 !important;
  color: var(--md-muted) !important;
  border-top: 1px solid var(--md-line) !important;
  text-align: center;
  padding: 28px 16px 36px !important;
  font-size: 0.8rem;
  letter-spacing: 0.08em;
}

.site-info a,
.footer-column-three a {
  color: var(--md-rust) !important;
}

.footer-info-right {
  display: none !important;
}

.sheader { color: #fff; }

@media (max-width: 700px) {
  .sheader.site-header {
    min-height: 340px !important;
    padding-top: 48px !important;
  }
  article.posts-entry,
  article.fbox {
    padding: 1.5rem 1.2rem !important;
  }
}

/* ----- Layout: column centered, text left-aligned ----- */
.sheader .primary-menu.main-navigation {
  width: 100% !important;
  margin: 0 !important;
  padding: 12px 0 8px !important;
  background: linear-gradient(to bottom, rgba(8,5,4,0.62), rgba(8,5,4,0)) !important;
  border: 0 !important;
}

.sheader .primary-menu .content-wrap {
  padding: 0 !important;
  max-width: none;
}

#secondary,
.featured-sidebar,
aside#secondary {
  display: none !important;
  width: 0 !important;
}
 
#content.site-content > .content-wrap,
#content .content-wrap {
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
  width: 100% !important;
  padding-left: 20px;
  padding-right: 20px;
  box-sizing: border-box;
}

#primary.featured-content,
.featured-content.content-area,
#primary {
  float: none !important;
  width: 100% !important;
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: block !important;
}

article.posts-entry,
article.fbox,
.blogposts-list.fbox {
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
  width: 100% !important;
  max-width: 720px !important;
  box-sizing: border-box;
}

/* Default: left-align post text */
.entry-header,
.entry-title,
.entry-content,
.blogposts-list .entry-content,
.blogposts-list .entry-header,
.single .entry-header,
.single .entry-title,
.single .entry-content,
.page .entry-header,
.page .entry-title,
.page .entry-content {
  text-align: left !important;
}

.blogposts-list .text-center,
.single .text-center,
.page .text-center {
  text-align: left !important;
}

.blogposts-list .blogpost-button,
.entry-content .blogpost-button {
  display: inline-block;
}

/* Centerpiece only: The 4 Reasons (post-82) */
body.home article.post-82 .entry-header,
body.home article.post-82 .entry-title,
body.home article.post-82 .entry-content,
body.home article.post-82 .text-center,
body.single-post.postid-82 .entry-header,
body.single-post.postid-82 .entry-title,
body.single-post.postid-82 .entry-content {
  text-align: center !important;
}

body.home article.post-82 .entry-content p,
body.single-post.postid-82 .entry-content p {
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 701px) {
  .sheader .smenu-hide.toggle-mobile-menu {
    display: none !important;
  }
}

/* Hide author byline — Jaclyn preference Sep 10 2026 */
.byline,
.author.vcard,
span.byline,
.entry-meta .byline {
  display: none !important;
}

/* Hide author byline — Jaclyn preference Sep 10 2026 (strengthened) */
.byline,
.byline a,
span.byline,
.author.vcard,
.author.vcard a,
.entry-meta .byline,
.entry-meta .author,
.blog-data-wrapper .byline,
.post-data-text .byline,
.posted-on + .byline,
a[rel="author"] {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  width: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
}
/* ===== Sep 11 2026 — mobile + home news grid ===== */
img,
.entry-content img,
.wp-block-image img,
.blogposts-list img {
  max-width: 100% !important;
  height: auto !important;
}

.entry-content table,
.blogposts-list table {
  display: block;
  width: 100% !important;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.entry-content,
.blogposts-list .entry-content {
  overflow-wrap: anywhere;
  word-wrap: break-word;
}

/* Home: multi-square newsy grid */
body.home #content .content-wrap,
body.home #content.site-content > .content-wrap {
  max-width: 1120px !important;
}

body.home #primary.featured-content,
body.home .featured-content.content-area,
body.home #primary {
  max-width: 1120px !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.15rem 1.15rem;
  align-items: stretch;
}

body.home article.posts-entry,
body.home article.fbox,
body.home .blogposts-list.fbox {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 1.35rem 1.25rem 1.2rem !important;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  box-sizing: border-box;
}

/* Featured centerpiece spans full row */
body.home article.post-82 {
  grid-column: 1 / -1;
  padding: 2rem 1.75rem 1.6rem !important;
}

body.home .blogposts-list .entry-content p {
  font-size: 0.98rem !important;
  line-height: 1.55 !important;
  max-width: none;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

body.home article.post-82 .entry-content p {
  -webkit-line-clamp: unset;
  display: block;
  overflow: visible;
  font-size: 1.05rem !important;
  max-width: 38em;
  margin-left: auto;
  margin-right: auto;
}

body.home .blogposts-list h2,
body.home .blogposts-list .entry-title {
  font-size: clamp(1.15rem, 2vw, 1.45rem) !important;
  line-height: 1.25 !important;
}

body.home .blogposts-list .blogpost-button {
  margin-top: auto;
  align-self: flex-start;
}

/* Single / page keep narrow reading column */
body.single #content .content-wrap,
body.page #content .content-wrap,
body.single #primary,
body.page #primary {
  max-width: 720px !important;
}

@media (min-width: 960px) {
  body.home #primary.featured-content,
  body.home .featured-content.content-area,
  body.home #primary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  /* Keep first row roomy: featured full width, then 3-up */
  body.home article.post-82 {
    grid-column: 1 / -1;
  }
}

/* Mobile fixes */
@media (max-width: 700px) {
  .sheader.site-header {
    min-height: 220px !important;
    padding-top: 12px !important;
    padding-bottom: 20px !important;
    background-position: center 60% !important;
  }

  .site-title {
    font-size: clamp(1.75rem, 9vw, 2.4rem) !important;
  }

  .site-description {
    letter-spacing: 0.14em !important;
    font-size: 0.72rem !important;
    margin-top: 8px !important;
    padding: 0 12px;
  }

  .site-branding {
    padding: 8px 12px !important;
  }

  .pmenu ul {
    flex-wrap: wrap;
    gap: 10px 16px;
    margin: 6px 0 0;
  }

  .main-navigation ul li a,
  .toggle-mobile-menu {
    font-size: 0.72rem !important;
    letter-spacing: 0.12em !important;
  }

  #content .content-wrap,
  #content.site-content > .content-wrap {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  body.home #primary.featured-content,
  body.home .featured-content.content-area,
  body.home #primary {
    grid-template-columns: 1fr !important;
    gap: 0.85rem;
  }
  body.home article.posts-entry,
  body.home article.fbox,
  article.posts-entry,
  article.fbox {
    padding: 1.15rem 1rem !important;
    margin: 0.75rem auto !important;
  }

  body.home article.posts-entry,
  body.home article.fbox {
    margin: 0 !important;
  }

  body, p, li, td, article, .entry-content, .content-area {
    font-size: 1.02rem !important;
    line-height: 1.65 !important;
  }

  .blogposts-list h2,
  .entry-title {
    font-size: clamp(1.25rem, 5.5vw, 1.55rem) !important;
  }

  .single .entry-content,
  .page .entry-content,
  .blogposts-list p,
  .entry-content p {
    font-size: 1.02rem !important;
  }

  /* Avoid horizontal scroll from wide blocks */
  body, .site, #page, #content {
    overflow-x: hidden;
  }
}

/* Home DOM wrapper: cards are inside #main */
body.home #primary.featured-content,
body.home .featured-content.content-area,
body.home #primary {
  display: block !important;
}
body.home #primary > .site-main {
  max-width: 1120px !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.15rem 1.15rem;
  align-items: stretch;
}
@media (min-width: 960px) {
  body.home #primary > .site-main {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 700px) {
  body.home #primary > .site-main {
    grid-template-columns: 1fr !important;
    gap: 0.85rem;
  }
}

/* ===== Sep 11 — mobile header redo + deemphasize dates ===== */

/* Posted date: quiet, not a banner */
.posted-on,
.entry-meta,
.post-data-text,
.blogposts-list .post-data-text,
.blogposts-list .post-data-text a,
.single .post-data-text,
.page .post-data-text,
.posted-on a,
.entry-meta a {
  color: rgba(196, 169, 148, 0.55) !important;
  font-size: 0.68rem !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  font-weight: 400 !important;
  opacity: 1 !important;
}

.post-data-divider {
  background: rgba(210, 104, 58, 0.25) !important;
  width: 18px !important;
  height: 1px !important;
  opacity: 0.5 !important;
  margin: 0.35em 0 0.5em !important;
}

.blog-data-wrapper,
.post-data-positioning {
  margin-top: 0.25em !important;
  margin-bottom: 0.35em !important;
}

/* Mobile header: compact masthead, not a tall billboard */
@media (max-width: 700px) {
  .sheader.site-header {
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    padding-top: 8px !important;
    padding-bottom: 14px !important;
    background-size: cover !important;
    background-position: center 45% !important;
  }

  .sheader.site-header::before {
    background: linear-gradient(
      to bottom,
      rgba(8, 5, 4, 0.72) 0%,
      rgba(8, 5, 4, 0.45) 55%,
      rgba(8, 5, 4, 0.78) 100%
    ) !important;
  }

  .sheader > .content-wrap {
    flex: 0 0 auto !important;
    align-items: flex-start !important;
    padding: 0 !important;
  }

  .site-branding {
    padding: 4px 14px 2px !important;
    text-align: left !important;
  }

  .site-title {
    font-size: 1.55rem !important;
    line-height: 1.1 !important;
    text-shadow: 0 1px 12px rgba(0, 0, 0, 0.65);
  }

  .site-description {
    margin: 4px 0 0 !important;
    font-size: 0.65rem !important;
    letter-spacing: 0.1em !important;
    font-weight: 500 !important;
    opacity: 0.85;
    padding: 0 !important;
    text-align: left !important;
  }

  .sheader .primary-menu.main-navigation {
    padding: 4px 0 2px !important;
    background: transparent !important;
  }

  .pmenu ul {
    justify-content: flex-start;
    gap: 8px 14px;
    margin: 4px 0 0;
    padding: 0 14px;
  }

  .toggle-mobile-menu,
  .smenu-hide {
    margin: 4px 10px !important;
  }

  /* Dates even quieter on small screens */
  .posted-on,
  .entry-meta,
  .post-data-text,
  .blogposts-list .post-data-text,
  .blogposts-list .post-data-text a {
    font-size: 0.62rem !important;
    color: rgba(196, 169, 148, 0.42) !important;
  }
}
