@import"https://fonts.googleapis.com/css2?family=Bebas+Neue&display=swap";:root{color-scheme:light;--bg: #f6f3ed;--surface: #ebe6dc;--text: #171615;--muted: #706b64;--accent: #8e8579;--line: rgba(23, 22, 21, .14);--focus: #4f6b66;--max-width: 1480px;--display-font: "Bebas Neue", Impact, "Arial Narrow", "Helvetica Neue Condensed", sans-serif;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-size:16px;line-height:1.5}body.lightbox-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:560;line-height:.98;letter-spacing:0}h1{max-width:900px;margin-bottom:1rem;font-size:clamp(3.6rem,10vw,10rem)}h2{font-size:clamp(2.2rem,5vw,5.4rem)}h3{margin-bottom:.25rem;font-size:1.02rem;font-weight:560}.muted{color:var(--muted)}.display-name{font-family:var(--display-font);font-stretch:condensed;font-weight:400;letter-spacing:.03em;text-transform:uppercase}.skip-link{position:fixed;top:.75rem;left:.75rem;z-index:20;transform:translateY(-180%);background:var(--text);color:var(--bg);padding:.7rem 1rem}.skip-link:focus{transform:translateY(0)}.nav,.footer,.page-shell{width:min(calc(100% - 2rem),var(--max-width));margin:0 auto}.page-shell{min-height:72vh}.page-content,.project-detail,.contact-page{padding:clamp(2.5rem,5vw,5rem) 0}.section-block{padding:clamp(3rem,7vw,7rem) 0}.section-fade{animation:fade-up .52s ease both}.eyebrow{margin:0 0 .9rem;color:var(--muted);font-size:.78rem;font-weight:650;letter-spacing:0;text-transform:uppercase}.footer-links,.hero-actions,.social-row{display:flex;align-items:center;gap:clamp(1.25rem,3vw,3.5rem)}.footer a,.text-link{color:var(--text);border-bottom:1px solid currentColor;transition:color .18s ease,opacity .18s ease}.footer a:hover,.text-link:hover{color:var(--accent)}.hero-line,.page-intro p,.about-section p,.project-hero p{max-width:620px;color:var(--muted);font-size:clamp(1rem,1.7vw,1.25rem)}.section-heading,.project-hero{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:clamp(1.5rem,3vw,3rem)}.page-intro{margin-bottom:clamp(2rem,4vw,4rem)}.centered-intro{text-align:center}.centered-intro h1,.centered-intro p{margin-inline:auto}.page-intro h1{font-size:clamp(2.6rem,6vw,7rem)}.client-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;padding:0;margin:1.5rem 0 2rem;list-style:none}.client-list li{padding-top:.8rem;border-top:1px solid var(--line)}.site-header{position:relative;top:0;z-index:10;background:var(--bg)}.nav{position:relative;min-height:152px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.35rem;padding:1.7rem 0 1.45rem}.header-socials{position:absolute;top:1.7rem;right:0;display:flex;gap:.75rem}.header-socials a{display:grid;place-items:center;width:34px;height:34px;color:var(--text);transition:color .18s ease,opacity .18s ease}.header-socials a:hover{color:var(--accent)}.header-socials svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.header-socials a[aria-label=LinkedIn] svg{fill:currentColor;stroke:none}.brand{font-family:var(--display-font);font-size:clamp(2.75rem,5.5vw,5.4rem);font-stretch:condensed;font-weight:400;letter-spacing:.03em;line-height:.9;text-align:center;text-transform:uppercase}.nav-links{display:flex;align-items:center;gap:clamp(1.25rem,3vw,3.5rem)}.nav-links a{color:var(--muted);border-bottom:1px solid transparent;font-family:var(--display-font);font-size:1.05rem;letter-spacing:.04em;text-transform:uppercase;transition:color .18s ease,opacity .18s ease}.nav-links a:hover,.nav-links a.active{color:var(--accent)}.menu-button{display:none;min-height:44px;border:1px solid var(--line);background:transparent;color:var(--text);padding:.55rem .85rem}.footer{display:grid;place-items:center;padding:2rem 0;border-top:1px solid var(--line);color:var(--muted);text-align:center}.footer p{margin:0}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.75rem,1.25vw,1.25rem);width:min(100%,1400px);margin-inline:auto}.project-grid-column{display:grid;align-content:start;gap:clamp(.75rem,1.25vw,1.25rem)}.project-card-button{display:block;width:100%;border:0;background:transparent;color:inherit;cursor:zoom-in;padding:0;text-align:left}.project-image-wrap{position:relative;overflow:hidden;background:var(--surface)}.project-image-wrap img{display:block;width:100%;height:auto;filter:grayscale(0);transition:transform .42s ease,filter .24s ease,opacity .22s ease}.project-card:hover img{filter:grayscale(1);transform:scale(1.012);opacity:1}.grid-lightbox{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:clamp(1rem,4vw,3rem);background:#4646468f;animation:lightbox-fade .26s ease both}.grid-lightbox-backdrop{position:absolute;inset:0;border:0;background:transparent;cursor:zoom-out}.grid-lightbox-content{position:relative;z-index:1;display:grid;gap:.85rem;width:min(100%,1180px);margin:0}.grid-lightbox-image-stage{position:relative;display:grid;place-items:center}.grid-lightbox-image-stage img{grid-area:1 / 1;width:100%;max-height:82svh;object-fit:contain}.grid-lightbox-image-stage .current-image{position:relative;z-index:2;animation:lightbox-image-in .22s ease both}.grid-lightbox-image-stage .previous-image{position:absolute;z-index:1;inset:0;animation:lightbox-image-out .22s ease both}.grid-lightbox-content figcaption{display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.85rem}.grid-lightbox-close,.grid-lightbox-arrow{position:fixed;z-index:2;display:grid;place-items:center;border:1px solid rgba(23,22,21,.14);border-radius:999px;background:#f6f3edb8;color:var(--text);cursor:pointer;box-shadow:0 12px 32px #1716151f;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.grid-lightbox-close:hover,.grid-lightbox-arrow:hover{background:#f6f3edf5;border-color:#17161547}.grid-lightbox-close svg,.grid-lightbox-arrow svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.grid-lightbox-close{top:1.25rem;right:1.25rem;width:44px;height:44px}.grid-lightbox-arrow{top:50%;width:48px;height:48px;transform:translateY(-50%)}.grid-lightbox-arrow.previous{left:1.25rem}.grid-lightbox-arrow.next{right:1.25rem}.project-gallery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(.8rem,2vw,1.5rem)}.gallery-item{grid-column:span 3;border:0;background:var(--surface);cursor:zoom-in;padding:0;overflow:hidden}.gallery-item.portrait{grid-column:span 2;aspect-ratio:4 / 5}.gallery-item.landscape{aspect-ratio:16 / 10}.gallery-item.square{aspect-ratio:1}.gallery-item img{width:100%;height:100%;object-fit:cover;filter:grayscale(0);transition:transform .42s ease,filter .24s ease,opacity .22s ease}.gallery-item:hover img{filter:grayscale(1);transform:scale(1.012);opacity:1}.lightbox{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:2rem}.lightbox-backdrop{position:absolute;inset:0;border:0;background:#121110db;cursor:zoom-out}.lightbox img{position:relative;z-index:1;max-width:min(100%,1180px);max-height:86svh;object-fit:contain}.lightbox-close{position:fixed;top:1rem;right:1rem;z-index:2;border:1px solid rgba(246,243,237,.3);background:#f6f3ed1f;color:var(--bg);cursor:pointer;padding:.7rem 1rem}.contact-page{display:grid;grid-template-columns:minmax(0,.85fr) minmax(320px,.7fr);gap:clamp(2rem,6vw,6rem)}.about-contact-page{padding:clamp(2rem,5vw,5rem) 0 clamp(4rem,8vw,8rem)}.about-contact-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(260px,.58fr);gap:clamp(2.5rem,7vw,7.5rem);align-items:center;width:min(100%,1040px);margin:0 auto}.about-contact-image-wrap{min-height:min(58svh,620px);display:grid;align-items:center;justify-items:center}.about-contact-image-wrap img{width:min(100%,520px);max-height:min(62svh,640px);object-fit:contain}.about-contact-copy{display:grid;justify-items:center;gap:1.7rem;color:#33312f;text-align:center}.about-contact-copy h1{margin:0;font-family:inherit;font-size:clamp(1.25rem,1.9vw,1.8rem);font-weight:400;line-height:1.1}.about-contact-copy p{margin:-1.4rem 0 0;color:#33312f;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.15}.about-contact-links{display:grid;gap:.25rem;margin-top:1.3rem;text-align:left}.about-contact-links a{color:inherit;font-size:clamp(1rem,1.45vw,1.2rem)}.about-contact-links a:hover{color:var(--accent)}.about-contact-copy section{display:grid;gap:.25rem}.about-contact-copy h2{margin:0;font-family:inherit;font-size:clamp(1rem,1.45vw,1.18rem);font-style:italic;font-weight:400;line-height:1.1}.about-contact-copy ul{padding:0;margin:0;list-style:none}.about-contact-copy li{font-size:clamp(1rem,1.45vw,1.18rem);font-style:italic;line-height:1.12}.project-hero{align-items:start;padding-bottom:2rem}.project-hero h1{margin-top:1rem;font-size:clamp(3rem,8vw,9rem)}.project-meta-list{min-width:min(100%,330px);margin:0;border-top:1px solid var(--line)}.project-meta-list div{display:grid;grid-template-columns:90px 1fr;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--line)}.project-meta-list dt{color:var(--muted)}.project-meta-list dd{margin:0}.project-nav{display:flex;justify-content:space-between;gap:1rem;margin-top:clamp(2rem,4vw,4rem);padding-top:1.25rem;border-top:1px solid var(--line)}@keyframes fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes lightbox-fade{0%{opacity:0}to{opacity:1}}@keyframes lightbox-image-in{0%{opacity:0}to{opacity:1}}@keyframes lightbox-image-out{0%{opacity:1}to{opacity:0}}@media(max-width:980px){.hero,.about-section,.contact-page,.about-contact-layout,.project-hero{grid-template-columns:1fr}.hero{min-height:auto}.hero-copy{padding-bottom:0}.hero-image{height:auto;aspect-ratio:4 / 3}.motion-grid,.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading,.project-hero,.footer{align-items:start;flex-direction:column}.client-list{grid-template-columns:repeat(2,minmax(0,1fr))}.about-contact-image-wrap{min-height:auto}.about-contact-copy{gap:1.4rem}}@media(max-width:680px){.nav,.footer,.page-shell{width:min(calc(100% - 1.25rem),var(--max-width))}.menu-button{position:absolute;top:1rem;right:0;display:inline-flex;align-items:center}.header-socials{top:1rem;left:0;right:auto}.nav-links{position:absolute;top:100%;right:.625rem;left:.625rem;display:none;flex-direction:column;align-items:stretch;gap:0;background:var(--bg);border:1px solid var(--line);padding:.4rem}.nav-links.is-open{display:flex}.nav-links a{min-height:48px;display:flex;align-items:center;padding:0 .7rem}.motion-grid,.client-list,.project-grid,.project-gallery{grid-template-columns:1fr}.gallery-item,.gallery-item.portrait,.gallery-item.landscape,.gallery-item.square{grid-column:span 1}.project-nav,.hero-actions,.social-row{align-items:start;flex-direction:column}.grid-lightbox{padding:4rem 1rem 1rem}.grid-lightbox-arrow{top:auto;bottom:.6rem;width:48px;height:48px;transform:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
