/* Real photographs over a monochrome woodland backdrop. */
:root{color-scheme:dark;--paper:#f4f3ef;--ink:#101010;--muted:#c4c4bf;--line:#ffffff26;--sans:'Helvetica Neue','Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--ink);color:var(--paper);font:1rem/1.65 var(--sans);isolation:isolate}body::before{content:"";position:fixed;inset:0;z-index:-1;filter:grayscale(1);background:linear-gradient(#0808089e,#080808bf),url('/assets/jotform-forest.jpg') center top/cover no-repeat;pointer-events:none}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;border:0}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid #fff;outline-offset:5px}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3{margin:0}h1,h2,h3{font-weight:500}h2{font-size:clamp(2.3rem,4.3vw,4.1rem);line-height:1.07;letter-spacing:-.045em}h3{line-height:1.3}button[hidden],figure[hidden]{display:none}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:1rem;background:var(--paper);color:var(--ink);padding:1rem;z-index:30}.skip-link:focus{top:1rem}
.site-header{max-width:1480px;margin:auto;padding:25px 4.5%;display:flex;align-items:center;justify-content:space-between;gap:2rem;background:#0e0e0e9c;border-bottom:1px solid var(--line)}.wordmark{display:inline-flex;align-items:center;gap:15px;line-height:1.2;flex-shrink:0}.brand-symbol{width:53px;height:53px;object-fit:contain}.wordmark-type{display:flex;flex-direction:column}.wordmark-type>span:first-child{font-size:1.3rem;letter-spacing:.15em;font-weight:600}.wordmark-sub{font-size:.7rem;letter-spacing:.11em;margin-top:7px;color:var(--muted)}nav{display:flex;align-items:center;gap:1.9rem}nav a{font-size:.875rem}nav a:hover{text-decoration:underline;text-underline-offset:6px}.nav-book{min-height:46px}.menu-toggle{display:none}
.hero{max-width:1480px;margin:auto;padding:0 4.5% 45px}.hero-brand{position:relative;top:-24px}.hero-copy{padding:62px 0 43px;display:grid;grid-template-columns:1.6fr 1fr;align-items:center;gap:9%}.eyebrow{font-size:.72rem;letter-spacing:.13em;line-height:1.6;color:var(--muted);font-weight:500}.hero h1{margin-top:16px}.hero h1 img{width:min(100%,660px);height:auto}.hero-line{font-size:clamp(1.65rem,2.8vw,2.7rem);letter-spacing:-.035em;line-height:1.16;margin-bottom:17px}.hero-description{max-width:360px;color:#efefed;margin-bottom:24px;font-size:1rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:52px;padding:13px 24px;font-size:.875rem;border:1px solid #ffffff70;background:transparent;transition:background .2s,color .2s}.button-light{color:var(--ink);background:var(--paper);border-color:var(--paper)}.button:hover{background:#fff;color:var(--ink);border-color:#fff}.hero-art{box-shadow:0 18px 55px #0004}.hero-art img{width:100%;height:auto;aspect-ratio:2/1;object-fit:contain}.hero-art figcaption{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.3rem 1rem;font-size:.69rem;letter-spacing:.065em;color:var(--muted);padding:14px 0;background:#0d0d0d88}
.section-wrap{max-width:1348px;margin:26px auto 0;padding:75px 54px}.panel{background:#101010e6;border:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:34px}.section-heading h2{margin-top:17px}.section-heading>p{font-size:.91rem;color:var(--muted);max-width:340px}.gallery-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:32px;padding-bottom:22px;border-bottom:1px solid var(--line)}.gallery-filters{display:flex;gap:8px;flex-wrap:wrap}.gallery-count{font-size:.77rem;color:var(--muted)}
.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 23px}.gallery-item{min-width:0}.gallery-open{display:block;background:#1c1c1c;width:100%;padding:0;overflow:hidden;position:relative;text-align:left}.gallery-open img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:50% 50%;transition:transform .45s ease}.gallery-open:hover img{transform:scale(1.025)}.image-action{position:absolute;bottom:0;left:0;width:100%;padding:32px 17px 12px;background:linear-gradient(transparent,#050505ba);font-size:.77rem;color:#fff;display:flex;justify-content:space-between;align-items:center}.gallery-item figcaption{padding-top:13px;display:flex;flex-direction:column;gap:3px}.gallery-item h3{font-size:.97rem;letter-spacing:-.015em}.gallery-item figcaption>span{font-size:.76rem;color:var(--muted)}.text-link{display:inline-flex;align-items:center;gap:12px;padding-bottom:4px;border-bottom:1px solid #ffffff70;font-size:.875rem;transition:border-color .2s}.text-link:hover{border-color:#fff}.gallery-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;margin-top:38px}.load-more{min-width:200px}
.about{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.portrait-wrap{position:relative}.portrait-wrap img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 60%}.photo-caption{display:block;font-size:.7rem;letter-spacing:.09em;margin-top:13px;color:var(--muted)}.artist-wordmark{width:min(100%,340px);height:auto;margin:18px 0 19px}.about h2{font-size:clamp(2rem,3.4vw,3.4rem);margin:0 0 22px}.about-copy>p:not(.eyebrow){color:var(--muted);margin-top:20px;max-width:470px}.about-copy>p.lead{font-size:1.25rem;line-height:1.5;color:var(--paper);letter-spacing:-.02em}.artist-details{display:flex;gap:43px;border-top:1px solid var(--line);margin-top:30px;padding-top:24px;flex-wrap:wrap}.artist-details span{font-size:1.85rem;letter-spacing:-.035em;line-height:1.2}.artist-details p{font-size:.79rem;color:var(--muted);margin-top:7px}
.studio-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:center}.studio-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 65%}.studio-photo figcaption{font-size:.78rem;color:var(--muted);padding-top:13px}.studio-copy{max-width:390px}.studio-symbol{width:85px;height:85px;object-fit:contain;margin-bottom:25px;opacity:.85}.studio-copy h3{font-size:clamp(2rem,3.3vw,3rem);line-height:1.12;letter-spacing:-.04em;margin-bottom:24px}.studio-copy p{color:var(--muted);margin-bottom:20px}.studio-copy .text-link{margin-top:15px}
.booking{background:#0d0d0dbe;padding-top:75px;padding-bottom:80px}.booking-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:8%;align-items:center;margin-top:26px}.booking h2{font-size:clamp(2.6rem,5vw,4.6rem)}.booking h2 span{color:#c2c2bb}.booking-grid>div>p:first-child{max-width:390px;color:#d4d4ce;margin-bottom:0}.booking-note{font-size:.84rem;color:var(--muted);margin-top:17px}.site-footer{max-width:1480px;margin:auto;padding:38px 4.5%;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;background:#08080880}.site-footer .brand-symbol{width:44px;height:44px}.site-footer>p{font-size:.73rem;color:var(--muted)}
dialog{border:1px solid #ffffff40;background:var(--ink);color:var(--paper);width:min(1120px,96vw);max-width:96vw;max-height:96dvh;padding:20px 24px}dialog::backdrop{background:#080808ef}.lightbox-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:15px}.lightbox-top h2{font-size:1rem;letter-spacing:0;line-height:1.5}.lightbox-top button{background:transparent;padding:8px 4px;min-height:44px}.lightbox-top button span{font-size:1.25rem;margin-left:8px}.lightbox-stage{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:12px;align-items:center}.lightbox-stage img{margin:auto;width:auto;height:auto;max-height:76dvh;max-width:100%;object-fit:contain}.lightbox-arrow{background:#ffffff12;border:1px solid #ffffff36;width:44px;height:50px;font-size:1.3rem}.lightbox-arrow:hover{background:#ffffff28}#lightbox-count{text-align:center;font-size:.8rem;color:var(--muted);margin-top:12px}
@media(min-width:1480px){.hero-copy{padding-top:77px}.hero-art figcaption{padding-left:14px;padding-right:14px}}
@media(max-width:1100px){.section-wrap{margin:24px 3%;padding:60px 4%}.site-header{gap:1rem}nav{gap:1.1rem}.hero-copy{gap:6%;grid-template-columns:1.35fr 1fr}.about{gap:6%}.artist-details{gap:25px}.studio-grid{gap:7%}}
@media(max-width:760px){html{scroll-padding-top:18px}.site-header{position:relative;padding:18px 5%;gap:12px;flex-wrap:wrap}.brand-symbol{width:44px;height:44px}.wordmark{gap:11px}.wordmark-type>span:first-child{font-size:1.12rem}.wordmark-sub{font-size:.62rem}.menu-toggle{display:flex;align-items:center;gap:14px;background:transparent;padding:10px 0 10px 10px;min-height:44px;font-size:.85rem}.menu-toggle span{font-size:1.3rem}nav{display:none;flex-basis:100%;padding:22px 0 5px;border-top:1px solid var(--line);gap:16px}nav.is-open{display:flex;flex-direction:column;align-items:stretch}nav a{padding:7px 0}.nav-book{justify-content:center}.hero{padding:0 5% 24px}.hero-copy{display:block;padding:42px 0 30px}.hero-brand{top:-16px}.hero h1{margin-top:13px}.hero h1 img{width:min(100%,520px)}.hero-intro{margin-top:25px;display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;align-items:start}.hero-line{font-size:1.9rem;margin-bottom:0}.hero-description{font-size:.93rem;margin-bottom:0}.hero-intro .booking-button{grid-column:1/-1;justify-self:start}.hero-art figcaption{font-size:.59rem;padding-top:11px}.section-wrap{margin:18px 3%;padding:45px 5%}.section-heading{display:block;margin-bottom:27px}.section-heading>p{margin-top:19px}.gallery-tools{gap:16px;margin-bottom:24px;padding-bottom:18px}.gallery-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:8px}.gallery-filters .booking-button{min-width:0}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 13px}.gallery-item h3{font-size:.88rem}.gallery-item figcaption>span{font-size:.68rem}.image-action{font-size:.67rem;padding:28px 11px 9px}.gallery-bottom{gap:22px;margin-top:29px}.load-more{width:100%}.about{display:block}.portrait-wrap{max-width:500px;margin:auto}.about-copy{margin-top:35px}.artist-wordmark{width:290px}.about-copy>p.lead{font-size:1.18rem}.studio-grid{display:block}.studio-photo{max-width:500px;margin:auto}.studio-copy{margin-top:32px;max-width:none}.studio-symbol{width:60px;height:60px;margin-bottom:20px}.booking-grid{display:block}.booking-grid>div{margin-top:25px}.booking .button{width:100%}.site-footer{padding:28px 5%;gap:23px}.site-footer>p{order:3;flex-basis:100%}dialog{padding:12px;max-height:96dvh}.lightbox-stage{grid-template-columns:36px minmax(0,1fr) 36px;gap:6px}.lightbox-arrow{width:36px;height:46px}.lightbox-stage img{max-height:71dvh}}
@media(max-width:390px){.gallery{grid-template-columns:1fr}.hero-intro{display:block}.hero-description{margin-top:15px}.hero-intro .booking-button{margin-top:21px}.gallery-item figcaption{flex-direction:row;flex-wrap:wrap;gap:5px 12px}.artist-details{gap:34px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}


/* Booking opens the existing JotForm within the page. */
.booking-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 26px;border:1px solid #ebe9e1;border-radius:8px;background:var(--paper);color:var(--ink);font-size:.9rem;font-weight:600;line-height:1.4;letter-spacing:.015em;text-align:center;text-decoration:none;cursor:pointer;touch-action:manipulation;box-shadow:0 4px 16px #0002;transition:background .2s,box-shadow .2s}
nav a.booking-button{min-height:46px;padding:11px 22px;font-size:.85rem}
.booking-button:hover{background:#fff;color:var(--ink);text-decoration:none;box-shadow:0 6px 22px #0003}
.booking-button:active{background:#e6e4dc;box-shadow:none}
.booking-button:focus-visible{outline:2px solid #fff;outline-offset:5px}
.gallery-filters .booking-button[aria-pressed="true"]{box-shadow:inset 0 0 0 2px var(--ink),0 4px 16px #0002}
.booking-request{margin-top:26px;scroll-margin-top:24px}
.booking-request>summary{margin-left:60%;width:fit-content;list-style:none}
.booking-request>summary::marker{content:""}
.booking-request>summary::-webkit-details-marker{display:none}
.booking-label-open,.booking-request[open] .booking-label-closed{display:none}
.booking-request[open] .booking-label-open{display:inline}
.booking-form-panel{margin-top:28px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#171719}
.booking-form-panel iframe{display:block;width:100%;height:1100px;border:0;background:#171719}
.booking-form-direct{padding:16px 20px;text-align:center;font-size:.82rem;color:var(--muted)}
.booking-form-direct a{text-decoration:underline;text-underline-offset:4px}
.booking-note{margin-left:60%}
@media(max-width:760px){nav a.booking-button{min-height:52px;width:100%;padding:13px 22px}.studio-copy .booking-button{width:100%;margin-top:12px}.booking-request>summary{width:100%;margin-left:0}.booking-note{margin-left:0}.booking-form-panel{margin-top:22px;border-radius:8px}.booking-form-direct{padding:15px}}

/* Interview link beside the artist introduction. */
.artist-interview{display:flex;align-items:center;flex-wrap:wrap;gap:14px 20px;margin-top:28px}
@media(max-width:760px){.artist-interview{flex-direction:column;align-items:stretch;gap:12px}.artist-interview .booking-button{width:100%}}

/* Grade the original lotus photograph consistently in the gallery and lightbox. */
.gallery-open[data-full$="/img-7380.webp"] img,
#lightbox-image[src$="/img-7380.webp"]{filter:grayscale(.92) contrast(1.025)}
