/**handles:style**/
/*
Theme Name: NU's SSG 2023Child theme
Theme URI: https://wordpress.org/themes/twentytwentythree
Author: Nubbernaut Cooperative
Author URI: https://nubbernaut.com
Description: A clean simple theme with added useful blocks
Requires at least: 6.1
Tested up to: 6.1
Requires PHP: 5.6
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
Text Domain: ssgtwentytwentythree
Template: twentytwentythree
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, accessibility-ready, blog, portfolio, news
*/

@media (max-width: 745px) {
  html {
    font-size: 18px;
  }
}
body header > div.desktop-only {
  height: 55px;
}

body:not(.home):not(.single-artwork) h1 {
  font-size: 30px !important;
}
.artwork-template-default .artwork-content p {
  font-size: 18px;
}
div.artwork-content p,
div.artfair-content p,
body .artwork-content {
  margin-block-start: 0;
}

div.artwork-content p:last-of-type {
  margin-top: 1.5rem;
}

details.wp-block-details p {
  margin-block-start: 1.5rem;
}

@media (min-width: 868px) {
  .mobile-only {
    display: none !important;
  }

  .desktop-only {
    display: inherit;
  }

  .nu-searchboxToggle .desktop-only {
    display: none;
  }
}

@media (max-width: 869px) {
  .mobile-only {
    display: inherit;
  }

  .mobile-text-flow br {
    display: none;
  }

  .mobile-padding {
    padding-right: 2rem !important;
    padding-left: 2rem !important;
  }

  .desktop-only {
    display: none !important;
  }
  .mobile-full-width {
    margin-right: calc(var(--wp--style--root--padding-right) * -1) !important;
    margin-left: calc(var(--wp--style--root--padding-left) * -1) !important;
  }
  .mobile-partial-width {
    padding-right: var(--wp--style--root--padding-right);
    padding-left: var(--wp--style--root--padding-left);
  }

  .wp-block-navigation__responsive-container-close svg,
  .wp-block-navigation__responsive-container-open svg {
    height: 44px;
    width: 44px;
  }

  .fa-solid.fa-magnifying-glass {
    font-size: 33px;
  }
  .nu-searchboxToggle {
    display: none;
  }
}

.hidden-content {
  display: none !important;
}

.breadcrumbs {
  font-size: 18px !important;
  color: #656565 !important;
  letter-spacing: 0 !important;
}

.non-scaling-font {
  font-size: 18px !important;
}

.grey-thin-border {
  border-top: 1px solid #707070;
}

/* ---- Header Customizations ---- */
body .wp-site-blocks > * + * {
  margin-block-start: 0.25em;
}

.mobile-header-logo a img,
.desktop-header-logo a img {
  vertical-align: text-bottom !important;
}

.desktop-header-logo a img {
  height: 18px;
  width: 300px;
}

nav.desktop-only .wp-block-navigation__container {
  gap: 1em;
}

@media screen and (min-width: 868px) and (max-width: 1200px) {
  nav.desktop-only .wp-block-navigation__container {
    gap: 1em;
  }

  header div.desktop-only > div.desktop-only {
    flex-wrap: wrap !important;
    justify-content: center !important;
  }
  .desktop-header-logo a img {
    margin: 0 2em;
  }

  body header > div.desktop-only {
    height: 108px;
  }
  .no-ipad {
    display: none !important;
  }
}

.fancybox__caption{
text-align: center;
}

button:hover,
.wp-element-button:hover {
  cursor: pointer;
  text-decoration: underline;
}
/* This rule mimics safari and firefox's default focus appearance for form elements */
button:focus,
.wp-element-button:hover {
  outline: 2px solid #5b9dd9 !important;
  outline-offset: -2px !important;
}
button:focus {
  background-color: var(--wp--preset--color--primary) !important;
}

/* ---- Menu Customizations ----- */
.mobile-only nav svg path {
  stroke: black;
}

.mobile-only nav button:has(svg):focus {
  background-color: white !important;
}

@media screen and (min-width: 767px) {
  .wp-block-navigation__container span:hover {
    color: var(--wp--preset--color--primary);
  }
  .wp-block-navigation-item__label:where(
      :not(.wp-block-navigation-item__label:active)
    ):hover {
    text-decoration: underline;
    text-decoration-color: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--primary);
  }
  .wp-block-navigation-item__content:where(
      :not(.wp-block-navigation-item__content:active)
    ):hover
    .wp-block-navigation-item__label {
    text-decoration: underline;
    text-decoration-color: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--primary);
  }
}
a .wp-block-navigation-item__content {
  text-decoration: none;
}

