/* ============================================================
   Archive — calm custom styles (loads after style.css)
   ============================================================ */
:root {
  --paper: #f3f0e9;
  --paper-soft: #f8f5ef;
  --ink: #2e2b26;
  --ink-soft: #6b655b;
  --line: rgba(46, 43, 38, 0.14);
  --accent: #9a8c7a;
}

/* ---- Base palette + type (whole site) ---- */
body {
  background:
    radial-gradient(120% 80% at 50% -10%, var(--paper-soft), transparent 60%),
    linear-gradient(180deg, var(--paper-soft), var(--paper)) !important;
  color: var(--ink) !important;
  font-family: "Montserrat", "Segoe UI", system-ui, sans-serif !important;
  -webkit-font-smoothing: antialiased;
}
a { color: var(--accent); }
a:hover { color: var(--ink); }
h1, h2, h3, h4,
.entry-title, .page-title {
  font-family: "Merriweather", Georgia, serif !important;
  font-weight: 500 !important;
  color: var(--ink);
}

/* ---- Header: hide title, center the nav ---- */
.site-branding { display: none !important; }
.menu-toggle  { display: none !important; }

/* ---- Hide the automatic page-title heading on every page ---- */
.entry-title,
.page-title {
  display: none !important;
}

.site-header,
.site-header-main { background: transparent !important; border: 0 !important; }
.site-header { padding: 12px 16px 0 !important; }
.site-header-main {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  max-width: none !important;
  min-height: 0 !important;
}
.site-header-menu,
.site-header .main-navigation {
  display: block !important;
  float: none !important;
  clear: none !important;
  width: auto !important;
  margin: 0 !important;
  border: 0 !important;
}
.site-header .main-navigation ul {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 4px 30px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: 0 !important;
}
.site-header .main-navigation li { float: none !important; margin: 0 !important; border: 0 !important; }
.site-header .main-navigation a {
  display: inline-block !important;
  color: var(--ink) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: 0.04em !important;
  padding: 10px 2px !important;
  transition: color 0.2s ease !important;
}
.site-header .main-navigation a:hover { color: var(--accent) !important; }

/* ---- Content ---- */
.site,
.site-inner {
  background: transparent !important;
}

.site-content {
  background: transparent !important;
  padding-right: clamp(14px, 4.5vw, 60px) !important;
  padding-left: clamp(14px, 4.5vw, 60px) !important;
}

/* Twenty Sixteen adds an uneven right margin at tablet widths; keep HTMLy pages centered. */
.content-area,
.site-main,
.site-main > article,
.hentry {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box;
}

.entry-header,
.entry-summary,
.entry-content,
.entry-footer,
.page-content,
.page-header,
.post-thumbnail,
.comments-area,
.image-navigation,
.post-navigation,
.pagination {
  float: none !important;
  width: 100% !important;
  max-width: 1180px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box;
}

.entry-content > .content,
.text-formatted,
.field--name-body,
.field--name-body > .content {
  width: 100% !important;
  max-width: none !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box;
}

.entry-content img,
.entry-content video,
.entry-content iframe {
  max-width: 100%;
}

/* ---- Footer: calm, muted, centered ---- */
.site-footer {
  background: transparent !important;
  border-top: 1px solid var(--line) !important;
  margin-top: 48px !important;
  padding: 28px 16px 40px !important;
  text-align: center !important;
  color: var(--ink-soft) !important;
}
.site-footer .site-title { display: none !important; }   /* hides the name in the footer too */
.site-footer .main-navigation,
.site-footer .social-navigation { float: none !important; width: auto !important; }
.site-footer .main-navigation ul {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 4px 24px !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
  list-style: none !important;
}
.site-footer .main-navigation li { float: none !important; margin: 0 !important; }
.site-footer .main-navigation a {
  color: var(--ink-soft) !important;
  font-size: 12px !important;
  letter-spacing: 0.04em !important;
}
.site-footer .main-navigation a:hover { color: var(--accent) !important; }
.site-footer .copyright { display: block !important; font-size: 13px !important; color: var(--ink-soft) !important; }
.site-footer .copyright p {
  display: inline !important;
}
/* ===== Nav polish — uniform color + refined hover ===== */
.site-header { padding: 18px 16px 16px !important; }

#site-navigation ul {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 2px 28px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
#site-navigation li { float: none !important; margin: 0 !important; }

