/* Homepage only: reference layout has distinct desktop and mobile sticky anchors. */
.mobile-shop,.menu-toggle{display:none}.artist-name{font-size:16.361vw}.artist-name span{transform:none}
@media(min-width:768px){.name-rail{height:16.361vw;padding-top:0}header{height:100px;padding:28px 1vw}header nav{margin-right:9vw}}
@media(max-width:767px){
header{height:92px;min-height:92px;display:flex;padding:20px 6vw;gap:18px;position:relative;background:white;align-items:center}
header .brand{font-size:23px;margin:0;letter-spacing:-.7px}.mobile-shop{display:block;font-size:13px;margin-left:auto}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:28px;height:32px;border:0;padding:0;background:transparent}.menu-toggle span{display:block;width:25px;height:1px;background:#000}
header nav{display:none}header.menu-open nav{position:absolute;top:92px;left:0;right:0;display:flex;flex-direction:column;align-items:flex-end;gap:22px;padding:30px 6vw;background:white;font-size:22px;z-index:30;margin:0}.menu-open .menu-toggle span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-open .menu-toggle span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.art-scroll{display:grid;height:auto;grid-template-columns:calc(6vw - 11px) repeat(8,minmax(0,1fr)) calc(6vw - 11px);grid-template-rows:repeat(60,24px);gap:11px;overflow:visible}
.reference-frame{position:relative;left:auto!important;top:auto!important;width:auto!important;height:auto!important;min-width:0;min-height:0;align-self:stretch;z-index:1}.reference-frame img{width:100%;height:100%;object-fit:contain}.frame-0{grid-area:1/2/9/10}.frame-1{grid-area:14/5/22/11}.frame-2{grid-area:12/1/18/6}.frame-3{grid-area:20/1/26/7}.frame-4{grid-area:26/6/33/11}.frame-5{grid-area:29/1/36/6}.frame-6{grid-area:34/6/39/11}.frame-7{grid-area:41/3/50/9}.frame-8{grid-area:40/1/46/5}.frame-9{grid-area:52/2/60/10}
.name-rail{grid-area:9/2/12/10;position:sticky;top:calc(50svh - var(--name-height,16vw)/2);bottom:auto;left:auto;width:100%;height:max-content;margin:0;padding:0;align-self:start;transform:none!important;z-index:3;will-change:auto}.artist-name{width:100%;line-height:1;font-size:16vw}.home-footer{padding:35px 6vw;font-size:11px}
}

@media(min-width:768px) and (max-width:1050px){header nav{margin-right:0;gap:14px;font-size:12px}header{gap:20px}}

@media(min-width:768px){.name-rail{height:var(--name-height,16.361vw)}}

