*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0a0a0a;--bg2: #141414;--surface: #1a1a1a;--border: #2a2a2a;--text: #e8e4df;--text2: #a8a29e;--accent: #c9a96e;--accent-dim: #b8944f;--font: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-display: "Playfair Display", Georgia, serif;--max-w: 1200px;--gap: clamp(16px, 3vw, 32px)}html{scroll-behavior:smooth}body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%;height:auto}a{color:var(--accent);text-decoration:none;transition:opacity .2s}a:hover{opacity:.8}h1,h2,h3{font-family:var(--font-display);font-weight:400;letter-spacing:.02em}h1{font-size:clamp(2.5rem,6vw,4.5rem);line-height:1.1}h2{font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.2;margin-bottom:1rem}h3{font-size:1.1rem}nav{position:fixed;top:0;left:0;right:0;z-index:100;background:#0a0a0ad9;backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}.nav-inner{max-width:var(--max-w);margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:16px var(--gap)}.nav-brand{font-family:var(--font-display);font-size:1.1rem;color:var(--text);letter-spacing:.1em;text-transform:uppercase}.nav-links{display:flex;gap:28px;list-style:none}.nav-links a{font-size:.85rem;color:var(--text2);letter-spacing:.08em;text-transform:uppercase;transition:color .2s}.nav-links a:hover,.nav-links a.active{color:var(--accent);opacity:1}.nav-toggle{display:none;background:none;border:none;color:var(--text);font-size:1.5rem;cursor:pointer}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:var(--gap);background:linear-gradient(#0a0a0a8c,#0a0a0ab3),url(/images/artwork_00.jpg) center/cover no-repeat;position:relative}.hero-content{max-width:700px;position:relative;z-index:1}.hero h1{margin-bottom:1rem;text-shadow:0 2px 20px rgba(0,0,0,.6)}.hero-sub{font-size:clamp(1rem,2vw,1.25rem);color:var(--text2);font-family:var(--font-display);font-style:italic;text-shadow:0 1px 8px rgba(0,0,0,.5)}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}.photo-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:2px;cursor:pointer;transition:transform .3s,opacity .3s}.photo-grid img:hover{transform:scale(1.02);opacity:.85}.series-header{min-height:60vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:var(--gap);position:relative;overflow:hidden}.series-header-bg{position:absolute;inset:0;background-size:cover;background-position:center}.series-header-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(#0a0a0a80,#0a0a0acc)}.series-header-content{position:relative;z-index:1;max-width:700px}.series-header-content h1{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.5rem);margin-bottom:.5rem;text-shadow:0 2px 20px rgba(0,0,0,.6)}.hero-line{width:60px;height:1px;background:var(--accent);margin:1.5rem auto}.hero-cta{display:inline-block;margin-top:1.5rem;padding:12px 32px;border:1px solid var(--accent);color:var(--accent);font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;transition:all .3s}.hero-cta:hover{background:var(--accent);color:var(--bg);opacity:1}section{padding:clamp(60px,10vw,120px) var(--gap)}.section-inner{max-width:var(--max-w);margin:0 auto}.section-title{text-align:center;margin-bottom:clamp(40px,6vw,80px)}.section-title h2{color:var(--text)}.section-title .st-line{width:40px;height:1px;background:var(--accent);margin:12px auto 0}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.gallery-item{position:relative;overflow:hidden;border-radius:4px;background:var(--surface);cursor:pointer;transition:transform .3s}.gallery-item:hover{transform:translateY(-4px)}.gallery-item img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .5s}.gallery-item:hover img{transform:scale(1.03)}.gallery-info{padding:12px 14px}.gallery-info h3{font-size:.95rem;font-weight:500;color:var(--text);margin-bottom:2px}.gallery-info p{font-size:.75rem;color:var(--text2)}.lightbox{display:none;position:fixed;inset:0;z-index:200;background:#000000f2;align-items:center;justify-content:center;padding:var(--gap);cursor:pointer}.lightbox.open{display:flex}.lightbox img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:4px}.lightbox-info{position:absolute;bottom:20px;left:50%;transform:translate(-50%);text-align:center;color:var(--text2);font-size:.85rem}.lightbox-close{position:absolute;top:20px;right:24px;font-size:2rem;color:var(--text2);background:none;border:none;cursor:pointer;transition:color .2s}.lightbox-close:hover{color:var(--text)}.bio-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,64px);align-items:start}.bio-text p{color:var(--text2);font-size:1rem;line-height:1.8;margin-bottom:1.5rem}.bio-text p:first-of-type:first-letter{font-family:var(--font-display);font-size:3rem;float:left;line-height:1;margin-right:8px;color:var(--accent)}.cv-section{margin-bottom:2.5rem}.cv-section h3{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem;padding-bottom:8px;border-bottom:1px solid var(--border)}.cv-item{display:flex;gap:16px;padding:8px 0;font-size:.9rem;color:var(--text2)}.cv-year{color:var(--text);font-weight:500;flex-shrink:0;width:40px}.contact-section{text-align:center;background:var(--bg2)}.contact-section p{color:var(--text2);font-size:1.1rem;margin-bottom:1.5rem}.contact-email{font-family:var(--font-display);font-size:clamp(1.2rem,3vw,1.8rem);color:var(--accent)}footer{padding:24px var(--gap);text-align:center;border-top:1px solid var(--border);font-size:.75rem;color:var(--text2)}@media(max-width:768px){.nav-links{display:none;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:#0a0a0af2;padding:16px var(--gap);gap:16px;border-bottom:1px solid var(--border)}.nav-links.open{display:flex}.nav-toggle{display:block}.bio-grid{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}.gallery-info{padding:8px 10px}.gallery-info h3{font-size:.8rem}}
