/*
Theme Name: Jovayna GrandPortfolio Child
Description: Child theme for Jovayna's Commissioned and Personal photography galleries.
Author: Jovayna
Template: grandportfolio
Version: 1.0.11
Text Domain: jovayna-grandportfolio-child
*/

/* Personal archive and the shared off-black / warm-white gallery palette. */
html body.page-template-gallery-archive-3-contained,
html body.page-template-gallery-archive-3-contained #wrapper,
html body.page-template-gallery-archive-3-contained #page_content_wrapper,
html body.page-template-gallery-archive-3-contained #page_caption,
html body.single-galleries,
html body.single-galleries #wrapper,
html body.single-galleries #page_content_wrapper,
html body.single-galleries #page_caption {
  background: #121211 !important;
  color: #eceae3 !important;
}

html body.page-template-gallery-archive-3-contained .header_style_wrapper,
html body.page-template-gallery-archive-3-contained .top_bar,
html body.single-galleries .header_style_wrapper,
html body.single-galleries .top_bar {
  background: #121211 !important;
}

html body.page-template-gallery-archive-3-contained .top_bar,
html body.single-galleries .top_bar {
  border-bottom-color: rgba(236, 234, 227, 0.16) !important;
}

html body.page-template-gallery-archive-3-contained #page_caption,
html body.single-galleries #page_caption {
  display: block !important;
  padding-top: 140px !important;
}

html body.page-template-gallery-archive-3-contained #page_caption h1,
html body.page-template-gallery-archive-3-contained #portfolio_filter_wrapper .gallery_archive_desc h4,
html body.page-template-gallery-archive-3-contained #main_menu > li > a,
html body.single-galleries #page_caption h1,
html body.single-galleries #main_menu > li > a {
  color: #eceae3 !important;
}

html body.page-template-gallery-archive-3-contained #main_menu > li > a::before,
html body.single-galleries #main_menu > li > a::before {
  background: #eceae3 !important;
}

html body.page-template-gallery-archive-3-contained .logo_wrapper,
html body.page-template-gallery-archive-3-contained #menu_wrapper,
html body.page-template-gallery-archive-3-contained #main_menu,
html body.single-galleries .logo_wrapper,
html body.single-galleries #menu_wrapper,
html body.single-galleries #main_menu {
  display: block !important;
}

/* Keep every archive title visible below its cover instead of hover-only. */
body.page-template-gallery-archive-3-contained #portfolio_filter_wrapper .element.grid.classic3_cols {
  padding-bottom: 54px !important;
  overflow: visible !important;
}

body.page-template-gallery-archive-3-contained #portfolio_filter_wrapper .gallery_type.archive,
body.page-template-gallery-archive-3-contained #portfolio_filter_wrapper .gallery_type.archive > a,
body.page-template-gallery-archive-3-contained #portfolio_filter_wrapper .gallery_img_slides {
  overflow: visible !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.page-template-gallery-archive-3-contained #portfolio_filter_wrapper .gallery_archive_desc {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: auto !important;
  bottom: -42px !important;
  width: 100% !important;
  height: auto !important;
  padding: 12px 0 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  color: #eceae3 !important;
  text-align: center !important;
  z-index: 5 !important;
}

body.page-template-gallery-archive-3-contained #portfolio_filter_wrapper .gallery_archive_desc h4 {
  display: block !important;
  margin: 0 !important;
  color: #eceae3 !important;
  font-family: Arial, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Personal projects use the three-column GrandPortfolio template.
   This turns its visual rhythm into 2 images, then 3, then 2, repeating. */
body.single-galleries #portfolio_filter_wrapper.gallery.three_cols {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 28px !important;
  height: auto !important;
  overflow: visible !important;
}

body.single-galleries #portfolio_filter_wrapper.gallery.three_cols .element {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 1 !important;
  transform: none !important;
}

body.single-galleries #portfolio_filter_wrapper.gallery.three_cols .element:nth-child(5n + 1),
body.single-galleries #portfolio_filter_wrapper.gallery.three_cols .element:nth-child(5n + 2) {
  grid-column: span 3;
}

