
:root{
  --bg:#F1F0EC;--ink:#1C1B19;--mute:#5E5B55;--line:#D3D0C8;--plate:#FAF9F6;--band:#E7E5DE;
  --accent:#1C1B19;--btn-bg:#1C1B19;--btn-ink:#F1F0EC;--btn-hover:#3A3834;--focus:#1F5FBF;
  --serif:"Newsreader",Georgia,"Times New Roman",serif;
  --sans:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;
  --pad:clamp(20px,4vw,56px);
  --head:64px;
  color-scheme:light;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#141312;--ink:#ECEAE4;--mute:#A8A49B;--line:#34322E;--plate:#1F1E1C;--band:#1B1A18;
    --accent:#ECEAE4;--btn-bg:#ECEAE4;--btn-ink:#141312;--btn-hover:#CFCCC4;--focus:#8DB4FF;color-scheme:dark;
  }
  :root:not([data-theme="light"]) body.pot{
    --bg:#17141A;--ink:#EBDDED;--mute:#C7B9C9;--line:#352E38;--plate:#211C25;--band:#2A222D;
    --accent:#C9B27A;--btn-bg:#C9B27A;--btn-ink:#17141A;--btn-hover:#DCC98F;
  }
}
:root[data-theme="dark"]{
  --bg:#141312;--ink:#ECEAE4;--mute:#A8A49B;--line:#34322E;--plate:#1F1E1C;--band:#1B1A18;
  --accent:#ECEAE4;--btn-bg:#ECEAE4;--btn-ink:#141312;--btn-hover:#CFCCC4;--focus:#8DB4FF;color-scheme:dark;
}
:root[data-theme="dark"] body.pot{
  --bg:#17141A;--ink:#EBDDED;--mute:#C7B9C9;--line:#352E38;--plate:#211C25;--band:#2A222D;
  --accent:#C9B27A;--btn-bg:#C9B27A;--btn-ink:#17141A;--btn-hover:#DCC98F;
}
body.pot{
  --bg:#FEFEFE;--ink:#3A2F1A;--mute:#5A4C2C;--line:#E3DBE5;--plate:#F7F2F8;--band:#EBDDED;
  --accent:#7E6C44;--btn-bg:#7E6C44;--btn-ink:#FEFEFE;--btn-hover:#5A4C2C;
}
*,*::before,*::after{box-sizing:inherit}
html{scroll-padding-top:calc(env(safe-area-inset-top,0px) + var(--head))}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--serif);font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased;transition:background-color .5s ease,color .5s ease}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);background:var(--bg);z-index:30}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
[hidden]{display:none!important}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{padding-inline:var(--pad)}

