:root{--paper:#f5f2e9;--ink:#273e34;--muted:#5b665d;--line:#c9cec1;--wash:#dce1d5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #8b593e;outline-offset:6px}a:active{transform:translateY(1px)}.skip{position:absolute;top:-100px;padding:12px;background:white;z-index:4}.skip:focus{top:8px}.draft{padding:8px;text-align:center;background:var(--ink);color:var(--paper);font-size:11px;letter-spacing:.1em}header,main,footer{max-width:1400px;margin:auto}header{display:flex;align-items:center;justify-content:space-between;padding:30px 5%;border-bottom:1px solid var(--line)}.brand{font:34px Georgia,serif;letter-spacing:-1.5px}.brand span{display:block;font:9px Arial,sans-serif;letter-spacing:1.7px;margin-top:5px}nav{display:flex;gap:30px;font-size:13px}nav a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:6px}.hero{display:grid;grid-template-columns:.95fr 1.05fr;gap:7%;padding:64px 5% 80px;align-items:center}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.19em;margin:0 0 24px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,serif;font-weight:400}h1{font-size:clamp(50px,6vw,84px);line-height:1.04;letter-spacing:-3px;margin-bottom:28px}h1 em{font-weight:400}p{font-size:15px;line-height:1.8;max-width:46ch;color:var(--muted)}.hero-copy>p:not(.eyebrow){margin-bottom:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:17px 22px;background:var(--ink);color:var(--paper);font-size:12px;transition:background .2s}.button:hover{background:#42604d}.quiet{display:block;font-size:12px;margin-top:18px;text-decoration:underline;text-underline-offset:5px}.hero-art{margin:0;background:#e1e4d8;padding:23px 23px 0;transform:rotate(1deg)}.hero-art img{display:block;width:100%;height:auto;box-shadow:0 8px 22px #273e3424}.hero-art figcaption{display:flex;justify-content:space-between;padding:19px 0;font-size:8px;letter-spacing:.1em}section:not(.hero){margin:0 5%;padding:64px 0;border-top:1px solid var(--line)}h2{font-size:clamp(34px,4vw,54px);line-height:1.1;letter-spacing:-1.5px;margin-bottom:20px}.section-top{display:flex;align-items:end;justify-content:space-between;margin-bottom:32px;gap:25px}.section-top p{margin-bottom:20px}.pair{display:grid;grid-template-columns:1.12fr 1fr;gap:7%}.second{padding-top:65px}.mat{padding:36px;background:#ddd8ca}.mat.pale{background:#e2e5db}.mat img{display:block;width:100%;max-height:600px;object-fit:contain;height:auto;transition:transform .35s}.product:hover img{transform:translateY(-5px)}.product-caption{display:flex;gap:15px;justify-content:space-between;align-items:center;margin-top:25px}h3{font-size:25px;margin-bottom:10px}.product p{font-size:13px}.text-link{display:inline-block;font-size:13px;border-bottom:1px solid var(--ink);padding-bottom:7px;margin-top:18px}.photo-section{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:center}.photo-space{min-height:390px;padding:40px;background:#d4ddd5;display:flex;flex-direction:column;justify-content:space-between;border:1px dashed #8a9a8a}.photo-space span,.photo-space small{font-size:10px;letter-spacing:.14em}.photo-space p{font:36px/1.3 Georgia,serif;color:var(--ink);margin:40px 0}.editor-note{font-size:12px;border-left:2px solid var(--line);padding-left:15px;margin-top:24px}.game-section{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.outline{background:transparent;border:1px solid var(--ink);color:var(--ink)}.outline:hover{background:var(--wash)}.about{padding-left:18%!important}.about p{max-width:60ch}footer{border-top:1px solid var(--line);padding:40px 5%;display:flex;align-items:start;gap:40px;justify-content:space-between}footer div{display:flex;flex-direction:column;gap:14px;font-size:12px}footer p{font:italic 19px Georgia,serif}@media(max-width:700px){header{align-items:start;gap:20px;padding:24px 6%}nav{display:grid;grid-template-columns:1fr 1fr;gap:15px;font-size:12px}.brand{font-size:29px}.brand span{font-size:7px;letter-spacing:1px}.hero{grid-template-columns:1fr;padding:42px 6% 50px;gap:36px}h1{font-size:60px}.hero-art{transform:none;max-width:470px}.section-top{display:block}.pair,.photo-section,.game-section{grid-template-columns:1fr;gap:32px}.second{padding-top:0}section:not(.hero){margin:0 6%;padding:42px 0}.mat{padding:24px}.about{padding-left:0!important}.photo-space{min-height:300px}footer{flex-wrap:wrap;padding:30px 6%;gap:25px}.hero-art figcaption{font-size:7px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;transform:none!important}}
/* Compact personal homepage and three-card collection stack. */
.simple-home header{border:0;padding-top:32px;padding-bottom:24px}.contact{font-size:12px}.home-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:36px 6% 60px;align-items:center;min-height:calc(100dvh - 175px)}.simple-home section{border:0;margin:0;padding:0}.intro h1{font-size:clamp(44px,4.7vw,68px);letter-spacing:-2px;line-height:1.08}.intro .eyebrow{font-size:9px;letter-spacing:.12em}.intro>p:not(.eyebrow){font-size:14px;line-height:1.8;max-width:47ch}.socials{display:flex;gap:23px;font-size:11px;margin-top:32px}.socials a{text-decoration:underline;text-underline-offset:5px}.collection{min-width:0;padding-right:22px!important}.selectors{display:flex;gap:6px;margin-bottom:20px}.selectors button{border:0;background:transparent;padding:9px 12px;font:12px Arial,sans-serif;color:var(--muted);cursor:pointer;border-bottom:1px solid transparent}.selectors button[aria-selected=true]{color:var(--ink);border-color:var(--ink)}button:focus-visible{outline:2px solid #8b593e;outline-offset:4px}.card-stack{position:relative;height:510px;isolation:isolate;touch-action:pan-y}.work-card{position:absolute;inset:0;background:#faf8f1;border:1px solid #c3c8bc;border-radius:3px;box-shadow:0 12px 30px #273e3415;overflow:hidden;transform-origin:50% 85%;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .3s}.work-card[data-position="0"]{z-index:3;transform:none}.work-card[data-position="1"]{z-index:2;transform:translate(12px,7px) rotate(3deg);filter:brightness(.96)}.work-card[data-position="2"]{z-index:1;transform:translate(23px,12px) rotate(6deg);filter:brightness(.91)}.work-card>a{display:block;height:100%}.card-media{height:360px;overflow:hidden;background:#dce1d5}.map-media{padding:20px 35px}.map-media img{height:100%;width:100%;object-fit:contain;object-position:50% 20%}.card-copy{padding:22px 25px}.card-copy .eyebrow{font-size:8px;margin-bottom:10px}.card-copy h2{font-size:25px;letter-spacing:-.6px;display:flex;justify-content:space-between;gap:10px;margin-bottom:10px}.card-copy p:not(.eyebrow){font-size:12px;line-height:1.5;margin-bottom:0}.photo-placeholder{background:#314d4a;color:#e8e9dc;display:flex;flex-direction:column;justify-content:space-between;padding:30px}.photo-placeholder span,.photo-placeholder small{font-size:9px;letter-spacing:.13em}.photo-placeholder p{font:48px/1.1 Georgia,serif;color:inherit;margin:0}.game-media{background:#141e27}.game-media img{width:100%;height:100%;object-fit:cover}.stack-controls{display:flex;align-items:center;gap:10px;margin-top:30px}.stack-controls span{font:10px Arial,sans-serif;color:var(--muted)}.stack-controls .hint{margin-left:auto;font-size:9px}.stack-controls button{width:34px;height:34px;border:1px solid var(--line);background:transparent;border-radius:50%;color:var(--ink);cursor:pointer}.stack-controls button:hover{background:var(--wash)}.simple-footer{padding:20px 6%;font-size:10px;align-items:center;border-color:var(--line)}@media(max-width:700px){.home-layout{grid-template-columns:1fr;gap:32px;padding:24px 7% 38px}.intro h1{font-size:49px}.intro>p:not(.eyebrow){font-size:13px}.intro .eyebrow{font-size:8px}.socials{margin-top:22px}.collection{padding-right:18px!important}.card-stack{height:455px}.card-media{height:305px}.card-copy{padding:20px}.card-copy h2{font-size:22px}.stack-controls .hint{font-size:8px}.selectors{gap:0}.selectors button{padding:9px 10px}.simple-home header{padding:24px 7%}.simple-footer{font-size:9px;padding:20px 7%}.photo-placeholder p{font-size:42px}}@media(prefers-reduced-motion:reduce){.work-card{transition:none!important}.work-card[data-position="1"]{transform:translate(10px,6px)!important}.work-card[data-position="2"]{transform:translate(20px,12px)!important}}
@media(max-width:700px){.work-card[data-position="1"]{transform:translate(7px,5px) rotate(2deg)}.work-card[data-position="2"]{transform:translate(13px,9px) rotate(3deg)}}
.photography-media img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}.portfolio-photo{margin:0}.portfolio-photo img{display:block;width:100%;height:auto}
/* Let the actual artwork define the card proportions. */
.card-stack{height:auto;display:block;min-height:0}.work-card{position:absolute;inset:0 auto auto 0;width:100%;overflow:visible;background:transparent;border:0;box-shadow:none}.work-card>a{height:auto}.card-media{height:auto;background:transparent;overflow:visible}.map-media{padding:0}.card-media img,.map-media img,.photography-media img,.game-media img{display:block;width:100%;height:auto;max-height:none;object-fit:initial;object-position:initial;border-radius:2px;box-shadow:0 12px 30px #273e341c}.card-copy{padding:20px 0 0;background:var(--paper)}.work-card[data-position="1"] .card-copy,.work-card[data-position="2"] .card-copy{visibility:hidden}.work-card[data-position="1"],.work-card[data-position="2"]{height:100%;overflow:hidden}.work-card[data-position="0"]{position:relative}.home-layout{align-items:start}.intro{position:sticky;top:65px;padding-top:75px!important}.collection{max-width:470px;width:100%;justify-self:end}.work-card:not([data-position="0"]){pointer-events:none}@media(max-width:700px){.intro{position:static;padding-top:0!important}.collection{max-width:100%}.card-stack{height:auto}.card-media{height:auto}.card-copy{padding:18px 0 0}}

.photo-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;align-items:start}.photo-gallery .landscape{grid-column:1 / -1}@media(max-width:700px){.photo-gallery{grid-template-columns:1fr;gap:24px}}