@media screen and (max-width: 867px) {
  .wp-block-navigation__responsive-dialog {
    margin-top: 0px !important;
  }
  .wp-block-navigation__responsive-dialog a:focus {
    text-decoration: underline !important;
    color: var(--wp--preset--color--white) !important;
  }

  .mobile-only ul.wp-block-social-links {
    width: 100%;
    border-top: 2px solid white;
    height: 1px;
    padding-top: 1.8rem;
  }
}
i.fa-solid.fa-magnifying-glass {
  position: relative;
}

.wp-block-group.mobile-only.is-content-justification-space-between.is-nowrap.is-layout-flex {
  flex-direction: row-reverse;
}

.entry-content .wp-block-file:not(.wp-element-button) {
  font-size: 18px;
}

.mobile-only .nu-searchboxToggle > i.fa-solid.fa-magnifying-glass:after {
  content: "Search";
  font-size: 12px;
  font-family: "Graphik-Regular";
  position: absolute;
  bottom: -1rem;
  left: 0;
  font-weight: 100;
}

nav.is-responsive.mobile-only.wp-block-navigation {
  margin-top: -20px;
}

.nu-searchboxToggle > i.fa-solid.fa-magnifying-glass {
  height: 1rem;
  width: 1rem;
  display: block;
  padding-top: 0 !important;
  margin-top: -2px;
}

nav.is-responsive.mobile-only.wp-block-navigation:after {
  content: "Menu";
  font-size: 12px;
  font-family: "Graphik-Regular";
  position: absolute;
  bottom: -1rem;
  left: 0.35rem;
  font-weight: 100;
}

ul.wp-block-navigation__container {
  width: 100%;
}

li.wp-block-navigation-item:has(.wp-block-social-links) {
  width: 100%;
}

/* --- Specific page bolding --- */
li.wp-block-navigation-item.wp-block-navigation-link.current-menu-item,
.wp-block-navigation-item.wp-block-navigation-submenu:first-of-type:has(
    .current-menu-item
  ),
.wp-block-navigation-item:has(.current-menu-item),
.post-type-archive-artfair
  li.wp-block-navigation-item.wp-block-navigation-link:nth-child(4),
.post-type-artfair
  li.wp-block-navigation-item.wp-block-navigation-link:nth-child(4),
.post-type-publication
  li.wp-block-navigation-item.wp-block-navigation-link:nth-child(5) {
  font-weight: 600;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 5px;
}

.current-menu-item:hover,
.wp-block-navigation-item.wp-block-navigation-submenu:first-of-type:has(
    .current-menu-item
  ):hover,
.wp-block-navigation-item:has(.current-menu-item):hover,
.post-type-archive-artfair
  li.wp-block-navigation-item.wp-block-navigation-link:nth-child(3):hover,
.post-type-artfair
  li.wp-block-navigation-item.wp-block-navigation-link:nth-child(3):hover,
.post-type-archive-publication
  li.wp-block-navigation-item.wp-block-navigation-link:nth-child(5):hover,
.post-type-publication
  li.wp-block-navigation-item.wp-block-navigation-link:nth-child(5):hover {
  text-decoration-color: var(--wp--preset--color--primary);
}

/* --- Footer Customizations --- */
@media (max-width: 745px) {
  .footer-social-icons {
    justify-content: center !important;
  }
}
body div footer.wp-block-template-part {
  margin-block-start: 0px;
}

@media (max-width: 745px) {
  footer {
    text-align: center;
  }
}

/* ---- Artwork Customizations ---- */
.artwork-template-default .wp-block-group.swap-content h1 {
  line-height: 29px;
}
.single-artwork .ssg-inquire-button {
  margin-top: 6px;
}

/* ---- Artfair Customizations ---- */

.artfair-grid-layout {
  display: grid;
  grid-template-columns: 2fr 0.6fr;
  grid-gap: 1rem;
}

.artfair-grid-layout #wp-react-widget {
  grid-column: 1;
  grid-row: 1 / 10;
  margin-right: 1rem !important;
}

.artfair-grid-layout .artfair-title,
.artfair-grid-layout .artfair-content,
.artfair-grid-layout .wp-block-ssg-artisttaxonomylist,
div:has(.ssg-inquire-button),
.artfair-grid-layout .ssg-inquire-button,
.inquire-form {
  grid-column: 2;
  width: 100%;
}

@media (max-width: 868px) {
  .artfair-grid-layout {
    grid-template-columns: 1fr;
    row-gap: 1rem;
  }

  .artfair-grid-layout #wp-react-widget,
  .artfair-grid-layout .artfair-title,
  .artfair-grid-layout .artfair-content,
  .artfair-grid-layout .wp-block-ssg-artisttaxonomylist,
  div:has(.ssg-inquire-button),
  .inquire-form {
    grid-column: 1;
    grid-row: unset;
  }

  .artfair-grid-layout .artfair-title {
    order: 1;
  }

  .artfair-grid-layout .artfair-content {
    order: 2;
  }

  .artfair-grid-layout #wp-react-widget {
    margin-right: 0 !important;
    order: 3;
  }

  .artfair-grid-layout div:has(.ssg-inquire-button) {
    order: 4;
  }

  .artfair-grid-layout .inquire-form {
    order: 5;
  }

  .artfair-grid-layout .wp-block-ssg-artisttaxonomylist {
    order: 6;
  }
}

