:root{--bg:#f6f3ee;--paper:#fffdf9;--ink:#221f1b;--muted:#6d665d;--line:#e1dacf;--accent:#9b4b34;--accent-ink:#fff;--serif:"Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--gutter:clamp(16px, 4vw, 48px);--max:1320px;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font:400 1rem/1.65 var(--sans);flex-direction:column;min-height:100dvh;margin:0;display:flex}main{width:100%;max-width:var(--max);padding:0 var(--gutter) 64px;flex:1;margin:0 auto}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-underline-offset:3px}a:hover{text-decoration-color:currentColor}h1,h2,h3{font-family:var(--serif);letter-spacing:-.01em;margin:0 0 .5em;font-weight:500;line-height:1.15}h1{font-size:clamp(2rem,5vw,3.4rem)}h2{font-size:clamp(1.5rem,3vw,2.1rem)}p{margin:0 0 1em}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:2px}.skip{background:var(--ink);color:#fff;z-index:50;padding:8px 14px;position:absolute;top:8px;left:-999px}.skip:focus{left:8px}.site-header{z-index:20;width:100%;padding:16px max(var(--gutter), calc((100% - var(--max)) / 2 + var(--gutter)));background:color-mix(in srgb, var(--bg) 84%, transparent);backdrop-filter:blur(14px)saturate(1.2);view-transition-name:site-header;border-bottom:1px solid #0000;grid-template-columns:1fr auto auto;align-items:center;gap:8px 32px;display:grid;position:sticky;top:0}.brand{flex-direction:column;line-height:1.2;text-decoration:none;display:flex}.brand-name{font-family:var(--serif);letter-spacing:.01em;font-size:1.5rem}.brand-sub{color:var(--muted);letter-spacing:.04em;font-size:.8rem}.site-header ul{gap:26px;margin:0;padding:0;list-style:none;display:flex}.site-header nav a{background:linear-gradient(var(--accent), var(--accent)) no-repeat 0 100% / 0 2px;padding:6px 0;font-size:.95rem;text-decoration:none;transition:background-size .35s cubic-bezier(.2,.7,.2,1)}.site-header nav a:hover,.site-header nav a:focus-visible,.site-header nav a[aria-current=page]{background-size:100% 2px}.langs{letter-spacing:.08em;gap:2px;font-size:.78rem;display:flex}.langs a{color:var(--muted);border-radius:4px;padding:5px 8px;text-decoration:none}.langs a[aria-current=true]{background:var(--ink);color:#fff}.langs a:not([aria-current]):hover{background:var(--line);color:var(--ink)}@media (width<=760px){.site-header{grid-template-columns:1fr auto}.site-header nav{grid-area:2/1/auto/-1}.site-header ul{gap:20px}}.site-footer{border-top:1px solid var(--line);background:var(--paper);padding:32px var(--gutter) 28px;font-size:.92rem}.foot-grid{max-width:var(--max);flex-wrap:wrap;justify-content:space-between;gap:24px;margin:0 auto;display:flex}.foot-grid ul{align-items:flex-start;gap:22px;margin:0;padding:0;list-style:none;display:flex}.rights{max-width:var(--max);color:var(--muted);margin:22px auto 0;font-size:.82rem}.hero{max-width:52rem;padding:clamp(20px,5vw,64px) 0 clamp(24px,4vw,48px)}.hero p{color:var(--muted);max-width:40rem;font-size:clamp(1.05rem,1.6vw,1.25rem)}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:14px;font-size:.78rem}.masonry{column-count:4;column-gap:20px}@media (width<=1100px){.masonry{column-count:3}}@media (width<=700px){.masonry{column-count:2;column-gap:12px}}.card{break-inside:avoid;margin-bottom:24px;text-decoration:none;display:block}.frame{background:var(--line);border-radius:3px;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s;overflow:hidden}.frame img{object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.2,.7,.2,1),opacity .6s}.card:hover .frame,.card:focus-visible .frame{transform:translateY(-4px);box-shadow:0 18px 34px -20px #221f1b8c}.card:hover .frame img{transform:scale(1.045)}.cap{flex-direction:column;padding-top:8px;line-height:1.3;display:flex}.cap .title{font-family:var(--serif);font-size:1.05rem;transition:color .3s}.card:hover .cap .title{color:var(--accent)}.cap .meta{color:var(--muted);min-height:1.1em;font-size:.8rem}.section{margin-top:clamp(40px,7vw,88px)}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:22px;display:flex}.section-head a{font-size:.92rem}.cats{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px;display:grid}.cat{aspect-ratio:4/3;background:var(--line);border-radius:4px;text-decoration:none;display:block;position:relative;overflow:hidden}.cat img{object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.2,.7,.2,1),opacity .6s}.cat:hover img{transform:scale(1.07)}.cat-label{transition:padding .35s}.cat:hover .cat-label{padding-bottom:18px}.cat-label{color:#fff;background:linear-gradient(#0000,#14100cb8);justify-content:space-between;align-items:baseline;gap:8px;padding:36px 14px 12px;display:flex;position:absolute;inset:auto 0 0}.cat-label b{font-family:var(--serif);font-size:1.2rem;font-weight:500}.cat-label small{opacity:.85}.chips{flex-wrap:wrap;gap:8px;margin:0 0 28px;padding:0;list-style:none;display:flex}.chips a{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:6px 14px;font-size:.9rem;text-decoration:none;display:inline-block}.chips a:hover{border-color:var(--ink)}.chips a[aria-current=page]{background:var(--ink);color:#fff;border-color:var(--ink)}.chips small{opacity:.65;margin-left:4px}.cta{background:var(--paper);border:1px solid var(--line);border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:clamp(24px,4vw,48px);display:flex}.cta h2{margin-bottom:.2em}.cta p{color:var(--muted);max-width:38rem;margin:0}.btn{background:var(--accent);color:var(--accent-ink);cursor:pointer;font-weight:500;font:inherit;border:0;border-radius:4px;padding:12px 24px;font-weight:500;text-decoration:none;transition:background .25s,color .25s,transform .25s,box-shadow .25s;display:inline-block}.btn:hover{background:#7e3a27;transform:translateY(-2px);box-shadow:0 10px 20px -12px #7e3a27cc}.btn:active{transform:translateY(0)}.btn.ghost{color:var(--ink);border:1px solid var(--ink);background:0 0}.btn.ghost:hover{background:var(--ink);color:#fff}.two-col{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:clamp(24px,4vw,64px);display:grid}@media (width<=860px){.two-col{grid-template-columns:1fr}}.crumbs{color:var(--muted);padding:6px 0 20px;font-size:.88rem}.crumbs a{color:var(--muted)}.gallery{min-width:0}.stage{background:var(--line);touch-action:pan-y;-webkit-user-select:none;user-select:none;border-radius:3px;display:grid;position:relative;overflow:hidden}.slide{cursor:zoom-in;opacity:0;visibility:hidden;background:0 0;border:0;grid-area:1/1;place-items:center;padding:0;transition:opacity .55s,transform .7s cubic-bezier(.2,.7,.2,1),visibility 0s .55s;display:grid;transform:translate(0)scale(.985)}.slide.is-before{transform:translate(-7%)scale(.985)}.slide.is-after{transform:translate(7%)scale(.985)}.slide.is-active{opacity:1;visibility:visible;transition-delay:0s;transform:none}.slide picture{width:100%;display:block}.slide img{object-fit:contain;-webkit-user-drag:none;width:100%;height:auto;max-height:82vh;margin:0 auto;transition:opacity .6s}.nav-btn{cursor:pointer;width:44px;height:44px;color:var(--ink);background:color-mix(in srgb, var(--paper) 88%, transparent);backdrop-filter:blur(8px);opacity:0;z-index:2;border:0;border-radius:50%;place-items:center;transition:opacity .3s,transform .25s,background .25s;display:grid;position:absolute;top:50%;translate:0 -50%;box-shadow:0 6px 18px -8px #00000080}.nav-prev{left:12px}.nav-next{right:12px}.stage:hover .nav-btn,.nav-btn:focus-visible{opacity:1}.nav-btn:hover{background:var(--paper);transform:scale(1.08)}@media (hover:none){.nav-btn{opacity:.92;width:40px;height:40px}}.counter{z-index:2;letter-spacing:.06em;color:#fff;pointer-events:none;backdrop-filter:blur(6px);background:#14100c8c;border-radius:999px;padding:4px 10px;font-size:.78rem;position:absolute;bottom:12px;right:12px}.thumbs{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:10px;margin-top:12px;display:grid}.thumb{background:var(--line);cursor:pointer;aspect-ratio:1;opacity:.6;border:0;border-radius:3px;padding:0;transition:opacity .3s,transform .3s;position:relative;overflow:hidden}.thumb:after{content:"";border:2px solid var(--accent);opacity:0;pointer-events:none;border-radius:3px;transition:opacity .3s;position:absolute;inset:0}.thumb img{object-fit:cover;width:100%;height:100%}.thumb:hover{opacity:1;transform:translateY(-2px)}.thumb[aria-current=true],.thumb[aria-current=true]:after{opacity:1}.info{position:sticky;top:96px}@media (width<=860px){.info{position:static}}.spec{border-top:1px solid var(--line);margin:22px 0 28px}.spec div{border-bottom:1px solid var(--line);grid-template-columns:8.5rem 1fr;gap:12px;padding:12px 0;display:grid}.spec dt{color:var(--muted);font-size:.9rem}.spec dd{margin:0}.actions{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.pager{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:16px;margin-top:56px;padding-top:20px;font-size:.95rem;display:grid}.pager-link{border-radius:6px;align-items:center;gap:14px;min-width:0;padding:8px;text-decoration:none;transition:background .3s,transform .3s;display:flex}.pager-link.right{text-align:right;justify-content:flex-end}.pager-link:hover{background:var(--paper)}.pager-link:hover .pager-text small{transform:translateX(var(--nudge,-4px))}.pager-link.right{--nudge:4px}.pager-thumb{background:var(--line);border-radius:3px;flex:none;width:64px;height:64px;overflow:hidden}.pager-thumb img{object-fit:cover;width:100%;height:100%}.pager-text{flex-direction:column;min-width:0;line-height:1.3;display:flex}.pager-text small{color:var(--muted);font-size:1rem;transition:transform .3s;display:inline-block}.pager-text b{font-family:var(--serif);text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem;font-weight:500;overflow:hidden}@media (width<=560px){.pager-thumb{display:none}}dialog.lb{color:#fff;opacity:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;transition:opacity .3s ease, display .3s allow-discrete, overlay .3s allow-discrete;background:0 0;border:0;padding:0}dialog.lb[open]{opacity:1}@starting-style{dialog.lb[open]{opacity:0}}dialog.lb::backdrop{backdrop-filter:blur();transition:background .3s ease, backdrop-filter .3s ease, display .3s allow-discrete, overlay .3s allow-discrete;background:#0e0b0800}dialog.lb[open]::backdrop{backdrop-filter:blur(8px);background:#0e0b08f0}@starting-style{dialog.lb[open]::backdrop{backdrop-filter:blur();background:#0e0b0800}}html:has(dialog.lb[open]){overflow:hidden}.lb-inner{grid-template-rows:1fr auto;gap:10px;width:100%;height:100%;padding:16px;display:grid}.lb-stage{touch-action:pan-y;justify-content:center;align-items:center;min-height:0;display:flex;overflow:hidden}.lb-stage img{object-fit:contain;cursor:pointer;will-change:transform;width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 90px);transition:opacity .2s,transform .45s cubic-bezier(.2,.7,.2,1)}.lb-stage img.out{opacity:0;transform:scale(.97)}.lb-stage img.zoomed{cursor:zoom-out;transition:transform .35s cubic-bezier(.2,.7,.2,1),opacity .2s;transform:scale(2.2)}dialog.lb[open] .lb-stage img:not(.out){animation:.5s cubic-bezier(.2,.7,.2,1) lb-in}@keyframes lb-in{0%{transform:scale(.96)}}.lb-bar{color:#fff;justify-content:center;align-items:center;gap:12px;font-size:.9rem;display:flex}.lb-bar button{color:#fff;cursor:pointer;font:inherit;background:#ffffff1f;border:0;border-radius:4px;padding:9px 16px}.lb-bar button:hover{background:#ffffff40}.lb-cap{text-align:center;opacity:.85;max-width:40ch}.prose{max-width:42rem}.prose p{font-size:1.05rem}.prose h2{margin-top:1.6em;font-size:1.4rem}.prose ul{padding-left:1.2em}.page-head{padding:clamp(10px,3vw,36px) 0 clamp(18px,3vw,32px)}.placeholder{background:#fff3cd;border-radius:2px;padding:0 4px}.mail-big{font-family:var(--serif);font-size:clamp(1.5rem,4vw,2.2rem)}.about-photo{background:var(--line);border-radius:4px;overflow:hidden}main,.site-footer{transition:opacity .3s,transform .3s}html.leaving main,html.leaving .site-footer{opacity:0;transform:translateY(-6px)}img[data-ld]{opacity:0}@keyframes rise{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}@keyframes hdr-line{to{border-bottom-color:var(--line);box-shadow:0 8px 24px -18px #221f1b80}}@media (prefers-reduced-motion:no-preference){@view-transition{navigation:auto}::view-transition-old(root){animation:.28s both vt-out}::view-transition-new(root){animation:.5s cubic-bezier(.2,.7,.2,1) 80ms both vt-in}@keyframes vt-out{to{opacity:0;transform:translateY(-8px)}}@keyframes vt-in{0%{opacity:0;transform:translateY(16px)}}::view-transition-group(work-img){animation-duration:.6s;animation-timing-function:cubic-bezier(.2,.7,.2,1)}::view-transition-old(work-img),::view-transition-new(work-img){object-fit:cover;height:100%}::view-transition-group(site-header){animation-duration:0s}::view-transition-old(site-header){display:none}::view-transition-new(site-header){animation:none}.hero>*,.page-head>*,.info>*,.crumbs{animation:.9s cubic-bezier(.2,.7,.2,1) both rise}.hero>:nth-child(2),.page-head>:nth-child(2),.info>:nth-child(2){animation-delay:.1s}.hero>:nth-child(3),.page-head>:nth-child(3),.info>:nth-child(3){animation-delay:.2s}@supports (animation-timeline:view()){.card,.cat,.cta,.section-head,.pager,.prose>*,.about-photo{animation:linear both rise view();animation-range:entry entry 38%}.site-header{animation:linear both hdr-line scroll(root);animation-range:0 90px}}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.frame,.frame img,.cat img,.slide,.thumb,.btn,dialog.lb,dialog.lb::backdrop,.lb-stage img{transition:none!important}dialog.lb[open] .lb-stage img{animation:none!important}}
