/* WordPress adaptations. Adjust shared visual values in tokens.css. */
body.fransman-art-site { --art-card-base: clamp(18rem, 29vw, 35rem); --art-card-max-height: min(70vh, 50rem); --detail-image-max-height: 82vh; }
:where(body.fransman-art-site) .site-header { --header-logo-width: 270px; --header-logo-mobile-width: 210px; }
:where(body.fransman-art-site) .site-header:has(.has-custom-logo) { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); }
:where(body.fransman-art-site) .site-header .wordmark.has-custom-logo { display: block; width: var(--header-logo-width); max-width: calc(100% - var(--space-2)); min-width: 0; line-height: 0; }
:where(body.fransman-art-site) .site-header .header-logo { display: block; width: 100%; height: auto; }
@media (max-width: 820px) {
  :where(body.fransman-art-site) .site-header:has(.has-custom-logo) { grid-template-columns: minmax(0, 1fr) auto; }
  :where(body.fransman-art-site) .site-header .wordmark.has-custom-logo { width: var(--header-logo-mobile-width); }
}
:where(body.fransman-art-site) :where(.fa-presentation, .fa-presentation *):is([hidden]), :where(body.fransman-art-site) :where(.fa-presentation, .fa-presentation *):is(dialog:not([open])) { display: none !important; }
:where(body.fransman-art-site) :where(.fa-presentation, .fa-presentation *):is(img) { max-width: 100%; height: auto; }
:where(body.fransman-art-site) .screen-reader-text, :where(body.fransman-art-site) .skip-link:not(:focus) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
:where(body.fransman-art-site) .skip-link:focus { position: fixed; top: 1rem; left: 1rem; background: var(--color-paper); padding: 1rem; z-index: 1000; }
:where(body.fransman-art-site) .nojs-nav { display: none; }
:where(body.fransman-art-site) .language-switch { margin: 0; }
:where(body.fransman-art-site) .language-switch button + button { position: relative; margin-left: .35rem; }
:where(body.fransman-art-site) .language-switch button + button::before { content: '/'; color: var(--color-muted); left: -.45rem; position: absolute; }
:where(body.fransman-art-site) .language-switch a { color: var(--color-muted); display: inline-flex; min-height: 2.75rem; min-width: 2.25rem; align-items: center; justify-content: center; }
:where(body.fransman-art-site) .language-switch a.is-active { color: var(--color-ink); }
:where(body.fransman-art-site) .footer-grid .language-switch { align-items: baseline; flex-direction: row; gap: .5rem; }
:where(body.fransman-art-site) .footer-grid .language-switch button { min-width: 2.75rem; width: auto; }
:where(body.fransman-art-site) .hero-image-wrap { background: transparent; width: 100%; }
:where(body.fransman-art-site) .hero-image { width: 100%; max-height: min(78vh, 62rem); object-fit: contain; }
:where(body.fransman-art-site) .hero-image-wrap:hover .hero-image, :where(body.fransman-art-site) .artwork-card:hover img, :where(body.fransman-art-site) .artwork-primary-image:hover img, :where(body.fransman-art-site) .detail-gallery-item:hover img, :where(body.fransman-art-site) .exhibition-row-image:hover img { transform: none; }
:where(body.fransman-art-site) .artwork-image-frame { background: transparent; overflow: visible; }
:where(body.fransman-art-site) .artwork-image-frame img { width: 100%; height: auto; object-fit: contain; }
:where(body.fransman-art-site) .editorial-art-grid, :where(body.fransman-art-site) .artwork-grid { grid-template-columns: repeat(12, minmax(0, 1fr)); }
:where(body.fransman-art-site) .editorial-art-grid .artwork-card:nth-child(n), :where(body.fransman-art-site) .artwork-grid .artwork-card:nth-child(n) { grid-column: 1 / span 6; width: min(100%, calc(var(--art-card-base) * var(--image-width)), calc(var(--art-card-max-height) * var(--image-ratio))); max-width: 100%; }
:where(body.fransman-art-site) .editorial-art-grid .artwork-card:nth-child(2n), :where(body.fransman-art-site) .artwork-grid .artwork-card:nth-child(2n) { grid-column: 7 / span 6; justify-self: end; margin-top: var(--space-editorial-offset); }
:where(body.fransman-art-site) .editorial-art-grid .artwork-card:nth-child(4n+3), :where(body.fransman-art-site) .artwork-grid .artwork-card:nth-child(4n+3) { justify-self: center; }
:where(body.fransman-art-site) .editorial-art-grid .artwork-card:nth-child(4n+3) { grid-column: 3 / span 6; justify-self: start; }
:where(body.fransman-art-site) .artwork-card { animation: none; }
:where(body.fransman-art-site) .artwork-card-status .status-sold { color: var(--color-accent); }
:where(body.fransman-art-site) .artwork-card-meta { overflow-wrap: anywhere; }
:where(body.fransman-art-site) .filter-group .filter-option { border-bottom: 1px solid transparent; color: var(--color-muted); font-size: var(--text-xs); letter-spacing: .07em; min-height: 2.75rem; padding: .6rem 0 .35rem; position: relative; text-transform: uppercase; }
:where(body.fransman-art-site) .filter-option::before { background: transparent; border-radius: 50%; content: ''; display: inline-block; height: .32rem; margin-right: .5rem; vertical-align: middle; width: .32rem; }
:where(body.fransman-art-site) .filter-group .filter-option.is-active { border-color: var(--color-accent); color: var(--color-accent); font-weight: 500; }
:where(body.fransman-art-site) .filter-option.is-active::before { background: currentColor; }
:where(body.fransman-art-site) .filter-group .filter-option:hover { color: var(--color-ink); }
:where(body.fransman-art-site) .fa-pagination { align-items: center; display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem; padding: 0 var(--space-page) var(--space-section); font-size: var(--text-sm); }
:where(body.fransman-art-site) .fa-pagination a, :where(body.fransman-art-site) .fa-pagination span { display: inline-flex; min-width: 2.75rem; min-height: 2.75rem; align-items: center; justify-content: center; }
:where(body.fransman-art-site) .fa-pagination .current { border-bottom: 1px solid var(--color-accent); color: var(--color-accent); }
:where(body.fransman-art-site) .artwork-primary-image > span, :where(body.fransman-art-site) .detail-gallery-item > span { background: transparent; overflow: visible; }
:where(body.fransman-art-site) .artwork-primary-image img { width: 100%; height: auto; max-height: var(--detail-image-max-height); object-fit: contain; }
:where(body.fransman-art-site) .artwork-primary--portrait .artwork-primary-image { width: min(100%, calc(var(--detail-image-max-height) * var(--image-ratio))); margin-inline: auto; }
:where(body.fransman-art-site) .artwork-primary--landscape .artwork-primary-image, :where(body.fransman-art-site) .artwork-primary--square .artwork-primary-image { width: min(100%, calc(var(--detail-image-max-height) * var(--image-ratio))); }
:where(body.fransman-art-site) .detail-gallery-item img { width: 100%; height: auto; max-height: 80vh; object-fit: contain; }
:where(body.fransman-art-site) .related-grid { align-items: start; }
:where(body.fransman-art-site) .related-grid .artwork-card { width: min(100%, calc(24rem * var(--image-width)), calc(65vh * var(--image-ratio))); justify-self: center; }
:where(body.fransman-art-site) .fa-enquiry-section { max-width: 52rem; margin: 0 auto; padding: var(--space-section) var(--space-page); scroll-margin-top: var(--header-height); }
:where(body.fransman-art-site) .fa-enquiry-section h2 { font-family: var(--font-display); font-size: var(--text-heading); font-weight: 400; line-height: 1; }
:where(body.fransman-art-site) .fa-enquiry-section form { display: grid; gap: 1.6rem; }
:where(body.fransman-art-site) .fa-enquiry-section label, :where(body.fransman-art-site) .fa-enquiry-form label { display: grid; gap: .5rem; font-size: var(--text-sm); }
:where(body.fransman-art-site) .fa-enquiry-section input:not([type=hidden]), :where(body.fransman-art-site) .fa-enquiry-section textarea, :where(body.fransman-art-site) .fa-enquiry-form input:not([type=hidden]), :where(body.fransman-art-site) .fa-enquiry-form textarea { background: transparent; border: 0; border-bottom: var(--border); border-radius: 0; padding: .6rem 0; resize: vertical; width: 100%; }
:where(body.fransman-art-site) .fa-enquiry-form { display: grid; gap: 1.6rem; }
:where(body.fransman-art-site) .enquiry-form { display: grid; gap: 1.6rem; }
:where(body.fransman-art-site) .enquiry-form label { display: grid; gap: .5rem; font-size: var(--text-sm); }
:where(body.fransman-art-site) .enquiry-form label { color: var(--color-muted); font-size: var(--text-xs); letter-spacing: .09em; text-transform: uppercase; }
:where(body.fransman-art-site) .enquiry-form label input, :where(body.fransman-art-site) .enquiry-form label textarea { color: var(--color-ink); font-size: var(--text-body); letter-spacing: normal; text-transform: none; }
:where(body.fransman-art-site) .enquiry-form input:not([type=hidden]), :where(body.fransman-art-site) .enquiry-form textarea { background: transparent; border: 0; border-bottom: var(--border); border-radius: 0; padding: .6rem 0; resize: vertical; width: 100%; }
:where(body.fransman-art-site) .enquiry-form fieldset { border: 0; padding: 0; margin: 0; display: grid; gap: 1.6rem; min-width: 0; }
:where(body.fransman-art-site) .enquiry-form button[type=submit] { background: var(--color-ink); border: 1px solid var(--color-ink); color: var(--color-paper); font-size: var(--text-xs); letter-spacing: .09em; min-height: 3.6rem; padding: .8rem 1.1rem; text-transform: uppercase; }
:where(body.fransman-art-site) .enquiry-form input[aria-invalid=true], :where(body.fransman-art-site) .enquiry-form textarea[aria-invalid=true] { border-color: var(--color-accent); }
:where(body.fransman-art-site) .enquiry-form :focus-visible { outline: 2px solid var(--color-accent); outline-offset: 4px; }
:where(body.fransman-art-site) .fa-enquiry-form fieldset { border: 0; padding: 0; margin: 0; display: grid; gap: 1.6rem; min-width: 0; }
:where(body.fransman-art-site) .fa-enquiry-form button[type=submit] { background: var(--color-ink); border: 1px solid var(--color-ink); color: var(--color-paper); font-size: var(--text-xs); letter-spacing: .09em; min-height: 3.6rem; padding: .8rem 1.1rem; text-transform: uppercase; }
:where(body.fransman-art-site) .fa-enquiry-form :focus-visible { outline: 2px solid var(--color-accent); outline-offset: 4px; }
:where(body.fransman-art-site) .fa-enquiry-form .fa-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
:where(body.fransman-art-site) dialog.lightbox { border: 0; margin: 0; width: 100vw; max-width: none; height: 100dvh; max-height: none; padding: 0; }
:where(body.fransman-art-site) dialog.lightbox::backdrop { background: var(--color-overlay); }
:where(body.fransman-art-site) .lightbox-image { display: grid; place-items: center; }
:where(body.fransman-art-site) .lightbox-image img { position: static; width: auto; height: auto; max-width: 100%; max-height: calc(100dvh - 7rem); margin: auto; }
:where(body.fransman-art-site) .lightbox-image.is-zoomed { display: block; }
:where(body.fransman-art-site) .lightbox-image.is-zoomed img { max-width: none; max-height: none; width: var(--zoom-width, 175%); height: auto; transform: none; }
:where(body.fransman-art-site) dialog.fa-enquiry-dialog { background: var(--color-paper); border: 0; height: 100dvh; max-height: none; margin: 0 0 0 auto; max-width: 100%; padding: 0; width: min(100%, 45rem); }
:where(body.fransman-art-site) dialog.fa-enquiry-dialog::backdrop { background: rgba(15,14,12,.72); }
:where(body.fransman-art-site) .fa-enquiry-dialog .fa-enquiry-section { padding: clamp(4rem,6vw,6rem) clamp(1.5rem,5vw,5rem); }
:where(body.fransman-art-site) .fa-enquiry-dialog .modal-close { min-width: 2.75rem; min-height: 2.75rem; font-family: var(--font-sans); font-size: var(--text-xs); z-index: 1; }
:where(body.fransman-art-site) .about-image, :where(body.fransman-art-site) .artist-teaser-image, :where(body.fransman-art-site) .exhibition-image, :where(body.fransman-art-site) .exhibition-row-image, :where(body.fransman-art-site) .exhibition-detail-image { min-height: 0; aspect-ratio: auto; display: flex; align-items: center; }
:where(body.fransman-art-site) .about-image img, :where(body.fransman-art-site) .artist-teaser-image img, :where(body.fransman-art-site) .exhibition-image img, :where(body.fransman-art-site) .exhibition-row-image img, :where(body.fransman-art-site) .exhibition-detail-image img { width: 100%; height: auto; object-fit: contain; }
:where(body.fransman-art-site) .about-image img { max-height: 82vh; }
:where(body.fransman-art-site) .exhibition-detail-image img { max-height: 80vh; }
:where(body.fransman-art-site) .exhibition-mosaic img { width: 100%; height: auto; max-height: 80vh; object-fit: contain; }
:where(body.fransman-art-site) .about-socials { grid-template-columns: repeat(auto-fit,minmax(8rem,1fr)); }
:where(body.fransman-art-site) .contact-layout { max-width: calc(var(--page-max) - 2 * var(--space-page)); width: calc(100% - 2 * var(--space-page)); margin-inline: auto; }
:where(body.fransman-art-site) .contact-layout .enquiry-form fieldset { grid-template-columns: repeat(2,minmax(0,1fr)); }
:where(body.fransman-art-site) .contact-layout .enquiry-form fieldset > label:nth-of-type(n+3), :where(body.fransman-art-site) .contact-layout .enquiry-form fieldset > button { grid-column: 1 / -1; }
:where(body.fransman-art-site) .contact-layout .enquiry-form fieldset > button { max-width: 18rem; justify-self: end; }
:where(body.fransman-art-site) .contact-layout aside a, :where(body.fransman-art-site) .footer-grid a { overflow-wrap: anywhere; max-width: 100%; }
:where(body.fransman-art-site) .admin-bar .site-header { top: 32px; }
:where(body.fransman-art-site) .mobile-menu { overflow-y: auto; }
:where(body.fransman-art-site) .site-header { background: var(--color-paper); }
:where(body.fransman-art-site) .menu-button { min-width: 2.75rem; }
html:not(.has-js) :where(body.fransman-art-site) .menu-button { display: none; }
:where(body.fransman-art-site) :where(.fa-presentation, .fa-presentation *):focus-visible { outline: 2px solid var(--color-accent); }
@media (max-width: 1100px) { :where(body.fransman-art-site) .filter-panel { grid-template-columns: 1fr; } }
@media (max-width: 820px) {
  body.fransman-art-site { --art-card-base: 35vw; }
  :where(body.fransman-art-site) .nojs-nav { display: flex; flex-wrap: wrap; gap: 1rem; padding: 1rem var(--space-page); border-bottom: var(--border); font-size: var(--text-sm); }
  :where(body.fransman-art-site) .filter-panel { display: grid; }
  :where(body.fransman-art-site) .has-js .filter-panel:not(.is-open) { display: none; }
  :where(body.fransman-art-site) .filter-group > div { flex-wrap: wrap; overflow: visible; }
  :where(body.fransman-art-site) .filter-group .filter-option { flex: 0 0 auto; }
  :where(body.fransman-art-site) .editorial-art-grid, :where(body.fransman-art-site) .artwork-grid { grid-template-columns: 1fr 1fr; }
  :where(body.fransman-art-site) .editorial-art-grid .artwork-card:nth-child(n), :where(body.fransman-art-site) .artwork-grid .artwork-card:nth-child(n) { grid-column: auto; width: min(100%,calc(var(--art-card-base) * var(--image-width)),calc(var(--art-card-max-height) * var(--image-ratio))); }
  :where(body.fransman-art-site) .hero-image { max-height: 72vh; }
  :where(body.fransman-art-site) .artwork-primary--landscape .artwork-information, :where(body.fransman-art-site) .artwork-primary--square .artwork-information { grid-template-columns: 1fr; }
  :where(body.fransman-art-site) .artwork-primary--landscape .enquiry-actions, :where(body.fransman-art-site) .artwork-primary--square .enquiry-actions { grid-column: auto; }
  :where(body.fransman-art-site) .about-image { padding-bottom: var(--space-section); }
  :where(body.fransman-art-site) .lightbox-image { inset-inline: 2.8rem; }
  :where(body.fransman-art-site) .admin-bar .site-header { top: 46px; }
}
@media (max-width: 560px) {
  :where(body.fransman-art-site) .editorial-art-grid, :where(body.fransman-art-site) .artwork-grid { display: block; }
  :where(body.fransman-art-site) .editorial-art-grid .artwork-card:nth-child(n), :where(body.fransman-art-site) .artwork-grid .artwork-card:nth-child(n) { width: 100%; max-width: 100%; margin: 0 0 var(--space-artwork); }
  :where(body.fransman-art-site) .editorial-art-grid .artwork-card.ratio-portrait, :where(body.fransman-art-site) .artwork-grid .artwork-card.ratio-portrait { width: 92%; }
  :where(body.fransman-art-site) .editorial-art-grid .artwork-card:nth-child(even), :where(body.fransman-art-site) .artwork-grid .artwork-card:nth-child(even) { margin-left: auto; }
  :where(body.fransman-art-site) .artwork-card-meta { gap: .5rem; }
  :where(body.fransman-art-site) .artwork-primary--portrait .artwork-primary-image { width: 94%; max-width: none; }
  :where(body.fransman-art-site) .artwork-primary-image img { max-height: none; }
  :where(body.fransman-art-site) .artwork-primary--landscape .artwork-primary-image, :where(body.fransman-art-site) .artwork-primary--square .artwork-primary-image { width: 100%; }
  :where(body.fransman-art-site) .related-grid .artwork-card { width: 100%; }
  :where(body.fransman-art-site) .related-grid .artwork-card.ratio-portrait { width: 92%; }
  :where(body.fransman-art-site) .lightbox-bar { padding-inline: .8rem; }
  :where(body.fransman-art-site) .lightbox-bar button { margin-left: .5rem; }
  :where(body.fransman-art-site) .lightbox-nav { padding: .25rem; }
  :where(body.fransman-art-site) .lightbox-nav.previous { left: 0; }
  :where(body.fransman-art-site) .lightbox-nav.next { right: 0; }
  :where(body.fransman-art-site) .footer-wordmark { overflow-wrap: anywhere; }
  :where(body.fransman-art-site) .about-socials { grid-template-columns: 1fr; }
  :where(body.fransman-art-site) .contact-layout .enquiry-form fieldset { grid-template-columns: 1fr; }
  :where(body.fransman-art-site) .contact-layout .enquiry-form fieldset > button { max-width: none; width: 100%; }
  :where(body.fransman-art-site) .exhibition-mosaic > :last-child { margin-left: 8%; }
  :where(body.fransman-art-site) .admin-bar .site-header { top: 0; }
}
@media (prefers-reduced-motion: reduce) { :where(body.fransman-art-site) :where(.fa-presentation, .fa-presentation *), :where(body.fransman-art-site) :where(.fa-presentation, .fa-presentation *)::before, :where(body.fransman-art-site) :where(.fa-presentation, .fa-presentation *)::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
