/*
Theme Name: Xiaojing Yan Portfolio
Description: An Elementor-free WordPress portfolio theme for Xiaojing Yan.
Author: Xiaojing Yan
Version: 1.3.4
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: xiaojing-portfolio
*/

/* Site styling for the Elementor-free WordPress theme. */
.xy-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.xy-site,.xy-site *{box-sizing:border-box}
.xy-site{font-family:"Open Sans",Arial,Helvetica,sans-serif;color:#333;background:#fff;font-size:16px;line-height:1.48;width:100%;min-height:100vh;overflow:hidden}
.xy-site a{color:#cc3366}
.xy-site a:hover,.xy-site a:focus-visible{opacity:.72}
.xy-header{height:81px;background:#fff;position:relative;z-index:5}
.xy-header__inner{max-width:1140px;height:100%;margin:auto;display:flex;align-items:center;gap:65px;padding:0 10px}
.xy-logo{display:block;flex:0 0 196px}
.xy-logo img{display:block;width:196px;height:61px;object-fit:contain}
.xy-nav{display:flex;align-items:center;justify-content:space-between;gap:25px;width:665px}
.xy-nav a,.xy-menu a{font-size:14px;color:#222;text-decoration:none;text-transform:uppercase;white-space:nowrap;font-weight:400}
.xy-nav a[aria-current="page"]{color:#888}
.xy-menu{display:none}
.xy-footer{min-height:46px;background:#5f5f5f;color:#fff}
.xy-footer__inner{max-width:1155px;min-height:46px;margin:auto;padding:7px 10px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.xy-footer p{margin:0;color:#fff;font-size:12px;line-height:1.5}
.xy-social{display:flex;gap:7px;align-items:center}
.xy-social a{display:grid;place-items:center;width:27px;height:27px;background:#fff;border-radius:50%;font-size:13px;font-weight:700;color:#151515;text-decoration:none;line-height:1}
.xy-content{max-width:1140px;margin:0 auto;padding:10px 10px 85px}
.xy-home .xy-slider{height:50vw;min-height:360px;max-height:800px;position:relative;background:#fff;overflow:hidden}
.xy-slider input{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}
.xy-stage,.xy-slide{position:absolute;inset:0}
.xy-slide{opacity:0;animation:xy-cycle 54s infinite}
.xy-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.xy-slide:nth-child(1){animation-delay:0s}.xy-slide:nth-child(2){animation-delay:6s}.xy-slide:nth-child(3){animation-delay:12s}
.xy-slide:nth-child(4){animation-delay:18s}.xy-slide:nth-child(5){animation-delay:24s}.xy-slide:nth-child(6){animation-delay:30s}
.xy-slide:nth-child(7){animation-delay:36s}.xy-slide:nth-child(8){animation-delay:42s}.xy-slide:nth-child(9){animation-delay:48s}
@keyframes xy-cycle{0%,10.2%{opacity:1}11.1%,100%{opacity:0}}
.xy-slider input:checked ~ .xy-stage .xy-slide{animation:none;opacity:0}
#xy-slide-1:checked ~ .xy-stage .xy-slide:nth-child(1){opacity:1}
#xy-slide-2:checked ~ .xy-stage .xy-slide:nth-child(2){opacity:1}
#xy-slide-3:checked ~ .xy-stage .xy-slide:nth-child(3){opacity:1}
#xy-slide-4:checked ~ .xy-stage .xy-slide:nth-child(4){opacity:1}
#xy-slide-5:checked ~ .xy-stage .xy-slide:nth-child(5){opacity:1}
#xy-slide-6:checked ~ .xy-stage .xy-slide:nth-child(6){opacity:1}
#xy-slide-7:checked ~ .xy-stage .xy-slide:nth-child(7){opacity:1}
#xy-slide-8:checked ~ .xy-stage .xy-slide:nth-child(8){opacity:1}
#xy-slide-9:checked ~ .xy-stage .xy-slide:nth-child(9){opacity:1}
.xy-dots{position:absolute;left:0;right:0;bottom:9px;display:flex;align-items:center;justify-content:center;gap:7px;z-index:2}
.xy-dots label{width:14px;height:14px;border:2px solid #fff;border-radius:50%;cursor:pointer;background:rgba(0,0,0,.25);box-shadow:0 1px 3px #333}
.xy-dots label:hover,.xy-dots label:focus-visible{background:#fff}
#xy-slide-1:checked ~ .xy-dots label[for='xy-slide-1']{background:#fff}
#xy-slide-2:checked ~ .xy-dots label[for='xy-slide-2']{background:#fff}
#xy-slide-3:checked ~ .xy-dots label[for='xy-slide-3']{background:#fff}
#xy-slide-4:checked ~ .xy-dots label[for='xy-slide-4']{background:#fff}
#xy-slide-5:checked ~ .xy-dots label[for='xy-slide-5']{background:#fff}
#xy-slide-6:checked ~ .xy-dots label[for='xy-slide-6']{background:#fff}
#xy-slide-7:checked ~ .xy-dots label[for='xy-slide-7']{background:#fff}
#xy-slide-8:checked ~ .xy-dots label[for='xy-slide-8']{background:#fff}
#xy-slide-9:checked ~ .xy-dots label[for='xy-slide-9']{background:#fff}
.xy-work-filter{display:flex;flex-wrap:wrap;justify-content:center;gap:9px 22px;max-width:1100px;margin:7px auto 35px;text-align:center}
.xy-work-filter a{font-size:14px;color:#555;text-decoration:none;text-transform:uppercase;white-space:nowrap}
.xy-work-filter .xy-separate{flex-basis:100%;height:0}
.xy-archive{max-width:1207px;margin:auto;padding:0 10px 85px}
.xy-filter-target{position:absolute;top:0;width:1px;height:1px;visibility:hidden}
.xy-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.xy-work{display:block;color:#333!important;text-decoration:none!important;text-align:center}
.xy-work img{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;background:#f5f5f5}
.xy-work__copy{display:block;min-height:77px;padding:9px 12px 8px;background:#f8f8f8}
.xy-work__copy strong{display:block;font-size:14px;font-weight:400;line-height:1.4;color:#333}
.xy-work__copy small{display:block;font-size:12px;color:#777;margin:1px 0;line-height:1.35}
.xy-work__copy .xy-work__excerpt{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px}
.xy-exhibition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 30px;padding-top:0}
.xy-exhibit{box-shadow:0 1px 9px rgba(0,0,0,.13);background:#fff}
.xy-exhibit img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;background:#f7f7f7}
.xy-exhibit__body{min-height:190px;padding:24px 30px 30px}
.xy-exhibit h3{margin:0 0 28px;font-size:20px;font-weight:600;line-height:1.4}
.xy-exhibit h3 a{color:#555;text-decoration:none}
.xy-exhibit p{font-size:14px;color:#777;line-height:1.6;margin:0 0 23px}
.xy-exhibit .xy-more{font-size:12px;text-decoration:none;text-transform:uppercase;color:#222}
.xy-rich h1,.xy-rich h2,.xy-rich h3,.xy-rich h4{font-weight:400;line-height:1.25;color:#333}
.xy-rich h4{font-size:24px;margin:0 0 16px}
.xy-rich h3{font-size:23px;margin:0 0 16px}
.xy-rich h2{font-size:28px;margin:0 0 16px}
.xy-rich p{margin:0 0 16px;line-height:1.5}
.xy-rich a{color:#cc3366;text-decoration:underline}
.xy-rich img{max-width:100%;height:auto;display:block;margin:10px 0}
.xy-rich figure{margin:20px 0}
.xy-rich figcaption{font-size:13px;color:#777}
.xy-rich hr{border:0;border-top:1px solid #aaa;margin:34px 0}
.xy-rich ul,.xy-rich ol{padding-left:22px}
.xy-rich blockquote{border-left:3px solid #ddd;margin:25px 0;padding:5px 20px;color:#555}
.xy-about .xy-rich{padding-top:0}
.xy-about .xy-rich h4:not(:first-child){margin-top:52px}
.xy-writing .xy-rich h3 a{font-size:24px;font-weight:400}
.xy-writing .xy-rich img{width:auto;max-width:100%;max-height:730px;object-fit:contain}
.xy-press-entry{margin:0 0 37px;padding:0 0 25px;border-bottom:1px solid #aaa}
.xy-press-entry h3{font-size:19px;font-weight:600;margin:0 0 8px}
.xy-press-entry h3 a{color:#555;text-decoration:none}
.xy-press-entry img{max-width:min(100%,507px);max-height:720px;width:auto;height:auto;object-fit:contain}
.xy-press-entry hr{display:none}
.xy-news-item{display:grid;grid-template-columns:330px minmax(0,1fr);gap:22px;align-items:start;min-height:240px;margin:0 0 38px}
.xy-news-item__image img{display:block;max-width:100%;width:auto;height:auto;max-height:315px;object-fit:contain;object-position:left top}
.xy-news-item__text{max-width:620px;color:#858585;line-height:1.48}
.xy-news-item__text p{margin:0 0 15px}
.xy-news-item__text a{font-weight:600;text-decoration:none}
.xy-contact-image{display:block;width:654px;max-width:100%;height:auto;margin:0 auto}
.xy-caption{text-align:center;margin:0 0 12px}
.xy-contact-email{text-align:center;font-size:23px;margin:0 0 20px}
.xy-subscribe h2{margin:18px 0;font-size:29px;font-weight:400}
.xy-subscribe label{display:block;margin:5px 0 1px}
.xy-subscribe input:not([type=submit]){width:100%;height:36px;border:1px solid #aaa;padding:6px;font:inherit}
.xy-subscribe button{margin:13px 0 20px;padding:9px 20px;background:#555;color:white;border:0;cursor:pointer;font:inherit}
.xy-subscribe .xy-honeypot{position:absolute;left:-5000px}
.xy-legal{font-size:14px;line-height:1.55;margin-top:30px}
.xy-detail-title{font-size:32px;font-weight:400;line-height:1.3;margin:20px 0 24px}
.xy-detail-cover{display:block;width:auto;max-width:100%;max-height:700px;height:auto;object-fit:contain;margin:0 0 28px}
.xy-work-detail{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:20px;align-items:start}
.xy-work-detail__media,.xy-work-detail__info{min-width:0}
.xy-work-detail__info .xy-detail-title{font-size:24px;font-weight:500;margin:0 0 16px}
.xy-work-detail__media video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#333;margin:0 0 10px}
.xy-work-detail__media audio{display:block;width:100%;margin:0 0 14px}
.xy-work-gallery{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
.xy-work-photo{margin:0;min-width:0}
.xy-work-photo a{display:block}
.xy-work-photo img{display:block;width:100%;height:auto}
.xy-work-photo__caption{font-size:14px;line-height:1.45;color:#666;margin:7px 0 15px;text-align:left}
.xy-work-photo__caption p{margin:0 0 4px}
.xy-work-photo__caption p:last-child{margin-bottom:0}
@media(max-width:900px){.xy-header__inner{gap:30px}.xy-nav{gap:13px}.xy-nav a{font-size:12px}.xy-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.xy-news-item{grid-template-columns:230px minmax(0,1fr)}}
@media(max-width:700px){.xy-header{height:auto;min-height:70px}.xy-header__inner{padding:4px 18px;justify-content:space-between}.xy-logo,.xy-logo img{width:160px;height:auto;flex-basis:160px}.xy-nav{display:none}.xy-menu{display:block;position:relative;color:#333}.xy-menu summary{cursor:pointer;list-style:none;text-transform:uppercase;font-size:13px;padding:12px}.xy-menu summary::-webkit-details-marker{display:none}.xy-menu nav{position:absolute;right:0;top:100%;background:#fff;box-shadow:0 5px 20px #0002;padding:12px 20px;display:flex;flex-direction:column;gap:11px;min-width:170px}.xy-home .xy-slider{height:68vw;min-height:315px}.xy-footer__inner{padding:10px 18px}.xy-footer p{font-size:10px}.xy-work-grid,.xy-exhibition-grid,.xy-work-detail{grid-template-columns:1fr}.xy-exhibit__body{min-height:0}.xy-content{padding:18px 18px 65px}.xy-archive{padding:0 18px 65px}.xy-news-item{grid-template-columns:1fr;gap:12px;min-height:0}.xy-news-item__image img{max-height:260px}.xy-contact-email{font-size:18px}}
@media(prefers-reduced-motion:reduce){.xy-slide{animation:none}.xy-slide:first-child{opacity:1}.xy-site *{scroll-behavior:auto!important}}
.xy-archive:has(#xy-filter-2025:target) .xy-work:not(.xy-cat-2025){display:none}
.xy-archive:has(#xy-filter-2023:target) .xy-work:not(.xy-cat-2023){display:none}
.xy-archive:has(#xy-filter-2022:target) .xy-work:not(.xy-cat-2022){display:none}
.xy-archive:has(#xy-filter-2021:target) .xy-work:not(.xy-cat-2021){display:none}
.xy-archive:has(#xy-filter-2020:target) .xy-work:not(.xy-cat-2020){display:none}
.xy-archive:has(#xy-filter-2019:target) .xy-work:not(.xy-cat-2019){display:none}
.xy-archive:has(#xy-filter-2018:target) .xy-work:not(.xy-cat-2018){display:none}
.xy-archive:has(#xy-filter-2017:target) .xy-work:not(.xy-cat-2017){display:none}
.xy-archive:has(#xy-filter-2016:target) .xy-work:not(.xy-cat-2016){display:none}
.xy-archive:has(#xy-filter-2015:target) .xy-work:not(.xy-cat-2015){display:none}
.xy-archive:has(#xy-filter-2014:target) .xy-work:not(.xy-cat-2014){display:none}
.xy-archive:has(#xy-filter-2013:target) .xy-work:not(.xy-cat-2013){display:none}
.xy-archive:has(#xy-filter-2012:target) .xy-work:not(.xy-cat-2012){display:none}
.xy-archive:has(#xy-filter-2011:target) .xy-work:not(.xy-cat-2011){display:none}
.xy-archive:has(#xy-filter-2010:target) .xy-work:not(.xy-cat-2010){display:none}
.xy-archive:has(#xy-filter-2009:target) .xy-work:not(.xy-cat-2009){display:none}
.xy-archive:has(#xy-filter-2008:target) .xy-work:not(.xy-cat-2008){display:none}
.xy-archive:has(#xy-filter-2006:target) .xy-work:not(.xy-cat-2006){display:none}
.xy-archive:has(#xy-filter-2005:target) .xy-work:not(.xy-cat-2005){display:none}
.xy-archive:has(#xy-filter-public-art:target) .xy-work:not(.xy-cat-public-art){display:none}
.xy-archive:has(#xy-filter-2d-work:target) .xy-work:not(.xy-cat-2d-work){display:none}
.xy-archive:has(#xy-filter-all:target) .xy-work-filter a[href="#xy-filter-all"]{color:#cc3366}
.xy-archive:has(#xy-filter-2025:target) .xy-work-filter a[href="#xy-filter-2025"]{color:#cc3366}
.xy-archive:has(#xy-filter-2023:target) .xy-work-filter a[href="#xy-filter-2023"]{color:#cc3366}
.xy-archive:has(#xy-filter-2022:target) .xy-work-filter a[href="#xy-filter-2022"]{color:#cc3366}
.xy-archive:has(#xy-filter-2021:target) .xy-work-filter a[href="#xy-filter-2021"]{color:#cc3366}
.xy-archive:has(#xy-filter-2020:target) .xy-work-filter a[href="#xy-filter-2020"]{color:#cc3366}
.xy-archive:has(#xy-filter-2019:target) .xy-work-filter a[href="#xy-filter-2019"]{color:#cc3366}
.xy-archive:has(#xy-filter-2018:target) .xy-work-filter a[href="#xy-filter-2018"]{color:#cc3366}
.xy-archive:has(#xy-filter-2017:target) .xy-work-filter a[href="#xy-filter-2017"]{color:#cc3366}
.xy-archive:has(#xy-filter-2016:target) .xy-work-filter a[href="#xy-filter-2016"]{color:#cc3366}
.xy-archive:has(#xy-filter-2015:target) .xy-work-filter a[href="#xy-filter-2015"]{color:#cc3366}
.xy-archive:has(#xy-filter-2014:target) .xy-work-filter a[href="#xy-filter-2014"]{color:#cc3366}
.xy-archive:has(#xy-filter-2013:target) .xy-work-filter a[href="#xy-filter-2013"]{color:#cc3366}
.xy-archive:has(#xy-filter-2012:target) .xy-work-filter a[href="#xy-filter-2012"]{color:#cc3366}
.xy-archive:has(#xy-filter-2011:target) .xy-work-filter a[href="#xy-filter-2011"]{color:#cc3366}
.xy-archive:has(#xy-filter-2010:target) .xy-work-filter a[href="#xy-filter-2010"]{color:#cc3366}
.xy-archive:has(#xy-filter-2009:target) .xy-work-filter a[href="#xy-filter-2009"]{color:#cc3366}
.xy-archive:has(#xy-filter-2008:target) .xy-work-filter a[href="#xy-filter-2008"]{color:#cc3366}
.xy-archive:has(#xy-filter-2006:target) .xy-work-filter a[href="#xy-filter-2006"]{color:#cc3366}
.xy-archive:has(#xy-filter-2005:target) .xy-work-filter a[href="#xy-filter-2005"]{color:#cc3366}
.xy-archive:has(#xy-filter-public-art:target) .xy-work-filter a[href="#xy-filter-public-art"]{color:#cc3366}
.xy-archive:has(#xy-filter-2d-work:target) .xy-work-filter a[href="#xy-filter-2d-work"]{color:#cc3366}
html,body{margin:0;padding:0}
body{background:#fff}
#xy-content{display:block;min-height:calc(100vh - 127px)}

/* Home: use the taller artwork view, with the footer immediately below it. */
.xy-site.xy-home{min-height:0}
.xy-site.xy-home #xy-content{min-height:0;margin:0;padding:0}
.xy-site.xy-home .xy-slider{height:auto;min-height:0;max-height:none;aspect-ratio:638/443}
.xy-logo,.custom-logo-link{display:block;flex:0 0 196px}
.custom-logo-link img{display:block;width:196px;height:61px;object-fit:contain}
.xy-nav__list{display:flex;align-items:center;justify-content:space-between;gap:25px;width:100%;margin:0;padding:0;list-style:none}
.xy-nav__list li{margin:0;padding:0;list-style:none}
.xy-menu .xy-nav__list{display:flex;flex-direction:column;align-items:stretch;gap:11px;width:auto}
.xy-menu .xy-nav__list a{display:block}
@media(max-width:900px){.xy-nav__list{gap:13px}}
@media(max-width:700px){.xy-logo,.custom-logo-link,.custom-logo-link img{width:160px;height:auto;flex-basis:160px}.xy-menu nav{z-index:10}}

/* Live WordPress content uses the native editor and Media Library. */
.xy-article-content{padding-top:20px}
.xy-article-content > p:first-of-type{margin-top:0}
.xy-article-content p:has(img){text-align:left!important}
.xy-article-content p > img,.xy-article-content p > a > img{margin-left:0!important;max-width:100%;height:auto}
.xy-work-detail{padding-top:20px}
.xy-work-detail__media{width:100%}
.xy-work-gallery .xy-work-photo,.xy-work-gallery .xy-work-photo a{margin:0;width:100%}
.xy-work-gallery .xy-work-photo img{width:100%;height:auto;margin:0}
.xy-work-detail__info{overflow-wrap:break-word}
.xy-work-detail__info p{white-space:normal}
.xy-work-detail__media video{object-fit:contain;aspect-ratio:auto;max-height:680px}
.xy-rich iframe{max-width:100%}
.xy-contact form{max-width:600px;margin:25px auto}
.xy-contact form input:not([type=submit]){max-width:100%;padding:7px;border:1px solid #aaa}
.xy-contact form input[type=submit]{padding:9px 20px;border:0;background:#555;color:#fff;cursor:pointer}
@media(max-width:700px){.xy-work-detail{padding-top:12px}.xy-work-detail__info{padding-top:12px}}

/* The live Writing page contains two public PDF links in its native page content. */
.xy-writing .xy-rich h3 a{color:#555;text-decoration:none}
.xy-writing .xy-rich img{width:auto;max-width:100%;max-height:730px;height:auto;object-fit:contain}

/* Restore the existing Mailchimp form layout without changing its settings. */
.xy-contact #mc-embedded-subscribe-form p{font-size:0}
.xy-contact #mc-embedded-subscribe-form label{display:block;font-size:14px;margin:13px 0 4px}
.xy-contact #mc-embedded-subscribe-form input:not([type=submit]){display:block;width:100%;height:37px;margin:0 0 8px;font-size:14px}
.xy-contact #mc-embedded-subscribe-form input[name^="b_"]{display:none!important}
.xy-contact #mc-embedded-subscribe-form input[type=submit]{margin-top:16px;font-size:14px}

/* Center the Contact page's lead image within the content column. */
body.page-id-2557 .xy-content.xy-rich > p:first-of-type img{margin:10px auto}