body.single-galleries #portfolio_filter_wrapper.gallery.three_cols .element:nth-child(5n + 3),
body.single-galleries #portfolio_filter_wrapper.gallery.three_cols .element:nth-child(5n + 4),
body.single-galleries #portfolio_filter_wrapper.gallery.three_cols .element:nth-child(5n + 5) {
  grid-column: span 2;
}

body.single-galleries #portfolio_filter_wrapper.gallery.three_cols .one_third.gallery3 {
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
}

body.single-galleries #portfolio_filter_wrapper.gallery.three_cols img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

@media (max-width: 767px) {
  body.single-galleries #portfolio_filter_wrapper.gallery.three_cols {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  body.single-galleries #portfolio_filter_wrapper.gallery.three_cols .element {
    grid-column: span 1 !important;
  }
}


/* Minimal legal footer and legal pages. */
.jovayna-legal-footer {
  clear: both;
  position: relative;
  z-index: 10;
  width: 100%;
  box-sizing: border-box;
  padding: 24px 32px;
  border-top: 1px solid rgba(236, 234, 227, 0.14);
  background: #121211;
  color: #eceae3;
  font-family: Arial, sans-serif;
  font-size: 13px;
  line-height: 1.5;
}

.jovayna-legal-footer__inner {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px 32px;
}

.jovayna-legal-footer__copyright {
  color: rgba(236, 234, 227, 0.68);
}

.jovayna-legal-footer__nav {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 24px;
}

.jovayna-legal-footer__nav a,
.jovayna-legal-footer__nav a:visited {
  color: rgba(236, 234, 227, 0.78);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: color 160ms ease, border-color 160ms ease;
}

.jovayna-legal-footer__nav a:hover,
.jovayna-legal-footer__nav a:focus {
  color: #eceae3;
  border-bottom-color: rgba(236, 234, 227, 0.62);
}

html body.jovayna-legal-page,
html body.jovayna-legal-page #wrapper,
html body.jovayna-legal-page #page_content_wrapper,
html body.jovayna-legal-page #page_caption {
  background: #121211 !important;
  color: #eceae3 !important;
}

html body.jovayna-legal-page .header_style_wrapper,
html body.jovayna-legal-page .top_bar {
  background: #121211 !important;
}

html body.jovayna-legal-page .top_bar {
  border-bottom-color: rgba(236, 234, 227, 0.16) !important;
}

html body.jovayna-legal-page #main_menu > li > a,
html body.jovayna-legal-page #page_caption h1 {
  color: #eceae3 !important;
}

html body.jovayna-legal-page #main_menu > li > a::before {
  background: #eceae3 !important;
}

html body.jovayna-legal-page #page_caption {
  display: block !important;
  padding-top: 140px !important;
}

html body.jovayna-legal-page #page_content_wrapper {
  padding-bottom: 72px !important;
}

html body.jovayna-legal-page #page_content_wrapper .inner {
  max-width: 920px !important;
}

html body.jovayna-legal-page #page_content_wrapper .sidebar_content.full_width {
  width: 100% !important;
  float: none !important;
}

html body.jovayna-legal-page #page_content_wrapper h2 {
  margin-top: 38px;
  margin-bottom: 12px;
  color: #eceae3 !important;
  font-size: 24px;
  line-height: 1.3;
  font-weight: 400;
}

html body.jovayna-legal-page #page_content_wrapper p,
html body.jovayna-legal-page #page_content_wrapper li {
  color: rgba(236, 234, 227, 0.84) !important;
  font-size: 16px;
  line-height: 1.75;
}

html body.jovayna-legal-page #page_content_wrapper a,
html body.jovayna-legal-page #page_content_wrapper a:visited {
  color: #eceae3 !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}

@media (max-width: 767px) {
  .jovayna-legal-footer {
    padding: 22px 20px;
  }

  .jovayna-legal-footer__inner {
    flex-direction: column;
    align-items: flex-start;
  }

  html body.jovayna-legal-page #page_caption {
    padding-top: 110px !important;
  }

  html body.jovayna-legal-page #page_content_wrapper {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}