/* ---- Search ---- */

.search-results .wp-block-post-featured-image img {
  height: inherit;
  object-fit: contain;
  object-position: center;
}
.search .wp-block-post-featured-image a {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
}

.search-gallery {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr 1fr !important;
  gap: 2em !important;
  font-size: 18px !important;
  padding-left: 0 !important;
  list-style-type: none !important;
}
@media (max-width: 1080px) {
  .search-gallery {
    grid-template-columns: 1fr 1fr 1fr !important;
  }
}
@media (max-width: 800px) {
  .search-gallery {
    grid-template-columns: 1fr 1fr !important;
  }
}
@media (max-width: 768px) {
  .search-gallery {
    justify-content: center !important;
  }
}
@media (max-width: 600px) {
  .search-gallery {
    grid-template-columns: 1fr !important;
  }
}
.search-gallery li {
  padding-top: 1em !important;
  padding-bottom: 1em !important;
  text-align: center !important;
}
.search-gallery img {
  height: 300px !important;
  width: 300px !important;
  -o-object-fit: contain !important;
  object-fit: contain !important;
}
@media (max-width: 1290px) {
  .search-gallery img {
    aspect-ratio: 1 !important;
    -o-object-fit: contain !important;
    object-fit: contain !important;
    height: auto !important;
    width: 100% !important;
  }
}
@media (max-width: 768px) {
  .search-gallery img {
    aspect-ratio: initial !important;
    height: auto !important;
    width: 100% !important;
    -o-object-fit: contain !important;
    object-fit: contain !important;
  }
}

@media screen and (max-width: 768px) {
  h1.wp-block-heading {
    font-weight: 500 !important;
  }
}
/**
 * The following styles get applied both on the front of your site
 * and in the editor.
 *
 * Replace them with your own styles or remove the file completely.
 */

.wp-block-ssg-recentacquistionsfullpage {
  div.mobile-only {
    text-align: center;
    width: 100%;
  }
  .recent-header {
    display: flex;
    border-bottom: var(--wp--preset--color--ltgray) solid 1px;
    flex-direction: row;
    justify-content: space-between;
  }
  .recent-header .recent-title {
    font-size: 24px;
    font-weight: 600;
  }
  .acquisitions-gallery {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 2em;
    font-size: 18px;
    padding-left: 0;
    list-style-type: none;
  }
  @media (max-width: 1080px) {
    .acquisitions-gallery {
      grid-template-columns: 1fr 1fr 1fr;
    }
  }
  @media (max-width: 800px) {
    .acquisitions-gallery {
      grid-template-columns: 1fr 1fr;
    }
  }
  @media (max-width: 768px) {
    .acquisitions-gallery {
      justify-content: center;
    }
  }
  @media (max-width: 600px) {
    .acquisitions-gallery {
      grid-template-columns: 1fr;
    }
  }
  .acquisitions-gallery .artwork-block {
    padding-top: 1em;
    padding-bottom: 1em;
    text-align: center;
  }
  .acquisitions-gallery img {
    height: 300px;
    width: 300px;
    object-fit: contain;
  }
  @media (max-width: 1290px) {
    .acquisitions-gallery img {
      aspect-ratio: 1;
      object-fit: contain;
      height: auto;
      width: 100%;
    }
  }
  @media (max-width: 768px) {
    .acquisitions-gallery img {
      aspect-ratio: initial;
      height: auto;
      width: 100%;
      object-fit: contain;
    }
  }
}
h1.wp-block-heading {
  @media screen and (max-width: 768px) {
    font-weight: 500 !important;
  }
}