/* Shared alignment keeps the three collections visually connected. */
.simple-home header,.simple-home main,.simple-home footer{max-width:1240px;padding-left:48px;padding-right:48px}
.simple-home .home-layout{display:block;padding-top:42px;padding-bottom:60px;min-height:0}
.simple-home .intro{position:static;padding:0!important;display:grid;grid-template-columns:1.15fr 1fr;gap:72px;align-items:center;margin-bottom:48px}
.intro-heading .eyebrow{margin-bottom:20px;line-height:1.5}
.simple-home .intro h1{font-size:clamp(42px,4.4vw,60px);margin:0;line-height:1.08;letter-spacing:-2px}
.intro-bio p{font-size:13px;line-height:1.75;max-width:49ch;margin-bottom:12px}
.intro-bio .socials{margin-top:20px}
.simple-home .collection{max-width:none;padding:0!important;width:100%}
.product-grid{display:grid;grid-template-columns:1fr .9fr 1.3fr;gap:36px;align-items:start}
.product-item{min-width:0}
.product-item>a{display:block}
.product-item .card-media{height:340px;display:flex;align-items:flex-end;justify-content:flex-start;overflow:visible;background:none;padding:0}
.product-item .card-media img{display:block;width:auto;height:auto;max-height:100%;max-width:100%;box-shadow:none;border-radius:0;object-fit:contain}
.product-item .card-copy{padding:20px 0 0;background:none}
.product-item .card-copy .eyebrow{display:none}
.product-item .card-copy h2{font-size:24px;line-height:1.2;margin-bottom:9px;letter-spacing:-.6px}
.product-item .card-copy p{font-size:12px;max-width:34ch}
.product-item a:hover h2{text-decoration:underline;text-underline-offset:5px}
.simple-home .simple-footer{padding-top:22px;padding-bottom:28px}
@media(max-width:900px) and (min-width:701px){.product-grid{gap:24px}.product-item .card-media{height:280px}.product-item .card-copy h2{font-size:20px}.simple-home .intro{gap:36px}}
@media(max-width:700px){
.simple-home header,.simple-home main,.simple-home footer{padding-left:7%;padding-right:7%}
.simple-home .home-layout{padding-top:24px;padding-bottom:40px}
.simple-home .intro{display:block;margin-bottom:36px}
.simple-home .intro h1{font-size:46px;margin-bottom:24px}
.intro-bio p{font-size:13px}
.product-grid{grid-template-columns:1fr;gap:36px}
.product-item .card-media{height:auto;display:block}
.product-item .card-media img{width:100%;height:auto;max-height:none}
.product-item .card-copy{padding-top:16px}
.product-item .card-copy h2{font-size:25px}
}

