/**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;
    }
}

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;
}