:root{--paper:#f6f1e7;--ink:#332f26;--muted:#6c6559;--rust:#a3442b;--line:#d5cbbb;--olive:#e0e2cd;--blue:#c1d7df;--brown:#5a4a3a;--sand:#e8dfd0;--clay:#e8d4c5;--page-top:80px;--page-end:96px;--title-inner:clamp(56px,5.6vw,80px);--section-title:30px;--row-title:32px}*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}a:hover{color:var(--rust)}a:focus-visible{outline:3px solid var(--rust);outline-offset:5px}main,.site-header,footer{max-width:1320px;margin:auto;padding-left:64px;padding-right:64px}.site-header{display:flex;align-items:center;gap:44px;min-height:112px;border-bottom:1px solid var(--line)}.logo{font-size:32px;font-weight:700;letter-spacing:-1.8px;white-space:nowrap}.logo span{font-family:Georgia,serif;font-style:italic;font-weight:400;color:var(--rust)}.logo i{font-style:normal;font-size:25px;color:var(--rust);margin-left:14px}.site-header nav{display:flex;gap:24px;margin-left:auto}.site-header nav a{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;font-size:14px}.site-header .language-switch{margin-left:0;gap:4px;border-left:1px solid var(--line);padding-left:18px}.language-switch a{padding:0 9px}.language-switch a[aria-current]{background:var(--olive)}.site-header nav a[aria-current]{text-decoration:underline;text-underline-offset:8px;text-decoration-color:var(--rust)}.language{border-left:1px solid var(--line);padding-left:24px}.hero{display:grid;grid-template-columns:1.4fr 1fr;gap:70px;align-items:center;padding:86px 0 92px}.eyebrow{text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:2px;margin:0 0 24px;color:var(--muted)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(48px,5.5vw,78px);line-height:1.07;letter-spacing:-3px;margin-bottom:28px}em{font-weight:400;color:var(--rust)}.intro{font-size:18px;line-height:1.75;max-width:540px;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;background:var(--ink);color:var(--paper);padding:15px 23px;margin-top:14px;font-size:14px;min-height:48px}.button:hover{background:var(--rust);color:var(--paper)}.paper{position:relative;background:var(--blue);transform:rotate(3deg);padding:28px 32px;min-height:380px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:9px 12px 0 var(--sand)}.paper:before{content:'';position:absolute;top:-12px;left:40%;width:85px;height:26px;background:var(--sand);transform:rotate(-8deg);opacity:.9}.paper-top,.paper-bottom{font-size:12px;letter-spacing:2px}.paper p{font-family:Georgia,serif;font-style:italic;font-size:20px;max-width:220px;line-height:1.3;margin-bottom:24px}.word-art{font-family:Georgia,serif;font-style:italic;font-size:150px;line-height:1.3;letter-spacing:-16px;position:relative;color:var(--ink)}.word-art:after{content:'';position:absolute;width:75%;height:15px;border-bottom:3px solid var(--rust);border-radius:50%;bottom:10px;left:0;transform:rotate(-9deg)}.word-art span{position:absolute;right:0;top:10px;font-size:65px;color:var(--rust);letter-spacing:0}.work{border-top:1px solid var(--line);padding:40px 0 64px}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px}.section-heading h2{font-family:Georgia,serif;font-size:30px;letter-spacing:-1px}.categories{border-top:1px solid var(--line)}.category{display:grid;grid-template-columns:50px 1fr 1fr 40px;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding:25px 0}.number{font-size:12px;color:var(--muted)}.category h3{font-family:Georgia,serif;font-size:32px;letter-spacing:-1px;margin:0}.category p{font-size:14px;color:var(--muted);margin:0}.arrow{font-size:28px;text-align:right}.category:hover{background:var(--sand)}.journal{background:var(--olive);display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:48px;margin-bottom:72px}.journal h2{font-family:Georgia,serif;font-size:46px;line-height:1.15;letter-spacing:-1.5px;margin:0}.journal>div+div{align-self:center}.journal p:not(.eyebrow){max-width:360px;color:var(--brown)}.text-link{display:inline-block;border-bottom:1px solid var(--ink);padding:10px 0;min-height:44px;font-size:14px}footer{border-top:1px solid var(--line);display:flex;align-items:center;gap:30px;min-height:130px;font-size:12px;color:var(--muted)}footer .logo{font-size:26px;color:var(--ink)}footer p{margin:0}footer>span{margin-left:auto}.page-intro{padding:80px 0 35px}.page-intro h1{font-size:80px}.filters{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 40px}.filters a{border:1px solid var(--line);padding:10px 22px;min-height:44px;font-size:14px}.gallery-empty{border-top:1px solid var(--line);display:grid;grid-template-columns:50px 1fr auto;gap:20px;padding:32px 0;scroll-margin-top:24px}.gallery-empty h2{font-family:Georgia,serif;font-size:32px;margin-bottom:8px}.gallery-empty p{color:var(--muted);margin:0}.pending{font-size:12px;text-transform:uppercase;letter-spacing:1px;align-self:start;padding:8px 12px;background:var(--olive)}.empty-note{color:var(--muted);font-size:13px;margin:20px 0 80px}.empty-panel{background:var(--olive);padding:50px;margin:15px 0 90px}.empty-panel h2{font-family:Georgia,serif;font-size:34px}.about{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:100px 0 90px}.about-copy{padding-top:40px}.about-copy>p{color:var(--muted)}.skip{position:absolute;left:16px;top:-100px;background:var(--ink);color:white;padding:12px;z-index:10}.skip:focus{top:12px}@media(min-width:1500px){.hero{padding-top:110px;padding-bottom:110px}}@media(max-width:900px){main,.site-header,footer{padding-left:32px;padding-right:32px}.hero{gap:40px}.paper{padding:22px;min-height:330px}.word-art{font-size:120px}.journal{gap:35px;padding:32px}.category{grid-template-columns:30px 1fr 1fr 24px;gap:12px}.about{gap:40px}}@media(max-width:600px){main,.site-header,footer{padding-left:22px;padding-right:22px}.site-header{min-height:120px;flex-wrap:wrap;gap:0;justify-content:space-between;padding-top:14px;padding-bottom:10px}.site-header .logo{font-size:30px}.site-header nav{order:3;width:100%;margin:5px 0 0;gap:30px}.language{padding-left:18px}.hero{grid-template-columns:1fr;padding:48px 0 52px;gap:48px}h1{font-size:51px;letter-spacing:-2.3px}.intro{font-size:16px}.paper{margin:0 12px;min-height:300px;padding:24px}.word-art{font-size:130px;line-height:1.1}.paper p{max-width:none;margin:14px 0}.section-heading{display:block}.section-heading h2{font-size:28px}.category{grid-template-columns:26px 1fr 28px;gap:10px;padding:22px 0}.category h3{font-size:29px}.category p{grid-column:2;grid-row:2}.category .arrow{grid-column:3;grid-row:1}.journal{grid-template-columns:1fr;padding:28px;gap:28px;margin-bottom:48px}.journal h2{font-size:39px}footer{flex-wrap:wrap;gap:10px 25px;padding-top:24px;padding-bottom:24px}footer>span{margin-left:0;width:100%}.page-intro{padding-top:48px}.page-intro h1{font-size:56px}.gallery-empty{grid-template-columns:24px 1fr;gap:12px}.pending{grid-column:2;justify-self:start}.empty-panel{padding:28px}.empty-panel h2{font-size:29px}.about{grid-template-columns:1fr;padding:60px 0;gap:0}.about-copy{padding-top:12px}}
.gallery-empty>div{min-width:0}.gallery-empty p{max-width:540px}.empty-sketch{display:block;width:72px;margin:22px 0 4px;padding:0 10px 4px;border-bottom:2px solid var(--rust);border-radius:0 0 48% 22%;font:italic 36px/1 Georgia,serif;color:var(--rust);transform:rotate(-8deg)}
 
.related-content{border-top:1px solid var(--line);margin:32px 0;padding-top:24px;min-width:0}
.related-content h2{font:normal 24px/1.25 Georgia,serif;letter-spacing:-.3px;margin:0 0 12px;text-wrap:pretty}
.related-content p,.story-prose .related-content p{font-size:15px;line-height:1.65;color:var(--muted);margin:0 0 8px;text-wrap:pretty}
.related-link{display:inline-flex;align-items:center;min-height:44px;font-size:14px;line-height:1.5}
.related-link span{color:var(--rust);margin-left:6px}
.related-art{display:grid;grid-template-columns:minmax(0,180px) minmax(0,1fr);gap:24px;align-items:start}
.related-preview{display:block;background:var(--paper);padding:8px;border:1px solid var(--line)}
.related-preview img{display:block;width:100%;height:auto;object-fit:contain}
.related-content a:focus-visible{outline:3px solid var(--rust);outline-offset:4px}
@media(max-width:500px){.related-art{grid-template-columns:minmax(0,1fr);gap:20px}.related-preview{width:min(100%,220px)}}

 
.gallery-empty{scroll-margin-top:24px}
#category-1 .empty-sketch{color:var(--ink);border-color:var(--ink);transform:rotate(-4deg)}
#category-2 .empty-sketch{transform:rotate(-12deg)}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .gallery-empty .empty-sketch{transition:transform 200ms ease}
  .gallery-empty:hover .empty-sketch{transform:translate(3px,-3px) rotate(-4deg)}
  #category-1:hover .empty-sketch{transform:translate(3px,-3px) rotate(0deg)}
  #category-2:hover .empty-sketch{transform:translate(3px,-3px) rotate(-8deg)}
}
@supports(animation-timeline:view()){
  @media(prefers-reduced-motion:no-preference){
    .gallery-empty{animation:gallery-arrive linear both;animation-timeline:view();animation-range:entry 0% entry 80%}
    @keyframes gallery-arrive{from{translate:0 10px}to{translate:0 0}}
  }
}
 
