@charset "UTF-8";.Header{position:sticky;top:0;z-index:10;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 2rem;background-color:#fdf6ee;border-bottom:1px solid #e6d7bf}.Header-brand{display:flex;align-items:center}.Header-brand img{height:32px}.Header-nav{display:flex;gap:2rem}.Header-nav a{color:#6b5f54;text-decoration:none;padding-bottom:2px;border-bottom:1px solid transparent}.Header-nav a:hover{color:#c8511f;border-bottom-color:#c8511f}@media (max-width: 767px){.Header-nav{display:none}}.TabBar{display:none}@media (max-width: 767px){.TabBar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:10;height:calc(56px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background-color:#fdf6eee6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid #e6d7bf}}.TabBar-item{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#6b5f54;text-decoration:none}.TabBar-item svg{width:22px;height:22px}.TabBar-item span{font-size:.65rem}.TabBar-item:hover,.TabBar-item:active{color:#c8511f}.Hero{min-height:calc(100vh - 72px);min-height:calc(100dvh - 72px);max-width:1100px;margin:0 auto;padding:2rem;display:flex;align-items:center;gap:4rem}.Hero-portrait{flex-shrink:0;width:260px;max-width:100%;height:260px;border-radius:50%;object-fit:cover}.Hero-content{display:flex;flex-direction:column;align-items:flex-start;gap:1rem}.Hero h1{font-size:3.25rem;line-height:1.05;margin:0}.Hero p{color:#6b5f54;font-size:1.5rem;max-width:40ch;margin:0}.Hero-cta{margin-top:1rem;color:#fdf6ee;background-color:#c8511f;padding:.5rem 2rem;border-radius:999px;text-decoration:none;font-weight:600}.Hero-cta:hover{background-color:#2b2420}@media (max-width: 767px){.Hero{flex-direction:column;align-items:flex-start;justify-content:center;gap:2rem}.Hero-portrait{width:140px;height:140px}}.ServicesSection{min-height:calc(100vh - 72px);min-height:calc(100dvh - 72px);max-width:1100px;margin:0 auto;padding:4rem 2rem}.ServicesSection h2{margin-bottom:.5rem}.ServicesSection-note{color:#f2a65a;margin-top:0;margin-bottom:2rem;font-style:italic}.ServicesSection-list{display:flex;flex-direction:column}.ServiceCard{display:flex;gap:2rem;align-items:baseline;padding:2rem 0;border-top:1px solid #e6d7bf}.ServiceCard:last-child{border-bottom:1px solid #e6d7bf}.ServiceCard-index{font-family:Fraunces,Georgia,serif;font-size:1.5rem;color:#f2a65a;flex-shrink:0;width:2.5rem}.ServiceCard h3{margin:0 0 .5rem;font-size:1.25rem}.ServiceCard p{color:#6b5f54;margin:0;max-width:60ch}@media (max-width: 767px){.ServiceCard{gap:1rem}.ServiceCard-index{width:1.75rem;font-size:1.25rem}}.ProjectCard{position:relative;display:flex;flex-direction:column;flex:1 1 280px;min-width:0;max-width:100%;gap:.5rem}.ProjectCard-media{display:flex;align-items:center;justify-content:center;aspect-ratio:16/9;margin-bottom:.5rem;overflow:hidden;border-radius:6px;background-color:#f6ead8}.ProjectCard-cover{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.ProjectCard-cover--logo{width:auto;max-width:70%;max-height:70%;object-fit:contain}.ProjectCard-placeholder{font-family:Fraunces,Georgia,serif;font-size:2.25rem;color:#f2a65a}.ProjectCard h3{margin:0;font-size:1.25rem}.ProjectCard-trigger{font:inherit;color:inherit;text-align:left;background:none;border:0;padding:0}.ProjectCard-trigger:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}.ProjectCard-trigger:focus-visible{outline:2px solid #c8511f;outline-offset:3px}.ProjectCard-description{color:#6b5f54;margin:0;line-height:1.6}.ProjectCard-footer{margin-top:auto;padding-top:1rem}.ProjectCard-stack{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:#f2a65a;margin:0 0 .5rem}.ProjectCard-cue{color:#c8511f;font-weight:600;border-bottom:1px solid transparent}.ProjectCard:hover{cursor:pointer}.ProjectCard:hover .ProjectCard-cue{border-bottom-color:#c8511f}.ProjectCard:hover .ProjectCard-cover{transform:scale(1.03)}@media (prefers-reduced-motion: reduce){.ProjectCard .ProjectCard-cover{transition:none}.ProjectCard:hover .ProjectCard-cover{transform:none}}.ProjectModal{width:min(760px,100vw - 2rem);max-height:calc(100vh - 4rem);padding:0;border:1px solid #e6d7bf;border-radius:10px;background-color:#fdf6ee;color:#2b2420;overflow:auto}.ProjectModal::backdrop{background-color:#2b242099}.ProjectModal-inner{position:relative;padding:2rem}.ProjectModal-close{position:absolute;top:.5rem;right:.5rem;width:2.25rem;height:2.25rem;font-size:1.5rem;line-height:1;color:#6b5f54;background:none;border:0;border-radius:50%}.ProjectModal-close:hover{color:#c8511f;background-color:#f6ead8}.ProjectModal h3{font-size:2.25rem;margin:0 4rem .5rem 0}.ProjectModal-stack{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:#f2a65a;margin:0 0 1rem}.ProjectModal-description{color:#6b5f54;line-height:1.6;max-width:65ch;margin:0;white-space:pre-line}.ProjectModal-gallery{display:flex;flex-direction:column;gap:1rem;margin-top:2rem}.ProjectModal-gallery img{width:100%;border:1px solid #e6d7bf;border-radius:6px}.ProjectModal-link{display:inline-block;margin-top:2rem;color:#fdf6ee;background-color:#c8511f;padding:.5rem 2rem;border-radius:999px;text-decoration:none;font-weight:600}.ProjectModal-link:hover{background-color:#2b2420}.ProjectsSection{min-height:calc(100vh - 72px);min-height:calc(100dvh - 72px);max-width:1100px;margin:0 auto;padding:4rem 2rem}.ProjectsSection h2{margin-bottom:2rem}.ProjectsSection-grid{display:flex;flex-wrap:wrap;gap:4rem 2rem}.AboutSection{min-height:calc(100vh - 72px);min-height:calc(100dvh - 72px);max-width:1100px;margin:0 auto;padding:4rem 2rem;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.AboutSection h2{margin-bottom:2rem}.AboutSection p{color:#6b5f54;max-width:65ch;line-height:1.7;margin:0 0 1rem}.AboutSection p:last-child{margin-bottom:0}.ContactSection{min-height:calc(100vh - 72px);min-height:calc(100dvh - 72px);max-width:1100px;margin:0 auto;padding:4rem 2rem;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.ContactSection h2{margin-bottom:1rem}.ContactSection-intro{color:#6b5f54;max-width:45ch;line-height:1.6;margin:0 0 2rem}.ContactSection-cta{color:#fdf6ee;background-color:#c8511f;padding:.5rem 2rem;border-radius:999px;text-decoration:none;font-weight:600}.ContactSection-cta:hover{background-color:#2b2420}.ContactSection-social{display:flex;align-items:baseline;flex-wrap:wrap;gap:1rem;margin-top:4rem;padding-top:1rem;border-top:1px solid #e6d7bf}.ContactSection-social a{color:#6b5f54;text-decoration:none;font-weight:600;border-bottom:1px solid transparent}.ContactSection-social a:hover{color:#c8511f;border-bottom-color:#c8511f}.ContactSection-socialLabel{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:#f2a65a;margin-right:.5rem}.Footer{text-align:center;padding:2rem;color:#6b5f54;border-top:1px solid #e6d7bf;background-color:#f6ead8}.App{min-height:100vh;min-height:100dvh}@media (max-width: 767px){.App{padding-bottom:calc(56px + env(safe-area-inset-bottom))}}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}a,del,ins{text-decoration:none}a{color:inherit}label,button{cursor:pointer}input,button{outline:0}html{scroll-behavior:smooth;scroll-padding-top:72px;overflow-x:hidden}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}body{background-color:#fdf6ee;color:#2b2420;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3{font-family:Fraunces,Georgia,serif;font-weight:600}h2{font-size:2.25rem}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