.artist-story{padding:110px 6vw 80px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8vw;align-items:start;background:#fff;position:relative;z-index:4}.portrait-area{position:sticky;top:40px}.portrait-slideshow{position:relative;aspect-ratio:4/5;background:white}.portrait-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0}.portrait-slide.is-active{opacity:1}.portrait-pause{font-size:11px;background:white;border:0;border-bottom:1px solid #aaa;padding:8px 0;cursor:pointer}.artist-story-copy p{font-size:16px;line-height:1.55;margin:0 0 26px}.artist-story-copy p:first-child{margin-top:0}@media(max-width:767px){.artist-story{padding:64px 6vw 40px;grid-template-columns:1fr;gap:38px}.portrait-area{position:relative;top:auto}.portrait-slideshow{aspect-ratio:4/5;max-height:70svh}.artist-story-copy p{font-size:15px;line-height:1.6}}

/* Transparent signature uses the existing scroll rail and stop boundary. */
.artist-name{font-size:0;line-height:0}.artist-signature{display:block;width:100%;height:auto;aspect-ratio:3/1;object-fit:contain}.name-rail{height:var(--name-height,32.6667vw)}@media(max-width:767px){.name-rail{height:max-content}.artist-name{font-size:0;line-height:0}}
/* Reference transition: name exits with the artwork stage, portrait and copy begin together. */
@media(min-width:768px){.art-scroll{height:324vw}.artist-story{padding:8.74vw 6.17vw 80px 5.07vw;grid-template-columns:26.61% 67.89%;gap:5.5%}.portrait-area{position:relative;top:auto}.portrait-slideshow{aspect-ratio:2/3}.portrait-slide{object-position:center top}.artist-story-copy p{font-size:clamp(17px,1.702vw,26px);line-height:1.38;margin-bottom:1em}}
.story-reveal-ready .story-reveal-item{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.story-reveal-ready.story-in-view .story-reveal-item{opacity:1;transform:none}
@media(max-width:767px){.art-scroll{grid-template-rows:repeat(57,24px)}.artist-story{padding-top:clamp(32px,8.74vw,64px);gap:32px}.portrait-area{position:relative;top:auto}}
@media(prefers-reduced-motion:reduce){.story-reveal-ready .story-reveal-item{opacity:1;transform:none;transition:none}}

/* Display the supplied high-resolution 3D wordmark, excluding transparent margins only. */
.artist-name.is-block-logo{position:relative;aspect-ratio:2171/355;overflow:hidden}.is-block-logo .artist-signature{position:absolute;top:-46.4789%;left:0;width:100%;height:203.9437%;aspect-ratio:auto;object-fit:fill;filter:brightness(.7) contrast(1.15)}

/* Restore the original typographic wordmark. */
.artist-name{font:800 16.361vw/1 InterTight,Arial,sans-serif;letter-spacing:0;color:#000;white-space:nowrap}.artist-name span{display:inline-block;white-space:nowrap;transform-origin:left center}@media(max-width:767px){.artist-name{font-size:16vw;line-height:1}}

/* Final portraits follow the complete homepage biography on every screen size. */
.artist-story{display:flex;flex-direction:column;gap:0}.artist-story-copy{width:100%;max-width:1050px;margin:0 auto}.artist-story .portrait-area{position:relative;top:auto;width:min(620px,100%);margin:64px auto 0}.artist-story .portrait-slideshow{aspect-ratio:4/5;max-height:none}.artist-story .portrait-slide{object-fit:contain;object-position:center}.portrait-pause{color:#000}@media(max-width:767px){.artist-story .portrait-area{margin-top:40px}}

/* The café upload contains 296px/296px black bars; show only its full 707×944 photograph. */
.portrait-slide-cafe{display:flex;align-items:center;justify-content:center}.cafe-photo-window{position:relative;height:100%;width:auto;max-width:100%;aspect-ratio:707/944;overflow:hidden}.cafe-photo-window img{position:absolute;left:0;top:-31.3559322%;width:100%;height:162.7118644%;max-width:none;object-fit:fill}

/* Mat removal follows the photograph, independently of its collage position. */
.gallery-source-5 a{position:absolute;left:0;top:50%;width:100%;height:auto;aspect-ratio:1320/1447;overflow:hidden;transform:translateY(-50%)}
.gallery-source-5 img{position:absolute;max-width:none;object-fit:fill;width:151.5151515%;height:138.2170007%;left:-25.7575758%;top:-18.6592951%}
.gallery-source-6 a{position:absolute;left:0;top:50%;width:100%;height:auto;aspect-ratio:1423/1453;overflow:hidden;transform:translateY(-50%)}
.gallery-source-6 img{position:absolute;max-width:none;object-fit:fill;width:140.5481377%;height:137.6462491%;left:-20.5903022%;top:-18.4445974%}
.gallery-source-7 a{position:absolute;left:0;top:50%;width:100%;height:auto;aspect-ratio:992/1396;overflow:hidden;transform:translateY(-50%)}
.gallery-source-7 img{position:absolute;max-width:none;object-fit:fill;width:201.6129032%;height:143.2664756%;left:-50.2016129%;top:-22.8510029%}
.gallery-source-8 a{position:absolute;left:0;top:50%;width:100%;height:auto;aspect-ratio:1325/1418;overflow:hidden;transform:translateY(-50%)}
.gallery-source-8 img{position:absolute;max-width:none;object-fit:fill;width:150.9433962%;height:141.0437236%;left:-25.6603774%;top:-20.4513399%}
.gallery-source-9 a{position:absolute;left:0;top:50%;width:100%;height:auto;aspect-ratio:1238/1458;overflow:hidden;transform:translateY(-50%)}
.gallery-source-9 img{position:absolute;max-width:none;object-fit:fill;width:161.5508885%;height:137.1742112%;left:-31.0985460%;top:-18.2441701%}
.gallery-source-10 a{position:absolute;left:0;top:50%;width:100%;height:auto;aspect-ratio:1094/859;overflow:hidden;transform:translateY(-50%)}
.gallery-source-10 img{position:absolute;max-width:none;object-fit:fill;width:125.4113346%;height:159.7206054%;left:-12.9798903%;top:-37.6018626%}
.frame-7{z-index:2}.frame-8,.frame-9{z-index:1}@media(max-width:767px){.frame-7{grid-area:40/4/50/11}.frame-8{grid-area:39/1/46/7}.frame-9{grid-area:47/1/57/9}}

/* Direct external links with a comfortable touch target. */
.home-footer>div{align-items:center;gap:16px}.home-footer .instagram-link{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;margin:-10px 0 -10px -10px}.instagram-link svg{display:block;flex:none}.home-footer a[href="https://www.peterkeil.store"]{display:inline-flex;align-items:center;min-height:44px;margin-block:-10px}