@media(max-width:600px){
  .hero{padding-bottom:64px;gap:56px}
  .work{padding-top:48px;padding-bottom:64px}
  .journal{padding-top:36px;padding-bottom:36px;gap:36px;margin-bottom:64px}
  .gallery-empty{padding-top:40px;padding-bottom:40px}
  .empty-note{margin-top:28px;margin-bottom:64px}
  .about{gap:24px;padding-bottom:64px}
}
 
main{padding-bottom:var(--page-end)}
main>:last-child,main>:last-child>:last-child{margin-bottom:0}
main>:last-child:not(.journal){padding-bottom:0}
.page-intro,.about{padding-top:var(--page-top)}
.page-intro h1,.about h1{font-size:var(--title-inner)}
.gallery-empty h2{font-size:var(--row-title)}
@media(max-width:600px){
  :root{--page-top:48px;--page-end:64px;--section-title:28px;--row-title:29px}
}
 
:root{--lead:clamp(21px,1.8vw,25px);--flow:64px}
.intro{font:var(--lead)/1.5 Georgia,'Times New Roman',serif;color:var(--ink);max-width:34ch;text-wrap:pretty}
.intro em{font-style:italic;color:var(--rust)}
main>:has(+ .page-next){margin-bottom:0}
main>:not(.about-contact):not(.journal):has(+ .page-next){padding-bottom:0}
main>.page-next{margin-top:var(--flow)}
.text-link .link-arrow{color:var(--rust)}
.gallery-empty h2{letter-spacing:-1px}
@media(max-width:600px){:root{--flow:48px}.intro{font-size:var(--lead)}}
.intro{max-width:38ch}
 
.section-heading h2{line-height:1.2}
 