/* header */
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;height:var(--head);display:flex;align-items:center;justify-content:space-between;gap:24px;padding-inline:var(--pad);background:var(--bg);border-bottom:1px solid var(--line);font-family:var(--sans);font-size:14.5px}
.brand{display:flex;align-items:center;min-height:44px;text-decoration:none;font-family:var(--serif);font-size:21px;letter-spacing:.01em}
.brand-home{opacity:0;pointer-events:none;transition:opacity .4s ease}
body.scrolled .brand-home,body:not([data-view="home"]) .brand-home{opacity:1;pointer-events:auto}
.brand-pot{display:none}
body.pot .brand-pot{display:flex}
body.pot .brand-home{display:none}
.logo{display:block;aspect-ratio:1003/451;background:var(--accent);-webkit-mask:url("dami-logo.png") center/contain no-repeat;mask:url("dami-logo.png") center/contain no-repeat}
.brand-pot .logo{height:38px}
.nav{display:flex;gap:clamp(14px,2.4vw,34px);flex-wrap:wrap;justify-content:flex-end}
.nav a,.nav button{display:inline-flex;align-items:center;min-height:44px;padding:0;border:0;background:none;color:var(--ink);cursor:pointer;text-decoration:none;font:inherit}
.nav a:hover,.nav button:hover{text-decoration:underline;text-underline-offset:.3em}
@media (max-width:720px){
  .top{position:static;height:auto;flex-wrap:wrap;padding-block:4px;gap:0}
  .brand{min-height:40px}
  .brand-pot .logo{height:30px}
  .nav{width:100%;flex-wrap:nowrap;overflow-x:auto;gap:4px 22px;justify-content:flex-start;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .nav::-webkit-scrollbar{display:none}
  .nav a,.nav button{flex:none;white-space:nowrap;min-height:40px}
}

/* views */

/* hero */
.hero{position:relative;height:calc(100svh - var(--head));min-height:480px;overflow:hidden;background:#0d0d0c;color:#F4F2EC}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 72%;transform:scale(1.07);opacity:0;animation:heroin 2.6s cubic-bezier(.2,.6,.2,1) .1s forwards}
.hero .tt{position:absolute;left:var(--pad);right:var(--pad);bottom:clamp(28px,6vh,64px);opacity:0;animation:fadein 1.4s ease 1s forwards}
.hero h1{margin:0;font-weight:300;font-size:clamp(44px,8.2vw,128px);line-height:1;letter-spacing:-.015em}
.hero p{margin:14px 0 0;font-family:var(--sans);font-size:15px;letter-spacing:.02em;color:#D9D6CD}
@keyframes heroin{to{transform:scale(1);opacity:1}}
@keyframes fadein{to{opacity:1}}

/* series */
.series{padding-block:clamp(72px,10vw,150px)}
.sh{display:flex;justify-content:space-between;align-items:baseline;gap:12px 40px;flex-wrap:wrap;margin-bottom:clamp(24px,3vw,44px)}
.sh h2{margin:0;font-style:italic;font-weight:300;font-size:clamp(28px,3.4vw,46px);line-height:1.15}
.sh p{margin:0;max-width:38ch;color:var(--mute);font-size:17px}
.zoom{position:relative;display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in;text-align:left}
.zoom img{width:100%}
.cap{position:absolute;left:0;bottom:0;margin:0;padding:8px 14px;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:13px;line-height:1.4;opacity:0;transition:opacity .25s ease;pointer-events:none;max-width:90%}
@media (hover:hover){.zoom:hover .cap,.zoom:focus-visible .cap{opacity:1}}
figure{margin:0}

.strip{display:flex;gap:clamp(12px,1.6vw,24px);overflow-x:auto;padding-inline:var(--pad);margin-inline:calc(var(--pad) * -1);scrollbar-width:thin;scrollbar-color:var(--line) transparent;cursor:grab;-webkit-overflow-scrolling:touch;padding-bottom:18px}
.strip.drag{cursor:grabbing;user-select:none}
.strip figure{flex:none;height:clamp(240px,60vh,560px)}
.strip .zoom{height:100%;width:auto}
.strip img{height:100%;width:auto;max-width:none;-webkit-user-drag:none}
.strip{align-items:center}
.hint{margin:14px 0 0;font-family:var(--sans);font-size:13px;color:var(--mute)}
@media (hover:none){.hint{display:none}}

.perf{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,2.2vw,36px);align-items:start}
.perf .a{grid-column:1/9}
.perf .b{grid-column:9/13;margin-top:12vw}
.perf .c{grid-column:2/6;margin-top:2vw}
@media (max-width:760px){.perf .a,.perf .b,.perf .c{grid-column:1/-1;margin-top:0}.perf .c{width:80%}}

.film{position:relative;background:#0d0d0c;margin-top:clamp(40px,7vw,110px)}
.film video{display:block;width:100%;max-height:92svh;aspect-ratio:16/9;object-fit:cover;background:#0d0d0c}
.film video.portrait{display:none;aspect-ratio:4/5}
@media (orientation:portrait){
  .film video.landscape{display:none}
  .film video.portrait{display:block}
}
.snd{position:absolute;right:var(--pad);bottom:20px;min-height:44px;padding:0 18px;border:1px solid rgba(244,242,236,.55);background:rgba(13,13,12,.55);color:#F4F2EC;font-family:var(--sans);font-size:13.5px;cursor:pointer}
.snd:hover{background:rgba(13,13,12,.8)}
.film-cap{display:flex;justify-content:space-between;gap:12px 32px;flex-wrap:wrap;padding:14px var(--pad) 0;font-family:var(--sans);font-size:13.5px;color:var(--mute)}
.film-cap a{color:var(--mute)}

.deep{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,2.2vw,36px);align-items:end}
.deep .a{grid-column:1/-1}
.deep .b{grid-column:1/5}
.deep .c{grid-column:5/9}
.deep .d{grid-column:9/13;font-size:17px;color:var(--mute);padding-bottom:4px}
@media (max-width:760px){.deep .b,.deep .c{grid-column:span 6}.deep .d{grid-column:1/-1}}
.textlink{display:inline-flex;align-items:center;min-height:44px;font-family:var(--sans);font-size:15px;color:var(--ink)}

.plate{background:var(--plate);padding:clamp(12px,2vw,28px)}
.pair{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,2.2vw,36px);align-items:start}
.pair .a{grid-column:1/8}
.pair .b{grid-column:8/13;margin-top:8vw}
@media (max-width:760px){.pair .a,.pair .b{grid-column:1/-1;margin-top:0}}
.quad{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,2vw,28px);margin-top:clamp(16px,2.2vw,36px)}
.quad img{width:100%;aspect-ratio:5/7;object-fit:cover}
@media (max-width:760px){.quad{grid-template-columns:repeat(2,minmax(0,1fr))}}
.dive{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,2.2vw,36px);align-items:center}
.dive .a{grid-column:1/8}
.dive .b{grid-column:8/13;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(10px,1.4vw,20px)}
@media (max-width:760px){.dive .a,.dive .b{grid-column:1/-1}}
.more-btn{display:inline-flex;align-items:center;min-height:44px;margin-top:28px;padding:0;border:0;background:none;font-family:var(--sans);font-size:15px;text-decoration:underline;text-underline-offset:.25em;cursor:pointer}
.more{max-width:62ch;margin-top:8px}
.more p{margin:0 0 1em}

.layer{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,2.2vw,36px);align-items:end}
.layer .a{grid-column:1/9}
.layer .b{grid-column:9/13}
@media (max-width:760px){.layer .a,.layer .b{grid-column:1/-1}}

