@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,400&family=Instrument+Serif:ital@0;1&display=swap";.header{position:fixed;top:0;left:0;width:100%;padding:1.35rem 0;background:transparent;z-index:100;transition:background .35s ease,padding .35s ease,color .35s ease}.header.scrolled{background:#efefebe6;-webkit-backdrop-filter:blur(14px) grayscale(1);backdrop-filter:blur(14px) grayscale(1);padding:.9rem 0;border-bottom:1px solid var(--line)}.header.on-hero:not(.scrolled) .brand span,.header.on-hero:not(.scrolled) .nav-link{color:var(--fog)}.header.on-hero:not(.scrolled) .hamburger-line{background-color:var(--fog)}.nav-container{display:flex;justify-content:space-between;align-items:center;max-width:var(--max-width);margin:0 auto;padding:0 2rem}.brand span{font-family:var(--font-heading);font-size:1.65rem;color:var(--ink);cursor:pointer;letter-spacing:-.02em}.nav-links{display:flex;gap:2.5rem;align-items:center}.nav-link{font-family:var(--font-body);font-size:.92rem;color:var(--muted);font-weight:500;position:relative}.nav-link:hover{color:var(--ink)}.header.on-hero:not(.scrolled) .nav-link:hover{color:var(--fog)}.nav-link:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background-color:currentColor;transition:width .3s var(--ease-out)}.nav-link:hover:after{width:100%}.mobile-menu-btn{display:none;flex-direction:column;gap:6px;background:none;border:none;cursor:pointer;z-index:101;padding:4px}.hamburger-line{width:22px;height:1.5px;background-color:var(--ink);transition:transform .3s var(--ease-out),opacity .2s ease}@media (max-width: 768px){.nav-container{padding:0 1.25rem}.mobile-menu-btn{display:flex}.nav-links{position:fixed;top:0;right:0;height:100vh;width:100%;background-color:#efefebfa;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-direction:column;justify-content:center;gap:2rem;transform:translate(100%);transition:transform .4s var(--ease-out)}.nav-links.active{transform:translate(0)}.nav-link{font-size:2rem;font-family:var(--font-heading);font-style:italic;color:var(--ink)!important}.header.on-hero:not(.scrolled) .nav-links.active .nav-link{color:var(--ink)!important}.mobile-menu-btn.active .hamburger-line:nth-child(1){transform:rotate(45deg) translate(4px,5px)}.mobile-menu-btn.active .hamburger-line:nth-child(2){transform:rotate(-45deg) translate(4px,-5px)}}.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;padding:0;overflow:hidden;z-index:2;background:#050505}.hero-media{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden}.hero-photo-wrap{position:absolute;top:-8%;right:0;bottom:0;left:0;height:116%;width:100%}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center 18%;display:block;filter:contrast(1.12) brightness(.92);transform-origin:center 30%}.hero-veil{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#00000059,#0000001f 28%,#00000073 58%,#000000e0),linear-gradient(90deg,rgba(0,0,0,.55) 0%,rgba(0,0,0,.15) 42%,transparent 70%)}.hero-grain{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.4;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.hero-frame{position:absolute;top:14px;right:14px;bottom:14px;left:14px;border:1px solid rgba(245,245,241,.22);pointer-events:none;z-index:2}.hero-frame:before,.hero-frame:after{content:"";position:absolute;background:#f5f5f159}.hero-frame:before{top:12px;left:12px;width:28px;height:1px}.hero-frame:after{top:12px;left:12px;width:1px;height:28px}.hero-content{position:relative;z-index:3;width:100%;max-width:var(--max-width);margin:0 auto;padding:6.5rem 2rem 4.5rem;color:var(--fog)}.hero-brand{font-family:var(--font-heading);font-size:clamp(4rem,12vw,8rem);line-height:.85;letter-spacing:-.04em;margin-bottom:1.1rem;color:#fff;text-shadow:0 2px 40px rgba(0,0,0,.35)}.hero-line{font-family:var(--font-heading);font-size:clamp(1.75rem,4.2vw,2.85rem);font-style:italic;font-weight:400;line-height:1.15;letter-spacing:-.02em;max-width:18ch;margin-bottom:1.25rem;color:#f5f5f1e6}.hero-sub{font-family:var(--font-body);font-size:clamp(.98rem,1.6vw,1.12rem);line-height:1.65;max-width:36rem;color:#f5f5f1ad;margin-bottom:2rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:2rem}.hero-footnote{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:#f5f5f166}@media (max-width: 768px){.hero-content{padding:5.5rem 1.25rem 3.5rem}.hero-photo{object-position:center 15%}.hero-frame{top:10px;right:10px;bottom:10px;left:10px}.hero-actions{flex-direction:column;align-items:stretch;max-width:280px}.hero-actions .btn{width:100%}}@media (min-width: 769px){.hero-actions{max-width:36rem}}@media (max-width: 480px){.hero-content{padding:5rem 1rem 3rem}.hero-brand{margin-bottom:1rem}}.now-strip{position:relative;z-index:2;padding:1.4rem 0;border-bottom:1px solid var(--line);background:#ffffff47}.now-list{display:flex;flex-direction:column;gap:.7rem;margin:0}.now-row{display:grid;grid-template-columns:5.5rem 1fr;gap:1rem;align-items:baseline}.now-row dt{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--ink)}.now-row dd{margin:0;font-size:.88rem;line-height:1.65;color:var(--muted)}@media (max-width: 640px){.now-strip{padding:1.2rem 0}.now-row{grid-template-columns:1fr;gap:.3rem}}.work-section{overflow:visible}.work-section:before{content:"01";position:absolute;top:3rem;right:clamp(1rem,6vw,4rem);font-family:var(--font-heading);font-size:clamp(5rem,14vw,10rem);line-height:1;color:#0a0a0a0d;letter-spacing:-.06em;pointer-events:none;font-style:italic;z-index:0}.work-stage{display:grid;grid-template-columns:repeat(12,1fr);gap:1.25rem 1.5rem;align-items:start;position:relative;z-index:1}.work-panel{grid-column:span 4;padding:1.75rem 1.5rem 1.5rem;background:#ffffff6b;border:1px solid var(--line);border-radius:0;-webkit-backdrop-filter:blur(12px) grayscale(1);backdrop-filter:blur(12px) grayscale(1);box-shadow:0 1px #fff6 inset;transform:translate3d(calc(var(--ox, 0px) * var(--depth, 1)),calc(var(--oy, 0px) * var(--depth, 1)),0);transition:opacity .45s var(--ease-out),filter .45s var(--ease-out),background .35s ease,border-color .35s ease,box-shadow .45s var(--ease-out);will-change:transform,opacity}.work-panel:nth-child(1){grid-column:1 / span 7}.work-panel:nth-child(2){grid-column:8 / span 5;margin-top:2rem}.work-panel:nth-child(3){grid-column:2 / span 5;margin-top:.5rem}.work-panel:nth-child(4){grid-column:7 / span 6;margin-top:-.5rem}.work-panel:nth-child(5){grid-column:1 / span 6;margin-top:1.25rem}.work-panel:nth-child(6){grid-column:7 / span 5;margin-top:2.75rem}.work-panel:nth-child(7){grid-column:1 / span 5;margin-top:.5rem}.work-panel:nth-child(8){grid-column:6 / span 7;margin-top:-.25rem}.work-panel.is-active{background:#ffffffc7;border-color:var(--line-strong);box-shadow:0 28px 70px #00000024,0 1px #ffffff8c inset;z-index:2}.work-panel.is-dimmed{opacity:.28;filter:blur(1.5px) grayscale(1)}.work-panel-top{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.work-kind{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);font-weight:600}.work-dates{font-size:.8rem;color:var(--muted);font-variant-numeric:tabular-nums}.work-title{font-family:var(--font-heading);font-size:clamp(1.6rem,2.5vw,2.1rem);font-style:italic;margin-bottom:.35rem;letter-spacing:-.02em}.work-meta{font-size:.9rem;color:var(--muted);margin-bottom:1rem}.work-blurb{font-size:.98rem;line-height:1.65;color:var(--ink-soft);margin-bottom:1.25rem}.work-foot{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-top:1rem;border-top:1px solid var(--line)}.work-tech{font-size:.78rem;letter-spacing:.04em;color:var(--muted);text-transform:uppercase}.work-link{font-size:.85rem;font-weight:500;color:var(--ink);white-space:nowrap;border-bottom:1px solid transparent}.work-link:hover{border-bottom-color:var(--ink)}@media (max-width: 968px){.work-stage{grid-template-columns:1fr 1fr;gap:1rem}.work-panel,.work-panel:nth-child(n){grid-column:span 1;margin-top:0!important;transform:none}}@media (max-width: 640px){.work-stage{grid-template-columns:1fr}.work-panel,.work-panel:nth-child(n){grid-column:1 / -1}.work-panel.is-dimmed{opacity:1;filter:none}.work-section:before{top:1.5rem;right:1rem;font-size:5rem}}.awards-section{position:relative;padding-top:5rem}.awards-section:before{content:"02";position:absolute;top:3rem;right:clamp(1rem,6vw,4rem);font-family:var(--font-heading);font-size:clamp(5rem,14vw,10rem);line-height:1;color:#0a0a0a0d;letter-spacing:-.06em;pointer-events:none;font-style:italic;z-index:0}.awards-list{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:0 2.5rem;position:relative;z-index:1;border-bottom:1px solid var(--line)}.awards-list li{display:flex;flex-direction:column;gap:.3rem;padding:1.1rem 0;border-top:1px solid var(--line)}.award-label{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--ink)}.award-detail{font-size:.95rem;line-height:1.5;color:var(--muted)}@media (max-width: 968px){.awards-list{grid-template-columns:1fr 1fr;gap:0 1.5rem}}@media (max-width: 640px){.awards-list{grid-template-columns:1fr}.awards-section:before{top:1.5rem;right:1rem;font-size:5rem}}.contact-section{padding-bottom:6rem;position:relative}.contact-section:before{content:"03";position:absolute;top:3rem;right:clamp(1rem,6vw,4rem);font-family:var(--font-heading);font-size:clamp(5rem,14vw,10rem);line-height:1;color:#0a0a0a0d;letter-spacing:-.06em;pointer-events:none;font-style:italic;z-index:0}.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:4rem;align-items:start;position:relative;z-index:1}.contact-lead{margin-bottom:2rem}.email-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-bottom:1.75rem}.email-link{font-family:var(--font-heading);font-size:1.35rem;font-style:italic;color:var(--ink);border-bottom:1px solid var(--line);padding-bottom:2px}.email-link:hover{border-color:var(--ink)}.copy-btn{display:inline-flex;align-items:center;gap:.4rem;background:transparent;border:1px solid var(--line);color:var(--muted);padding:.4rem .75rem;font-family:var(--font-body);font-size:.8rem;cursor:pointer;border-radius:2px;transition:color .2s ease,border-color .2s ease}.copy-btn:hover{color:var(--ink);border-color:var(--ink)}.social-links{display:flex;gap:.75rem}.social-icon{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);color:var(--ink-soft);border-radius:2px;transition:background .25s ease,color .25s ease,border-color .25s ease}.social-icon:hover{background:var(--ink);color:var(--fog);border-color:var(--ink)}.contact-form-wrap{border-top:1px solid var(--line);padding-top:.5rem}.contact-form{display:flex;flex-direction:column;gap:1.25rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.45rem;text-align:left}.form-group span{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.form-group input,.form-group textarea{width:100%;background:transparent;border:none;border-bottom:1px solid var(--line);padding:.75rem 0;font-family:var(--font-body);font-size:1rem;color:var(--ink);outline:none;resize:vertical;transition:border-color .25s ease}.form-group input:focus,.form-group textarea:focus{border-color:var(--ink)}.submit-btn{align-self:flex-start;margin-top:.5rem}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.contact-success{padding:2rem 0}.contact-success h3{font-size:2.5rem;font-style:italic;margin-bottom:.75rem}.contact-success p{color:var(--muted);margin-bottom:1.5rem}@media (max-width: 860px){.contact-layout{grid-template-columns:1fr;gap:2.5rem}.form-row{grid-template-columns:1fr}}.footer{position:relative;z-index:2;padding:3rem 2rem 4rem;border-top:1px solid var(--line)}.footer-inner{max-width:var(--max-width);margin:0 auto;display:flex;justify-content:space-between;align-items:baseline;gap:1.5rem;flex-wrap:wrap}.footer-brand{font-family:var(--font-heading);font-size:1.5rem;letter-spacing:-.02em}.footer-note{font-size:.85rem;color:var(--muted)}@media (max-width: 640px){.footer{padding:2.5rem 1.25rem 3rem}.footer-inner{flex-direction:column;gap:.5rem}}.app{min-height:100vh;position:relative;z-index:2}.main-content{position:relative;z-index:2}:root{--ink: #0a0a0a;--ink-soft: #2a2a2a;--muted: #6a6a66;--silver: #b8b8b2;--paper: #efefeb;--paper-deep: #deded8;--fog: #f5f5f1;--ash: #121212;--line: rgba(10, 10, 10, .14);--line-strong: rgba(10, 10, 10, .32);--accent: #1c1c1c;--accent-soft: #3a3a3a;--glow: rgba(10, 10, 10, .12);--bg-primary: var(--paper);--bg-secondary: var(--paper-deep);--text-primary: var(--ink);--text-secondary: var(--muted);--accent-primary: var(--accent);--accent-secondary: var(--accent-soft);--font-heading: "Instrument Serif", Georgia, serif;--font-body: "DM Sans", system-ui, sans-serif;--section-padding: 7rem 2rem;--max-width: 1120px;--header-h: 72px;--ease-out: cubic-bezier(.16, 1, .3, 1);--spring: cubic-bezier(.34, 1.56, .64, 1)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-h)}body{font-family:var(--font-body);background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse 90% 55% at 50% -10%,rgba(255,255,255,.55),transparent 55%),radial-gradient(ellipse 70% 50% at 100% 100%,rgba(0,0,0,.08),transparent 50%),radial-gradient(ellipse 50% 40% at 0% 80%,rgba(0,0,0,.06),transparent 45%),linear-gradient(180deg,#f7f7f3 0%,var(--paper) 45%,#d8d8d2 100%)}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9998;opacity:.28;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");mix-blend-mode:overlay}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:400;color:var(--text-primary);line-height:1.15;letter-spacing:-.02em}a{text-decoration:none;color:inherit;transition:color .25s var(--ease-out)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.container{max-width:var(--max-width);margin:0 auto;padding:0 2rem}.section{padding:var(--section-padding);scroll-margin-top:var(--header-h);position:relative;z-index:2}.section-title{font-family:var(--font-heading);font-size:clamp(2.75rem,6vw,4.25rem);margin-bottom:.75rem;color:var(--text-primary);font-style:italic;letter-spacing:-.03em}.section-subtitle{color:var(--text-secondary);max-width:32rem;margin:0 0 3.5rem;font-size:1.05rem;font-weight:400}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.5rem;border-radius:0;font-weight:500;font-size:.95rem;letter-spacing:.02em;transition:transform .35s var(--ease-out),background .25s ease,color .25s ease,border-color .25s ease;cursor:pointer;border:1px solid transparent;font-family:var(--font-body)}.btn:hover{transform:translateY(-2px)}.btn-primary{background-color:var(--ink);color:var(--fog)}.btn-primary:hover{background-color:#000}.btn-secondary{background-color:transparent;border-color:var(--line-strong);color:var(--text-primary)}.btn-secondary:hover{border-color:var(--ink);background-color:#0a0a0a0a}.btn-ghost{background:#f5f5f114;border-color:#f5f5f166;color:var(--fog);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);letter-spacing:.06em;text-transform:uppercase;font-size:.78rem}.btn-ghost:hover{background:#f5f5f12e;border-color:#f5f5f1b3}@media (max-width: 968px){:root{--section-padding: 5.5rem 1.5rem}}@media (max-width: 768px){:root{--section-padding: 4rem 1.25rem}input,textarea,select{font-size:16px!important}}@media (max-width: 480px){:root{--section-padding: 3.5rem 1rem}.container{padding:0 1rem}.btn{padding:.75rem 1.25rem;font-size:.9rem}}