.filters{gap:4px 28px;border-top:0}
.filters a{position:relative;display:inline-flex;align-items:center;border:0;padding:10px 0;font:normal 18px/1.3 Georgia,'Times New Roman',serif;color:var(--ink);-webkit-tap-highlight-color:transparent}
.filters a::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:4px;border-bottom:1px solid var(--line);border-radius:0 0 40% 30%}
.filters a:active::after{border-bottom:2px solid var(--rust)}
@media(hover:hover) and (pointer:fine){.filters a:hover::after{border-bottom:2px solid var(--rust)}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.filters a:hover::after{transform:rotate(-2deg)}}
.filters a:active{color:var(--rust)}
@media(max-width:600px){.filters{gap:0 22px}.filters a{padding:10px 0;font-size:17px}}
 
.filter-target{display:block;height:0;scroll-margin-top:12px}
.filters a{gap:7px}
.filter-count{font:12px/1 Arial,Helvetica,sans-serif;color:var(--muted);letter-spacing:.5px;transform:translateY(-5px)}
.filters a:active,.filters a:active .filter-count{color:var(--rust)}
@media(hover:hover) and (pointer:fine){.filters a:hover,.filters a:hover .filter-count{color:var(--rust)}}
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.gallery-empty:target)) .filters a[href="#vse"]::after,
main:has(#sekce-kresby:target,#category-0:target) .filters a[href="#sekce-kresby"]::after,
main:has(#sekce-3d:target,#category-1:target) .filters a[href="#sekce-3d"]::after,
main:has(#sekce-ai:target,#category-2:target) .filters a[href="#sekce-ai"]::after{border-bottom:2px solid var(--rust);transform:rotate(-2deg)}
main:has(#sekce-kresby:target,#category-0:target) .gallery-empty:not(#category-0),
main:has(#sekce-3d:target,#category-1:target) .gallery-empty:not(#category-1),
main:has(#sekce-ai:target,#category-2:target) .gallery-empty:not(#category-2),
main:has(#sekce-kresby:target) .article-list>li:not([data-category="kresby"]),
main:has(#sekce-3d:target) .article-list>li:not([data-category="3d"]),
main:has(#sekce-ai:target) .article-list>li:not([data-category="ai"]){display:none}
 
.articles-filter-empty{display:none;margin:0 0 64px;padding-top:32px;border-top:1px solid var(--line);font:italic 19px/1.4 Georgia,serif;color:var(--muted)}
main:has(#sekce-kresby:target) .articles-filter-empty[data-for="kresby"],
main:has(#sekce-3d:target) .articles-filter-empty[data-for="3d"],
main:has(#sekce-ai:target) .articles-filter-empty[data-for="ai"]{display:block}
main:has(#sekce-kresby:target):has(.articles-filter-empty[data-for="kresby"]) .article-list,
main:has(#sekce-3d:target):has(.articles-filter-empty[data-for="3d"]) .article-list,
main:has(#sekce-ai:target):has(.articles-filter-empty[data-for="ai"]) .article-list{margin-bottom:0}
 
.article-cat{color:var(--muted)}
.article-cat::before{content:"·";margin-right:20px;color:var(--line)}
@media(max-width:600px){.filters a{gap:5px}.article-cat::before{margin-right:12px}}
 
@media(max-width:600px){.filters{display:flex;flex-wrap:wrap;gap:0 36px}.filters a{justify-self:start}}
@media(max-width:340px){.filters{column-gap:24px}.filters a{font-size:16px}}
 
main>.about{padding-bottom:64px}
main>.about-contact{margin-top:0}
@media(max-width:600px){main>.about{padding-bottom:48px}}
 
.journal .eyebrow,.about-contact .eyebrow,.about-paper .eyebrow,.paper .eyebrow,.lost-paper .eyebrow,.contact-letter .eyebrow{color:var(--brown)}
 
main :is(h1,h2,h3,p,li,figcaption,time,span,a){overflow-wrap:break-word}
 
.hero>*,.about>*,.category>*,.journal>*,.home-tile>*,.about-contact>*{min-width:0}
.hero,.about,.category,.journal{overflow-wrap:anywhere}
 
.filters a{min-width:44px;padding-inline:11px;margin-inline:-11px}.filters a::after{left:11px;right:11px}
 
.more-steps{grid-column:1 / -1;margin:36px 0 8px}
.gallery-empty .more-steps{margin-top:8px}
.more-w{position:relative}
.more-step{position:absolute;left:0;top:0;width:1px;height:1px;margin:0;opacity:0;pointer-events:none}
.more-button{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:44px;padding:6px 0;cursor:pointer;-webkit-tap-highlight-color:transparent}
.more-label{position:relative;display:inline-flex;align-items:baseline;gap:12px;padding-bottom:8px;font:normal 22px/1.25 Georgia,'Times New Roman',serif;letter-spacing:-.3px;color:var(--ink)}
.more-label::after{content:"";position:absolute;left:0;right:26px;bottom:0;height:5px;border-bottom:2px solid var(--rust);border-radius:0 0 48% 22%/0 0 5px 3px;transform:rotate(-1.5deg);transform-origin:left}
.more-arrow{font-size:18px;color:var(--rust)}
.more-count{font-size:12px;letter-spacing:.5px;color:var(--muted)}
.more-step:focus-visible~.more-button .more-label{outline:3px solid var(--rust);outline-offset:5px}
.more-button:active .more-label{color:var(--rust)}
@media(hover:hover) and (pointer:fine){.more-button:hover .more-label{color:var(--rust)}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .more-arrow,.more-label::after{transition:transform .22s ease}
  .more-button:hover .more-arrow{transform:translateY(3px)}
  .more-button:hover .more-label::after{transform:rotate(-1.5deg) scaleX(1.08)}
}
@media(max-width:600px){.more-steps{margin-top:28px}.more-label{font-size:20px}}
 
.gallery-empty:not(:has(.more-1:checked,.gallery-work:target)) .gallery-work[data-p="2"],
.gallery-empty:not(:has(.more-2:checked,.gallery-work:target)) .gallery-work[data-p="3"],
.gallery-empty:not(:has(.more-3:checked,.gallery-work:target)) .gallery-work[data-p="4"],
.gallery-empty:not(:has(.more-4:checked,.gallery-work:target)) .gallery-work[data-p="5"],
.gallery-empty:not(:has(.more-5:checked,.gallery-work:target)) .gallery-work[data-p="6"],
.gallery-empty:not(:has(.more-6:checked,.gallery-work:target)) .gallery-work[data-p="7"],
.gallery-empty:not(:has(.more-7:checked,.gallery-work:target)) .gallery-work[data-p="8"],
.gallery-empty:not(:has(.more-8:checked,.gallery-work:target)) .gallery-work[data-p="9"],
.gallery-empty:not(:has(.more-9:checked,.gallery-work:target)) .gallery-work[data-p="10"],
.gallery-empty:not(:has(.more-10:checked,.gallery-work:target)) .gallery-work[data-p="11"],
.gallery-empty:not(:has(.more-11:checked,.gallery-work:target)) .gallery-work[data-p="12"],
.gallery-empty:not(:has(.more-12:checked,.gallery-work:target)) .gallery-work[data-p="13"],
.gallery-empty:not(:has(.more-13:checked,.gallery-work:target)) .gallery-work[data-p="14"],
.gallery-empty:not(:has(.more-14:checked,.gallery-work:target)) .gallery-work[data-p="15"],
.gallery-empty:not(:has(.more-15:checked,.gallery-work:target)) .gallery-work[data-p="16"],
.gallery-empty:not(:has(.more-16:checked,.gallery-work:target)) .gallery-work[data-p="17"],
.gallery-empty:not(:has(.more-17:checked,.gallery-work:target)) .gallery-work[data-p="18"],
.gallery-empty:not(:has(.more-18:checked,.gallery-work:target)) .gallery-work[data-p="19"],
.gallery-empty:not(:has(.more-19:checked,.gallery-work:target)) .gallery-work[data-p="20"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-1:checked)) .article-list>li[data-pa="2"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-2:checked)) .article-list>li[data-pa="3"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-3:checked)) .article-list>li[data-pa="4"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-4:checked)) .article-list>li[data-pa="5"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-5:checked)) .article-list>li[data-pa="6"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-6:checked)) .article-list>li[data-pa="7"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-7:checked)) .article-list>li[data-pa="8"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-8:checked)) .article-list>li[data-pa="9"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-9:checked)) .article-list>li[data-pa="10"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-10:checked)) .article-list>li[data-pa="11"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-11:checked)) .article-list>li[data-pa="12"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-12:checked)) .article-list>li[data-pa="13"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-13:checked)) .article-list>li[data-pa="14"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-14:checked)) .article-list>li[data-pa="15"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-15:checked)) .article-list>li[data-pa="16"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-16:checked)) .article-list>li[data-pa="17"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-17:checked)) .article-list>li[data-pa="18"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-18:checked)) .article-list>li[data-pa="19"],
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target,.article-list>li:target,.more-19:checked)) .article-list>li[data-pa="20"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-1:checked)) .article-list>li[data-ps="2"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-2:checked)) .article-list>li[data-ps="3"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-3:checked)) .article-list>li[data-ps="4"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-4:checked)) .article-list>li[data-ps="5"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-5:checked)) .article-list>li[data-ps="6"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-6:checked)) .article-list>li[data-ps="7"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-7:checked)) .article-list>li[data-ps="8"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-8:checked)) .article-list>li[data-ps="9"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-9:checked)) .article-list>li[data-ps="10"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-10:checked)) .article-list>li[data-ps="11"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-11:checked)) .article-list>li[data-ps="12"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-12:checked)) .article-list>li[data-ps="13"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-13:checked)) .article-list>li[data-ps="14"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-14:checked)) .article-list>li[data-ps="15"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-15:checked)) .article-list>li[data-ps="16"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-16:checked)) .article-list>li[data-ps="17"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-17:checked)) .article-list>li[data-ps="18"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-18:checked)) .article-list>li[data-ps="19"],
main:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target):not(:has(.more-19:checked)) .article-list>li[data-ps="20"]{display:none}
.more-w+.more-w,.more-step:checked~.more-button,.more-button[data-view]{display:none}
.more-w:has(>.more-step:checked)+.more-w{display:block}
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target)) .more-step:not(:checked)~.more-button[data-view="vse"],
main:has(#sekce-kresby:target) .more-step:not(:checked)~.more-button[data-view="kresby"],
main:has(#sekce-3d:target) .more-step:not(:checked)~.more-button[data-view="3d"],
main:has(#sekce-ai:target) .more-step:not(:checked)~.more-button[data-view="ai"]{display:inline-flex}
main:not(:has(#sekce-kresby:target,#sekce-3d:target,#sekce-ai:target)) .more-w:has(>[data-view]):not(:has(>[data-view="vse"])),
main:has(#sekce-kresby:target) .more-w:has(>[data-view]):not(:has(>[data-view="kresby"])),
main:has(#sekce-3d:target) .more-w:has(>[data-view]):not(:has(>[data-view="3d"])),
main:has(#sekce-ai:target) .more-w:has(>[data-view]):not(:has(>[data-view="ai"])){display:none}
.gallery-empty:has(.gallery-work:target) .more-steps,main:has(.article-list>li:target) .more-steps{display:none}

 
.ui-arrow{display:inline-block;width:1em;height:1em;vertical-align:-.12em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}

.work-back .ui-arrow,.story-back .ui-arrow{margin-right:.35em}

/* Shared shell: same navigation and footer on every page, without JavaScript.
   Footer follows content directly (no forced full-viewport stretch): on short
   pages captured at an oversized screenshot window this used to leave a large
   empty gap between the last section and the footer. */
body{display:flex;flex-direction:column}
/* Short pages (e.g. the empty journal) have no scrollbar; reserve its space so the
   header does not jump sideways when moving between pages on desktop. */
html{scrollbar-gutter:stable}
main{width:100%}
/* The skip target is programmatically focusable, but never an extra Tab stop. */
main:focus-visible{outline:3px solid var(--rust);outline-offset:-5px}
.site-header,footer{width:100%;margin:0 auto}
.site-header{gap:28px}
.site-header .logo{min-height:44px;display:inline-flex;align-items:center}
.site-header .language-switch{flex-shrink:0}
/* Wordmark: "TerezAI" handwritten-note style — a small tilted light-blue paper note with a strip of sand tape
   and a sand offset shadow (same as the notes on the home page, gallery and journal), a hand-drawn rust underline
   and a hand-drawn spark next to it. Text stays real text; the drawings are aria-hidden SVG. */
.site-header .logo{gap:12px;font-size:28px;letter-spacing:-1.4px;line-height:1;-webkit-tap-highlight-color:transparent}
.site-header .logo .logo-note{position:relative;display:inline-block;padding:9px 16px 13px 13px;background:var(--blue);box-shadow:4px 5px 0 var(--sand);transform:rotate(-2deg);font:700 1em/1 Arial,Helvetica,sans-serif;font-style:normal;color:var(--ink);letter-spacing:inherit}
.site-header .logo .logo-note::before{content:'';position:absolute;top:-7px;left:34%;width:38px;height:13px;background:var(--sand);opacity:.92;transform:rotate(-6deg)}
.site-header .logo .logo-ai{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;color:var(--rust);letter-spacing:-1px;margin-left:1px}
.site-header .logo .logo-line{position:absolute;left:11px;right:12px;bottom:5px;width:calc(100% - 23px);height:7px;overflow:visible;fill:none}
.site-header .logo .logo-line path{fill:none;stroke:var(--rust);stroke-width:2;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:0}
.site-header .logo .logo-spark{width:22px;height:22px;flex:none;fill:none;stroke:var(--rust);stroke-width:2.2;stroke-linecap:round;transform:rotate(-8deg)}
.site-header .logo:hover,.site-header .logo:active{color:var(--ink)}
/* Mouse only: the note lifts and straightens a little, the underline is drawn again, the spark turns. */
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .site-header .logo .logo-note{transition:transform 240ms ease,box-shadow 240ms ease}
  .site-header .logo .logo-spark{transition:transform 320ms ease}
  .site-header .logo:hover .logo-note{transform:translateY(-2px) rotate(-.6deg);box-shadow:5px 7px 0 var(--sand)}
  .site-header .logo:hover .logo-spark{transform:rotate(40deg) scale(1.08)}
  .site-header .logo:hover .logo-line path{animation:logo-redraw 480ms ease-out both}
}
@keyframes logo-redraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
/* Scroll: while the page scrolls, the spark slowly turns (one quiet quarter turn over the whole page). */
@supports(animation-timeline:scroll()){
  @media(prefers-reduced-motion:no-preference){
    .site-header .logo .logo-spark{animation:logo-spark-turn linear both;animation-timeline:scroll(root block)}
    @keyframes logo-spark-turn{from{rotate:0deg}to{rotate:90deg}}
  }
}
@media(prefers-reduced-motion:reduce){.site-header .logo .logo-note,.site-header .logo .logo-spark{transition:none}}
.site-header .logo:focus-visible{outline-offset:8px}
/* Footer = a quiet sign-off at the end of every page (not a second hero, no links): the small tilted blue
   paper note with tape carrying the signature (the same note as the logo in the header, so each page opens
   and closes with it) and a short subline; the year sits apart on the right, on the note's bottom line. */
footer{display:flex;align-items:flex-end;justify-content:space-between;gap:20px 48px;min-height:0;padding-top:48px;padding-bottom:48px}
footer .footer-note{position:relative;background:var(--blue);box-shadow:5px 6px 0 var(--sand);transform:rotate(-2deg);padding:16px 22px 14px 18px}
footer .footer-note::before{content:'';position:absolute;top:-8px;left:38%;width:44px;height:14px;background:var(--sand);opacity:.92;transform:rotate(-6deg)}
footer .footer-signature{position:relative;width:fit-content;margin:0 0 8px;font:italic 26px/1.3 Georgia,serif;color:var(--ink);padding-bottom:8px}
footer .footer-signature span{color:var(--rust)}
footer .footer-signature::after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;border-bottom:2px solid var(--rust);border-radius:0 0 48% 22%;transform:rotate(-3deg)}
footer .footer-tagline{margin:0;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--brown)}
footer .footer-year{margin:0 0 4px;font-size:12px;letter-spacing:2px;color:var(--muted)}
/* Movement only for a real mouse: on a phone a tap would leave the note "stuck" mid-hover. */
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  footer .footer-note{transition:transform 240ms ease,box-shadow 240ms ease}
  footer .footer-note:hover{transform:translateY(-2px) rotate(-.6deg);box-shadow:6px 8px 0 var(--sand)}
}
@media(prefers-reduced-motion:reduce){footer .footer-note{transition:none}}
/* Phone: stacked, the year under the note, both on the left edge. */
@media(max-width:600px){
  footer{flex-direction:column;align-items:flex-start;gap:20px;padding-top:40px;padding-bottom:32px}
}
/* End of Galerie / Články / O mně: one "continue" link to the next numbered page (01 → 02 → 03 → 01),
   so a visitor on a phone never hits a dead end before the footer. Same eyebrow + Georgia title +
   rust arrow and hand-drawn underline as the rest of the site; no box, no card. */
.page-next{border-top:1px solid var(--line);margin-top:24px;padding-top:40px}
.page-next a{display:inline-flex;flex-direction:column;gap:10px;min-height:44px;-webkit-tap-highlight-color:transparent}
.page-next .eyebrow{margin:0}
.page-next-title{position:relative;display:inline-flex;align-items:baseline;gap:14px;width:fit-content;padding-bottom:10px;font:normal 40px/1.15 Georgia,serif;letter-spacing:-1px;color:var(--ink)}
.page-next-title::after{content:"";position:absolute;left:0;right:30px;bottom:0;height:6px;border-bottom:2px solid var(--rust);border-radius:0 0 48% 22%/0 0 6px 4px;transform:rotate(-1.5deg);transform-origin:left}
.page-next-arrow{font-size:28px;color:var(--rust)}
.page-next a:hover .page-next-title,.page-next a:active .page-next-title{color:var(--rust)}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .page-next-arrow,.page-next-title::after{transition:transform .22s ease}
  .page-next a:hover .page-next-arrow{transform:translate(3px,-3px)}
  .page-next a:hover .page-next-title::after{transform:rotate(-1.5deg) scaleX(1.08)}
}
@media(max-width:600px){.page-next{padding-top:32px}.page-next-title{font-size:32px}.page-next-arrow{font-size:24px}}
/* Active language = olive chip only; the rust underline belongs to the current
   page in the main menu, so the two markers never mix. */
.site-header .language-switch a[aria-current]{text-decoration:none}
/* Main menu in the paper-note language of the site: Georgia like the footer links, the current page marked
   by the same hand-drawn rust underline as in the footer and on Pokračovat (not a plain text underline).
   Language switch = its own small tilted clay paper note with sand tape and sand shadow (a counterpart to the
   blue logo note on the other side of the header); the current language sits on an olive chip. Every language
   link is at least 48 × 44 px with a gap between the two, so a thumb never hits the wrong one. */
.site-header .main-nav a{position:relative;font:normal 17px/1.2 Georgia,'Times New Roman',serif;letter-spacing:-.2px}
.site-header .main-nav a[aria-current]{text-decoration:none}
.site-header .main-nav a span{position:relative;display:inline-block;padding:4px 0 7px}
.site-header .main-nav a[aria-current] span::after{content:"";position:absolute;left:-2px;right:-2px;bottom:1px;height:4px;border-bottom:2px solid var(--rust);border-radius:0 0 40% 30%;transform:rotate(-2deg)}
.site-header .language-switch{position:relative;align-items:center;gap:6px;padding:5px;margin-left:8px;border-left:0;background:var(--clay);box-shadow:4px 5px 0 var(--sand);transform:rotate(1.5deg)}
.site-header .language-switch::before{content:'';position:absolute;top:-7px;left:40%;width:34px;height:12px;background:var(--sand);opacity:.92;transform:rotate(5deg)}
.site-header .language-switch a{min-width:56px;min-height:44px;padding:0 12px;font-size:14px;color:var(--ink)}
.site-header .language-switch a[aria-current]{background:var(--olive)}
.site-header .language-switch a:not([aria-current]):hover{color:var(--rust)}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .site-header .language-switch{transition:transform 240ms ease,box-shadow 240ms ease}
  .site-header .language-switch:hover{transform:translateY(-2px) rotate(.6deg);box-shadow:5px 7px 0 var(--sand)}
}
@media(prefers-reduced-motion:reduce){.site-header .language-switch{transition:none}}
/* Touch: no grey/blue system flash on tap, the link turns rust instead
   (same colour as hover with a mouse). */
.site-header a{-webkit-tap-highlight-color:transparent}
.site-header a:active{color:var(--rust)}
@media(max-width:1000px){
  .site-header{flex-wrap:wrap;justify-content:space-between;gap:0;padding-top:14px;padding-bottom:10px}
  /* Menu items touch each other: the space between words is part of the tap area,
     so a tap between two items still lands on one. The nav is pulled left by the
     padding so "Úvod" lines up with the logo and the last item with the edge. */
  .site-header .main-nav{order:3;width:calc(100% + 24px);margin:8px -12px 0;gap:0;justify-content:flex-start;flex-wrap:wrap}
  .site-header .main-nav a{padding:0 12px}
  .site-header .language-switch{order:2;width:auto;margin:0 4px 0 0;gap:6px;padding:4px;border:0}
}
/* Phone: the four items share the full width and touch each other, so there is no
   dead space between them; outer ones keep their text at the logo / right edge. */
@media(max-width:600px){
  .site-header .main-nav a{flex:1 1 auto}
  .site-header .main-nav a:first-child{justify-content:flex-start}
  .site-header .main-nav a:last-child{justify-content:flex-end}
}
@media(max-width:380px){
  .site-header .logo{font-size:22px;gap:8px}
  .site-header .logo .logo-spark{display:none}
  .site-header .main-nav{width:calc(100% + 16px);margin:8px -8px 0}
  .site-header .main-nav a{padding:0 8px}
  .language-switch a{padding:0 7px}
  .site-header .language-switch a{min-width:52px;padding:0 8px;font-size:13px}
}
/* Page to page (same-origin links, Chromium/Safari with cross-document view transitions; elsewhere a normal jump):
   a short quiet cross-fade instead of a white flash, and the paper note of a work / story glides between the list
   and its own page (gallery preview ↔ work paper, list note ↔ article note share one view-transition-name).
   Reduced motion: the switch is instant (no animation); the opt-in itself stays on, so a preference change
   between two pages never aborts a transition. No JavaScript. */
@view-transition{navigation:auto}
@media(prefers-reduced-motion:no-preference){
  ::view-transition-old(root),::view-transition-new(root){animation-duration:180ms;animation-timing-function:ease}
  ::view-transition-group(*){animation-duration:320ms;animation-timing-function:cubic-bezier(.3,.7,.2,1)}
}
@media(prefers-reduced-motion:reduce){
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none}
}
/* Back from a work / story lands on its own row in the list; keep a little air above it. */
.gallery-work,.article-list>li{scroll-margin-top:32px}
/* "Next" link with a very long title: wraps under the eyebrow instead of running off a phone screen. */
.page-next a,.page-next-title{max-width:100%}
.page-next-title{overflow-wrap:anywhere}
/* the tilted hand-drawn line stays a short stroke under the start of a long (two-line) title instead of cutting
   through its second line; every title up to ~420 px (all of today's) keeps exactly the same line */
.page-next-title::after{max-width:420px}

 
.cat-icon{display:block;width:48px;height:48px;color:var(--ink);transform:rotate(-3deg);transform-origin:50% 60%}
.cat-icon svg{display:block;width:100%;height:100%;overflow:visible}
.cat-icon .stroke-trail{stroke:var(--rust)}
.cat-icon-1{color:var(--brown);transform:rotate(2deg)}
.cat-icon-1 .hidden-edge{stroke:var(--rust);opacity:.8}
.cat-icon-2{transform:rotate(-6deg)}
.cat-icon-2 path:first-child{fill:var(--blue)}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .cat-icon{transition:transform 220ms ease}
  .cat-icon .stroke-trail{stroke-dasharray:1;stroke-dashoffset:0}
  @keyframes icon-redraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
}

 
.gallery-soon{display:flex;align-items:center;gap:20px;margin:36px 0 8px;max-width:680px}
.gallery-soon .cat-icon{flex:none}
.gallery-soon .soon-line{margin:0;padding-bottom:6px;font:italic 19px/1.4 Georgia,serif;color:var(--ink);border-bottom:2px solid var(--rust);border-radius:0 0 48% 22%/0 0 14px 8px}

