@import url(https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap);*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:#f4f1ea;color:#1f3042;font-family:DM Sans,sans-serif;line-height:1.65;margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}h1,h2,h3{font-family:Playfair Display,serif;line-height:1.1;margin:0 0 1rem}h1{font-size:clamp(3rem,7vw,6.5rem);letter-spacing:-.04em}h2{font-size:clamp(2.2rem,4vw,4rem)}h3{font-size:1.4rem}.container{margin:auto;width:min(1160px,100% - 3rem)}.section{padding:7rem 0}.soft{background:#e6ebed}.dark{background:#1f3042;color:#fbfaf7}.center{text-align:center}.eyebrow{color:#315765;font-size:.76rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.lead{color:#60788c;font-size:1.25rem;max-width:720px}.button{align-items:center;background:#1f3042;border:1px solid #1f3042;border-radius:999px;color:#fbfaf7;display:inline-flex;font-weight:700;justify-content:center;padding:.75rem 1.35rem}.button.outline{background:#0000;color:#1f3042}.button.light{background:#fbfaf7;border-color:#fbfaf7;color:#1f3042}.buttons{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}.nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f8f6f1f0;border-bottom:1px solid #d7d0c5;position:sticky;top:0;z-index:10}.nav-inner{justify-content:space-between;min-height:76px}.logo,.nav-inner{align-items:center;display:flex}.logo{font-family:Playfair Display,serif;font-weight:700;gap:.7rem}.logo:first-letter{font-size:1.4rem}.logo span{font-size:1.1rem}.nav nav{align-items:center;display:flex;gap:1.8rem}.nav nav a{color:#60788c;font-size:.9rem;font-weight:600}.nav nav a.active,.nav nav a:hover{color:#1f3042}.nav-cta{background:#1f3042!important;border-radius:999px;color:#fbfaf7!important;padding:.55rem 1rem}.hero{min-height:calc(100vh - 76px)}.hero,.hero-grid{align-items:center;display:grid}.hero-grid{grid-gap:5rem;gap:5rem;grid-template-columns:1.1fr .9fr}.hero-card{aspect-ratio:4/5;background:#fbfaf7;border:1px solid #d7d0c5;box-shadow:30px 30px 0 #1f304224;display:flex;flex-direction:column;justify-content:flex-end;margin:auto;max-width:410px;padding:3rem;transform:rotate(3deg);width:100%}.hero-card span{font-family:Playfair Display,serif;font-size:clamp(2rem,4vw,4rem)}.hero-card span:nth-child(2){margin-left:3rem}.hero-card span:nth-child(3){margin-left:6rem}.projects{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(2,1fr);margin-top:3rem}.project{background:#fbfaf7;border:1px solid #d7d0c5}.project.featured{display:grid;grid-column:1/-1;grid-template-columns:1.2fr .8fr}.project-image{background:#d8e0e5;display:block;min-height:330px;overflow:hidden;position:relative}.featured .project-image{min-height:500px}.project-image img{height:100%;object-fit:cover;width:100%}.project-image>span{background:#ffffffe6;border-radius:999px;bottom:1rem;font-size:.75rem;font-weight:700;left:1rem;padding:.4rem .7rem;position:absolute}.project-copy{padding:2rem}.project-copy>p{color:#60788c}.tags{display:flex;flex-wrap:wrap;gap:.45rem;margin:1.3rem 0}.tags span{border:1px solid #d7d0c5;border-radius:999px;color:#60788c;font-size:.74rem;padding:.3rem .6rem}.tags.large span{font-size:.84rem;padding:.5rem .8rem}.text-link{border-bottom:1px solid;font-weight:700}.services{grid-gap:1px;background:#d7d0c5;border:1px solid #d7d0c5;display:grid;gap:1px;grid-template-columns:repeat(3,1fr);margin-top:3rem}.services article{background:#f4f1ea;padding:2.3rem}.soft .services article{background:#fbfaf7}.services b{color:#315765}.two-col{grid-gap:6rem;align-items:center;display:grid;gap:6rem;grid-template-columns:.8fr 1.2fr}.placeholder{background:#fbfaf7;border:1px solid #d7d0c5;color:#315765;display:grid;font:6rem Playfair Display;min-height:400px;place-items:center}.placeholder.large{min-height:600px}.cta{background:#315765;color:#fbfaf7}.cta .eyebrow{color:#d8e0e5}.page-intro{margin-bottom:4rem;max-width:800px}.page-intro>p:last-child{color:#60788c;font-size:1.1rem}.case-hero{padding:7rem 0 4rem}.case-hero-image{border-radius:18px;box-shadow:0 12px 35px #0003;margin:3rem auto 0;overflow:hidden;width:70%}.case-hero-image img{display:block;height:auto;width:100%}.meta{grid-gap:2rem;border-bottom:1px solid #d7d0c5;border-top:1px solid #d7d0c5;display:grid;gap:2rem;grid-template-columns:repeat(3,1fr);margin:3rem 0;padding:2rem 0}.meta div{display:flex;flex-direction:column;gap:.3rem}.meta small{color:#60788c;letter-spacing:.1em;text-transform:uppercase}.meta strong{font-size:.9rem}.case-section{padding:6rem 0}.case-section img{max-width:800px}.case-section>div>p:not(.eyebrow){color:#60788c;font-size:1.05rem;max-width:800px}.palette{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(6,1fr);margin-top:3rem}.palette i{aspect-ratio:1;border:1px solid #00000014;margin-bottom:.5rem}.palette i,.palette small,.palette strong{display:block}.palette small{color:#60788c}.site-map{display:flex;flex-wrap:wrap;gap:.7rem;margin:2rem 0}.site-map span{background:#fbfaf7;border:1px solid #d7d0c5;border-radius:999px;padding:.8rem 1.1rem}.devices{grid-gap:1rem;align-items:flex-end;display:grid;gap:1rem;grid-template-columns:2fr 1fr .55fr;margin-top:3rem}.devices div{background:#fbfaf7;border:1px solid #d7d0c5;color:#60788c;display:grid;font-weight:700;min-height:250px;place-items:center}.devices div:nth-child(2){min-height:310px}.devices div:nth-child(3){min-height:380px}.process{grid-gap:1px;background:#d7d0c5;display:grid;gap:1px;grid-template-columns:repeat(5,1fr);margin-top:3rem}.process article{background:#fbfaf7;min-height:210px;padding:1.5rem}.process b{color:#315765}.confidential{background:#e6ebed;border:1px solid #d7d0c5;color:#60788c;display:grid;font-weight:700;margin-bottom:4rem;min-height:320px;padding:2rem;place-items:center;text-align:center}.case-end{background:#fbfaf7;padding:3rem 0}.case-end-inner{align-items:center;display:flex;justify-content:space-between}.about-image{aspect-ratio:4/5;overflow:hidden;width:100%}.about-image img{border-radius:5%;display:block;height:100%;object-fit:cover;width:100%}.about-block{margin-top:7rem}.education{align-items:center;background:#fbfaf7;border:1px solid #d7d0c5;display:flex;justify-content:space-between;padding:2rem}.education p{color:#60788c}.resume{max-width:950px}.resume-section{border-top:1px solid #d7d0c5;padding:3.5rem 0}.job{grid-gap:.2rem 2rem;border-bottom:1px solid #d7d0c5;display:grid;gap:.2rem 2rem;grid-template-columns:1fr auto;padding:2rem 0}.job h3,.job p{margin:0}.job li,.job>div p,.job>span{color:#60788c}.job ul{grid-column:1/-1}.skill-cols{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(3,1fr)}.skill-cols p{color:#60788c}.contact{grid-gap:6rem;display:grid;gap:6rem;grid-template-columns:.8fr 1.2fr}.contact-links{grid-gap:1.2rem;display:grid;gap:1.2rem;margin-top:2rem}.contact-links a{border-bottom:1px solid #d7d0c5;display:flex;flex-direction:column;font-weight:600;padding-bottom:1rem}.contact-links small{color:#60788c;letter-spacing:.1em;text-transform:uppercase}form{background:#fbfaf7;border:1px solid #d7d0c5;padding:2rem}form label{grid-gap:.4rem;display:grid;font-size:.85rem;font-weight:700;gap:.4rem;margin-bottom:1.2rem}form input,form textarea{background:#f4f1ea;border:1px solid #d7d0c5;padding:.8rem;width:100%}form input:focus,form textarea:focus{border-color:#315765;outline:2px solid #31576538}.success{background:#e6efe2;color:#31422c;padding:.8rem}.not-found{align-content:center;display:grid;min-height:60vh}@media(max-width:900px){.contact,.hero-grid,.two-col{gap:3rem;grid-template-columns:1fr}.project.featured,.services,.skill-cols{grid-template-columns:1fr}.process{grid-template-columns:repeat(2,1fr)}.palette{grid-template-columns:repeat(3,1fr)}.devices,.meta{grid-template-columns:1fr}.devices div,.devices div:nth-child(2),.devices div:nth-child(3){min-height:260px}}@media(max-width:700px){.container{width:calc(100% - 2rem)}.section{padding:4.5rem 0}.nav nav{gap:.8rem}.nav nav a:not(.nav-cta){display:none}.projects{grid-template-columns:1fr}.project.featured{grid-column:auto}.featured .project-image{min-height:330px}.process{grid-template-columns:1fr}.palette{grid-template-columns:repeat(2,1fr)}.job{grid-template-columns:1fr}.case-end-inner{align-items:stretch;flex-direction:column;gap:1.2rem}.case-end .button{text-align:center}}
/*# sourceMappingURL=main.fd2c6b34.css.map*/