/*
Theme Name: Martina Shapiro
Theme URI: https://martinashapiro.ddev.site
Author: OpenAI Codex
Description: Block theme for the Martina Shapiro rebuild.
Requires at least: 6.7
Tested up to: 6.9
Requires PHP: 8.1
Version: 0.1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: martina-shapiro
*/

.martina-collection-row {
    align-items: stretch;
}

.martina-collection-row > .wp-block-column {
    display: flex;
}

.martina-collection-card {
    background: var(--wp--preset--color--white);
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    width: 100%;
}

.martina-collection-card__media,
.martina-card__media {
    align-items: center;
    aspect-ratio: 4 / 5;
    background: var(--wp--preset--color--white);
    display: flex;
    justify-content: center;
    overflow: hidden;
}

.martina-collection-card__media a,
.martina-card__media a {
    display: block;
    height: 100%;
    width: 100%;
}

.martina-collection-card__media img,
.martina-card__media img {
    display: block;
    height: 100%;
    object-fit: contain;
    object-position: center top;
    width: 100%;
}

.martina-collection-card__actions,
.martina-card__actions {
    margin-top: auto;
}

.martina-collection-card__buttons,
.martina-card__buttons {
    margin-top: var(--wp--preset--spacing--s);
}

.martina-card-row {
    align-items: stretch;
}

.martina-card-row > .wp-block-column,
.wp-block-post-template.is-layout-grid > li {
    display: flex;
    min-width: 0;
}

.martina-card,
.wp-block-post-template.is-layout-grid > li > .wp-block-group {
    background: var(--wp--preset--color--white);
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
    width: 100%;
}

.martina-card__content {
    background: var(--wp--preset--color--white);
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
}

.martina-card__footer,
.martina-card .wp-block-post-terms,
.wp-block-post-template.is-layout-grid > li > .wp-block-group .wp-block-post-terms {
    margin: 0;
}

.martina-card-grid {
    display: grid !important;
    gap: var(--wp--preset--spacing--m);
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    width: 100%;
}

.martina-card-grid > .wp-block-column {
    display: flex;
    min-width: 0 !important;
    width: auto !important;
    flex-basis: auto !important;
    margin: 0;
}