.gallery-empty{grid-template-columns:50px 56px 1fr auto;align-items:start}
.gallery-empty .cat-icon{margin-top:4px}
.gallery-empty>.empty-sketch{margin:4px 0 0}

 
.cat-soon{grid-column:3;margin:14px 0 6px}
.gallery-empty .cat-soon-line{position:relative;display:inline-block;max-width:100%;margin:0;padding:20px 30px 22px 26px;background:var(--blue);box-shadow:7px 8px 0 var(--sand);transform:rotate(-1.4deg);font:italic 19px/1.4 Georgia,serif;color:var(--ink)}
.cat-soon-line::before{content:'';position:absolute;top:-10px;left:38%;width:64px;height:20px;background:var(--sand);opacity:.9;transform:rotate(-7deg)}
.cat-soon-line::after{content:'';position:absolute;left:24px;right:34%;bottom:14px;height:8px;border-bottom:2px solid var(--rust);border-radius:0 0 48% 22%/0 0 8px 5px}
.cat-soon-1 .cat-soon-line{background:var(--olive);transform:rotate(1deg)}
.cat-soon-2 .cat-soon-line{background:var(--clay);transform:rotate(-.7deg)}

 
.gallery-works{grid-column:1 / -1;list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:40px 32px}
.gallery-work figure{margin:0 0 14px}
.gallery-work img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:var(--olive)}
.gallery-work figcaption{margin-top:8px;font-size:12px;color:var(--muted)}
.gallery-work h3{font:normal 24px/1.2 Georgia,serif;letter-spacing:-.5px;margin:0 0 8px}
.gallery-work p{font-size:15px}

