@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@300;400;500;700&display=swap');
:root{--paper:#fff;--ink:#090909;--accent:#d90000;--quiet:#646464;--rail:210px;--gutter:32px;--sans-font:'Oswald','Arial Narrow',Arial,sans-serif;color-scheme:light}
*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);scroll-behavior:smooth}body{margin:0;font-family:var(--sans-font);font-size:17px;font-weight:300;line-height:1.45}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}::selection{background:var(--accent);color:#fff}.site-header{position:fixed;top:30px;left:var(--gutter);width:175px;z-index:20}.wordmark{display:inline-block;font-size:16px;line-height:1.2;letter-spacing:-.065em;font-weight:700;white-space:nowrap}.site-header nav{display:flex;flex-direction:column;align-items:flex-start;gap:2px;margin-top:43px;font-size:15px;line-height:1.8}.site-header nav a[aria-current=page]{color:var(--accent)}.blank-home{min-height:100svh}.page{margin-left:var(--rail);padding:28px var(--gutter) 80px 35px;min-height:100svh}.eyebrow{font-size:15px;font-weight:400;margin:0 0 48px;color:var(--accent)}.skip{position:fixed;top:-80px;left:20px;background:white;z-index:100}.skip:focus{top:10px}.page-footer{font-size:14px;color:var(--quiet);margin-top:90px;display:flex;justify-content:space-between;gap:25px}
@media(max-width:760px){:root{--gutter:20px;--rail:0px}.site-header{position:relative;top:auto;left:auto;width:auto;margin:23px 20px 0;display:flex;align-items:baseline;justify-content:space-between;gap:15px}.wordmark{font-size:15px}.site-header nav{flex-direction:row;gap:16px;margin:0;font-size:15px}.page{margin:0;padding:55px 20px 50px}.blank-home{min-height:calc(100svh - 50px)}.eyebrow{margin-bottom:32px}}
@media(max-width:370px){.site-header{flex-wrap:wrap}.site-header nav{width:100%;margin-top:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}


.projects-page .eyebrow{margin-bottom:55px}.project-list{list-style:none;margin:0;padding:0}.project-row{position:relative;margin:0 0 38px}.project-link{position:relative;display:block;padding:0 74px 0 36px}.project-name{display:block;font-family:var(--display-font);font-size:clamp(54px,7.9vw,140px);line-height:1.02;font-weight:400;letter-spacing:-.025em;overflow-wrap:break-word;transition:color 130ms ease}.project-name .subline{display:block;font-size:.51em;line-height:1.08;letter-spacing:-.055em;margin-top:-.08em}.project-number{position:absolute;top:.7em;left:0;color:var(--accent);font:italic 700 13px/1.1 'Courier New',monospace;letter-spacing:-.08em;transform:skewX(-8deg)}.project-year{position:absolute;right:0;top:1em;font:300 13px/1.3 var(--sans-font);white-space:nowrap;color:var(--quiet)}.hover-image{display:none;position:fixed;right:11vw;top:24vh;width:28vw;height:47vh;z-index:10;pointer-events:none;background:#fff;transform:rotate(-2deg)}.hover-image img{width:100%;height:100%;object-fit:contain}.mobile-project-image{display:none}.project-topline{display:flex;justify-content:space-between;gap:20px;font-size:15px;color:var(--accent);margin:0 0 40px}.detail-title{font-family:var(--display-font);font-size:clamp(58px,7.6vw,124px);font-weight:400;line-height:1.01;letter-spacing:-.065em;margin:0 0 50px;overflow-wrap:break-word}.detail-title .subline{font-size:.52em;line-height:1.1;display:block;margin-top:-.05em}.project-intro{display:grid;grid-template-columns:1fr 2fr;gap:40px;margin:0 0 90px;max-width:1100px}.medium-label{font-size:14px;color:var(--quiet);padding-top:5px}.project-intro p{margin:0 0 17px;max-width:600px;font-size:18px;line-height:1.55}.work{margin-bottom:110px}.work-images{display:grid;gap:25px;align-items:start}.work-images.multiple{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.artwork-image{display:block;min-width:0}.artwork-image img{width:100%;height:75vh;min-height:300px;max-height:950px;display:block;object-fit:contain}.work-images.multiple:not(.is-gallery) .artwork-image img{height:62vh;min-height:240px}.work-images.multiple.is-gallery{grid-template-columns:minmax(0,1fr) clamp(78px,9vw,118px);gap:16px}.is-gallery>.gallery-main{grid-column:1;grid-row:1}.is-gallery>.gallery-main img{height:72vh;min-height:320px}.gallery-thumbnails{grid-column:2;grid-row:1;display:grid;align-content:start;gap:10px}.gallery-thumbnail{appearance:none;width:100%;padding:4px;border:0;border-left:2px solid transparent;border-radius:0;background:transparent;cursor:pointer}.gallery-thumbnail img{display:block;width:100%;height:auto;max-height:116px;aspect-ratio:1/1;object-fit:contain}.gallery-thumbnail:hover{border-left-color:#aaa}.gallery-thumbnail[aria-pressed=true],.gallery-thumbnail[aria-pressed=true]:hover{border-left-color:var(--accent)}.work-caption{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0 0;font-size:14px;line-height:1.6}.work-caption h2{font-weight:400;font-size:15px;margin:0}.work-caption h2 span{color:var(--quiet)}.work-caption p{margin:0;color:var(--quiet)}.next-project{border-top:1px solid #111;padding-top:18px;margin-top:130px}.next-project>span{font-size:14px;color:var(--quiet);display:block;margin-bottom:20px}.next-project>a{display:block;font-family:Georgia,serif;line-height:1.04;letter-spacing:-.045em;font-size:clamp(35px,5vw,70px)}.bio{max-width:760px;margin-left:14%;margin-bottom:105px}.bio h2{font-weight:400;font-family:Georgia,serif;letter-spacing:-.055em;font-size:clamp(50px,5vw,80px);line-height:1.06;margin:0 0 35px}.bio p{font-size:21px;line-height:1.45;margin:0 0 23px;letter-spacing:-.02em}.about-section{display:grid;grid-template-columns:minmax(125px,1fr) 3fr;gap:30px;margin-bottom:75px;max-width:1120px}.section-label{font-size:15px;font-weight:400;color:var(--accent);margin:2px 0 0}.cv-list{margin:0;font-size:16px;line-height:1.5}.cv-list>div{display:grid;grid-template-columns:84px 1fr;gap:20px;margin:0 0 14px}.cv-list dt{font-size:14px;color:var(--quiet);padding-top:2px}.cv-list dd{margin:0}.contact-section{scroll-margin-top:25px;margin-top:110px;padding-top:30px;border-top:1px solid #111}.contact-section h2{margin:0 0 30px}.email{font-size:clamp(24px,3.5vw,52px);line-height:1.2;letter-spacing:-.05em;display:inline-block;overflow-wrap:anywhere}.contact-links{display:flex;gap:30px;margin-top:28px;font-size:15px}
@media(hover:hover) and (pointer:fine) and (min-width:761px){.project-row.is-previewing .hover-image{display:block}.project-row.is-previewing .project-name{color:var(--accent)}}
@media(min-width:1800px){.page{max-width:1660px}}
@media(max-width:1100px) and (min-width:761px){:root{--rail:175px;--gutter:23px}.page{padding-left:30px}.site-header{width:155px}.wordmark{font-size:14px}.project-link{padding-right:0}.project-year{position:static;display:block;margin-top:9px}.project-name{font-size:8.1vw}.bio{margin-left:6%}.project-intro{grid-template-columns:1fr 3fr;gap:20px}.work-caption{grid-template-columns:1fr 1fr}.about-section{grid-template-columns:1fr;gap:18px}}
@media(max-width:760px){.projects-page .eyebrow{margin-bottom:42px}.project-row{margin-bottom:65px}.project-link{padding:0 0 0 25px}.project-name{font-size:clamp(40px,10.8vw,80px);line-height:1.03}.project-number{top:.6em;font-size:12px}.project-year{position:static;display:block;margin-top:12px}.mobile-project-image{display:block;margin-top:24px;max-width:450px}.mobile-project-image img{display:block;width:100%;height:50vh;min-height:210px;max-height:400px;object-fit:contain}.hover-image{display:none!important}.project-topline{margin-bottom:32px}.detail-title{font-size:clamp(44px,11.8vw,85px);margin-bottom:35px}.project-intro{grid-template-columns:1fr;gap:18px;margin-bottom:55px}.project-intro p{font-size:17px}.work{margin-bottom:70px}.work-images{gap:15px}.work-images.multiple{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.work-images.multiple.is-gallery{grid-template-columns:1fr;gap:11px}.is-gallery>.gallery-main{grid-column:1;grid-row:1}.is-gallery>.gallery-main img{height:auto;min-height:0;max-height:70svh}.gallery-thumbnails{grid-column:1;grid-row:2;display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.gallery-thumbnail{flex:0 0 74px;width:74px;padding:3px;border-left:0;border-bottom:2px solid transparent}.gallery-thumbnail:hover{border-left-color:transparent;border-bottom-color:#aaa}.gallery-thumbnail[aria-pressed=true],.gallery-thumbnail[aria-pressed=true]:hover{border-left-color:transparent;border-bottom-color:var(--accent)}.gallery-thumbnail img{height:68px;max-height:none;aspect-ratio:1/1}.artwork-image img{height:auto;min-height:0;max-height:76svh}.work-images.multiple:not(.is-gallery) .artwork-image img{height:auto;min-height:0;max-height:60svh}.work-caption{grid-template-columns:1fr;gap:7px;margin-top:17px}.next-project{margin-top:75px}.bio{margin-left:0;margin-bottom:65px}.bio h2{font-size:48px;margin-bottom:28px}.bio p{font-size:20px}.about-section{grid-template-columns:1fr;gap:23px;margin-bottom:50px}.cv-list{font-size:15px}.cv-list>div{grid-template-columns:72px 1fr;gap:12px;margin-bottom:16px}.contact-section{margin-top:65px}.email{font-size:clamp(21px,6.8vw,42px)}.page-footer{margin-top:60px}}

/* Display fonts: Tinos Bold is the interim Times-style face. Replace with a
   licensed Times New Roman Pro Condensed Bold webfont when supplied. */
@font-face{font-family:Tinos;src:url('fonts/Tinos-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
:root{--display-font:'Times New Roman',Tinos,Times,serif;--display-scale:1}
.wordmark{font-family:var(--sans-font);font-weight:700;font-style:oblique 10deg;font-size:22px;line-height:1.2;letter-spacing:0;white-space:nowrap}
.eyebrow,.contact-section>h2{font-family:var(--sans-font);font-size:15px;line-height:1.5;font-weight:400;letter-spacing:0;color:var(--accent)}
.project-name,.detail-title,.next-project>a,.bio h2{font-family:var(--display-font);font-weight:700;letter-spacing:-.035em}
.project-name,.detail-title,.next-project>a{text-transform:uppercase}
.display-type{display:block;width:calc(100% / var(--display-scale));transform:scaleX(var(--display-scale));transform-origin:top left}
.project-name,.detail-title,.next-project>a{overflow:clip;padding-bottom:.08em}
.project-name .subline,.detail-title .subline{letter-spacing:-.025em}
.site-footer{margin:0 var(--gutter) 0 calc(var(--rail) + 35px);padding:25px 0 30px;border-top:1px solid #dedede;display:flex;justify-content:space-between;align-items:baseline;gap:20px;color:var(--quiet);font-size:14px;line-height:1.5}
.site-footer p{margin:0}.site-footer nav{display:flex;flex-wrap:wrap;gap:22px}.site-footer a{display:inline-flex;align-items:center;min-height:32px}
body.home{min-height:100svh;display:flex;flex-direction:column}.home .blank-home{flex:1;min-height:0}.home .site-footer{margin-top:auto}
@media(max-width:1100px) and (min-width:761px){.wordmark{font-size:20px}.site-footer{margin-left:calc(var(--rail) + 30px)}}
@media(max-width:760px){.wordmark{font-size:20px}.eyebrow,.contact-section>h2{font-size:15px}.site-header{flex-wrap:wrap;row-gap:15px}.site-footer{margin:0 20px;padding:18px 0 22px;flex-wrap:wrap;gap:7px}.site-footer nav{gap:22px}.home .site-footer{margin-top:auto}.home .blank-home{min-height:45svh}.project-name,.detail-title{letter-spacing:-.03em}}

/* The list and its preview have separate, non-overlapping columns. */
.projects-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.48fr);gap:clamp(30px,4vw,70px);align-items:start}
.project-list{min-width:0;container-type:inline-size}
.project-link{padding:0 0 0 30px}
.project-name{font-size:clamp(40px,7vw,108px);font-size:clamp(32px,12.5cqi,108px);line-height:.98;overflow-wrap:normal}
.project-name .subline{font-size:.46em;line-height:1.1;margin-top:.2em}
.project-year{position:static;display:block;margin-top:12px}
.project-row{margin-bottom:40px}
.project-preview{position:sticky;top:120px;height:min(65svh,720px);min-width:0;pointer-events:none}
.project-preview img{display:block;width:100%;height:100%;object-fit:contain}
.project-row.is-previewing .project-name{color:var(--accent)}
.contact-page{display:flex;flex-direction:column;min-height:100svh}
.contact-page .page{flex:1;min-height:0}
.contact-details{margin-top:clamp(30px,8vh,100px);padding-bottom:70px}
.site-footer a[aria-current=page]{color:var(--accent)}
@media(max-width:1000px),(hover:none){
  .projects-layout{display:block}
  .project-preview{display:none}
  .project-row{margin-bottom:65px}
  .project-name{font-size:clamp(32px,12.5cqi,88px)}
  .mobile-project-image{display:block;margin-top:24px;max-width:450px}
  .mobile-project-image img{display:block;width:100%;height:50vh;min-height:210px;max-height:400px;object-fit:contain}
}

/* Project artwork galleries share the same image-and-information structure as
   artwork pages: image at left, facts at right, all views below the image. */
@media(min-width:761px){
  .detail-page .work{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(220px,1fr);gap:clamp(30px,5vw,80px);align-items:start}
  .detail-page .work-images{min-width:0}
  .detail-page .work-images.multiple.is-gallery{grid-template-columns:1fr;gap:12px}
  .detail-page .is-gallery>.gallery-main{grid-column:1;grid-row:1}
  .detail-page .artwork-image img{object-position:left top}
  .detail-page .gallery-thumbnails{grid-column:1;grid-row:2;display:flex;gap:9px;overflow-x:auto;padding-bottom:4px}
  .detail-page .gallery-thumbnail{flex:0 0 82px;width:82px;padding:3px;border:0;border-bottom:2px solid transparent}
  .detail-page .gallery-thumbnail img{height:76px;max-height:none;aspect-ratio:1/1;object-fit:contain}
  .detail-page .gallery-thumbnail:hover{border-left-color:transparent;border-bottom-color:#aaa}
  .detail-page .gallery-thumbnail[aria-pressed=true],.detail-page .gallery-thumbnail[aria-pressed=true]:hover{border-left-color:transparent;border-bottom-color:var(--accent)}
  .detail-page .work-caption{display:block;margin:0;padding-top:5px}
  .detail-page .work-caption h2{font-size:17px;margin:0 0 18px}
  .detail-page .work-caption p{margin:0 0 5px}
}
@media(max-width:760px){.project-link{padding-left:25px}.contact-details{margin-top:30px}}

/* A catalogue entry is one artwork, independent of its project and exhibitions. */
.artwork-archive{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:55px 30px;margin:52px 0 0;padding:0;list-style:none}
.artwork-archive>[hidden]{display:none}
.artwork-filters{position:sticky;top:0;z-index:30;margin:0;padding:13px 0 10px;background:rgba(255,255,255,.97);border-top:1px solid #dedede;border-bottom:1px solid #dedede;font-family:var(--sans-font);text-transform:uppercase}
.filter-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:28px}
.filter-categories{display:flex;flex-wrap:wrap;gap:2px clamp(18px,2.2vw,36px)}
.filter-menu{position:relative}
.filter-menu summary{display:block;padding:6px 0;color:var(--accent);font-size:13px;line-height:1.4;letter-spacing:.01em;cursor:pointer;white-space:nowrap;list-style:none}
.filter-menu summary::-webkit-details-marker{display:none}
.filter-menu summary::after{content:'+';display:inline-block;margin-left:7px;font-family:var(--sans-font);font-weight:400}
.filter-menu[open] summary::after{content:'−'}
.filter-options{position:absolute;top:calc(100% + 10px);left:-14px;z-index:40;display:grid;grid-template-columns:repeat(2,minmax(130px,1fr));gap:0;min-width:340px;max-height:min(55svh,500px);padding:12px 14px;overflow:auto;background:#fff;border:1px solid #111;box-shadow:5px 5px 0 var(--accent)}
.filter-option,.active-filter,.clear-filters{appearance:none;border:0;border-radius:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}
.filter-option{padding:8px 12px 8px 0;font-size:13px;line-height:1.35;text-transform:uppercase}
.filter-option::before{content:'';display:inline-block;width:6px;height:6px;margin-right:7px;background:transparent;vertical-align:.08em}
.filter-option:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.filter-option[aria-pressed=true],.filter-option[aria-pressed=true]:hover{color:var(--accent);font-weight:500;text-decoration:none}
.filter-option[aria-pressed=true]::before{background:var(--accent)}
.availability-filter{display:flex;align-items:center;gap:8px;padding:6px 0;color:var(--accent);font-size:13px;line-height:1.4;white-space:nowrap;cursor:pointer}
.availability-filter input{position:absolute;opacity:0;pointer-events:none}
.availability-check{width:13px;height:13px;border:1px solid currentColor;flex:0 0 auto}
.availability-filter input:checked+.availability-check{background:var(--accent);box-shadow:inset 0 0 0 2px #fff}
.availability-filter input:focus-visible+.availability-check{outline:2px solid var(--accent);outline-offset:4px}
.filter-state{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;min-height:35px;margin-top:8px;padding-top:8px;border-top:1px solid #eee;font-size:13px;line-height:1.4}
.active-filter-list{display:flex;flex-wrap:wrap;gap:5px 18px;color:var(--accent)}
.active-filter{padding:4px 0;text-transform:uppercase}
.active-filter:hover{text-decoration:line-through}
.filter-result{display:flex;align-items:center;gap:20px;margin-left:auto;white-space:nowrap;color:var(--quiet)}
.clear-filters{padding:4px 0;color:var(--accent);text-transform:uppercase;text-decoration:underline;text-underline-offset:3px}
.archive-work{display:block}
.archive-image{height:clamp(260px,38vw,510px);margin-bottom:20px}
.archive-image img{width:100%;height:100%;display:block;object-fit:contain}
.archive-caption{display:flex;justify-content:space-between;align-items:baseline;gap:14px;font-size:14px}
.archive-caption h2{font-size:17px;font-weight:400;margin:0}
.archive-caption>span,.archive-work>p{color:var(--quiet)}
.archive-work>p{font-size:14px;margin:5px 0 0}
.artwork-title{font-family:var(--display-font);font-size:clamp(42px,5.5vw,88px);font-weight:700;line-height:1.04;letter-spacing:-.035em;margin:0 0 48px;overflow-wrap:anywhere}
.artwork-overview{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(30px,5vw,80px);align-items:start}
.artwork-page figure{margin:0}
.artwork-main-image img{display:block;width:100%;height:70svh;max-height:900px;object-fit:contain}
.artwork-page figcaption{font-size:13px;color:var(--quiet);margin-top:18px;line-height:1.5}
.artwork-information{padding-top:8px;max-width:420px}
.artwork-information>p{font-size:17px;line-height:1.6;margin:35px 0 0}
.artwork-facts{margin:0;font-size:15px;line-height:1.6}
.artwork-facts>div{margin-bottom:23px}
.artwork-facts dt{font-size:13px;color:var(--quiet);margin-bottom:4px}
.artwork-facts dd{margin:0}
.artwork-facts a,.artwork-back a{ text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.artwork-page .artwork-additional-image{margin:90px 0;max-width:850px}
.artwork-additional-image img{display:block;width:100%;height:75svh;max-height:950px;object-fit:contain}
.artwork-events{border-top:1px solid #dedede;padding-top:25px;margin-top:95px}
.artwork-event-list{max-width:58%;margin-top:24px;border-top:1px solid #dedede}
.artwork-event{position:relative;margin:0;padding:20px 0 18px;border-bottom:1px solid #dedede;cursor:default}
.event-heading{display:flex;gap:20px;justify-content:space-between;align-items:baseline}
.event-heading h3{font-family:var(--display-font);font-size:clamp(30px,3.5vw,54px);line-height:1.05;letter-spacing:-.025em;margin:0}
.event-heading>span{font-size:14px;color:var(--quiet);white-space:nowrap}
.artwork-event>p{font-size:15px;line-height:1.5;margin:8px 0 0;color:var(--quiet)}
.event-preview{display:none;position:fixed;top:18svh;right:var(--gutter);z-index:25;width:min(31vw,460px);height:64svh;pointer-events:none;background:#fff}
.event-preview img{display:block;width:100%;height:100%;object-fit:contain}
@media(hover:hover) and (pointer:fine) and (min-width:761px){.artwork-event:hover .event-preview,.artwork-event:focus-within .event-preview{display:block}}
.artwork-back{margin-top:65px;font-size:15px}
.site-header nav{flex-wrap:wrap}
@media(max-width:1100px){.artwork-archive{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
  .artworks-page .eyebrow{margin-bottom:30px}
  .artwork-filters{margin-right:-20px;margin-left:-20px;padding:10px 20px 8px}
  .filter-toolbar{display:block}
  .filter-categories{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 14px}
  .filter-menu{position:static;min-width:0}
  .filter-menu summary{overflow:hidden;text-overflow:ellipsis}
  .filter-options{top:100%;right:0;left:0;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;max-height:44svh;box-shadow:4px 4px 0 var(--accent)}
  .availability-filter{margin-top:8px;padding-top:10px;border-top:1px solid #eee}
  .filter-state{align-items:center;min-height:31px;margin-top:5px;padding-top:5px}
  .active-filter-list{gap:3px 13px}
  .filter-result{gap:14px}
  .artwork-archive{margin-top:38px}
  .artwork-archive{grid-template-columns:1fr;gap:45px}
  .archive-image{height:55svh;max-height:550px}
  .artwork-title{margin-bottom:32px}
  .artwork-overview{grid-template-columns:1fr;gap:35px}
  .artwork-main-image img{height:65svh;max-height:650px}
  .artwork-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}
  .artwork-information{max-width:none}
  .artwork-information>p{margin-top:10px}
  .artwork-page .artwork-additional-image{margin:60px 0}
  .artwork-additional-image img{height:65svh}
  .artwork-events{margin-top:65px}
  .artwork-event-list{max-width:none;margin-top:18px}
  .artwork-event{padding:17px 0 18px}
  .event-heading h3{font-size:clamp(28px,9vw,42px)}
  .event-preview{position:static;display:block;width:min(100%,420px);height:auto;margin-top:18px}
  .event-preview img{height:auto;max-height:48svh;object-position:left center}
}

/* Final alignment overrides for artwork pages and touch-size event previews. */
.artwork-main-image img,.artwork-additional-image img{object-position:left center}

/* Progressive Cloudinary images: reserve the real layout, show a tiny blurred
   preview immediately, and make gallery changes visibly responsive. */
.image-load-frame{position:relative}
.image-load-frame>.image-placeholder-preview{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;object-fit:contain;object-position:var(--image-position,50% 50%);pointer-events:none}
.image-load-frame>.progressive-image{position:relative;z-index:1}
.has-progressive-images .image-load-frame>.progressive-image{transition:opacity .22s ease}
.has-progressive-images .image-load-frame.is-image-loading>.progressive-image{opacity:0}
.has-progressive-images .image-load-frame.is-image-error>.progressive-image{opacity:0}
.image-load-frame.is-image-loading::after{content:"";position:absolute;left:50%;top:50%;z-index:2;width:24px;height:24px;margin:-14px 0 0 -14px;border:2px solid rgba(20,20,20,.22);border-top-color:var(--accent);border-radius:50%;animation:image-loader-spin .75s linear infinite;pointer-events:none}
.image-load-frame.is-image-error::after{content:"Image unavailable";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:12px;color:var(--quiet);white-space:nowrap}
@keyframes image-loader-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.has-progressive-images .image-load-frame>.progressive-image{transition:none}.image-load-frame.is-image-loading::after{animation:none}}
@media(max-width:760px){
  .event-preview{display:none}
  .artwork-event:focus .event-preview{display:block}
}