.about{border-top:1px solid var(--line);padding-block:clamp(72px,10vw,140px)}
.about-g{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(24px,4vw,64px);align-items:center}
.about-g .img{grid-column:1/8}
.about-g .txt{grid-column:8/13}
.about h2{margin:0 0 20px;font-style:italic;font-weight:300;font-size:clamp(28px,3.4vw,46px);line-height:1.15}
.about p{margin:0 0 1em;max-width:46ch}
@media (max-width:860px){.about-g .img,.about-g .txt{grid-column:1/-1}}

.foot{border-top:1px solid var(--line);padding:36px var(--pad);display:flex;justify-content:space-between;gap:16px 40px;flex-wrap:wrap;font-family:var(--sans);font-size:14.5px;color:var(--mute)}
.foot nav{display:flex;gap:6px 28px;flex-wrap:wrap}
.foot a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 26px;border:1px solid var(--btn-bg);background:var(--btn-bg);color:var(--btn-ink);font-family:var(--sans);font-size:15px;font-weight:500;text-decoration:none;cursor:pointer}
.btn:hover{background:var(--btn-hover);border-color:var(--btn-hover);text-decoration:none}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn.ghost:hover{background:var(--band)}

/* pottery */
.pot-hero{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:calc(100svh - var(--head));padding:clamp(16px,3vw,48px);overflow:hidden}
.pot-hero .r{position:absolute;inset:0}
.pot-hero .r img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.pot-hero .l{position:relative;z-index:1;width:min(420px,100%);background:var(--band);padding:clamp(20px,2.2vw,30px) clamp(22px,2.4vw,34px) clamp(22px,2.4vw,32px);display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.pot-hero .logo{width:min(210px,62%)}
.pot-hero p.lead{margin:0;font-size:clamp(20px,1.8vw,24px);line-height:1.25;font-weight:300}
.pot-hero .btn{min-height:44px;padding:0 20px;font-size:14.5px}
.btns{display:flex;gap:10px;flex-wrap:wrap}
@media (max-width:720px){
  .pot-hero{height:calc(100svh - var(--headh,100px) - env(safe-area-inset-top,0px));min-height:430px;padding:0;display:flex;flex-direction:column;justify-content:flex-start}
  .pot-hero .r{position:relative;inset:auto;order:-1;flex:1 1 auto;min-height:150px;height:auto}
  .pot-hero .r img{position:absolute;inset:0}
  .pot-hero .l{flex:none;width:100%;padding:16px 20px 20px;gap:12px}
  .pot-hero .logo{width:150px}
  .pot-hero p.lead{font-size:20px}
}
.psec{padding-block:clamp(64px,9vw,130px)}
.psec.band{background:var(--band)}
.ph2{margin:0 0 clamp(20px,3vw,36px);font-style:italic;font-weight:300;font-size:clamp(28px,3.4vw,46px);line-height:1.15}
.cols{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(20px,3vw,56px);align-items:start}
.cols .t{grid-column:1/6}
.cols .m{grid-column:6/13}
.cols p{margin:0 0 1.1em;max-width:52ch}
@media (max-width:860px){.cols .t,.cols .m{grid-column:1/-1}}
.imgs2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,2vw,28px);margin-top:clamp(32px,5vw,64px)}
.imgs2 img{aspect-ratio:4/5;object-fit:cover;width:100%}
.makes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,44px)}
.makes h3{margin:18px 0 6px;font-weight:400;font-size:24px}
.makes p{margin:0 0 6px;color:var(--mute);font-size:17px}
.makes img{aspect-ratio:4/5;object-fit:cover;width:100%}
@media (max-width:860px){.makes{grid-template-columns:1fr}.imgs2 img{aspect-ratio:1/1}}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:center}
.split img{width:100%;aspect-ratio:4/3;object-fit:cover}
@media (max-width:860px){.split{grid-template-columns:1fr}}
.split p{margin:0 0 1.1em;max-width:48ch}
.ws-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,2vw,28px);margin-top:clamp(28px,4vw,56px)}
.ws-row img{aspect-ratio:3/4;object-fit:cover;width:100%}
@media (max-width:860px){.ws-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
.rhyme{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,2vw,28px)}
.rhyme img{width:100%;aspect-ratio:1/1;object-fit:cover}