@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .gallery-empty:hover .cat-icon,.gallery-soon:hover .cat-icon{transform:translate(2px,-3px) rotate(4deg)}
  .gallery-empty:hover .stroke-trail,.gallery-soon:hover .stroke-trail{animation:icon-redraw 520ms ease-out}
  .cat-soon-line{transition:transform 220ms ease}
  .gallery-empty:hover .cat-soon-line{transform:translate(0,-3px) rotate(-.4deg)}
}
@supports(animation-timeline:view()){
  @media(prefers-reduced-motion:no-preference){
    .gallery-soon{animation:gallery-soon-arrive linear both;animation-timeline:view();animation-range:entry 0% entry 80%}
    @keyframes gallery-soon-arrive{from{translate:0 10px}to{translate:0 0}}
  }
}
@media(max-width:900px){
  .gallery-empty{grid-template-columns:30px 48px 1fr auto;gap:16px}
}
@media(max-width:600px){
  .gallery-soon{gap:14px;margin-top:28px;align-items:flex-start}
  .gallery-soon .cat-icon{width:44px;height:44px}
  .gallery-soon .soon-line{font-size:17px}
  .gallery-empty{grid-template-columns:24px 44px 1fr;column-gap:12px}
  .gallery-empty .cat-icon{width:44px;height:44px}
  .gallery-empty>div{grid-column:3}
  .gallery-empty>.empty-sketch{grid-column:3;width:60px;font-size:30px;margin-top:0}
  .cat-soon{grid-column:2 / -1;margin:10px 8px 4px 0}
  .gallery-empty .cat-soon-line{padding:16px 22px 18px 20px;font-size:17px;box-shadow:5px 6px 0 var(--sand)}
  .cat-soon-line::before{top:-8px;width:48px;height:15px}
  .cat-soon-line::after{left:18px;bottom:11px}
}
 

 
.gallery-work-image{display:block}
.gallery-work-title{background:linear-gradient(var(--rust),var(--rust)) 0 100%/0 2px no-repeat;padding-bottom:2px}
.gallery-work-title:hover,.gallery-work-title:active{color:var(--rust)}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .gallery-work-title{transition:background-size 260ms ease,color 200ms ease}
  .gallery-work:hover .gallery-work-title{background-size:100% 2px}
}

 
.work-detail{padding-top:calc(var(--page-top) - 44px)}
.work-back{display:inline-flex;align-items:center;min-height:44px;padding:0;font-size:14px;-webkit-tap-highlight-color:transparent}
.work-back span{color:var(--rust);margin-right:6px}
.work-back:active{color:var(--rust)}
.work-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);grid-template-areas:"paper head" "paper text";grid-template-rows:auto 1fr;column-gap:80px;margin-top:28px}
.work-head{grid-area:head;align-self:end;padding-top:24px}
.work-head h1{font-size:var(--title-inner);margin-bottom:24px;text-wrap:balance;overflow-wrap:anywhere}
.work-text{grid-area:text}
.work-text .intro{max-width:480px;text-wrap:pretty;white-space:pre-line}
.work-back-end{margin-top:12px}
.work-paper{grid-area:paper;position:relative;margin:14px 14px 0 0;padding:18px 18px 22px;background:var(--blue);box-shadow:9px 11px 0 var(--sand);transform:rotate(-1.3deg);align-self:start}
.work-cat-1 .work-paper{background:var(--olive);transform:rotate(1deg)}
.work-cat-2 .work-paper{background:var(--clay);transform:rotate(-.8deg)}
.work-paper::before{content:'';position:absolute;z-index:1;top:-12px;left:42%;width:88px;height:26px;background:var(--sand);opacity:.92;transform:rotate(-7deg)}
.work-paper img,.work-placeholder{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:var(--paper)}
.work-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--muted)}
.work-placeholder .cat-icon{width:72px;height:72px}
.work-placeholder-label{font-size:12px;letter-spacing:2px;text-transform:uppercase}
.work-caption{position:relative;display:inline-block;margin:16px 8px 0 4px;padding-bottom:8px;font:italic 18px/1.4 Georgia,serif;color:var(--ink);text-wrap:pretty}
.work-caption::after{content:'';position:absolute;left:0;right:22%;bottom:0;height:8px;border-bottom:2px solid var(--rust);border-radius:0 0 48% 22%/0 0 8px 5px}
.work-pager{margin-top:88px}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .work-paper{transition:transform 240ms ease}
  .work-paper:hover{transform:translate(0,-3px) rotate(-.4deg)}
  .work-back span{display:inline-block;transition:transform 200ms ease}
  .work-back:hover span{transform:translateX(-3px)}
}
@supports(animation-timeline:view()){
  @media(prefers-reduced-motion:no-preference){
    .work-text{animation:gallery-arrive linear both;animation-timeline:view();animation-range:entry 0% entry 80%}
  }
}
@media(max-width:900px){.work-layout{column-gap:44px}}
@media(max-width:750px){
  .work-layout{grid-template-columns:1fr;grid-template-areas:"head" "paper" "text";grid-template-rows:auto;margin-top:16px}
  .work-head{padding-top:0}
  .work-head h1{margin-bottom:8px}
  .work-paper{margin:20px 8px 36px 4px;padding:12px 12px 16px;box-shadow:6px 8px 0 var(--sand)}
  .work-paper::before{width:64px;height:20px;top:-10px}
  .work-caption{font-size:16px;margin-top:12px}
  .work-pager{margin-top:56px}
}
 
