*{margin:0;padding:0;box-sizing:border-box}:root{--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-serif: "Crimson Text", Georgia, serif;--color-text: #f5f5f5;--color-text-light: #b3b3b3;--color-text-lighter: #808080;--color-bg: #0a0a0a;--color-link: #f5f5f5;--measure: 65ch;--baseline: 1.5rem}html{font-size:18px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-weight:400;color:var(--color-text);background-color:var(--color-bg);line-height:1.75;letter-spacing:-.011em}#app{min-height:100vh;display:flex;flex-direction:column;opacity:1}main{flex:1;padding:calc(var(--baseline) * 6) calc(var(--baseline) * 3);max-width:900px;margin:0 auto;width:100%}#hero{margin-bottom:calc(var(--baseline) * 4);padding-bottom:calc(var(--baseline) * 2);border-bottom:1px solid #1a1a1a}#hero h1{font-family:var(--font-serif);font-size:clamp(1.8rem,4.8vw,3.3rem);font-weight:400;line-height:1.1;letter-spacing:-.02em;margin-bottom:calc(var(--baseline) * 2);color:var(--color-text)}#hero .tagline{font-size:1.25rem;font-weight:300;line-height:1.6;letter-spacing:-.01em;color:var(--color-text-light);max-width:var(--measure);font-style:italic}#hero .tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:calc(var(--baseline) * 2)}#hero .tag{font-size:.8rem;font-weight:400;color:var(--color-text-lighter);padding:.25rem .75rem;border:1px solid #2a2a2a;border-radius:.25rem;background-color:#ffffff05;transition:all .2s ease}#hero .tag:hover{color:var(--color-text);border-color:#3a3a3a;background-color:#ffffff0d;transform:translateY(-1px)}#hero .tag:focus{outline:2px solid var(--color-text-light);outline-offset:2px}#hero .section-nav{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:calc(var(--baseline) * 2);padding-top:calc(var(--baseline) * 2);border-top:1px solid #1a1a1a}#hero .nav-link{font-size:.875rem;font-weight:400;font-style:italic;color:var(--color-text-light);text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px;transition:all .2s ease;display:inline-block}#hero .nav-link:hover{color:var(--color-text);text-decoration-thickness:1.5px}#hero .nav-link:focus{outline:2px solid var(--color-text-light);outline-offset:2px}section{margin-bottom:calc(var(--baseline) * 5)}section h3{font-family:var(--font-serif);font-size:1.5rem;font-weight:400;letter-spacing:-.01em;margin-bottom:calc(var(--baseline) * 1.5);color:var(--color-text)}section h3+.section-subtitle{margin-top:calc(var(--baseline) * -.75)}.section-subtitle{font-size:.9rem;color:var(--color-text-lighter);font-style:italic;margin-bottom:calc(var(--baseline) * 1);font-weight:300;letter-spacing:-.005em}#work{margin-bottom:calc(var(--baseline) * 6)}.work-item{margin-bottom:calc(var(--baseline) * 3);padding-bottom:calc(var(--baseline) * 2.5);border-bottom:1px solid #1a1a1a}.work-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.work-header{display:flex;align-items:baseline;gap:.75rem;margin-bottom:.5rem;font-size:1.125rem;line-height:1.5;letter-spacing:-.01em}.work-header .company,.work-header a{font-weight:500;color:var(--color-text);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease;white-space:nowrap}.work-header>.company,.work-header>a{flex-shrink:0}.work-header a:hover{border-bottom-color:var(--color-text)}.work-header .role{color:var(--color-text-light);font-weight:400;font-size:.88em;margin-left:.5rem;margin-top:-.15rem;flex-shrink:0}.work-header .dates{color:var(--color-text-lighter);font-weight:300;font-size:.9em;margin-left:auto;white-space:nowrap;font-variant-numeric:tabular-nums;flex-shrink:0}.work-description{font-size:1rem;color:var(--color-text-light);line-height:1.7;font-style:italic;margin-top:.5rem;max-width:var(--measure)}#agencies,#clients,#awards,#achievements{margin-bottom:calc(var(--baseline) * 4)}.list-items{display:flex;flex-direction:column;gap:.5rem}.list-item{font-size:1rem;line-height:1.75;color:var(--color-text);letter-spacing:-.005em}.list-item a{color:var(--color-link);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease;font-weight:400}.list-item a:hover{border-bottom-color:var(--color-link)}.list-item .cities,.list-item .detail{font-style:italic;color:var(--color-text-light);margin-left:.75rem}footer{padding:calc(var(--baseline) * 3) calc(var(--baseline) * 3);text-align:center;border-top:1px solid #1a1a1a;color:var(--color-text-lighter);font-size:.875rem;font-weight:300;letter-spacing:.01em;margin-top:auto}.footer-content{display:flex;align-items:center;justify-content:center;gap:.75rem}.footer-link{color:var(--color-text-light);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease,color .2s ease;font-weight:400}.footer-link:hover{border-bottom-color:var(--color-text-light);color:var(--color-text)}.footer-separator{color:var(--color-text-lighter);font-weight:300}@media (max-width: 768px){html{font-size:16px}main{padding:calc(var(--baseline) * 4) calc(var(--baseline) * 2)}#hero{margin-bottom:calc(var(--baseline) * 3)}#hero h1{font-size:clamp(2.5rem,12vw,4rem)}.work-header{flex-direction:column;gap:.5rem}.work-header .role,.work-header .dates{margin-left:0}section{margin-bottom:calc(var(--baseline) * 4)}}@media (max-width: 480px){main{padding:calc(var(--baseline) * 3) calc(var(--baseline) * 1.5)}#hero .tagline{font-size:1.125rem}}.modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden}.modal.active{opacity:1;visibility:visible}.modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#000000d9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{position:relative;background-color:var(--color-bg);border:1px solid #2a2a2a;border-radius:.5rem;max-width:600px;width:90%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080;overflow:hidden}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--color-text-light);font-size:1.5rem;line-height:1;cursor:pointer;padding:.5rem;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:all .2s ease;z-index:10}.modal-close:hover{color:var(--color-text);background-color:#ffffff0d}.modal-close:focus{outline:2px solid var(--color-text-light);outline-offset:2px}.modal-header{padding:calc(var(--baseline) * 2.5) calc(var(--baseline) * 2) calc(var(--baseline) * 1);border-bottom:1px solid #1a1a1a}.modal-title{font-family:var(--font-serif);font-size:1.75rem;font-weight:400;color:var(--color-text);line-height:1.2;margin:0}.modal-body{padding:calc(var(--baseline) * 2);overflow-y:auto;flex:1}.modal-description{font-size:1rem;line-height:1.75;color:var(--color-text-light);margin:0}.modal-footer{padding:calc(var(--baseline) * 1.5) calc(var(--baseline) * 2);border-top:1px solid #1a1a1a;display:flex;align-items:center;justify-content:space-between;gap:1rem}.modal-nav{background-color:#ffffff0d;border:1px solid #2a2a2a;color:var(--color-text-light);padding:.5rem 1rem;border-radius:.25rem;font-size:.9rem;font-weight:400;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;font-family:var(--font-sans)}.modal-nav:hover:not(:disabled){color:var(--color-text);border-color:#3a3a3a;background-color:#ffffff14}.modal-nav:disabled{opacity:.5;cursor:not-allowed}.modal-nav:focus{outline:2px solid var(--color-text-light);outline-offset:2px}.modal-counter{font-size:.875rem;color:var(--color-text-lighter);font-variant-numeric:tabular-nums}@media (max-width: 768px){.modal-content{width:95%;max-height:85vh}.modal-title{font-size:1.5rem}.modal-header{padding:calc(var(--baseline) * 2) calc(var(--baseline) * 1.5) calc(var(--baseline) * 1)}.modal-body{padding:calc(var(--baseline) * 1.5)}.modal-footer{padding:calc(var(--baseline) * 1.5);flex-wrap:wrap}.modal-nav{flex:1;justify-content:center;min-width:100px}.modal-counter{width:100%;text-align:center;order:-1}}
