:root{
  --paper:#fbf2ef;
  --paper2:#fffaf7;
  --ink:#40353b;
  --muted:#7b6b73;
  --pink:#efb0bd;
  --pink-soft:#f8dce3;
  --lav:#cfc6e8;
  --lav-soft:#e9e4f5;
  --green:#8fa980;
  --green-soft:#dfead7;
  --butter:#f3d99a;
  --line:rgba(64,53,59,.17);
  --serif:Georgia,"Times New Roman",serif;
  --sans:Arial,Helvetica,sans-serif;
  --max:1260px;
  --pad:clamp(20px,4vw,54px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.55;overflow-x:hidden}
img{display:block;width:100%;height:auto}
a{color:inherit}
figure{margin:0}
.grain{position:fixed;inset:0;pointer-events:none;opacity:.025;z-index:1000;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='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}
.shell{width:min(calc(100% - var(--pad)*2),var(--max));margin-inline:auto}
.site-header{width:min(calc(100% - var(--pad)*2),var(--max));margin:auto;padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line);position:relative;z-index:20}
.wordmark{text-decoration:none;display:flex;flex-direction:column;line-height:1.1}
.wordmark span{font:600 17px/1 var(--serif);letter-spacing:.09em}
.wordmark small{margin-top:6px;color:var(--muted);font-size:9px;letter-spacing:.08em}
.site-header nav{display:flex;align-items:center;gap:22px}
.site-header nav a{text-decoration:none;font:13px/1 var(--serif)}
.site-header nav a:hover{opacity:.55}
.nav-toggle{display:none;border:1px solid var(--line);background:var(--paper2);border-radius:999px;padding:8px 12px;color:var(--ink)}
.kicker{text-transform:uppercase;letter-spacing:.15em;font-size:10px;color:#85727a;margin:0 0 14px}
h1,h2,h3{font-family:var(--serif);font-weight:400}
h1{margin:0;font-size:clamp(76px,10vw,145px);line-height:.78;letter-spacing:-.075em}
h1 em{font-weight:400;color:#b86579}
h2{font-size:clamp(42px,5.7vw,76px);line-height:.98;letter-spacing:-.045em;margin:0}
h3{font-size:27px;line-height:1;margin:8px 0 0}
.hero{min-height:780px;display:grid;grid-template-columns:.84fr 1.16fr;gap:clamp(45px,7vw,100px);align-items:center;padding:clamp(70px,8vw,120px) 0}
.hero-copy{max-width:590px}
.intro{max-width:470px;margin:32px 0 0;font:20px/1.45 var(--serif);color:var(--muted)}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:32px}
.button{display:inline-block;text-decoration:none;padding:12px 17px;border-radius:999px;border:1px solid var(--ink);font:14px/1 var(--serif)}
.button.primary{background:var(--ink);color:#fffaf7}
.button.soft{background:var(--paper2)}
.hero-art{position:relative;padding:35px 28px 58px}
.hero-frame{position:relative;background:#fff;padding:9px;box-shadow:0 28px 70px rgba(75,54,65,.18);transform:rotate(1.2deg);cursor:zoom-in}
.hero-frame img{aspect-ratio:4/5;object-fit:cover}
.scribble{position:absolute;right:7%;bottom:4px;margin:0;font:italic 16px/1.1 var(--serif);transform:rotate(-4deg)}
.doodle{position:absolute;font-family:var(--serif);z-index:2}
.d1{font-size:40px;color:#bd8492;left:0;top:8%}
.d2{font-size:34px;color:#a997d1;right:1%;top:2%}
.d3{font-size:38px;color:#829978;right:0;bottom:16%}
.marquee{overflow:hidden;background:var(--pink-soft);border-block:1px solid var(--line);padding:11px 0}
.marquee div{width:max-content;white-space:nowrap;font:italic 14px/1 var(--serif);animation:scroll 32s linear infinite}
@keyframes scroll{to{transform:translateX(-50%)}}
.worlds{padding:clamp(90px,11vw,150px) 0}
.section-heading{max-width:780px;margin-bottom:50px}
.world-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.world-card{border:1px solid var(--line);border-radius:30px;padding:10px;text-decoration:none;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.world-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(68,48,59,.11)}
.world-card.pink{background:var(--pink-soft)}
.world-card.lavender{background:var(--lav-soft)}
.world-card.green{background:var(--green-soft)}
.world-card>img,.clay-illustration{aspect-ratio:4/3;object-fit:cover;border-radius:21px;background:var(--paper2)}
.world-card>div:last-child{padding:16px 14px 18px}
.world-card span{font-size:9px;letter-spacing:.15em;color:var(--muted)}
.world-card p{font-size:12px;color:var(--muted);margin:10px 0 0}
.clay-illustration{position:relative;overflow:hidden}
.blob{position:absolute;display:grid;place-items:center;width:105px;aspect-ratio:1;border:1px solid var(--ink);font:34px/1 var(--serif);box-shadow:0 9px 0 rgba(64,53,59,.07)}
.b1{left:10%;top:29%;background:#f2b7c4;border-radius:48% 52% 55% 45%/50% 42% 58% 50%;transform:rotate(-8deg)}
.b2{right:8%;top:10%;background:var(--butter);border-radius:52% 48% 43% 57%/44% 57% 43% 56%;transform:rotate(8deg)}
.b3{right:26%;bottom:4%;background:var(--lav);border-radius:57% 43% 52% 48%/46% 59% 41% 54%;transform:rotate(-3deg)}
.work{padding:clamp(85px,10vw,145px) 0;border-top:1px solid var(--line)}
.split{max-width:none;display:flex;justify-content:space-between;align-items:end;gap:45px}
.split>p{max-width:340px;color:var(--muted);font:16px/1.5 var(--serif)}
.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(14px,2vw,27px);align-items:start}
.art{grid-column:span 4;background:#fff;padding:7px;border:1px solid var(--line);box-shadow:0 12px 28px rgba(65,48,57,.08);cursor:zoom-in}
.art img{aspect-ratio:4/5;object-fit:cover}
.art.feature{grid-column:span 5}
.art.wide{grid-column:span 7}
.art.wide img{aspect-ratio:7/5}
.art.tall img{aspect-ratio:3/4}
.art:hover{transform:translateY(-3px);transition:.2s ease}
.quiet-world{display:grid;grid-template-columns:minmax(360px,.72fr) 1.28fr;background:#4a4662;color:#fffaf7;height:430px;min-height:0}
.quiet-image{min-height:0;overflow:hidden;background:#4a4662;display:flex;align-items:center;justify-content:center}
.quiet-image img{width:100%;height:100%;object-fit:contain;object-position:center}
.quiet-copy{padding:clamp(28px,4vw,56px);display:flex;flex-direction:column;justify-content:center}
.quiet-copy span{color:#f5cad4;font-size:32px}
.quiet-copy p{font:clamp(28px,3.4vw,46px)/1.06 var(--serif);letter-spacing:-.035em;margin:14px 0 0}
.prints{padding:clamp(100px,12vw,165px) 0;display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(50px,9vw,120px);align-items:center}
.print-copy p:not(.kicker){color:var(--muted);font:17px/1.55 var(--serif);max-width:500px}
.text-link{display:inline-block;margin-top:14px;font:16px/1 var(--serif);text-decoration-thickness:1px;text-underline-offset:5px}
.print-stack{position:relative;min-height:580px}
.stack{position:absolute;width:53%;background:#fff;padding:8px;box-shadow:0 20px 40px rgba(66,48,59,.16);cursor:zoom-in}
.stack img{aspect-ratio:4/5;object-fit:cover}
.s1{left:0;top:13%;transform:rotate(-5deg)}
.s2{right:2%;top:0;transform:rotate(5deg)}
.s3{left:30%;bottom:0;transform:rotate(1deg)}
.clay{padding:0 0 clamp(100px,12vw,165px)}
.clay-card{background:var(--green-soft);border:1px solid var(--line);border-radius:40px;padding:clamp(38px,6vw,78px);display:grid;grid-template-columns:1fr .9fr;gap:50px;align-items:center}
.clay-copy p:not(.kicker){max-width:520px;color:var(--muted);font:17px/1.55 var(--serif)}
.clay-stage{min-height:330px;position:relative}
.clay-blob{position:absolute;display:grid;place-items:center;width:150px;aspect-ratio:1;border:1px solid var(--ink);font:47px/1 var(--serif);box-shadow:0 13px 0 rgba(64,53,59,.08)}
.c1{left:4%;top:26%;background:var(--pink);border-radius:52% 48% 55% 45%/50% 53% 47% 50%;transform:rotate(-8deg)}
.c2{right:3%;top:4%;background:var(--butter);border-radius:45% 55% 48% 52%/58% 44% 56% 42%;transform:rotate(9deg)}
.c3{right:24%;bottom:0;background:var(--lav);border-radius:56% 44% 52% 48%/45% 61% 39% 55%;transform:rotate(-2deg)}
.clay-star{position:absolute;left:38%;top:0;font-size:40px;color:#a37886}
.studio-strip{position:relative;display:grid;grid-template-columns:minmax(420px,520px) 1fr;background:#414b3c;color:#fffaf7;height:360px;min-height:0;overflow:visible;padding-left:34px}
.studio-strip::before{content:'✦';position:absolute;left:500px;top:42px;color:#f3b8c6;font:34px/1 var(--serif);transform:rotate(-10deg);transition:transform .35s ease,opacity .35s ease;z-index:2}
.studio-strip img{align-self:center;justify-self:center;width:calc(100% - 42px);height:calc(100% - 42px);min-height:0;object-fit:contain;object-position:center;background:#fffaf7;padding:10px;box-shadow:0 16px 34px rgba(20,26,19,.28);transform:rotate(-1.6deg);transition:transform .35s ease,box-shadow .35s ease;will-change:transform}
.studio-strip img:hover{transform:translateY(-8px) rotate(0deg) scale(1.02);box-shadow:0 26px 48px rgba(20,26,19,.38)}
.studio-strip:hover::before{transform:translateY(-5px) rotate(12deg) scale(1.12);opacity:.92}
.studio-strip>div{display:flex;align-items:center;padding:clamp(28px,4vw,56px)}
.studio-strip p{font:clamp(26px,3vw,40px)/1.08 var(--serif);letter-spacing:-.035em;margin:0;max-width:620px}
.about{padding:clamp(100px,12vw,170px) 0;display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(55px,9vw,125px);align-items:center}
.portrait-wrap{max-width:520px}
.portrait{background:#fff;padding:9px;box-shadow:0 18px 45px rgba(70,50,61,.12);transform:rotate(-1.5deg)}
.portrait img{aspect-ratio:4/5;object-fit:cover}
.portrait-wrap>span{display:block;margin:13px 0 0 10px;color:var(--muted);font:italic 15px/1 var(--serif)}
.about-copy{max-width:680px}
.lead{margin-top:28px;font:clamp(22px,2.6vw,34px)/1.23 var(--serif)}
.about-copy>p:not(.kicker):not(.lead){color:var(--muted);max-width:600px}
.tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:28px}
.tags span{padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:var(--paper2);color:var(--muted);font-size:10px}
.process{padding:0 0 clamp(100px,12vw,165px);display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(45px,8vw,110px);align-items:center}
.process>div>p:last-child{color:var(--muted);font:16px/1.55 var(--serif);max-width:420px}
.process figure img{aspect-ratio:16/9;object-fit:cover;border-radius:30px}
.contact{padding:clamp(90px,12vw,160px) 0;border-top:1px solid var(--line);text-align:center}
.contact-flower{font:62px/1 var(--serif);color:var(--pink)}
.contact>p:not(.kicker){color:var(--muted);font:17px/1.5 var(--serif);max-width:520px;margin:20px auto 0}
.contact-links{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:34px}
.contact-links a{padding:12px 17px;border:1px solid var(--ink);border-radius:999px;background:var(--paper2);text-decoration:none;font:17px/1 var(--serif)}
.contact-links a:hover{background:var(--pink-soft)}
footer{width:min(calc(100% - var(--pad)*2),var(--max));margin:auto;padding:24px 0 34px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:10px}
.lightbox{border:0;background:transparent;padding:0;width:min(94vw,1200px);max-height:94vh}
.lightbox::backdrop{background:rgba(36,27,33,.88);backdrop-filter:blur(7px)}
.lightbox img{max-height:90vh;width:auto;max-width:100%;margin:auto;object-fit:contain}
.lightbox-close{position:fixed;top:18px;right:24px;width:44px;height:44px;border:1px solid var(--ink);border-radius:50%;background:var(--paper2);font-size:27px;color:var(--ink);cursor:pointer}
@media(max-width:900px){
  .hero{min-height:auto;grid-template-columns:1fr}
  .hero-art{max-width:680px;margin:auto}
  .world-grid{grid-template-columns:1fr}
  .world-card{display:grid;grid-template-columns:.95fr 1.05fr;align-items:center}
  .world-card>img,.clay-illustration{aspect-ratio:1/1}
  .gallery{grid-template-columns:repeat(2,1fr)}
  .art,.art.feature,.art.wide{grid-column:auto}
  .art.feature,.art.wide{grid-column:1/-1}
  .prints,.clay-card,.about,.process{grid-template-columns:1fr}
  .print-stack{max-width:650px;width:100%;margin:auto}
  .quiet-world{grid-template-columns:1fr;height:auto;min-height:0}
  .studio-strip{grid-template-columns:1fr;height:auto;min-height:0;padding:34px 24px 0;overflow:hidden}
  .quiet-image{height:360px;min-height:0}
  .studio-strip::before{left:auto;right:9%;top:28px}
  .studio-strip>img{width:min(90%,560px);height:auto;max-height:420px;min-height:0;object-fit:contain;padding:9px}
  .portrait-wrap{max-width:520px}
}
@media(max-width:650px){
  .wordmark small{display:none}
  .nav-toggle{display:block}
  .site-header{flex-wrap:wrap;align-items:flex-start}
  .site-header nav{display:none;width:100%;flex-wrap:wrap;padding-top:10px}
  .site-header nav.open{display:flex}
  h1{font-size:clamp(74px,23vw,115px)}
  .hero-art{padding:18px 6px 52px}
  .scribble{right:3%}
  .world-card{display:block}
  .split{display:block}
  .split>p{margin-top:16px}
  .gallery{grid-template-columns:1fr}
  .art,.art.feature,.art.wide{grid-column:auto}
  .art.wide img{aspect-ratio:4/5}
  .print-stack{min-height:430px}
  .stack{width:58%}
  .clay-stage{min-height:290px;transform:scale(.88);transform-origin:center}
  .quiet-image{height:300px;min-height:0}
  .quiet-copy{padding:34px 24px 42px}
  .studio-strip{padding:30px 18px 0}
  .studio-strip>img{width:min(92%,500px);height:auto;max-height:340px;min-height:0;object-fit:contain}
  .contact-links{flex-direction:column;align-items:stretch}
  footer{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .marquee div{animation:none}
  *{transition:none!important}
}