.preview-banner{margin:24px 0 0;padding:12px 16px;background:var(--olive);color:var(--brown);font-size:13px;max-width:760px}
 
.gallery-work figure{margin:0 0 18px}
.gallery-work-image{position:relative;margin:8px 12px 0 0;padding:10px 10px 12px;background:var(--blue);box-shadow:7px 9px 0 var(--sand);transform:rotate(-1.3deg);-webkit-tap-highlight-color:transparent}
#category-1 .gallery-work-image{background:var(--olive);transform:rotate(1deg)}
#category-2 .gallery-work-image{background:var(--clay);transform:rotate(-.8deg)}
.gallery-works>li:nth-child(even) .gallery-work-image{transform:rotate(1.1deg)}
.gallery-work-image::before{content:'';position:absolute;z-index:1;top:-10px;left:40%;width:64px;height:20px;background:var(--sand);opacity:.92;transform:rotate(-7deg)}
.gallery-work img{background:var(--paper)}
 
.gallery-work img{box-sizing:border-box;aspect-ratio:4/3;object-fit:contain;padding:clamp(8px,5%,14px);box-shadow:inset 0 0 0 1px var(--line)}
.gallery-work figcaption{margin:14px 0 0 2px;font:italic 15px/1.4 Georgia,serif;color:var(--muted)}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .gallery-work-image{transition:transform 220ms ease}
  .gallery-work:hover .gallery-work-image{transform:translate(0,-3px) rotate(-.4deg)}
}
 