/* ---- animation import from live site ---- */
.wp-site-blocks,
.footer-content {
  -webkit-animation: fadein 1s; /* Safari, Chrome and Opera > 12.1 */
  -moz-animation: fadein 1s; /* Firefox < 16 */
  -ms-animation: fadein 1s; /* Internet Explorer */
  -o-animation: fadein 1s; /* Opera < 12.1 */
  animation: fadein 1s;
}
.fade-in {
  -webkit-animation: fadein 1s; /* Safari, Chrome and Opera > 12.1 */
  -moz-animation: fadein 1s; /* Firefox < 16 */
  -ms-animation: fadein 1s; /* Internet Explorer */
  -o-animation: fadein 1s; /* Opera < 12.1 */
  animation: fadein 1s;
}
.hidden-content {
  display: none;
  position: absolute;
}
@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Firefox < 16 */
@-moz-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Internet Explorer */
@-ms-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Opera < 12.1 */
@-o-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fadeout {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
/* Firefox < 16 */
@-moz-keyframes fadeout {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadeout {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
/* Internet Explorer */
@-ms-keyframes fadeout {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
/* Opera < 12.1 */
@-o-keyframes fadeout {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

.search-results .wp-block-post h2 {
  font-size: var(--wp--preset--font-size--medium);
  text-align: center;
  max-width: 70%;
  margin: auto;
}

.nu-searchbox {
  background-color: rgba(0, 0, 0, 0.9) !important;
  font-family: var(--wp--preset--font-family--graphik);
  color: var(--wp--preset--color--white) !important;
  margin-block-start: 0;
  position: fixed !important;
  top: 0px !important;
  height: 100vh !important;
  padding: 0 !important;
  width: 100vw !important;
  backdrop-filter: blur(1px);
  padding-top: 8rem !important;
}

@media screen and (max-width: 868px) {
  .nu-searchbox {
    flex-grow: unset;
  }
  .nu-searchbox form > div > div {
    max-width: unset !important;
    margin-left: 1rem;
    margin-right: 1rem;
  }

  .nu-searchbox input[type="submit"] {
    left: 0 !important;
  }

  .nu-searchbox .fa-magnifying-glass:before,
  .fa-search:before {
    font-size: 23px;
    top: -0.3rem !important;
  }
}

@media screen and (max-width: 745px) {
  .nu-searchbox form > div > div {
    margin-left: 1rem !important;
    margin-right: 1rem !important;
  }
  body .nu-searchboxToggle {
    display: none;
  }
}

.nu-searchbox label {
  display: block;
  position: absolute;
  top: 5rem;
}

.nu-searchbox .fa-magnifying-glass:before,
.fa-search:before {
  content: "\f002";
  color: rgba(0, 0, 0, 0.7);
  position: absolute;
  left: -2.2rem;
  top: -0.2rem;
  font-size: 23px;
}

body button.nu-searchboxClose {
  border: none;
  position: fixed;
  color: white;
  right: 5vw;
  top: 2vw;
  font-size: 36px;
}
button.nu-searchboxClose:hover {
  cursor: pointer;
}

.nu-searchbox form {
  margin: auto;
  font-family: var(--wp--preset--font-family--graphik);
  max-width: unset !important;
}

.nu-searchbox form > div > div {
  margin-left: calc(50% - 250px);
  margin-right: calc(50% - 250px);
  border-bottom: 1px solid black;
  position: relative;
  margin-top: 0.5em;
  height: 1.6em;
  background-color: white;
  padding: 0.5rem 1.5rem;
  border-radius: 3px;
}

.nu-searchbox input[type="submit"] {
  position: absolute;
  top: 4.7em;
  left: calc(50% + -12.5rem);
  color: #ffffff;
  background-color: var(--wp--preset--color--primary);
  border: none;
  padding: 0.5rem 2rem 0.5rem 2rem;
  font-family: var(--wp--preset--font-family--graphik);
}

.nu-searchbox input[type="text"] {
  background-color: inherit;
  font-family: var(--wp--preset--font-family--graphik);
  border: none;
  width: 80%;
}

.nu-searchbox input[type="text"]::placeholder {
  font-weight: 900;
}

button.forminator-button.forminator-button-submit:hover {
  text-decoration: underline !important;
}

/* This rule mimics safari and firefox's default focus appearance for form elements */
button.forminator-button.forminator-button-submit:focus {
  outline: 2px solid #5b9dd9 !important;
  outline-offset: -2px !important;
  box-shadow: none !important;
  background-color: var(--wp--preset--color--primary) !important;
}

.forminator-field-checkbox:focus-within label {
  text-decoration: underline !important;
}
.forminator-field-checkbox:focus-within .forminator-checkbox-box {
  border-width: 2px !important;
}

.wp-block-navigation a:where(:not(.wp-element-button)):focus,
.wp-block-post-title a:where(:not(.wp-element-button)):focus,
.wp-block-site-title a:where(:not(.wp-element-button)):focus,
a:where(:not(.wp-element-button)):focus,
body div .wp-block-navigation a:where(:not(.wp-element-button)):active,
.wp-block-post-title a:where(:not(.wp-element-button)):active,
.wp-block-site-title a:where(:not(.wp-element-button)):active,
a:where(:not(.wp-element-button)):active,
.forminator-button:active,
.wp-block-button:active,
.ssg-inquire-button:active,
.wp-element-button:active,
button:active,
button.forminator-button.forminator-button-submit:active {
  text-decoration: none !important;
}