@font-face {
  font-family: "Poiret One";
  src: url("assets/fonts/PoiretOne-Regular.woff2") format("woff2"), url("assets/fonts/PoiretOne-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Anti Grotesk";
  src: local("Anti Grotesk"), local("AntiGrotesk");
  /* Add url("assets/fonts/AntiGrotesk.woff2") format("woff2") when supplied. */
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:root {
  color-scheme: dark;
  --background: #302536;
  --foreground: #e3f0da;
  --secondary: #bdb4c2;
  --accent: #dcfa91;
  --ink: #302536;
  --line: #e3f0da30;
  --hover: #e3f0da0d;
  --display-font: "Anti Grotesk", "Poiret One", sans-serif;
}

:root[data-mood="mint"] {
  color-scheme: light;
  --background: #dce9cd;
  --foreground: #302536;
  --secondary: #5e5663;
  --accent: #302536;
  --ink: #e3f0da;
  --line: #30253635;
  --hover: #3025360d;
}

* { box-sizing: border-box; }
html { min-width: 320px; scroll-behavior: smooth; scroll-padding-top: 32px; }
body {
  margin: 0;
  background: var(--background);
  color: var(--foreground);
  font: 400 16px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
  transition: background-color 650ms ease, color 650ms ease;
}

body::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 10;
  pointer-events: none;
  opacity: 0.025;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.87' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='white' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E");
}

p { margin: 0; }
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; cursor: pointer; border: 0; background: transparent; }
a, button { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible, canvas:focus-visible { outline: 2px solid var(--accent); outline-offset: 5px; }
button:disabled { opacity: 0.4; cursor: default; }
svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.3; stroke-linecap: round; stroke-linejoin: round; }
::selection { background: var(--accent); color: var(--ink); }
.page-shell { isolation: isolate; max-width: 2000px; min-height: 100svh; margin: 0 auto; padding: 0 clamp(24px, 3.8vw, 76px); display: flex; flex-direction: column; background: var(--background); transition: background-color 650ms ease; }
.site-header { position: relative; z-index: 4; min-height: 88px; display: flex; align-items: center; justify-content: space-between; gap: 24px; border-bottom: 0; }
.wordmark { flex-shrink: 0; font-family: var(--display-font); font-size: 1.8rem; line-height: 1; letter-spacing: -0.035em; white-space: nowrap; padding-bottom: 3px; transition: color 200ms ease; }
.wordmark:hover { color: var(--accent); }
.header-caption { font-size: 0.6875rem; letter-spacing: 0.075em; }
.header-caption span { margin: 0 12px; color: var(--secondary); }
.header-link { display: inline-flex; align-items: center; gap: 20px; padding: 12px 0; font-size: 0.8125rem; white-space: nowrap; }
.header-link svg { width: 17px; height: 17px; transition: transform 250ms ease; }
.header-link:hover svg { transform: translate(3px, -3px); }
.header-nav { display: flex; align-items: center; gap: 24px; }
@media (max-width: 760px) {
  .header-nav { flex-direction: column; align-items: flex-end; gap: 0; }
  .header-nav .header-link { padding: 4px 0; }
}