.work-paper{justify-self:start;width:fit-content;min-width:min(100%,320px);max-width:calc(100% - 14px)}
.work-paper img{width:auto;max-width:100%;height:auto;max-height:min(76vh,720px);aspect-ratio:auto;object-fit:contain;margin:0 auto}
.work-paper:has(.work-placeholder){width:auto;justify-self:stretch}
.work-paper .work-placeholder{width:100%}
 
.work-caption{max-width:34ch;overflow-wrap:anywhere}
@media(max-width:750px){
  .work-layout{grid-template-columns:minmax(0,1fr)}
  .work-paper{max-width:calc(100% - 12px);min-width:min(100% - 12px,260px)}
  .work-paper img{max-height:min(68vh,620px)}
}
 
.work-pager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 48px;border-top:1px solid var(--line);padding-top:36px}
.work-pager a{display:flex;flex-direction:column;gap:10px;min-width:0;min-height:44px;color:var(--ink);-webkit-tap-highlight-color:transparent}
.work-pager .eyebrow{margin:0}
.work-pager-arrow{color:var(--rust);font-size:16px;letter-spacing:0}
.work-pager-pos{white-space:nowrap}
.work-pager-next{grid-column:2;align-items:flex-end;text-align:right}
.work-pager-title{position:relative;width:fit-content;max-width:100%;padding-bottom:9px;font:normal 32px/1.15 Georgia,serif;letter-spacing:-1px;overflow-wrap:anywhere;text-wrap:balance}
.work-pager-title::after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;border-bottom:2px solid var(--rust);border-radius:0 0 48% 22%/0 0 6px 4px;transform:rotate(-1.2deg) scaleX(0);transform-origin:left}
.work-pager-next .work-pager-title::after{transform-origin:right;transform:rotate(1deg) scaleX(0)}
.work-pager a:hover .work-pager-title,.work-pager a:active .work-pager-title{color:var(--rust)}
.work-pager a:focus-visible{outline-offset:6px}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .work-pager-title::after{transition:transform .24s ease}
  .work-pager-prev:hover .work-pager-title::after{transform:rotate(-1.2deg) scaleX(1)}
  .work-pager-next:hover .work-pager-title::after{transform:rotate(1deg) scaleX(1)}
  .work-pager-arrow{display:inline-block;transition:transform .2s ease}
  .work-pager-prev:hover .work-pager-arrow{transform:translateX(-3px)}
  .work-pager-next:hover .work-pager-arrow{transform:translateX(3px)}
}
@media(max-width:600px){
  .work-pager{gap:16px;padding-top:28px}
  .work-pager .eyebrow{letter-spacing:.5px}
  .work-pager-title{font-size:22px;padding-bottom:6px}
}
