:root{--blue:#f5dce3;--paper:#fffaf8;--ink:#482c3c;--pink:#f9e8ed;--yellow:#704052}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #e64d47;outline-offset:5px}header{display:flex;justify-content:space-between;align-items:center;padding:26px 5%;border-bottom:1px solid #482c3c25}.wordmark{font-size:23px;font-weight:700;letter-spacing:-.8px}.wordmark span{display:block;font-size:9px;letter-spacing:2.5px;margin-top:7px;font-weight:400}nav{display:flex;gap:34px;font-size:14px}.hero{display:grid;grid-template-columns:1fr 1fr;background:var(--blue);color:var(--paper);padding:65px 5% 40px;gap:5%;min-height:760px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:2px}.hero h1{font-size:clamp(80px,8.7vw,150px);line-height:.97;letter-spacing:-7px;margin:70px 0 30px;font-weight:500}em{font-family:Georgia,serif;font-weight:400}.hero h1 em{color:var(--yellow)}.intro{font-size:19px;line-height:1.5}.pill{display:inline-flex;background:var(--yellow);color:var(--ink);padding:19px 26px;border-radius:50px;gap:60px;margin-top:22px;font-size:14px}.hero-name{display:block;font-size:9px;letter-spacing:2px;margin-top:65px}.hero-art{position:relative;align-self:center;padding:0 0 25px}.hero-art img{width:100%;display:block;transform:rotate(2deg);box-shadow:10px 12px 0 #d8aab9}.art-note{display:block;font-family:Georgia,serif;font-style:italic;text-align:right;font-size:15px;margin-top:30px}.works{padding:95px 5% 100px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:55px}.section-head h2{font-size:60px;font-weight:500;letter-spacing:-3px;margin:14px 0 0}.dot{color:#df4057}.section-head>p{font-size:14px;line-height:1.7;margin:0}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:45px 30px;align-items:start}.art{display:block;background:transparent;border:0;padding:0;text-align:left;color:var(--ink);width:100%}.art img{display:block;width:100%;height:auto;transition:transform .25s}.art:hover img{transform:translateY(-5px)}.art>span{display:flex;justify-content:space-between;margin-top:14px;font-size:10px;letter-spacing:1px}.about{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding:85px 9%;background:var(--pink);align-items:center}.about-art img{width:100%;max-height:640px;object-fit:contain;display:block}.about-copy h2{font-size:43px;font-weight:500;letter-spacing:-1.7px;line-height:1.15;margin:26px 0}.about-copy>p:not(.eyebrow){font-size:16px;line-height:1.8;max-width:430px}.signature{display:block;font:italic 28px Georgia,serif;margin:30px 0}.text-link{display:inline-block;font-size:13px;border-bottom:1px solid;padding-bottom:8px}.contact{background:var(--blue);color:var(--paper);padding:90px 7% 100px}.contact h2{font-size:clamp(62px,7.5vw,120px);font-weight:400;line-height:1;letter-spacing:-4px;margin:35px 0 65px}.contact em{color:var(--yellow)}.contact-links{display:flex;gap:10%;flex-wrap:wrap}.contact-links a{font-size:clamp(17px,2vw,25px);padding:15px 0}.contact-links small{display:block;font-size:10px;letter-spacing:2px;color:var(--yellow);margin-bottom:15px}footer{display:flex;justify-content:space-between;padding:26px 5%;font-size:12px;border-top:9px solid var(--yellow)}dialog{border:0;background:#12182a;color:white;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;padding:20px 4%;margin:0}dialog::backdrop{background:#12182a}dialog[open]{display:flex;flex-direction:column;align-items:center}.viewer-bar,.viewer-bottom{width:100%;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px;flex-shrink:0;min-height:45px}dialog button{background:transparent;color:white;border:1px solid #ffffff66;border-radius:30px;padding:11px 18px}#full-art{min-height:0;flex:1;max-width:100%;width:100%;object-fit:contain;padding:15px 0}.viewer-bottom{margin-top:5px}.viewer-bottom span{color:#b9bdca}@media(max-width:800px){header{padding:22px 5%}.wordmark{font-size:19px}nav{gap:18px;font-size:12px}.hero{grid-template-columns:1fr;padding-top:35px;gap:45px}.hero h1{margin-top:45px;font-size:100px;letter-spacing:-5px}.hero-name{margin-top:35px}.hero-art{width:90%;margin:0 auto 15px}.hero-art img{max-height:630px;object-fit:contain;transform:rotate(1deg)}.gallery{grid-template-columns:repeat(2,1fr);gap:30px 18px}.works{padding:65px 5%}.section-head{display:block;margin-bottom:35px}.section-head h2{font-size:45px;margin-bottom:20px}.about{padding:55px 7%;gap:35px;grid-template-columns:1fr}.about-art img{max-height:520px}.about-copy h2{font-size:37px}.contact{padding:65px 6%}.contact h2{letter-spacing:-2px}.contact-links{display:block}.contact-links a{display:block;margin-top:20px}.viewer-bottom span{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* A brief, non-blocking artwork-led arrival. CSS leaves the page usable if scripts fail. */
.opening{position:fixed;inset:0;z-index:1000;background:#f5dce3;color:#fffaf8;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;animation:opening-away .65s cubic-bezier(.76,0,.24,1) 1.25s forwards}
.opening-art{width:clamp(100px,18vw,190px);height:clamp(100px,18vw,190px);overflow:hidden;border-radius:50%;box-shadow:0 0 0 7px #704052;animation:art-arrive 1.2s cubic-bezier(.2,.7,.2,1) both}
.opening-art img{width:100%;height:100%;object-fit:cover}
.opening-name{font-size:clamp(25px,5vw,49px);letter-spacing:-1px;margin-top:32px;animation:opening-rise .7s .15s both}
.opening-subtitle{font:italic 22px Georgia,serif;color:#704052;margin-top:10px;animation:opening-rise .7s .3s both}
.opening-line{height:2px;width:100px;background:#704052;margin-top:30px;transform-origin:left;animation:line-draw 1.1s .1s both}
.hero-copy{animation:hero-arrive .85s 1.45s both}.hero-art{animation:hero-arrive 1s 1.6s both}
@keyframes opening-away{to{transform:translateY(-100%);visibility:hidden}}
@keyframes art-arrive{from{opacity:0;transform:scale(.7) rotate(-12deg)}to{opacity:1;transform:scale(1) rotate(0)}}
@keyframes opening-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes line-draw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes hero-arrive{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.opening{display:none}.hero-copy,.hero-art{animation:none}}

.about-copy details{font-size:16px;line-height:1.8;max-width:430px}.about-copy summary{cursor:pointer;text-decoration:underline;text-underline-offset:5px;font-size:14px}.practice{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding:85px 9%;background:#fffaf8}.practice h2{font-size:43px;font-weight:500;letter-spacing:-1.7px;line-height:1.15}.practice p:not(.eyebrow){font-size:16px;line-height:1.8;margin:0 0 23px}@media(max-width:800px){.practice{grid-template-columns:1fr;padding:55px 7%;gap:20px}.practice h2{font-size:37px}}

.art>.art-caption{align-items:baseline;gap:12px;letter-spacing:0}.art-name{font-size:18px;font-weight:500;line-height:1.35}.art-number{white-space:nowrap;font-size:11px}.art>.art-facts{display:block;margin-top:7px;font-size:12px;line-height:1.7;letter-spacing:0;color:#515565}.viewer-details{flex-shrink:0;width:100%;text-align:center;padding:4px 0 12px}.viewer-details h2{font-size:20px;font-weight:500;margin:0 0 6px}.viewer-details p{font-size:12px;color:#cbd0de;margin:0;line-height:1.5}#full-art{padding-bottom:10px}@media(max-width:600px){.art-name{font-size:16px}.art>.art-facts{font-size:11px}.viewer-details h2{font-size:17px}}

.hero,.contact,.opening{color:#482c3c}.hero h1 em,.contact em{color:#875268}.pill{background:#704052;color:#fffaf8}.contact-links small,.opening-subtitle{color:#704052}.opening-art{box-shadow:0 0 0 7px #fffaf8}.opening-art img{object-position:32% 40%}.opening-line{background:#875268}.dot{color:#a45e7b}header{border-bottom-color:#482c3c25}.opening-name{font-family:Georgia,serif}.art>.art-facts{color:#6a5360}

/* Editorial gallery and immersive artwork viewing. */
h1,h2,.art-name{font-family:Georgia,'Times New Roman',serif}.hero h1{letter-spacing:-5px}.section-head h2{letter-spacing:-2px}.wordmark{font-family:Georgia,serif;font-weight:400;letter-spacing:-.6px}.wordmark span{font-family:Arial,sans-serif}.hero-art img{box-shadow:14px 18px 0 #d8aab95c}.gallery{gap:55px 36px}.art{position:relative}.art img{transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .55s}.art:hover img{transform:translateY(-6px);box-shadow:0 16px 35px #482c3c18}.art-name{font-size:21px}.art-number{color:#875268}.social-account{display:flex;gap:12px;align-items:center}.instagram-icon{width:27px;height:27px;flex-shrink:0}.contact-links a{transition:opacity .2s}.contact-links a:hover{opacity:.7}.will-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.will-reveal.revealed{opacity:1;transform:none}
dialog{background:#261e26;color:#fffaf8;padding:16px 4%;overflow:hidden}dialog::backdrop{background:#261e26}dialog[open]{animation:viewer-open .3s ease}.viewer-bar{letter-spacing:1.5px;font-size:10px}.art-stage{position:relative;display:flex;align-items:center;justify-content:center;flex:1;min-height:0;width:100%;overflow:hidden;margin:8px 0 12px}.art-stage #full-art{flex:none;display:block;width:100%;height:100%;max-height:100%;object-fit:contain;padding:0;min-height:0}.art-stage #zoom{position:absolute;right:12px;bottom:12px;background:#261e26d9;backdrop-filter:blur(8px);font-size:12px}.art-stage.zoomed{display:block;overflow:auto}.art-stage.zoomed #full-art{width:180%;height:auto;max-width:none;max-height:none;object-fit:initial}.art-stage.zoomed #zoom{position:sticky;bottom:12px;left:12px}.viewer-details h2{font-size:27px;font-weight:400}.viewer-details p{color:#d2bfcb}.viewer-bottom span{font-size:11px;color:#d2bfcb}.viewer-bottom button,dialog #close{border-color:#ffffff30;transition:background .2s}dialog button:hover{background:#ffffff15}.filmstrip{display:flex;gap:8px;flex-shrink:0;max-width:100%;overflow-x:auto;padding:15px 2px 3px;min-height:72px}.filmstrip button{padding:3px;border-radius:3px;width:46px;min-width:46px;height:56px;border:1px solid transparent;opacity:.55;transition:opacity .2s,border-color .2s}.filmstrip button[aria-pressed=true]{opacity:1;border-color:#f4c8d7}.filmstrip img{width:100%;height:100%;object-fit:cover}.viewer-details{padding-bottom:4px}@keyframes viewer-open{from{opacity:0}to{opacity:1}}@media(max-width:600px){.gallery{gap:32px 18px}.art-name{font-size:17px}.viewer-details h2{font-size:21px}.viewer-details p{font-size:11px}.filmstrip{min-height:64px;padding-top:10px}.filmstrip button{height:48px;min-width:38px;width:38px}.viewer-bar{font-size:9px}.hero h1{letter-spacing:-4px}}@media(prefers-reduced-motion:reduce){.will-reveal{opacity:1;transform:none;transition:none}dialog[open]{animation:none}}

/* Direct manipulation: no scrolling canvas or image scrollbars. */
.art-stage,.art-stage.zoomed{display:flex;overflow:hidden;touch-action:none;cursor:zoom-in;isolation:isolate}.art-stage.is-zoomed{cursor:grab}.art-stage.dragging.is-zoomed{cursor:grabbing}.art-stage #full-art{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;transform-origin:center;user-select:none;pointer-events:none;transition:transform .2s ease}.art-stage.dragging #full-art{transition:none}.zoom-controls{display:flex;flex-shrink:0;gap:8px;align-items:center;justify-content:center;margin:8px 0;font-size:12px}.zoom-controls button{min-width:44px;min-height:44px;padding:8px 14px}.zoom-controls output{min-width:48px;text-align:center;font-variant-numeric:tabular-nums}.zoom-controls span{font-size:11px;color:#d2bfcb;margin-left:10px}dialog button:disabled{opacity:.3;cursor:default}.filmstrip{scrollbar-width:none}.filmstrip::-webkit-scrollbar{display:none}nav a,.text-link{transition:color .25s ease,opacity .25s ease}nav a:hover,.text-link:hover{color:#a45e7b}.pill{transition:transform .3s ease,box-shadow .3s ease}.pill:hover{transform:translateY(-2px);box-shadow:0 8px 22px #70405225}section{scroll-margin-top:25px}.hero-art img{transition:transform .7s ease}.hero-art:hover img{transform:rotate(0deg)}.contact-links a{overflow-wrap:anywhere}dialog{height:100vh;height:100dvh;padding-bottom:max(12px,env(safe-area-inset-bottom));padding-top:max(12px,env(safe-area-inset-top))}.viewer-details{max-width:100%;overflow-wrap:anywhere}.viewer-details h2{font-size:clamp(17px,2.3vw,27px)}.viewer-bottom button,#close{min-height:44px}.filmstrip button{min-width:44px}.art-stage{min-height:90px}header,main,section{min-width:0}@media(max-width:420px){header{gap:14px;flex-wrap:wrap}nav{width:100%;justify-content:space-between}.hero h1{font-size:clamp(68px,21vw,90px)}.zoom-controls span{display:none}.viewer-bar{letter-spacing:.8px}.viewer-details p{font-size:10px}.viewer-bottom{min-height:44px}.contact h2{font-size:clamp(44px,12vw,62px)}.gallery{gap:30px 14px}}@media(max-height:550px) and (orientation:landscape){dialog{padding:8px 4%}.viewer-details h2{font-size:17px}.viewer-details p{font-size:10px}.viewer-details{padding:0}.filmstrip{display:none}.zoom-controls{position:absolute;right:5%;top:60px;flex-direction:column;z-index:3}.zoom-controls span{display:none}.viewer-bottom{min-height:38px}.viewer-bar{min-height:38px}.art-stage{margin:0 0 4px}.viewer-bottom button,#close{min-height:36px;padding:7px 15px}}@media(hover:none){.art:hover img{transform:none;box-shadow:none}.pill:hover{transform:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.opening{display:none!important}.will-reveal{opacity:1!important;transform:none!important}}

.email-icon{width:27px;height:27px;flex-shrink:0}.social-account>span{min-width:0}.contact-links .social-account{gap:12px;line-height:1.5}.contact-links .social-account>span:first-of-type{overflow-wrap:anywhere}.will-reveal{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.2,.65,.3,1) var(--reveal-delay,0ms),transform .8s cubic-bezier(.2,.65,.3,1) var(--reveal-delay,0ms)}.will-reveal.revealed{opacity:1;transform:translateY(0)}.section-head h2,.contact>h2,.practice h2,.about-copy h2{text-wrap:balance}.section-head .eyebrow::before,.practice .eyebrow::before,.about-copy>.eyebrow::before,.contact>.eyebrow::before{content:'';display:inline-block;width:28px;height:1px;vertical-align:middle;background:currentColor;margin-right:12px;opacity:.55}.contact-links a:hover .email-icon,.contact-links a:hover .instagram-icon{transform:translateY(-2px)}.email-icon,.instagram-icon{transition:transform .3s ease}@media(prefers-reduced-motion:reduce){.will-reveal{opacity:1!important;transform:none!important;transition:none!important}}