/* every link state -> same calm ink color */
#site-navigation a,
#site-navigation a:link,
#site-navigation a:visited,
#site-navigation a:active {
  position: relative !important;
  display: inline-block !important;
  color: var(--ink) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.09em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  padding: 8px 2px !important;
}

/* underline that grows on hover and on the current page */
#site-navigation a::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 2px !important;
  height: 1px !important;
  background: var(--accent) !important;
  transform: scaleX(0) !important;
  transition: transform 0.25s ease !important;
}
#site-navigation a:hover,
#site-navigation li.active > a,
#site-navigation li.current-menu-item > a {
  color: var(--accent) !important;
}
#site-navigation a:hover::after,
#site-navigation li.active > a::after,
#site-navigation li.current-menu-item > a::after {
  transform: scaleX(1) !important;
}

/* ===== Global layout centering fix =====
   Twenty Sixteen shifts page bodies sideways between phone and desktop widths
   by giving .entry-content a much larger right margin than left margin.
   Keep this at the end of custom.css so it is the final local override. */
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

html body .site-content {
  box-sizing: border-box !important;
  width: 100% !important;
  padding-right: clamp(14px, 4.5vw, 60px) !important;
  padding-left: clamp(14px, 4.5vw, 60px) !important;
}

html body .content-area,
html body .site-main,
html body .site-main > article,
html body article.hentry {
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

html body .site-main > article > .entry-header,
html body .site-main > article > .entry-content,
html body .site-main > article > .entry-summary,
html body .site-main > article > .entry-footer,
html body .site-main > article > .page-content,
html body .site-main > article > .post-thumbnail,
html body .site-main > article > .comments-area {
  float: none !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 1180px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

html body .entry-content > .content,
html body .entry-content .text-formatted,
html body .entry-content .field--name-body,
html body .entry-content .field--name-body > .content {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

html body .entry-content img,
html body .entry-content video,
html body .entry-content iframe {
  max-width: 100% !important;
}

/* ---- Photo essays ---- */
.photo-essay-image-wrap {
  margin: 2.2rem auto;
  text-align: center;
}

.photo-essay-image-wrap img,
.photo-essay-image {
  display: inline-block !important;
  height: auto !important;
  max-width: 100% !important;
}

.photo-essay-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  margin: 56px auto 12px;
  padding-top: 24px;
  border-top: 1px solid var(--line);
}

.photo-essay-nav a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 10px 18px;
  border: 1px solid rgba(46, 43, 38, 0.2);
  color: var(--ink) !important;
  font-family: "Montserrat", "Segoe UI", system-ui, sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-decoration: none !important;
  text-transform: uppercase;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.photo-essay-nav a:hover,
.photo-essay-nav a:focus {
  border-color: var(--accent);
  background: rgba(154, 140, 122, 0.12);
  color: var(--ink) !important;
}

.photo-essay-nav-next {
  margin-left: auto;
}

@media screen and (max-width: 38em) {
  .photo-essay-nav {
    display: grid;
    grid-template-columns: 1fr;
  }

  .photo-essay-nav a,
  .photo-essay-nav-next {
    width: 100%;
    margin-left: 0;
  }
}

@media screen and (min-width: 44.375em) and (max-width: 56.874em) {
  html body:not(.custom-background-image)::before,
  html body:not(.custom-background-image)::after {
    display: none !important;
  }

  html body .site,
  html body .site-inner {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  html body .site {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  html body .entry-header,
  html body .post-thumbnail,
  html body .entry-content,
  html body .entry-summary,
  html body .entry-footer,
  html body .comments-area,
  html body .image-navigation,
  html body .post-navigation,
  html body .page-header,
  html body .page-content,
  html body .content-bottom-widgets {
    float: none !important;
    width: 100% !important;
    max-width: 1180px !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }
}

@media screen and (orientation: landscape) and (max-height: 31.25em) {
  html body:not(.custom-background-image)::before,
  html body:not(.custom-background-image)::after {
    display: none !important;
  }

  html body .site,
  html body .site-inner {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  html body .site {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  html body .site-content {
    padding-right: clamp(14px, 4.5vw, 44px) !important;
    padding-left: clamp(14px, 4.5vw, 44px) !important;
  }

  html body .entry-header,
  html body .post-thumbnail,
  html body .entry-content,
  html body .entry-summary,
  html body .entry-footer,
  html body .comments-area,
  html body .image-navigation,
  html body .post-navigation,
  html body .page-header,
  html body .page-content,
  html body .content-bottom-widgets {
    float: none !important;
    width: 100% !important;
    max-width: 1180px !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }
}
