:root{--paper:#fff;--ink:#292c27;--muted:#64675e;--olive:#555e43;--line:#d8d9cf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.6}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit}button,a,input,select,textarea{outline-offset:5px}button:focus-visible,a:focus-visible{outline:2px solid var(--olive)}.skip{position:fixed;top:-100px;background:white;padding:12px;z-index:20}.skip:focus{top:10px}header{display:flex;align-items:center;justify-content:space-between;padding:25px 5.5%;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:10}.brand{font:38px/.95 Georgia,serif;letter-spacing:-2px}.brand span{display:block;font:8px Arial,sans-serif;letter-spacing:1.9px;margin-top:12px}nav{display:flex;align-items:center;gap:35px;font-size:12px}.nav-enquire{padding:12px 20px;border:1px solid var(--olive)}.nav-enquire span{margin-left:25px}.hero{padding:75px 5.5% 66px;display:grid;grid-template-columns:.85fr 1.3fr;gap:5%;align-items:center;min-height:690px}.eyebrow,.section-rule,.hero-note,.caption>span,.filters,.preview-note{font-size:10px;letter-spacing:1.4px}.eyebrow{margin:0 0 30px}h1,h2,h3,p,figure{margin-top:0}h1{font:clamp(76px,8.5vw,140px)/.94 Georgia,serif;letter-spacing:-6px;margin-bottom:30px}em{font-weight:normal;color:var(--olive)}.intro{font-size:14px;color:var(--muted);line-height:1.8}.text-link{display:inline-flex;gap:60px;border-bottom:1px solid var(--ink);padding:12px 0 9px;margin-top:12px;font-size:12px}.hero-note{margin-top:58px;letter-spacing:.4px;color:var(--muted)}.dot{display:inline-block;width:6px;height:6px;background:var(--olive);border-radius:50%;margin-right:8px}.hero-art{margin:0}.art-paper{background:#fff;padding:20px;box-shadow:0 15px 35px #3035260c}.art-paper img{width:100%;display:block}figcaption{display:flex;justify-content:space-between;gap:10px;font-size:10px;margin-top:15px;color:var(--muted)}figcaption button{border:0;background:none;padding:0;font-size:10px;border-bottom:1px solid var(--line)}.section-rule{margin:0 5.5%;border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;font-size:9px}.works{padding:55px 8% 100px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}h2{font:clamp(40px,4.7vw,70px)/1.08 Georgia,serif;letter-spacing:-2.2px;margin-bottom:25px}.section-heading p{font-size:12px;color:var(--muted);margin-bottom:30px}.filters{display:flex;gap:26px;margin:17px 0 44px;border-bottom:1px solid var(--line)}.filters button{background:none;border:0;border-bottom:1px solid transparent;padding:12px 0;font-size:11px;letter-spacing:.2px}.filters button[aria-pressed=true]{border-bottom-color:var(--ink)}sup{font-size:8px;margin-left:4px}.art-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:45px 8%}.work{min-width:0}.work.offset{padding-top:90px}.work[hidden]{display:none}.art-button{width:100%;border:0;padding:24px;background:#fff;position:relative;display:block}.art-button img{display:block;width:100%;height:300px;object-fit:contain;transition:transform .35s}.art-button:hover img{transform:scale(1.025)}.image-action{display:block;text-align:right;font-size:10px;margin-top:16px}.caption{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:16px}.caption h3{font:20px Georgia,serif;margin:0}.caption>span{font-size:8px;letter-spacing:1px;color:var(--muted)}.collections{background:#fff;padding:75px 8%;display:grid;grid-template-columns:1fr 1.3fr;gap:8%}.collections p{font-size:12px}.collection-list{padding-top:15px}.collection-list a{border-bottom:1px solid #c7ccbd;display:flex;justify-content:space-between;align-items:center;padding:22px 0;font:23px Georgia,serif;gap:10px}.collection-list small{font:9px Arial,sans-serif;color:var(--muted);margin-right:22px}.collection-list a:last-child{font:11px Arial,sans-serif;padding-top:28px;border:0}.enquiry{padding:100px 8%;display:grid;grid-template-columns:1fr 1fr;gap:8%}.enquiry h2{font-size:clamp(36px,4vw,58px)}.enquiry-copy>p:not(.eyebrow){font-size:12px;color:var(--muted)}.preview-note{margin-top:50px;font-size:10px!important;letter-spacing:0;max-width:300px}form{padding-top:10px}label{display:block;font-size:11px;margin-bottom:23px}label>span{color:var(--olive)}input,select,textarea{display:block;width:100%;padding:12px 0;background:transparent;border:0;border-bottom:1px solid #b5b9aa;border-radius:0;color:var(--ink);margin-top:5px;font-size:12px}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}.form-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center}.form-bottom p{font-size:9px;color:var(--muted)}.submit{background:var(--olive);color:white;border:0;padding:16px 24px;font-size:11px}.submit span{margin-left:30px}.selected-preview{display:flex;align-items:center;gap:16px;margin-top:30px}.selected-preview[hidden]{display:none}.selected-preview img{width:90px;height:70px;object-fit:contain;background:#fff}.selected-preview small{font-size:8px;letter-spacing:1px}.selected-preview p{margin:4px 0;font:19px Georgia,serif}#result{border:1px solid var(--line);padding:22px;margin-top:25px;font-size:12px}#result h3{font:25px Georgia,serif}#result pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.6 Arial,sans-serif}#result button{padding:8px;background:var(--olive);color:white;border:0}#result a{text-decoration:underline}footer{border-top:1px solid var(--line);padding:40px 5.5%;display:flex;justify-content:space-between;align-items:center;gap:25px}footer p,footer span,footer>a:last-child{font-size:10px;color:var(--muted)}.footer-name{font:50px Georgia,serif;letter-spacing:-3px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(min-width:1500px){main,header,footer{max-width:1700px;margin:auto}}@media(max-width:760px){header{padding:20px 6%}.brand{font-size:30px}.brand span{font-size:6px}nav{gap:16px}nav>a:not(.nav-enquire){display:none}.nav-enquire{padding:9px 15px}.hero{grid-template-columns:1fr;padding:45px 6%;gap:35px;min-height:auto}h1{font-size:90px;letter-spacing:-4px}.hero .eyebrow{font-size:8px}.hero-note{margin-top:28px}.hero-art{width:100%}.art-paper{padding:12px}figcaption{font-size:9px}.section-rule{margin:0 6%}.section-rule span:last-child{display:none}.works{padding:40px 6% 55px}.section-heading{display:block}.section-heading p{font-size:12px}.filters{gap:22px;overflow:auto;margin-bottom:25px}.filters button{white-space:nowrap}.art-grid{grid-template-columns:1fr;gap:30px}.work.offset{padding-top:0}.art-button img{height:auto;max-height:450px}.caption h3{font-size:19px}.collections,.enquiry{grid-template-columns:1fr;padding:55px 6%;gap:30px}.collections h2{font-size:48px}.collection-list a{font-size:22px}.enquiry-copy p br{display:none}.preview-note{margin-top:25px}.form-row{grid-template-columns:1fr;gap:0}.form-bottom{align-items:start}.submit{white-space:nowrap;padding:15px}.submit span{margin-left:15px}footer{flex-wrap:wrap;padding:30px 6%}footer span{max-width:160px}.footer-name{font-size:40px}footer p{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.art-button img{transition:none}}

/* The enquiry is a modal drawer, outside the homepage flow. */
button.nav-enquire{background:#fff;font-size:12px}
.collections{border-top:1px solid var(--line)}
.enquiry-drawer{position:fixed;inset:0 0 0 auto;margin:0;border:0;border-left:1px solid var(--line);padding:0;width:min(620px,100%);height:100dvh;max-width:100%;max-height:100dvh;background:#fff;color:var(--ink);overflow-y:auto;overscroll-behavior:contain;box-shadow:-15px 0 60px #00000014}
.enquiry-drawer::backdrop{background:#20251c66}
.enquiry-drawer[open]{animation:drawer-in .28s ease-out}
.enquiry-drawer.closing{animation:drawer-out .22s ease-in forwards}
.drawer-top{display:flex;align-items:center;justify-content:space-between;padding:22px 32px;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:1.3px}
.drawer-close{background:transparent;border:0;padding:8px 0 8px 18px;font-size:12px;letter-spacing:0}
.enquiry-drawer .enquiry{display:block;padding:34px 32px 45px}
.enquiry-drawer .enquiry h2{font-size:42px;letter-spacing:-1.7px}
.enquiry-drawer .eyebrow{display:none}
.enquiry-drawer .preview-note{margin:20px 0}
.enquiry-drawer form{margin-top:26px}
body.drawer-open{overflow:hidden}
@keyframes drawer-in{from{transform:translateX(100%)}to{transform:translateX(0)}}
@keyframes drawer-out{from{transform:var(--drawer-close-from,translateX(0))}to{transform:translateX(100%)}}
@media(max-width:480px){.drawer-top{padding:14px 22px}.enquiry-drawer .enquiry{padding:28px 22px}.enquiry-drawer .enquiry h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){.enquiry-drawer[open],.enquiry-drawer.closing{animation:none}}

.brand img,.footer-name img{display:block;width:190px;height:auto}.footer-name img{width:170px}@media(max-width:760px){.brand img{width:150px}.footer-name img{width:150px}}

h1 em,h2 em,h3 em,h4 em,h5 em,h6 em{font-style:normal}

/* Gallery presentation and motion */
:root{--ease:cubic-bezier(.22,1,.36,1)}
header{transition:box-shadow .35s,background .35s;border-bottom-color:#e9eae4}
header.is-scrolled{background:rgba(255,255,255,.96);box-shadow:0 6px 28px #292c2709;backdrop-filter:blur(14px)}
.scroll-progress{position:fixed;top:0;left:0;width:100%;height:2px;background:var(--olive);transform:scaleX(0);transform-origin:left;z-index:15;pointer-events:none}
.hero{padding-top:85px;padding-bottom:90px}.hero-art{will-change:translate;translate:0 var(--hero-drift,0px)}
.hero h1{letter-spacing:-.065em}.hero-copy .intro{max-width:350px}
.art-paper{padding:18px;border:1px solid #eeeee8;box-shadow:0 18px 44px #292c2709,0 2px 5px #292c2704}
.hero-art figcaption{padding-top:4px;line-height:1.7}
button.nav-enquire{background:var(--ink);color:#fff;border-color:var(--ink);transition:background .25s,box-shadow .25s}
button.nav-enquire:hover{background:var(--olive);box-shadow:0 4px 16px #292c271a}
.nav-enquire span,.submit span{display:inline-block;transition:transform .3s var(--ease)}
.nav-enquire:hover span,.submit:hover span{transform:translate(3px,-3px)}
.section-rule{color:var(--muted)}.section-heading h2{max-width:600px}.section-heading p{line-height:1.9}
.art-grid{gap:65px 8%}.art-button{padding:28px 24px 18px;border:1px solid #eeeee8;transition:border-color .35s,box-shadow .45s;overflow:hidden}
.art-button img{transition:transform .8s var(--ease)}
.art-button:hover{border-color:#c7ccbd;box-shadow:0 18px 42px #292c2709}
.art-button:hover img{transform:scale(1.035)}
.image-action{color:var(--muted);padding-top:5px;transition:color .25s}
.art-button:hover .image-action{color:var(--olive)}
.caption{padding-top:19px;align-items:baseline}.caption h3{line-height:1.35}.work-number{font:9px Arial,sans-serif;letter-spacing:1px;color:#777e6d;margin-right:10px;vertical-align:middle}
.filters button{position:relative;border-bottom:0;color:var(--muted);transition:color .25s}.filters button::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--olive);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.filters button[aria-pressed=true]{color:var(--ink)}.filters button[aria-pressed=true]::after,.filters button:hover::after{transform:scaleX(1)}
.collection-list a{transition:color .25s,padding .35s var(--ease)}.collection-list a:hover{color:var(--olive);padding-left:10px}
.text-link{position:relative;transition:color .25s}.text-link:hover{color:var(--olive)}.text-link span{transition:transform .3s}.text-link:hover span{transform:translateY(4px)}
.collections{padding-top:95px;padding-bottom:100px}.submit{transition:background .25s}.submit:hover{background:var(--ink)}
input:focus,select:focus,textarea:focus{outline:none;border-bottom:2px solid var(--olive);padding-bottom:11px}
.motion-ready .reveal{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .9s var(--ease);transition-delay:var(--reveal-delay,0ms)}
.motion-ready .reveal.is-visible{opacity:1;transform:translateY(0)}
.work.filter-enter{animation:filter-enter .55s var(--ease) both}
@keyframes filter-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:761px){.collections>div:first-child{position:sticky;top:145px;align-self:start}.hero-copy .eyebrow{font-size:9px}.works{padding-top:65px}}
@media(max-width:760px){.hero{padding-top:34px;padding-bottom:46px;gap:28px}.hero h1{font-size:clamp(66px,13.5vw,90px);margin-bottom:22px}.hero .eyebrow{margin-bottom:22px}.hero .intro{font-size:13px;line-height:1.8}.hero-note{margin:22px 0 0}.hero .text-link{margin-top:4px}.hero-art{translate:none}.art-paper{padding:10px}.art-grid{gap:34px}.art-button{padding:18px 16px 14px}.caption{padding-top:14px}.collections{padding-top:55px;padding-bottom:55px}.work-number{font-size:8px;margin-right:7px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-ready .reveal{opacity:1;transform:none}.hero-art{translate:none;will-change:auto}}

/* Reserve space to prevent image loads and modal opening shifting the layout. */
html{scrollbar-gutter:stable}.art-paper img{height:auto}.art-button img{aspect-ratio:auto}.enquiry-drawer::backdrop{animation:backdrop-in .28s ease-out}.enquiry-drawer.closing::backdrop{animation:backdrop-out .22s ease-in forwards}@keyframes backdrop-in{from{background:#20251c00}to{background:#20251c66}}@keyframes backdrop-out{from{background:#20251c66}to{background:#20251c00}}

/* A brief drawn landscape introduces the work; never blocks interaction. */
.page-loader{position:fixed;inset:0;background:#fff;z-index:100;display:grid;place-items:center;pointer-events:none;animation:loader-failsafe .45s ease 2.8s forwards}
.loader-content{display:flex;flex-direction:column;align-items:center;transform:translateY(-12px);transition:opacity .35s,transform .55s var(--ease)}
.loader-landscape{width:190px;height:68px;margin-bottom:22px;stroke:var(--olive);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.loader-landscape path{stroke-dasharray:320;stroke-dashoffset:320;animation:draw-landscape 1.15s var(--ease) forwards}
.loader-landscape .loader-sky{stroke:#b8beac;animation-delay:.12s}.loader-landscape .loader-ground{animation-delay:.22s;stroke-width:.8}
.loader-name{font:44px/1.1 Georgia,serif;letter-spacing:-2px}.loader-caption{font-size:8px;letter-spacing:2.4px;margin-top:13px;color:var(--muted)}
.loader-track{width:90px;height:1px;background:#e7e9e1;margin-top:29px;overflow:hidden}.loader-track>span{display:block;width:100%;height:100%;background:var(--olive);transform:scaleX(0);transform-origin:left;animation:loader-line 1s var(--ease) forwards}
.page-loader.is-loaded{animation:loader-failsafe .45s ease forwards}.page-loader.is-loaded .loader-content{opacity:0;transform:translateY(-20px)}
@keyframes draw-landscape{to{stroke-dashoffset:0}}@keyframes loader-line{to{transform:scaleX(1)}}@keyframes loader-failsafe{to{opacity:0;visibility:hidden}}
@media(prefers-reduced-motion:reduce){.page-loader{display:none}.loader-landscape path{stroke-dashoffset:0}}

/* Reveal the artist's original logo without distorting the artwork. */
.loader-logo{width:clamp(220px,32vw,330px);overflow:hidden}
.loader-logo img{display:block;width:100%;height:auto;clip-path:inset(0 100% 0 0);animation:signature-reveal 1.05s cubic-bezier(.35,0,.2,1) forwards}
.loader-content .loader-track{margin-top:25px}
@keyframes signature-reveal{from{clip-path:inset(0 100% 0 0);opacity:.6}to{clip-path:inset(0 0 0 0);opacity:1}}
@media(prefers-reduced-motion:reduce){.loader-logo img{clip-path:none;opacity:1}}

/* Timed pen paths follow each letter and the original signature underline. */
.loader-drawn-logo{display:block;width:clamp(250px,38vw,360px);height:auto;overflow:visible}
.loader-drawn-logo mask path{stroke-dasharray:1;stroke-dashoffset:1;animation:draw-logo-stroke var(--stroke-time) linear var(--stroke-delay) forwards}
.loader-content .loader-track>span{animation-duration:2.25s}
@keyframes draw-logo-stroke{to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){.loader-drawn-logo mask path{stroke-dashoffset:0}}

.loader-status{display:block;margin-top:25px;font:10px/1.6 Arial,Helvetica,sans-serif;letter-spacing:2px;color:var(--muted)}

/* Crossfade the introduction into the page as one continuous movement. */
header,main,footer{opacity:1;transition:opacity .85s var(--ease),filter .85s var(--ease),box-shadow .35s,background .35s}
.intro-active header,.intro-active main,.intro-active footer{opacity:0;filter:blur(3px)}
.page-loader.is-loaded{animation:loader-failsafe .8s var(--ease) forwards}
.page-loader.is-loaded .loader-content{transition:opacity .55s var(--ease),transform .8s var(--ease);opacity:0;transform:translateY(-22px)}
@media(prefers-reduced-motion:reduce){.intro-active header,.intro-active main,.intro-active footer{opacity:1;filter:none}}