/* pieces */
.pieces-h{padding:clamp(48px,7vw,96px) var(--pad) 24px}
.pieces-h h1{margin:0 0 10px;font-weight:300;font-size:clamp(40px,6vw,84px);line-height:1;letter-spacing:-.01em}
.pieces-h p{margin:0;max-width:46ch;color:var(--mute)}
.chips{display:flex;gap:10px;flex-wrap:wrap;padding:0 var(--pad) 8px}
.chip{min-height:44px;padding:0 20px;border:1px solid var(--line);background:transparent;color:var(--ink);font-family:var(--sans);font-size:14.5px;cursor:pointer}
.chip:hover{border-color:var(--ink)}
.chip[aria-pressed="true"]{background:var(--band);border-color:var(--accent)}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,3.5vw,56px) clamp(16px,2vw,32px);padding:clamp(24px,3vw,40px) var(--pad) clamp(64px,8vw,120px)}
@media (max-width:980px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.grid{grid-template-columns:1fr}}
.card{display:flex;flex-direction:column;gap:6px}
.card .zoom img{aspect-ratio:4/5;object-fit:cover}
.zoom.alt{display:none}
.card h3{margin:12px 0 0;font-weight:400;font-size:22px;line-height:1.25}
.card .meta{margin:0;font-family:var(--sans);font-size:14px;color:var(--mute)}
.card .price{margin:2px 0 0;font-family:var(--sans);font-size:15px}
.card .btn{align-self:flex-start;margin-top:10px}
.commission{padding:clamp(48px,7vw,96px) var(--pad);background:var(--band);display:flex;justify-content:space-between;align-items:center;gap:24px 48px;flex-wrap:wrap}
.commission h2{margin:0;font-style:italic;font-weight:300;font-size:clamp(26px,3vw,40px);line-height:1.2;max-width:22ch}


