@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/font-0.ttf)format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/font-1.ttf)format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/font-2.ttf)format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/font-3.ttf)format("truetype")}@font-face{font-family:DM Serif Display;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/font-4.ttf)format("truetype")}@font-face{font-family:DM Serif Display;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/font-5.ttf)format("truetype")}:root{--paper:#fafaf7;--ink:#1f2742;--muted:#5c6577;--accent:#9a2f63;--tint:#f6e4ed;--panel:#f1f2f6;--line:#dcdfe3;--sage:#42675b;--serif:"DM Serif Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{background:var(--paper);color:var(--ink);font:15px var(--sans);-webkit-font-smoothing:antialiased;margin:0}p,li{text-wrap:pretty}h1,h2{text-wrap:balance}::placeholder{color:#6b6f78;opacity:1}.project-images>a:not(:first-child)>img{mix-blend-mode:multiply}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a,button{touch-action:manipulation}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}:is(a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible){outline:2px solid var(--accent);outline-offset:5px}::selection{background:var(--tint)}main,.header,.footer{max-width:1600px;margin:auto}main{min-height:60vh}.header{z-index:40;border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:32px;margin:0 auto;padding:28px 5vw;display:flex;position:relative}.brand{flex-direction:column;flex-shrink:0;gap:6px;display:flex}.brand-name{font-family:var(--serif);letter-spacing:-1.5px;font-size:39px;line-height:1}.brand-sub{letter-spacing:.4px;color:var(--accent);font-size:14px;font-weight:500}.nav{align-items:center;gap:30px;font-size:15px;display:flex}.nav>a{align-items:center;gap:4px;min-height:44px;display:flex;position:relative}.nav>a:hover,.nav>a.active{color:var(--accent)}.nav>a.active:after{content:"";background:currentColor;height:2px;position:absolute;bottom:2px;left:0;right:0}.locale{align-items:center;gap:8px;margin-left:12px;font-size:13px;display:flex}.locale a{min-width:28px;min-height:44px;color:var(--muted);place-items:center;display:grid}.locale a[aria-current]{color:var(--ink);text-underline-offset:6px;text-decoration:underline}.locale span{color:var(--line)}.header .menu-toggle{background:0 0;border:0;place-items:center;width:44px;height:44px;display:none}.skip{background:var(--ink);color:#fff;z-index:999;padding:14px;position:absolute;top:-80px;left:20px}.skip:focus{top:10px}.eyebrow{letter-spacing:.8px;color:var(--accent);font-size:13px;font-weight:600;line-height:1.7;display:block}.portfolio-intro{justify-content:space-between;align-items:flex-end;gap:40px;padding:48px 5vw 40px;display:flex}.portfolio-intro h1{letter-spacing:-1.6px;margin-top:14px;font-size:clamp(29px,3.1vw,46px);font-weight:400;line-height:1.12}.portfolio-intro h1 span{display:block}.intro-aside{max-width:300px;color:var(--muted);font-size:16px;line-height:1.7}.availability{color:var(--sage);align-items:center;gap:8px;margin-top:20px;font-size:14px;display:flex}.status-dot{background:var(--sage);border-radius:50%;flex:none;width:6px;height:6px;display:inline-block}.status-dot.off{background:var(--muted)}.gallery-section{padding:0 5vw 64px}.gallery-toolbar{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding:12px 0 22px;display:flex}.filters{flex-wrap:wrap;gap:22px;display:flex}.filters button{color:var(--muted);background:0 0;border:0;border-bottom:1px solid #0000;min-height:44px;padding:10px 0;font-size:14px}.filters button.selected{color:var(--ink);border-bottom-color:var(--ink)}.filters button:hover{color:var(--accent)}.work-count{white-space:nowrap;color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.art-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:38px 24px;display:grid}.art-card{min-width:0}.art-grid:not(.masonry)>.art-card:nth-child(n+4){visibility:hidden;animation:0s 3s forwards art-reveal}@keyframes art-reveal{to{visibility:visible}}.art-grid.masonry{--gap-x:24px;--gap-y:38px;display:block;position:relative}.art-grid.masonry>.art-card{width:calc((100% - (var(--cols) - 1) * var(--gap-x)) / var(--cols));left:calc(var(--col) * (100% + var(--gap-x)) / var(--cols));position:absolute}.art-card{display:block}.art-image{position:relative;overflow:hidden}.art-image img{width:100%;height:auto;transition:transform .4s}.art-card:hover img{transform:scale(1.015)}.art-card:hover h2{color:var(--accent)}.motion-tag{background:var(--paper);padding:5px 8px;font-size:13px;position:absolute;bottom:12px;left:12px}.art-caption{padding-top:12px}.art-caption h2{overflow-wrap:anywhere;font-size:16px;line-height:1.4}.art-caption span{color:var(--muted);margin-top:3px;font-size:13px;display:block}.artist-note{border-top:1px solid var(--line);align-items:center;gap:24px;margin:0 5vw;padding:34px 0;display:flex}.artist-note>img{border-radius:50%;flex:none}.artist-note h2{font-family:var(--serif);font-size:27px}.artist-note p{color:var(--muted);margin:6px 0 14px;font-size:15px;line-height:1.7}.text-link{border-bottom:1px solid;align-items:center;gap:12px;min-height:24px;padding-bottom:4px;font-size:14px;display:inline-flex}.text-link:hover{color:var(--accent)}.prints-link{flex:none;margin-left:auto;font-size:15px}.prints-link span{color:var(--muted);letter-spacing:1px;align-items:center;gap:8px;margin-top:10px;font-size:13px;display:flex}.contact-band{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:30px;margin:0 5vw;padding:44px 0 50px;display:flex}.contact-band h2{letter-spacing:-1px;margin-top:12px;font-size:clamp(25px,3vw,38px)}.email-link{color:var(--muted);margin-top:15px;padding:4px 0;font-size:14px;display:inline-block}.footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:28px;padding:28px 5vw;display:flex}.footer-name{font-family:var(--serif);font-size:27px}.footer p{color:var(--muted);margin-top:8px;font-size:13px;line-height:1.7}.footer-links{gap:24px;font-size:14px;display:flex}.footer-links a{align-items:center;gap:5px;min-height:44px;display:flex}.about-page{grid-template-columns:1fr 1.1fr;align-items:center;gap:8vw;padding:70px 7vw 80px;display:grid}.about-visual img{width:100%}.about-page h1,.contact-page h1{letter-spacing:-1.8px;margin:20px 0 28px;font-size:clamp(35px,4vw,54px);line-height:1.1}.bio p{color:var(--muted);margin-bottom:20px;font-size:15px;line-height:1.85}.contact-page{grid-template-columns:1fr 1.1fr;gap:8vw;padding:65px 5vw 85px;display:grid}.contact-info>p{max-width:390px;color:var(--muted);font-size:15px;line-height:1.8}.contact-info .availability{margin:22px 0 30px}.contact-email{overflow-wrap:anywhere;align-items:center;gap:12px;min-height:24px;margin-bottom:20px;font-size:18px;display:flex}.contact-email svg{flex:none}.contact-details{max-width:420px;color:var(--muted);margin-bottom:30px;font-size:15px;line-height:1.7}.contact-details h2{color:var(--ink);margin:0 0 8px;font-size:15px;font-weight:600}.contact-details ul{margin:0 0 22px;padding:0;list-style:none}.contact-details li{margin-bottom:6px}.contact-details strong{color:var(--ink);font-weight:500}.contact-details p+p{margin-top:10px}.contact-form label,.admin label{margin-bottom:22px;font-size:14px;font-weight:500;display:block}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea,.admin input:not([type=checkbox]),.admin select,.admin textarea{background:0 0;border:1px solid #848b97;border-radius:0;width:100%;margin-top:9px;padding:13px 12px;font-size:14px;display:block}.contact-form textarea{resize:vertical}.form-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.contact-form .consent{color:var(--muted);gap:9px;font-size:13px;font-weight:400;line-height:1.6;display:flex}.consent input{accent-color:var(--accent);margin-top:3px}.honeypot{width:1px!important;height:1px!important;position:absolute!important;left:-10000px!important;overflow:hidden!important}.button{background:var(--ink);color:#fff;border:0;justify-content:center;align-items:center;gap:22px;padding:15px 24px;font-size:14px;display:inline-flex}.button:hover{background:var(--accent)}.button:disabled{opacity:.5;cursor:wait}.form-status{align-items:center;gap:8px;margin-top:18px;font-size:14px;line-height:1.7;display:flex}.success{color:var(--sage)}.error,.rate,.validation{color:#a93628}.project-page{padding:20px 5vw 70px}.back-link{color:var(--muted);align-items:center;gap:8px;min-height:44px;font-size:14px;display:inline-flex}.project-layout{grid-template-columns:minmax(0,max-content) 300px;justify-content:center;align-items:start;gap:56px;padding-top:4px;display:grid}.project-heading{position:sticky;top:24px}.project-heading h1{letter-spacing:-1px;margin:10px 0 16px;font-size:clamp(30px,2.6vw,42px);line-height:1.1}.project-heading p{color:var(--muted);margin-bottom:16px;font-size:15px;line-height:1.8}.project-images{flex-direction:column;align-items:center;gap:32px;display:flex}.project-images>a{cursor:zoom-in;max-width:100%;display:block;position:relative}.project-images>a>img{object-fit:contain;width:auto;min-height:0;max-height:max(100svh - 150px,480px);margin:auto}.project-images>a>img[style]{width:min(var(--w),calc(max(100svh - 150px,480px)*var(--r)))}.project-images>a>span{background:var(--paper);place-items:center;width:36px;height:36px;display:grid;position:absolute;bottom:15px;right:15px}.project-images video{background:#161e2b;max-width:100%;max-height:max(100svh - 150px,480px)}.project-end{color:var(--muted);justify-content:space-between;align-items:center;gap:20px;padding:40px 0 50px;font-size:13px;display:flex}.next-project{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding-top:28px;display:flex}.next-project h2{letter-spacing:-.8px;margin-top:12px;font-size:32px}.icon-btn{background:0 0;border:0;place-items:center;width:44px;height:44px;display:grid}.pswp{--pswp-bg:#111a29}.admin{max-width:1150px;min-height:75vh;padding:45px 35px}.admin-top{justify-content:space-between;align-items:center;margin-bottom:25px;display:flex}.admin h1{font-family:var(--serif);font-size:36px}.admin-tabs{flex-wrap:wrap;gap:10px;margin:25px 0;display:flex}.admin-tabs button{border:1px solid var(--line);background:0 0;min-height:44px;padding:10px 15px}.admin-tabs .selected{background:var(--ink);color:#fff}.admin-layout{grid-template-columns:270px 1fr;gap:35px;display:grid}.admin-list{flex-direction:column;gap:7px;display:flex}.admin-list>button{border:1px solid var(--line);text-align:left;background:#fff;align-items:center;gap:12px;padding:8px;font-size:13px;display:flex}.admin-list>button.selected{border-color:var(--accent);background:var(--tint)}.admin-list img{object-fit:cover;width:42px;height:42px}.admin-editor{background:var(--panel);border:1px solid var(--line);padding:25px}.admin h2{font-family:var(--serif);margin-bottom:20px;font-size:26px}.admin-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:22px;display:flex}.admin-actions button,.secondary{border:1px solid var(--line);background:var(--paper);min-height:40px;padding:9px 12px;font-size:13px}.admin-preview{width:auto;height:200px;margin-bottom:22px}.admin .checkbox-label{align-items:center;gap:10px;display:flex}.admin textarea{min-height:85px}.admin-status{background:var(--panel);z-index:2;margin-bottom:20px;padding:13px;font-size:14px;position:sticky;top:0}.admin-thumbs{flex-wrap:wrap;gap:10px;margin-bottom:20px;display:flex}.admin-thumbs>div{position:relative}.admin-thumbs img{object-fit:cover;max-width:90px;height:75px}.admin-thumbs button{background:var(--ink);color:#fff;border:0;position:absolute;top:0;right:0}.message-card{border:1px solid var(--line);background:#fff;margin-bottom:15px;padding:25px}.message-card p{white-space:pre-wrap;margin-top:10px;font-size:13px;line-height:1.8}.message-card h3{font-size:16px}.message-card small{color:var(--muted);margin:10px 0;display:block}.message-card a{font-size:14px;text-decoration:underline}.message-card.unread{border-left:4px solid var(--accent)}.message-new{letter-spacing:.08em;text-transform:uppercase;background:var(--accent);color:#fff;vertical-align:middle;margin-right:10px;padding:2px 8px;font-size:11px;display:inline-block}.message-actions{margin:18px 0 0}.message-folders{flex-wrap:wrap;gap:0;display:flex}.message-folders button+button{border-left:0}.admin-actions .message-folders button.selected{background:var(--ink);color:#fff;border-color:var(--ink)}.admin-draft{border:1px solid var(--accent);background:var(--tint);margin-bottom:20px;padding:15px 18px;font-size:14px;line-height:1.6}.admin-draft .admin-actions{margin:12px 0 0}.admin-actions button.danger{color:#b3261e;border-color:#b3261e}.empty{text-align:center;color:var(--muted);padding:60px 20px}fieldset{min-width:0;margin:0}.admin fieldset:disabled{opacity:.65}.admin-actions .button{background:var(--accent);color:#fff;border:0;gap:8px;display:flex}.admin-actions>button{align-items:center;gap:5px;display:inline-flex}.admin-actions label{margin:0}@media (min-width:1600px){.header,.footer,.portfolio-intro,.gallery-section,.project-page{padding-left:80px;padding-right:80px}.artist-note,.contact-band{margin-left:80px;margin-right:80px}}@media (max-width:1000px){.nav,.header{gap:20px}.art-grid{gap:28px 18px}.filters{gap:16px}.work-count{display:none}.prints-link{max-width:170px}.about-page,.contact-page{gap:40px}}@media (max-width:700px){.header{padding:20px 22px}.brand-name{font-size:33px}.brand-sub{font-size:13px}.header .menu-toggle{margin-left:auto;display:grid}.header .nav{background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;padding:10px 22px 18px;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 12px 20px #202d450b}.header .nav.open{display:flex}.nav>a{border-bottom:1px solid var(--line);justify-content:space-between;padding:13px 0}.nav>a.active:after{display:none}.nav .locale{justify-content:flex-start;gap:16px;margin:10px 0 0}.portfolio-intro{padding:30px 22px 25px;display:block}.portfolio-intro h1{letter-spacing:-1.2px;font-size:34px}.intro-aside{max-width:none;margin-top:18px;font-size:15px}.intro-aside .availability{margin-top:10px;font-size:14px}.gallery-section{padding:0 22px 40px}.gallery-toolbar{padding:8px 0 18px}.filters{gap:0 17px}.filters button{font-size:14px}.art-grid:not(.masonry)>.art-card:nth-child(n+3){visibility:hidden;animation:0s 3s forwards art-reveal}.art-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}.art-grid.masonry{--gap-x:14px;--gap-y:26px}.art-caption{padding-top:9px}.art-caption h2{font-size:14px}.art-caption span{font-size:13px}.artist-note{flex-wrap:wrap;align-items:flex-start;gap:16px;margin:0 22px;padding:28px 0}.artist-note>img{width:52px;height:52px}.artist-note>div{flex:calc(100% - 68px);min-width:0}.artist-note h2{font-size:24px}.artist-note p{font-size:14px}.prints-link{flex-basis:calc(100% - 68px);max-width:none;margin:4px 0 0 68px;font-size:14px}.contact-band{flex-direction:column;align-items:flex-start;gap:24px;margin:0 22px;padding:30px 0 36px}.contact-band h2{font-size:29px}.email-link{font-size:14px}.footer{flex-wrap:wrap;gap:14px;padding:24px 22px}.footer-links{flex-wrap:wrap;gap:20px;font-size:14px}.about-page{grid-template-columns:1fr;gap:30px;padding:30px 22px 40px}.about-visual{max-width:340px}.about-page h1,.contact-page h1{margin:14px 0 24px;font-size:38px}.bio p{font-size:14px}.contact-page{grid-template-columns:1fr;gap:36px;padding:32px 22px 50px}.contact-info>p{font-size:14px}.contact-form{border-top:1px solid var(--line);padding-top:28px}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea,.contact-email{font-size:16px}.form-row{gap:14px}.project-page{padding:22px 22px 45px}.project-layout{flex-direction:column;gap:20px;display:flex}.project-layout .project-images{display:contents}.project-images>:first-child{order:0}.project-heading{order:1;position:static}.project-images>:not(:first-child){order:2}.project-heading h1{font-size:32px}.project-images>a>img{max-height:none}.project-images>a>img[style]{width:var(--w)}.project-end{flex-wrap:wrap;padding-bottom:30px}.next-project h2{font-size:27px}.admin{padding:25px 15px}.admin-top{align-items:flex-start}.admin-top .text-link{flex:none}.admin-tabs{grid-template-columns:1fr 1fr;gap:8px;display:grid}.admin-tabs button{padding:10px 8px}.admin-layout{grid-template-columns:1fr}.admin-list{max-height:220px;overflow:auto}.admin-editor{padding:18px}.admin .form-row{grid-template-columns:1fr}.admin-top{gap:15px}.admin h1{font-size:28px}}@media (max-width:360px){.art-grid:not(.masonry)>.art-card:nth-child(n){visibility:visible;animation:none}.art-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr;gap:0}.portfolio-intro h1{font-size:30px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.admin-help{color:var(--muted);margin:14px 0 22px;font-size:14px;line-height:1.7}.admin-video{margin-bottom:24px}.admin-video video{max-width:100%;max-height:300px;margin-bottom:12px;display:block}.admin-preview-dialog{border:1px solid var(--line);background:var(--paper);width:min(1100px,96vw);max-height:92dvh;color:var(--ink);padding:0}.admin-preview-dialog::backdrop{background:#111a29c9}.preview-toolbar{border-bottom:1px solid var(--line);background:var(--paper);z-index:2;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:18px 24px;font-size:13px;display:flex;position:sticky;top:0}.preview-toolbar select{background:var(--paper);border:1px solid var(--line);padding:8px}.preview-body{padding:28px}.preview-body h1{font-family:var(--sans);margin:15px 0;font-size:36px}.preview-body>p{white-space:pre-wrap;margin-bottom:24px;line-height:1.8}.preview-body>.button{margin-top:24px}.preview-body .project-images>a{cursor:default}.preview-body .project-images>a>span{display:none}