.main { min-width: 0; }
.poster { position: relative; pointer-events: none; min-width: 0; min-height: max(550px, calc(100svh - 158px)); }
.canvas-wrap { position: fixed; z-index: 0; inset: 0; pointer-events: none; overflow: hidden; }
#sculpture { display: block; width: 100%; height: 100%; cursor: grab; touch-action: pan-y; pointer-events: auto; }
.canvas-wrap.is-melting #sculpture { pointer-events: none; }
#sculpture.is-dragging { cursor: grabbing; }
#sculpture:focus-visible { outline-offset: -8px; }
h1 { position: relative; z-index: 2; pointer-events: none; margin: 7px 0 0 -9px; color: #fff; font-family: var(--display-font); font-size: clamp(9rem, min(27.8vw, calc((100svh - 275px) / 1.76)), 34.75rem); font-weight: 400; letter-spacing: -0.055em; line-height: 0.79; mix-blend-mode: difference; }
.title-line { display: block; white-space: nowrap; }
.final-line { text-align: right; padding-right: 0.055em; padding-bottom: 0.18em; }
.poster-note { position: absolute; z-index: 3; bottom: 296px; left: 5px; font-size: clamp(0.875rem, 1.15vw, 1.125rem); line-height: 1.5; letter-spacing: -0.015em; }
.poster-note p { width: max-content; padding: 5px 8px 5px 0; background: var(--background); }
.launch-note { position: absolute; z-index: 3; left: 20px; bottom: 109px; width: 218px; padding: 15px 20px 18px; background: var(--accent); color: var(--ink); transform: rotate(-7deg); transform-origin: bottom left; }
.launch-caption { display: block; margin-bottom: 9px; font-size: 0.625rem; font-weight: 600; letter-spacing: 0.11em; }
.launch-note p { position: relative; font-size: 2.35rem; line-height: 0.95; font-weight: 650; letter-spacing: -0.06em; }
.launch-note p > span { position: absolute; right: 0; bottom: -3px; font-size: 2.7rem; font-weight: 400; }
.poster-bottom { pointer-events: auto; position: absolute; z-index: 4; left: 0; right: 0; bottom: 25px; display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.work-link { display: inline-flex; min-height: 55px; align-items: center; justify-content: space-between; gap: 26px; font-size: 0.9375rem; padding: 0 0 5px; border-bottom: 0; }
.work-link svg { width: 34px; height: 34px; stroke-width: 1.4; transition: transform 250ms ease; }
.work-link:hover svg { transform: translate(4px, -4px); }
.drag-hint { position: absolute; z-index: 3; right: 0; top: 20px; display: flex; align-items: center; gap: 9px; padding: 4px 8px; background: var(--background); font-size: 0.5625rem; letter-spacing: 0.1em; color: var(--secondary); pointer-events: none; }
.drag-hint > span { font-size: 1.1rem; }
.poster:has(.is-dragging) .drag-hint { opacity: 0; }

.studio-note { position:relative; z-index:2; display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:clamp(28px,6vw,100px); padding-block:clamp(48px,8vw,110px); background:var(--background); }
.studio-note h2 { font:400 clamp(3rem,6vw,6.5rem)/1.05 var(--display-font); letter-spacing:-.045em; margin:22px 0; }
.studio-note p:not(.category-number) { max-width:34rem; color:var(--secondary); line-height:1.75; }
.studio-note p a { text-decoration:underline; text-underline-offset:3px; }
.studio-note .journal-link { display:inline-flex; align-items:center; gap:28px; min-height:44px; margin-top:22px; font-size:.9rem; text-decoration:underline; text-underline-offset:5px; }
.studio-note img { display:block; width:100%; height:auto; }
.site-footer { flex-wrap:wrap; }
@media(max-width:760px) { .studio-note { grid-template-columns:1fr; } }

.selected-work { position: relative; padding-top: clamp(70px, 12vh, 140px); }
.work-intro { position: relative; display: flex; align-items: center; gap: 5%; padding-bottom: 45px; }
.work-intro h2 { position: relative; z-index: 2; margin: 0 auto 0 0; font: 400 clamp(3rem, 6.4vw, 8rem)/1.1 var(--display-font); letter-spacing: -.055em; }
.work-intro h2 > span { color: var(--accent); }
.work-intro p { font-size: .8125rem; color: var(--secondary); }
.work-edition { font: .6875rem monospace; letter-spacing: .08em; }
.category { --art-shift: 0px; position: relative; display: block; height: clamp(700px, 64vw, 1040px); margin-bottom: 85px; }
.category-meta { position: relative; display: flex; justify-content: space-between; padding-top: 22px; border-top: 1px solid var(--line); color: var(--secondary); font-size: .625rem; letter-spacing: .12em; text-transform: uppercase; }
.category-title { position: absolute; z-index: 3; margin: 0; color: #fff; mix-blend-mode: difference; font: 400 clamp(6rem, 15vw, 18rem)/.88 var(--display-font); letter-spacing: -.055em; }
.category-art { position: absolute; z-index: 1; transform: translateY(var(--art-shift)); }
.category-art img { display: block; width: 100%; height: auto; }
.category-foot { position: absolute; z-index: 4; bottom: 0; left: 0; right: 0; display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; }
.category-foot > p { font-size: .8125rem; line-height: 1.7; color: var(--secondary); }
.category-link { display: inline-flex; align-items: center; gap: 25px; font-size: .75rem; }
.category-link > span { display: grid; place-items: center; width: 68px; height: 68px; border: 1px solid var(--line); border-radius: 50%; font: 300 2rem/1 sans-serif; transition: transform 350ms ease, background-color 350ms ease, color 350ms ease; }
.category-number { font-size: .625rem; letter-spacing: .12em; color: var(--secondary); }
.art-caption { position: absolute; font: .5625rem/1.4 monospace; letter-spacing: .06em; color: var(--secondary); white-space: nowrap; }
.category-orbit { position: absolute; left: 6%; top: 14%; width: 80%; height: 60%; border: 1px solid var(--line); border-radius: 50%; transform: rotate(-17deg); pointer-events: none; }
.category-branding .category-title { left: 2%; top: 40%; }
.branding-art { left: 40%; top: 13%; width: 46%; aspect-ratio: 1.14; }
.brand-print { position: absolute; width: 100%; aspect-ratio: 1.14; overflow: hidden; transform: rotate(-7deg); background: #eeb650; box-shadow: 0 20px 60px #0002; transition: transform 650ms cubic-bezier(.2,.65,.3,1); }
/* Isolate the individual applications in the original portfolio sheet. */
.brand-print img { position: absolute; width: 318%; max-width: none; left: -8%; bottom: -7%; }
.brand-sticker { position: absolute; left: -42%; top: -6%; width: 32%; aspect-ratio: 1; border-radius: 50%; overflow: hidden; transform: rotate(12deg); box-shadow: 0 10px 30px #0002; transition: transform 650ms cubic-bezier(.2,.65,.3,1); }
.brand-sticker img { position: absolute; width: 1060%; max-width: none; left: -442%; top: -805%; }
.branding-art .art-caption { right: 0; bottom: -13%; }
.category-note { position: absolute; z-index: 2; left: 7%; top: 19%; font: 400 clamp(1.5rem, 2.4vw, 3rem)/1.05 var(--display-font); transform: rotate(-11deg); }
.category-social { height: clamp(760px, 70vw, 1100px); }
.category-social .category-title { top: 19%; right: 1%; font-size: clamp(6rem, 13.3vw, 16rem); }
.category-social .category-title > span { display: block; }
.category-social .category-title > span + span { margin: .1em 0 0 .28em; }
.social-art { left: 7%; top: 16%; width: 47%; height: 64%; }
.social-print { position: absolute; width: 49% !important; box-shadow: 0 18px 45px #0003; transition: transform 650ms cubic-bezier(.2,.65,.3,1); }
.social-print-back { left: 0; top: 4%; transform: rotate(-15deg); }
.social-print-front { z-index: 2; left: 24%; top: 0; transform: rotate(-3deg); }
.social-print-side { z-index: 3; left: 53%; top: 9%; transform: rotate(13deg); }
.social-art .art-caption { left: 10%; top: -45px; }
.social-spark { position: absolute; right: 8%; bottom: 16%; color: var(--accent); font-size: clamp(4rem, 8vw, 8rem); line-height: 1; transform: rotate(15deg); transition: transform 800ms ease; }
.category-photography { height: clamp(740px, 68vw, 1100px); margin-bottom: 110px; }
.category-photography .category-title { left: 0; top: 47%; font-size: clamp(5rem, 11.5vw, 14rem); }
.photography-art { inset: 10% 0 15%; }
.photo-print { position: absolute; margin: 0; }
.photo-print img { aspect-ratio: 4 / 5; object-fit: cover; }
.photo-print-main { left: 16%; top: 0; width: 32%; transform: rotate(-5deg); transition: transform 650ms cubic-bezier(.2,.65,.3,1); }
.photo-print-detail { right: 5%; top: 19%; width: 23%; transform: rotate(8deg); transition: transform 650ms cubic-bezier(.2,.65,.3,1); }
.photo-print figcaption { margin-top: 12px; color: var(--secondary); font: .5625rem monospace; letter-spacing: .06em; }
.viewfinder { position: absolute; top: 3%; left: 9%; width: 48%; height: 81%; border: 1px solid var(--line); border-radius: 45%; transform: rotate(-12deg); }
.viewfinder > span { position: absolute; right: -7px; top: 49%; color: var(--accent); font: 1.1rem monospace; }
.category:focus-visible .category-link > span { background: var(--accent); color: var(--ink); transform: rotate(45deg); }
.contact-footer { position: relative; display: flex; flex-direction: column; justify-content: space-between; min-height: 90svh; padding-top: clamp(60px, 8vw, 120px); border-top: 1px solid var(--line); }
.contact-intro { position: relative; }
.contact-intro h2 { margin: 28px 0 22px; font: 400 clamp(3.3rem, 7.7vw, 9rem)/1.05 var(--display-font); letter-spacing: -.045em; color: #fff; mix-blend-mode: difference; }
.contact-intro h2 span { font-family: sans-serif; font-size: .6em; color: var(--accent); }
:root[data-mood="mint"] .contact-intro h2 span { color: inherit; }
.contact-email { display: inline-block; padding-block: 12px; font-size: .875rem; }
.contact-email:hover { color: var(--accent); }
@media (hover: hover) {
  .category:hover .category-link > span { background: var(--accent); color: var(--ink); transform: rotate(45deg); }
  .category-branding:hover .brand-print { transform: translateY(-8px) rotate(-3deg); }
  .category-branding:hover .brand-sticker { transform: translate(-10px, -5px) rotate(-10deg); }
  .category-social:hover .social-print-back { transform: translateX(-15px) rotate(-19deg); }
  .category-social:hover .social-print-front { transform: translateY(-20px) rotate(1deg); }
  .category-social:hover .social-print-side { transform: translateX(15px) rotate(18deg); }
  .category-social:hover .social-spark { transform: rotate(105deg); }
  .category-photography:hover .photo-print-main { transform: translateY(-8px) rotate(-2deg); }
  .category-photography:hover .photo-print-detail { transform: translateY(8px) rotate(4deg); }
}

.site-footer { position: relative; z-index: 4; display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 70px; border-top: 0; color: var(--secondary); font-size: 0.625rem; letter-spacing: 0.045em; }
.location { display: flex; gap: 9px; align-items: center; }
.location > span { color: var(--accent); font-size: 1rem; }
.mood-button { display: inline-flex; min-height: 44px; align-items: center; gap: 9px; padding: 8px 0 8px 8px; font-size: 0.6875rem; }
.mood-swatch { display: inline-block; width: 17px; height: 17px; border: 1px solid var(--foreground); border-radius: 50%; background: linear-gradient(90deg, var(--foreground) 50%, var(--background) 50%); transition: transform 400ms ease; }
.mood-button:hover .mood-swatch { transform: rotate(180deg); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.skip-link { position: fixed; left: 20px; top: -100px; padding: 12px 20px; background: var(--foreground); color: var(--background); z-index: 20; }
.skip-link:focus { top: 20px; }

@media (prefers-reduced-motion: no-preference) {
  .is-writing .writing-letter { animation: write-letter 400ms cubic-bezier(0.2, 0.7, 0.2, 1) var(--write-delay) both; }
  .reveal { animation: reveal 850ms ease 150ms both; }
  .poster-note { animation-delay: 850ms; }
  .launch-note { animation: label-in 950ms cubic-bezier(0.2, 0.8, 0.2, 1) 1050ms both; }
  .poster-bottom, .site-footer { animation-delay: 1200ms; }
  .canvas-wrap { animation: reveal 2200ms ease 350ms both; }
  @keyframes write-letter { from { opacity: 0; filter: blur(6px); } to { opacity: 1; filter: blur(0); } }
  @keyframes reveal { from { opacity: 0; } to { opacity: 1; } }
  @keyframes label-in { from { opacity: 0; transform: translateY(24px) rotate(3deg); } to { opacity: 1; transform: translateY(0) rotate(-7deg); } }
  @keyframes sculpture-in { from { opacity: 0; transform: translate(18%, 4%) rotate(12deg); } to { opacity: 1; transform: translate(0, 0) rotate(0); } }
}

@media (max-width: 1000px) {
  .header-caption { font-size: 0.625rem; }
  .header-caption span { margin: 0 6px; }
  .poster { min-height: max(540px, calc(100svh - 158px)); }
  .poster-note { bottom: 292px; }
  .launch-note { bottom: 122px; width: 184px; padding: 14px 17px 15px; }
  .launch-note p { font-size: 2rem; }
  .launch-note p > span { font-size: 2.3rem; }
  .drag-hint { display: none; }
}

@media (max-width: 760px) {
  .page-shell { padding: 0 23px; }
  .site-header { min-height: 79px; gap: 18px; }
  .wordmark { font-size: 1.75rem; }
  .header-caption { display: none; }
  .header-link { font-size: 0.75rem; gap: 12px; }
  .poster { display: flex; flex-direction: column; min-height: 710px; }
  h1 { margin: 33px 0 0 -3px; font-size: 29vw; line-height: 0.85; letter-spacing: -0.06em; }
  .final-line { padding-right: 0.08em; margin-top: 0.08em; }
  .poster-note { top: 42%; bottom: auto; left: 0; font-size: 0.875rem; max-width: 190px; }
  .launch-note { left: 16px; bottom: 163px; width: 155px; padding: 12px 15px 14px; }
  .launch-caption { font-size: 0.5rem; margin-bottom: 7px; }
  .launch-note p { font-size: 1.8rem; }
  .launch-note p > span { font-size: 2rem; }
  .poster-bottom { position: relative; left: auto; right: auto; bottom: auto; margin: auto 0 20px; flex-direction: column; align-items: stretch; gap: 21px; padding-top: 30px; }
  .work-link { min-height: 46px; font-size: 0.875rem; gap: 18px; align-self: flex-start; }
  .work-link svg { width: 29px; height: 29px; }
  .site-footer { min-height: 68px; gap: 12px; font-size: 0.5625rem; }
  .location { display: none; }
  .mood-button { font-size: 0.625rem; }
  .work-intro { flex-wrap: wrap; align-items: flex-end; gap: 20px; padding-bottom: 30px; }
  .work-intro h2 { width: 100%; font-size: 13vw; }
  .work-intro p { font-size: .75rem; }
  .work-edition { margin-left: auto; font-size: .625rem; }
  .category { height: 650px; margin-bottom: 55px; }
  .category-meta { padding-top: 16px; font-size: .5rem; letter-spacing: .08em; }
  .category-title { font-size: 21vw; }
  .category-foot { gap: 20px; align-items: flex-end; }
  .category-foot > p { max-width: 48%; font-size: .6875rem; }
  .category-link { gap: 9px; max-width: 46%; font-size: .625rem; }
  .category-link > span { flex: 0 0 42px; width: 42px; height: 42px; font-size: 1.5rem; }
  .category-branding .category-title { top: 42%; left: 0; }
  .branding-art { left: 22%; top: 28%; width: 73%; height: 45%; }
  .brand-sticker { width: 31%; left: -18%; top: -35%; }
  .branding-art .art-caption { bottom: -10%; font-size: .45rem; }
  .category-note { left: 43%; top: 15%; font-size: 1.6rem; transform: rotate(5deg); }
  .category-orbit { left: 7%; top: 24%; width: 85%; height: min(42%, 64vw); transform: rotate(-25deg); }
  .category-social { height: 750px; }
  .category-social .category-title { top: 11%; right: 0; font-size: 21vw; }
  .social-art { left: 7%; top: 39%; width: 70%; height: 43%; }
  .social-art .art-caption { top: auto; bottom: -3%; font-size: .45rem; }
  .social-spark { right: auto; left: 4%; top: 17%; bottom: auto; font-size: 4.5rem; }
  .category-photography { height: 750px; margin-bottom: 75px; }
  .category-photography .category-title { top: 44%; left: -1%; font-size: 16.4vw; }
  .photography-art { inset: 14% 0 16%; }
  .photo-print-main { left: 6%; width: 64%; }
  .photo-print-detail { right: 0; top: 49%; width: 43%; }
  .photo-print figcaption { font-size: .4375rem; }
  .viewfinder { left: 0; top: -2%; width: 80%; height: 75%; }
  .contact-footer { min-height: 85svh; }
  .contact-intro h2 { font-size: clamp(3rem, 12vw, 5rem); }
}

@media (max-width: 380px) {
  .page-shell { padding: 0 19px; }
  .wordmark { font-size: 1.55rem; }
  .header-link { gap: 9px; }
  .poster { min-height: 655px; }
  .poster-note { top: 39%; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .canvas-wrap.is-melting { opacity: .12; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}

.work-simple{padding-block:80px 100px}.simple-work-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:35px}.simple-work-heading h2{font:400 clamp(2.5rem,5vw,5rem)/1.1 var(--display-font);letter-spacing:-.035em;margin:0}.simple-work-heading>a{font-size:14px;white-space:nowrap}.simple-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.simple-work-card{display:block;min-width:0}.simple-work-card img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;transition:opacity .3s}.simple-work-card:first-child img{object-fit:contain;background:transparent}.simple-work-card h3{display:flex;justify-content:space-between;gap:15px;font:400 clamp(1.3rem,2.2vw,2rem)/1.3 var(--display-font);margin:18px 0 0}.simple-work-card:hover img{opacity:.85}@media(max-width:760px){.work-simple{padding-block:55px 65px}.simple-work-grid{grid-template-columns:1fr;gap:35px}.simple-work-heading{align-items:center}.simple-work-heading>a{font-size:12px}.simple-work-card img{max-height:480px}.simple-work-card h3{font-size:1.7rem}}

/* Selected work as an editorial triptych. */
.work-editorial{padding-block:100px 130px}.work-editorial .simple-work-heading{margin-bottom:65px;border-top:1px solid var(--line);padding-top:30px}.work-editorial .simple-work-heading h2{font-size:clamp(3.5rem,8vw,8rem);max-width:650px}.work-editorial .simple-work-grid{grid-template-columns:1.05fr 1fr 1.05fr;gap:clamp(18px,3vw,48px);align-items:start;counter-reset:work-card}.work-editorial .simple-work-card{position:relative;counter-increment:work-card;transition:transform .6s cubic-bezier(.2,.7,.3,1)}.work-editorial .simple-work-card:nth-child(1){transform:rotate(-3deg);margin-top:25px}.work-editorial .simple-work-card:nth-child(2){transform:rotate(2deg);margin-top:130px}.work-editorial .simple-work-card:nth-child(3){transform:rotate(-2deg);margin-top:55px}.work-editorial .simple-work-card::before{content:'0' counter(work-card);position:absolute;top:-28px;left:0;font-size:12px;letter-spacing:.12em;color:var(--secondary)}.work-editorial .simple-work-card img{aspect-ratio:3/4;object-fit:cover;box-shadow:0 20px 45px #160e1b26;transition:filter .5s,box-shadow .5s}.work-editorial .simple-work-card:first-child img{object-fit:cover}.work-editorial .simple-work-card h3{position:relative;font-size:clamp(1.6rem,2.9vw,3rem);letter-spacing:-.025em;margin-top:20px;align-items:center}.work-editorial .simple-work-card h3 span{font-family:Arial,sans-serif;font-size:22px;border:1px solid var(--line);border-radius:50%;width:40px;height:40px;display:grid;place-items:center;flex-shrink:0;transition:background .3s,color .3s,transform .3s}@media(hover:hover){.work-editorial .simple-work-card:hover{transform:translateY(-15px) rotate(0deg)}.work-editorial .simple-work-card:hover img{opacity:1;box-shadow:0 32px 55px #160e1b40}.work-editorial .simple-work-card:hover h3 span{background:var(--accent);color:var(--ink);transform:rotate(10deg)}}.work-editorial .simple-work-card:focus-visible{transform:translateY(-8px) rotate(0deg)}@media(max-width:760px){.work-editorial{padding-block:65px 85px}.work-editorial .simple-work-heading{margin-bottom:45px;align-items:end}.work-editorial .simple-work-heading h2{font-size:clamp(3rem,10vw,5rem)}.work-editorial .simple-work-grid{grid-template-columns:1fr;gap:65px;padding-inline:8%}.work-editorial .simple-work-card:nth-child(n){margin-top:0}.work-editorial .simple-work-card:nth-child(2){margin-left:8%;margin-right:-4%}.work-editorial .simple-work-card:nth-child(3){margin-right:6%}.work-editorial .simple-work-card img{max-height:480px}.work-editorial .simple-work-card h3{font-size:2rem}}@media(prefers-reduced-motion:reduce){.work-editorial .simple-work-card,.work-editorial .simple-work-card img,.work-editorial .simple-work-card h3 span{transition:none}}

/* A typographic project index with artwork revealed at the edge. */
.work-index-design{padding-block:100px 120px;position:relative}.work-index-design .simple-work-heading{margin-bottom:45px;align-items:center}.work-index-design .simple-work-heading h2{font:400 14px/1.5 sans-serif;text-transform:uppercase;letter-spacing:.16em}.work-index-design .simple-work-grid{display:block;counter-reset:project-index}.work-index-design .simple-work-card{position:relative;display:flex;align-items:center;min-height:clamp(150px,18vw,260px);padding:28px 30% 28px 55px;border-top:1px solid var(--line);counter-increment:project-index;isolation:isolate}.work-index-design .simple-work-card:last-child{border-bottom:1px solid var(--line)}.work-index-design .simple-work-card::before{content:'0' counter(project-index);position:absolute;left:0;top:42px;color:var(--secondary);font-size:12px;letter-spacing:.1em}.work-index-design .simple-work-card h3{display:block;margin:0;font:400 clamp(3rem,6.8vw,7rem)/1.05 var(--display-font);letter-spacing:-.045em;transition:transform .55s,color .55s}.work-index-design .simple-work-card h3 span{display:inline-block;font:400 .45em/1 Arial,sans-serif;vertical-align:middle;margin-left:12px;transition:transform .55s}.work-index-design .simple-work-card img,.work-index-design .simple-work-card:first-child img{position:absolute;right:4%;top:50%;width:21%;height:120%;aspect-ratio:4/5;object-fit:cover;max-height:320px;transform:translateY(-50%) rotate(6deg) scale(.85);opacity:0;pointer-events:none;z-index:2;box-shadow:0 20px 45px #160e1b40;transition:opacity .4s,transform .6s cubic-bezier(.2,.7,.3,1)}.work-index-design .simple-work-card:nth-child(2) img{rotate:-10deg}.work-index-design .simple-work-card:first-child img{opacity:1;transform:translateY(-50%) rotate(6deg) scale(1)}.work-index-design .simple-work-grid:has(.simple-work-card:hover) .simple-work-card:not(:hover) img,.work-index-design .simple-work-grid:has(.simple-work-card:focus-visible) .simple-work-card:not(:focus-visible) img{opacity:0;transform:translateY(-50%) rotate(6deg) scale(.85)}.work-index-design .simple-work-card:hover img,.work-index-design .simple-work-card:focus-visible img{opacity:1;transform:translateY(-50%) rotate(6deg) scale(1)}.work-index-design .simple-work-card:hover h3,.work-index-design .simple-work-card:focus-visible h3{transform:translateX(12px);color:var(--accent)}.work-index-design .simple-work-card:hover h3 span{transform:translate(6px,-6px)}
@media(max-width:760px),(hover:none){.work-index-design{padding-block:60px 80px}.work-index-design .simple-work-card{padding:30px 32% 30px 28px;min-height:180px}.work-index-design .simple-work-card h3{font-size:clamp(2rem,6.5vw,4rem)}.work-index-design .simple-work-card::before{top:25px;font-size:10px}.work-index-design .simple-work-card img,.work-index-design .simple-work-card:first-child img{right:2%;width:25%;height:auto;max-height:145px;opacity:1!important;transform:translateY(-50%) rotate(3deg) scale(1)!important}.work-index-design .simple-work-card h3 span{display:none}.work-index-design .simple-work-heading{margin-bottom:25px}}
@media(prefers-reduced-motion:reduce){.work-index-design .simple-work-card img,.work-index-design .simple-work-card h3,.work-index-design .simple-work-card h3 span{transition:none}}

/* A floating collection of prints for the homepage. */
.work-collage{padding-block:90px 110px;overflow:hidden}
.work-collage .simple-work-heading{align-items:center;margin-bottom:60px}
.work-collage .simple-work-heading h2{font-size:clamp(3.5rem,8vw,8rem);letter-spacing:-.06em}
.work-collage .simple-work-heading>a{border:1px solid var(--line);border-radius:100px;padding:15px 24px;transition:background .3s}
.work-collage .simple-work-heading>a:hover{background:var(--hover)}
.work-collage .simple-work-grid{position:relative;display:flex;align-items:center;justify-content:center;gap:0;min-height:580px;padding:30px 5% 70px}
.work-collage .simple-work-card{position:relative;flex:0 0 35%;margin:0 -2%;transform:rotate(var(--tilt));animation:print-drift 8s ease-in-out infinite alternate;transition:filter .4s;--tilt:-10deg;--lift:-14px}
.work-collage .simple-work-card:nth-child(2){--tilt:5deg;--lift:18px;z-index:2;align-self:flex-end;animation-delay:-3s}
.work-collage .simple-work-card:nth-child(3){--tilt:12deg;--lift:-20px;align-self:flex-start;animation-delay:-5s}
.work-collage .simple-work-card img,.work-collage .simple-work-card:first-child img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;opacity:1;transition:transform .5s}
.work-collage .simple-work-card:nth-child(2) img{aspect-ratio:1}
.work-collage .simple-work-card h3{font:400 12px/1.4 sans-serif;text-transform:uppercase;letter-spacing:.12em;margin:0;padding:12px 15px;background:var(--foreground);color:var(--background)}
.work-collage .simple-work-card h3 span{font-size:18px}
.work-collage .simple-work-card:hover,.work-collage .simple-work-card:focus-visible{z-index:5;animation-play-state:paused}
.work-collage .simple-work-card:hover img{transform:translateY(-10px)}
@keyframes print-drift{from{transform:translateY(0) rotate(var(--tilt))}to{transform:translateY(var(--lift)) rotate(calc(var(--tilt) + 3deg))}}
@media(max-width:760px){.work-collage{padding-block:55px 65px}.work-collage .simple-work-heading{align-items:start;flex-direction:column;gap:20px;margin-bottom:35px}.work-collage .simple-work-heading h2{font-size:clamp(3.5rem,12vw,6rem)}.work-collage .simple-work-heading>a{padding:10px 18px}.work-collage .simple-work-grid{min-height:0;padding:20px 8% 35px;flex-wrap:wrap;row-gap:24px}.work-collage .simple-work-card{flex-basis:61%;margin:0}.work-collage .simple-work-card:nth-child(1){margin-right:30%}.work-collage .simple-work-card:nth-child(2){margin-left:30%;margin-top:-20%}.work-collage .simple-work-card:nth-child(3){margin-right:22%;margin-top:-10%}.work-collage .simple-work-card h3{font-size:10px;padding:10px}}
@media(prefers-reduced-motion:reduce){.work-collage .simple-work-card{animation:none}.work-collage .simple-work-card img{transition:none}}

/* Keep the mobile introduction below the sculpture, above the divider. */
@media(max-width:760px){
  .poster .poster-note{top:auto;bottom:28px;left:0;max-width:none}
}