.phone{margin:16px 0 0;font-family:var(--sans);font-size:15px;color:var(--mute)}
.phone a{color:var(--ink)}
/* inquiry box */
dialog#inq{width:min(540px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:auto;padding:clamp(20px,3vw,32px);border:1px solid var(--line);background:var(--bg);color:var(--ink);font-family:var(--sans)}
dialog#inq::backdrop{background:rgba(0,0,0,.55)}
#inq h2{margin:0 0 4px;font-family:var(--serif);font-weight:300;font-size:28px;line-height:1.2}
#inq .sub{margin:0 0 16px;color:var(--mute);font-size:14.5px}
#inq label{display:block;margin:14px 0 6px;font-size:14px;font-weight:500}
#inq textarea,#inq input[type="text"],#inq input[type="email"]{width:100%;border:1px solid var(--mute);background:transparent;color:var(--ink);font:inherit;font-size:16px;padding:12px;border-radius:0}
#inq textarea{min-height:170px;resize:vertical;line-height:1.5}
#inq .btns{margin-top:18px}
#inq .btns .btn{font-size:14.5px}
#inq .status{min-height:1.5em;margin:12px 0 0;font-size:14px}
#inq .note{margin:6px 0 0;color:var(--mute);font-size:13.5px}
#inq .row{display:flex;gap:10px;align-items:stretch;margin:14px 0 18px}
#inq .row input{flex:1;min-width:0}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
/* viewer */
dialog#lb{width:100vw;height:100vh;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#121211;color:#F2F0EA;font-family:var(--sans)}
dialog#lb::backdrop{background:#121211}
.lb-in{display:flex;flex-direction:column;height:100%;padding:max(14px,env(safe-area-inset-top,0px)) clamp(14px,3vw,36px) max(14px,env(safe-area-inset-bottom,0px));gap:12px}
.lb-bar{display:flex;justify-content:space-between;align-items:center;font-size:13.5px;color:#C9C6BE}
.lb-btn{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid #5a5953;background:#121211;color:#F2F0EA;cursor:pointer;padding:0;flex:none}
.lb-btn:hover{background:#262624}
.lb-stage{flex:1;min-height:0;display:flex;align-items:center;gap:clamp(8px,2vw,24px);touch-action:pan-y}
.lb-stage img{flex:1;min-width:0;height:100%;object-fit:contain}
.lb-cap{display:flex;justify-content:space-between;align-items:flex-end;gap:12px 32px;flex-wrap:wrap;min-height:48px}
.lb-cap .t{font-family:var(--serif);font-size:20px;line-height:1.3}
.lb-cap .m{font-size:14px;color:#C9C6BE;margin-top:2px}
.lb-cap a{display:inline-flex;align-items:center;min-height:44px;padding:0 22px;border:1px solid #F2F0EA;color:#F2F0EA;text-decoration:none;font-size:14.5px}
.lb-cap a:hover{background:#262624}
@media (max-width:640px){.lb-stage .lb-btn{position:absolute;bottom:92px;z-index:2}#lb-prev{left:14px}#lb-next{right:14px}}
body.lock{overflow:hidden}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .hero img{opacity:1;transform:none}.hero .tt{opacity:1}
}

html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.skip{position:absolute;left:-999px;top:8px;z-index:100;background:var(--bg);color:var(--ink);padding:10px 14px;font-family:var(--sans);font-size:14px}
.skip:focus{left:8px}
.thanks{min-height:70svh;display:flex;flex-direction:column;justify-content:center;gap:18px;padding:var(--pad)}
.thanks h1{margin:0;font-weight:300;font-size:clamp(34px,5vw,60px);line-height:1.05}
.thanks p{margin:0;max-width:44ch;color:var(--mute)}

/* Remove Netlify badge and popup */
.nl-wrap,
#nl-badge,
.nl-badge,
#nl-card,
.nl-card {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

#nl-badge-frame,
iframe#nl-badge-frame,
iframe[id*="nl-"],
iframe[src*="hud"] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}