/* Fill taller windows with artwork, and give the maker a face. */
body.simple-home{min-height:100dvh;display:flex;flex-direction:column}
.simple-home header,.simple-home main,.simple-home footer{width:100%;max-width:1440px}
.simple-home .home-layout{flex:1;padding-top:28px;padding-bottom:32px}
.simple-home .intro{grid-template-columns:1fr 1.15fr;gap:48px;margin-bottom:36px}
.intro-bio{display:grid;grid-template-columns:104px 1fr;gap:24px;align-items:center}
.bio-portrait{width:104px;height:104px;object-fit:cover;object-position:50% 48%;border-radius:50%}
.product-grid{grid-template-columns:1.15fr .9fr 1.2fr;gap:36px}
.product-item .card-media{height:clamp(400px,45dvh,620px)}
.product-item .map-media img{box-shadow:0 8px 22px #273e3426;outline:1px solid #273e3420}
.simple-home .simple-footer{margin-top:auto}
@media(max-width:900px){.simple-home .intro{gap:28px}.intro-bio{grid-template-columns:72px 1fr;gap:16px}.bio-portrait{width:72px;height:72px}.product-item .card-media{height:340px}}
@media(max-width:700px){.intro-bio{grid-template-columns:1fr}.bio-portrait{width:88px;height:88px}.product-item .card-media{height:auto}.simple-home .home-layout{flex:initial}.simple-home .intro{margin-bottom:32px}}

/* Portrait game framing gives every collection the same visual height. */
.product-grid{grid-template-columns:1.2fr 1fr 1fr}
.product-item .card-media{height:auto;aspect-ratio:2 / 3;display:block}
.product-item .map-media{aspect-ratio:4 / 5}
.product-item .card-media img{width:100%;height:100%;max-height:none;object-fit:contain}
.product-item .game-media{overflow:hidden}
.product-item .game-media img{object-fit:cover;object-position:58% center}
@media(max-width:700px){.product-grid{grid-template-columns:1fr}.product-item .card-media{height:auto}}
/* Match the map's proportions across all three previews. */
.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.product-item .card-media{aspect-ratio:4 / 5;overflow:hidden}
.product-item .photography-media img{object-fit:cover;object-position:50% 28%}
@media(max-width:700px){.product-grid{grid-template-columns:1fr}}

/* Introduce the work first, then the person behind it. */
.simple-home .intro{display:block;margin-bottom:36px}
.simple-home .intro h1 br{display:none}
.simple-home .intro h1{font-size:clamp(38px,4.4vw,60px)}
.simple-home .intro .eyebrow{max-width:none}
.simple-home .maker-bio{margin-top:48px;padding-top:32px;border-top:1px solid var(--line)}
.maker-bio .intro-bio{max-width:900px;margin:0 auto;grid-template-columns:112px 1fr;gap:32px}
.maker-bio .bio-portrait{width:112px;height:112px}
.maker-bio .bio-copy{display:grid;grid-template-columns:1fr 1fr;gap:0 32px}
.maker-bio .bio-copy p{max-width:none;margin:0}
.maker-bio .socials{grid-column:1 / -1;margin-top:18px}
@media(max-width:700px){
.simple-home .intro h1 br{display:block}
.simple-home .maker-bio{margin-top:32px;padding-top:28px}
.maker-bio .intro-bio{grid-template-columns:1fr;gap:20px}
.maker-bio .bio-portrait{width:88px;height:88px}
.maker-bio .bio-copy{display:block}
.maker-bio .bio-copy p{margin-bottom:12px}
}
/* Raise the seal within the existing 4:5 homepage frame. */
#photos-card .photography-media img{object-position:50% 100%}

.maker-bio .intro-bio{max-width:none}.maker-bio .bio-copy{display:block}.maker-bio .bio-copy p{max-width:none;font-size:14px;line-height:1.8}
.maker-bio .bio-copy p{font-size:17px;line-height:1.75}
@media(max-width:700px){.maker-bio .bio-copy p{font-size:16px}}
/* Native horizontal galleries: swipe, trackpad, keyboard, or arrows. */
.gallery-panel[hidden],.gallery-navigation[hidden]{display:none}
.gallery-tabs{display:flex;gap:28px;margin-bottom:24px;border-bottom:1px solid var(--line)}
.gallery-tabs button{font:14px Arial,sans-serif;color:var(--muted);padding:12px 0;border:0;border-bottom:2px solid transparent;background:none;cursor:pointer}
.gallery-tabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--ink)}
.gallery-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 56px)/3);gap:28px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--line) transparent;padding-bottom:14px;overscroll-behavior-x:contain;position:relative}
.gallery-item{min-width:0;scroll-snap-align:start}
.gallery-image{aspect-ratio:4/5;overflow:hidden}
.gallery-image img{display:block;width:100%;height:100%;object-fit:cover}
.gallery-map img{object-fit:contain}
.gallery-seal img{object-position:50% 100%}
.gallery-game img{object-position:58% 50%}
.gallery-item h2{display:flex;justify-content:space-between;gap:12px;font-size:23px;line-height:1.25;letter-spacing:-.5px;margin:18px 0 0}
.gallery-item a:hover h2{text-decoration:underline;text-underline-offset:5px}
.gallery-navigation{display:flex;justify-content:space-between;align-items:center;margin-top:10px}
.gallery-status{font-size:11px;color:var(--muted)}
.gallery-navigation>div{display:flex;gap:8px}
.gallery-navigation button{height:36px;width:36px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);cursor:pointer;font-size:17px}
.gallery-navigation button:disabled{opacity:.3;cursor:default}
.gallery-navigation button:hover:not(:disabled){background:var(--wash)}
.gallery-track:focus-visible{outline:2px solid #8b593e;outline-offset:4px}
@media(max-width:900px){.gallery-item h2{font-size:19px}}
@media(max-width:700px){.gallery-tabs{gap:18px}.gallery-tabs button{font-size:12px;text-align:left;line-height:1.5}.gallery-track{grid-auto-columns:86%;gap:18px}.gallery-item h2{font-size:23px}}

.gallery-item .palette-caption{font:12px/1.5 Arial,sans-serif;letter-spacing:0;color:var(--muted);white-space:nowrap}

/* Owner prefers the biography without a portrait. */
.maker-bio .intro-bio{grid-template-columns:1fr}