@media (max-width: 960px) {
    .martina-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .martina-card-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

.wp-block-query-pagination ul.page-numbers {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: var(--wp--preset--spacing--s);
    justify-content: center;
    list-style: none;
    margin: var(--wp--preset--spacing--l) 0 0;
    padding: 0;
}

.wp-block-query-pagination ul.page-numbers li {
    margin: 0;
}

.martina-source-hero {
    min-height: 155px;
}

.martina-source-hero .wp-block-cover__inner-container {
    align-items: flex-end;
    display: flex;
    justify-content: center;
    padding-bottom: 1.1rem;
}

.martina-source-header .alignwide {
    max-width: 1920px;
    padding-left: clamp(1rem, 5vw, 5.625rem);
    padding-right: clamp(1rem, 5vw, 5.625rem);
}

.martina-source-header .wp-block-site-title {
    margin: 0;
}

.martina-source-nav .wp-block-navigation-item__content {
    font-size: 0.62rem;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.martina-source-contact-icons {
    margin-top: 0;
}

.martina-source-contact-icons .wp-social-link a {
    transition: transform 120ms ease;
}

.martina-source-contact-icons .wp-social-link a:hover {
    transform: translateY(-2px);
}

.martina-source-contact-icons--left {
    justify-content: flex-start;
}

.martina-source-quote {
    font-family: var(--wp--preset--font-family--display);
    font-size: clamp(1.2rem, 2vw, 1.7rem);
    font-style: italic;
    text-align: center;
}

.martina-source-home-copy {
    max-width: 1400px;
}

.martina-source-home-copy > p {
    font-size: 0.87rem;
    line-height: 1.55;
    margin-bottom: var(--wp--preset--spacing--m);
}

.martina-source-home-lower {
    max-width: 1400px;
}

.martina-source-more-link {
    font-size: 1rem;
    margin-bottom: clamp(2rem, 4vw, 3rem);
}

.martina-source-more-link a {
    color: var(--wp--preset--color--blue-accent);
    text-decoration: underline;
}

.martina-source-picasso-quote {
    color: var(--wp--preset--color--deep-teal);
    font-family: var(--wp--preset--font-family--display);
    font-size: clamp(1.15rem, 2vw, 1.5rem);
    font-style: italic;
    line-height: 1.4;
    margin-bottom: clamp(2rem, 4vw, 3rem);
}

.martina-source-copyright,
.martina-source-copyright-year {
    font-size: 0.82rem;
    line-height: 1.6;
    margin-left: auto;
    margin-right: auto;
    max-width: 52rem;
}

.martina-source-copyright {
    margin-bottom: var(--wp--preset--spacing--s);
}

.martina-source-copyright-year {
    margin-bottom: 0;
}

.martina-source-gallery {
    display: grid;
    gap: 1rem 0.9rem;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    margin-top: var(--wp--preset--spacing--m);
}

.martina-source-gallery__item {
    min-width: 0;
}

.martina-source-gallery__media {
    align-items: center;
    display: flex;
    justify-content: center;
    margin: 0 0 0.65rem;
    min-height: 176px;
}

.martina-source-gallery__media a {
    display: inline-flex;
}

.martina-source-gallery__media img {
    display: block;
    height: auto;
    max-height: 176px;
    max-width: 176px;
    width: auto;
}

.martina-source-gallery__title {
    font-family: var(--wp--preset--font-family--display);
    font-size: 0.92rem;
    font-weight: 600;
    line-height: 1.2;
    margin: 0 0 0.35rem;
}

.martina-source-gallery__title a {
    color: var(--wp--preset--color--blue-accent);
    text-decoration: underline;
}

.martina-source-gallery__excerpt {
    font-size: 0.76rem;
    line-height: 1.35;
    margin: 0;
}

.martina-source-thumb-gallery {
    display: grid;
    gap: 1rem 0.9rem;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    margin-top: var(--wp--preset--spacing--m);
}

.martina-source-thumb__item {
    min-width: 0;
}

.martina-source-thumb__media {
    align-items: center;
    display: flex;
    justify-content: center;
    margin: 0 0 0.5rem;
    min-height: 176px;
}

.martina-source-thumb__media a,
.martina-source-thumb__media img {
    display: block;
}

.martina-source-thumb__media img {
    height: auto;
    max-height: 176px;
    max-width: 176px;
    width: auto;
}

.martina-source-thumb__caption {
    font-size: 0.72rem;
    line-height: 1.35;
    margin: 0;
}

.martina-source-collection-main {
    padding-bottom: clamp(5.5rem, 9vw, 9.375rem) !important;
    padding-top: clamp(5.5rem, 9vw, 9.375rem) !important;
}

.martina-source-collection-main .wp-block-post-title {
    max-width: 14ch;
}

.martina-source-collection-main > .alignwide,
.martina-source-collection-main .entry-content > .alignwide,
.martina-source-collection-main .entry-content > .martina-source-thumb-gallery.alignwide {
    margin-left: auto;
    margin-right: auto;
    max-width: 1400px;
    padding-left: 40px;
    padding-right: 40px;
    width: 100%;
}

body.page-id-11 .martina-source-thumb-gallery {
    gap: 1.3rem 0.95rem;
    margin-top: 1.35rem;
}

body.page-id-11 .martina-source-thumb__caption {
    line-height: 1.45;
}

body.page-id-8 .martina-source-thumb-gallery {
    gap: 1.3rem 0.95rem;
    margin-top: 1.35rem;
}

body.page-id-8 .martina-source-thumb__caption {
    line-height: 1.45;
}

.martina-source-footer .wp-block-navigation-item__content,
.martina-source-footer a,
.martina-source-footer p {
    color: #b2b2b2;
}

.martina-source-footer-band {
    background:
        linear-gradient(135deg, rgba(255,255,255,0.08) 25%, rgba(255,255,255,0) 25%) center/160px 160px,
        linear-gradient(225deg, rgba(255,255,255,0.06) 25%, rgba(255,255,255,0) 25%) center/160px 160px,
        #67938d;
}

.martina-source-footer {
    text-align: center;
}

.martina-source-footer .wp-block-navigation {
    margin-bottom: 0.8rem;
}

.martina-source-footer .wp-block-navigation-item__content:hover,
.martina-source-footer a:hover {
    color: #ffffff;
}

@media (max-width: 1200px) {
    .martina-source-gallery {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .martina-source-thumb-gallery {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }

}

@media (max-width: 960px) {
    .martina-source-gallery {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .martina-source-thumb-gallery {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

}

@media (max-width: 720px) {
    .martina-source-gallery {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .martina-source-thumb-gallery {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

}

@media (max-width: 520px) {
    .martina-source-gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .martina-source-thumb-gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

}

@media (max-width: 900px) {
    .martina-source-gallery {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .martina-source-hero {
        min-height: 520px;
    }

    .martina-source-gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
