@font-face{font-family:Bricolage;src:url('/assets/bricolage-400.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Bricolage;src:url('/assets/bricolage-600.ttf') format('truetype');font-weight:600;font-display:swap}
:root{--paper:#edf2f9;--ink:#203653;--blue:#325dad;--muted:#52647b;--line:#c3cfe0;--white:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:30px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Bricolage,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:3px solid var(--blue);outline-offset:7px;border-radius:2px}
::selection{background:#c5d6f6;color:var(--ink)}
.page{max-width:1600px;margin:auto;padding:0 6.25%}
.skip-link{position:absolute;left:20px;top:-100px;z-index:10;background:var(--ink);color:white;padding:14px 20px}
.skip-link:focus{top:15px}
.header{display:flex;align-items:center;justify-content:space-between;padding:35px 0}
.wordmark{display:inline-flex;align-items:center;gap:13px;font-size:17px;font-weight:600;letter-spacing:-.4px}
.mark{display:grid;place-items:center;background:var(--ink);color:var(--paper);height:37px;width:43px;border-radius:50%;font-size:21px;letter-spacing:-2px;padding-right:2px}
nav{display:flex;gap:35px;font-size:16px}
nav a,footer a{text-decoration-thickness:1px;text-underline-offset:5px}
nav a:hover,footer a:hover{text-decoration:underline}
.intro{display:grid;grid-template-columns:1.6fr 1fr;gap:6%;align-items:end;padding:76px 0 94px}
h1,h2,h3,p{margin:0}
h1{font-size:clamp(80px,10.7vw,164px);font-weight:600;letter-spacing:-.075em;line-height:.9;margin-left:-.055em}
.intro-copy{max-width:365px;padding-bottom:5px}
.lead{font-size:clamp(27px,2.9vw,43px);line-height:1.12;letter-spacing:-.045em;margin-bottom:22px}
.intro-copy>p:last-child{font-size:18px;line-height:1.6;color:var(--muted);max-width:33ch}
.section-heading{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:25px;gap:16px}
.section-heading h2{font-size:19px;font-weight:600;letter-spacing:-.4px}
.section-heading>span{font-size:14px;color:var(--muted)}
.projects{display:grid;grid-template-columns:1fr 1fr;gap:64px 4%}
.project{min-width:0}
.project-offset{padding-top:86px}
.preview{padding:32px 23px;border-radius:8px;overflow:hidden;aspect-ratio:1.35;display:flex;align-items:center}
.preview-art{background:#dde2f0}
.preview-glass{background:#d4e3e7}
.preview-ready{background:#dfe6d9}
.preview img{display:block;width:100%;height:auto;border-radius:3px;box-shadow:0 8px 24px #20365315}
.project-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:24px}
.project-heading h3{font-size:clamp(22px,2.1vw,30px);font-weight:600;letter-spacing:-1px}
.visit{display:flex;align-items:center;gap:8px;flex-shrink:0;font-size:14px}
svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.project-link:hover .project-heading h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.project-link:hover .visit{color:var(--blue)}
.project>p{font-size:16px;line-height:1.65;max-width:47ch;color:var(--muted);margin:12px 0 17px}
.project-type{font-size:13px;color:var(--muted)}
.contact{margin-top:116px;border-top:1px solid var(--line);padding:65px 0 76px;display:flex;align-items:center;justify-content:space-between;gap:35px}
.contact h2{font-size:clamp(38px,4.5vw,66px);font-weight:400;line-height:1.05;letter-spacing:-.055em}
.contact p{margin-top:20px;font-size:17px;color:var(--muted)}
.email{display:flex;align-items:center;gap:27px;font-size:clamp(23px,2.5vw,37px);letter-spacing:-.04em;border-bottom:1px solid var(--ink);padding-bottom:12px}
.email svg{width:26px;height:26px}
.email:hover{color:var(--blue);border-color:var(--blue)}
footer{padding:26px 0 32px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;font-size:13px;color:var(--muted)}
footer a span{margin-left:8px}
@media(min-width:1600px){.page{padding-left:100px;padding-right:100px}}
@media(max-width:1000px){.intro{grid-template-columns:1.4fr 1fr;gap:5%;padding-top:65px;padding-bottom:75px}.intro-copy>p:last-child{font-size:16px}.preview{padding:22px 16px}.project-heading{align-items:start;flex-direction:column;gap:10px}.project-offset{padding-top:60px}.contact{margin-top:85px}}
@media(max-width:650px){.page{padding:0 6%}.header{padding:24px 0}.wordmark{font-size:15px;gap:8px}.mark{height:30px;width:35px;font-size:18px}nav{gap:20px;font-size:14px}.intro{grid-template-columns:1fr;gap:32px;padding:54px 0 57px}h1{font-size:clamp(65px,15.5vw,100px)}.intro-copy{max-width:100%}.lead{font-size:29px;letter-spacing:-1px;line-height:1.18;margin-bottom:15px}.lead br{display:none}.intro-copy>p:last-child{max-width:38ch;font-size:17px}.section-heading{margin-bottom:18px}.section-heading h2{font-size:18px}.section-heading>span{font-size:12px}.projects{grid-template-columns:1fr;gap:43px}.project-offset{padding-top:0}.preview{padding:25px 19px}.project-heading{flex-direction:row;align-items:center;padding-top:20px}.project-heading h3{font-size:24px}.visit{font-size:13px;gap:5px}.project>p{margin-top:11px;margin-bottom:13px}.contact{margin-top:63px;padding:41px 0 46px;align-items:start;flex-direction:column;gap:31px}.contact h2{font-size:44px}.contact h2 br{display:none}.contact p{margin-top:15px}.email{font-size:27px;gap:35px}footer{font-size:12px;padding:24px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
