:root{--ink: #121416;--muted: #626970;--line: rgba(18, 20, 22, 0.14);--soft: #f6f6f3;--white: #ffffff;--copper: #a56d3f;--green: #26463f;--blue: #4b7385;--shadow: 0 24px 70px rgba(18, 20, 22, 0.12);--radius: 8px}html{background:#fff;scroll-behavior:smooth}body{background:#fff;color:#121416;font-family:"Open Sans",Arial,sans-serif;overflow-x:hidden}h1,h2,h3,h4,.kicker,.nav-link,.button,.stat-number,.page-label{font-family:"Oswald",Arial,sans-serif;letter-spacing:0}h1{font-size:clamp(3.2rem,8vw,8.2rem);font-weight:500;line-height:.94;text-transform:uppercase}h2{font-size:clamp(2.1rem,4.8vw,5rem);font-weight:500;line-height:1;text-transform:uppercase}h3{font-size:clamp(1.3rem,2.2vw,2.1rem);font-weight:500;line-height:1.12;text-transform:uppercase}p{color:#626970;line-height:1.75}a{color:inherit}img{display:block;height:100%;object-fit:cover;width:100%}.container{padding-left:max(1.25rem,env(safe-area-inset-left, 0px));padding-right:max(1.25rem,env(safe-area-inset-right, 0px))}.section{background:#fff;padding:clamp(4.5rem,9vw,8rem) 0;position:relative}.section.is-compact{padding:clamp(2.8rem,6vw,5rem) 0}.section.section-dark{background:#f6f6f3}.head{align-items:end;border-top:1px solid rgba(18,20,22,.14);display:grid;gap:2rem;grid-template-columns:minmax(0, 1.15fr) minmax(17rem, 0.85fr);padding-top:1.4rem}.kicker{color:#a56d3f;font-size:.88rem;margin-bottom:1.1rem;text-transform:uppercase}.lead{color:#121416;font-size:clamp(1.03rem,1.5vw,1.3rem);max-width:42rem}.muted{color:#626970}.button{border:1px solid #121416;border-radius:0;font-weight:500;min-height:3rem;padding-inline:1.25rem;text-transform:uppercase;transition:background 220ms ease,color 220ms ease,transform 220ms ease}.button:hover{background:#121416;color:#fff;transform:translateY(-2px)}.button.is-inverted{background:#121416;color:#fff}.button.is-inverted:hover{background:#fff;color:#121416}.navbar{background:hsla(0,0%,100%,.96);border-bottom:1px solid rgba(18,20,22,.14);min-height:4.75rem;position:sticky;top:0;z-index:50}.navbar .navbar-item,.navbar .navbar-link{color:#121416}.navbar .nav-link.is-active,.navbar .nav-link.is-active:hover,.navbar .nav-link.is-active:focus-visible{background-color:#eeede8;color:#121416}.brand{align-items:center;display:inline-flex;font-family:"Arsenal",Georgia,serif;font-size:3rem;font-weight:700;gap:.75rem;text-transform:uppercase}.brand-mark{aspect-ratio:1;border:1px solid #121416;display:inline-block;position:relative;width:2.35rem}.brand-mark::before,.brand-mark::after{background:#121416;content:"";position:absolute}.brand-mark::before{height:1px;left:18%;top:50%;transform:rotate(-38deg);width:64%}.brand-mark::after{height:64%;left:50%;top:18%;transform:rotate(38deg);width:1px}.nav-link{font-size:1rem;font-weight:500;text-transform:uppercase}.footer .brand{font-size:1.28rem;max-width:100%}.footer .brand span{min-width:0;overflow-wrap:anywhere}@media(max-width: 1215px){.navbar>.container{display:block}.navbar .navbar-brand{display:flex}.navbar .navbar-burger{display:block;margin-left:auto;flex-shrink:0}.navbar .navbar-menu{display:none}.navbar .navbar-menu.is-active{display:block}.navbar .navbar-end,.navbar .navbar-menu .navbar-item{display:block}}@media(max-width: 720px){.navbar .brand{font-size:clamp(1.5rem,6.8vw,2.2rem)}}.section.hero{padding:2.5rem 0 3rem}.hero-grid{align-items:start;display:grid;gap:clamp(2rem,5vw,5rem);grid-template-columns:minmax(0, 0.95fr) minmax(22rem, 1.05fr)}.hero h1 span{color:rgba(0,0,0,0);-webkit-text-stroke:1px #121416}.hero-pattern{inset:0;pointer-events:none;position:absolute}.hero-visual{align-self:end;display:grid;gap:1rem;grid-template-columns:minmax(0, 1fr) 14rem}.hero-main{aspect-ratio:.82;box-shadow:0 24px 70px rgba(18,20,22,.12);overflow:hidden}.hero-side{align-self:end;display:grid;gap:1rem}.hero-small{aspect-ratio:1;border:1px solid rgba(18,20,22,.14);overflow:hidden}.fact{border:1px solid rgba(18,20,22,.14);padding:1rem}.fact strong{display:block;font-family:"Oswald",Arial,sans-serif;font-size:2rem;font-weight:500;line-height:1;margin-bottom:.4rem}.ribbon{border-top:1px solid rgba(18,20,22,.14);display:grid;gap:1rem;grid-template-columns:repeat(4, 1fr);margin-top:2rem;padding-top:1rem}.ribbon span{color:#626970;font-size:.78rem;text-transform:uppercase}.positioning{display:grid;gap:clamp(2rem,5vw,5rem);grid-template-columns:minmax(0, 0.86fr) minmax(0, 1.14fr);margin-top:3rem}.statement{font-family:"Oswald",Arial,sans-serif;font-size:clamp(2rem,4vw,4.3rem);line-height:1.04;text-transform:uppercase}.positioning-copy p+p{margin-top:1.25rem}.positioning-copy a{color:#a56d3f;text-decoration:underline;text-underline-offset:.2em}.stats{display:grid;gap:1px;grid-template-columns:repeat(4, 1fr);margin-top:3rem}.stat{border:1px solid rgba(18,20,22,.14);padding:1.25rem}.stat-number{color:#26463f;display:block;font-size:clamp(2.2rem,4.8vw,4.2rem);line-height:1}.projects{display:grid;gap:1rem;grid-template-columns:1fr .8fr 1fr;margin-top:3.2rem}.project-card{background:#fff;border:1px solid rgba(18,20,22,.14);color:#121416;display:block;min-height:31rem;overflow:hidden;position:relative;transition:box-shadow 260ms ease,transform 260ms ease}.project-card:nth-child(2){margin-top:4rem;min-height:24rem}.project-card:hover{box-shadow:0 24px 70px rgba(18,20,22,.12);transform:translateY(-0.45rem)}.project-card img{filter:saturate(0.92);transition:filter 400ms ease,transform 500ms ease}.project-card:hover img{filter:saturate(1.06);transform:scale(1.035)}.project-meta{background:#fff;border-top:1px solid rgba(18,20,22,.14);bottom:0;left:0;padding:1rem;position:absolute;right:0}.project-meta p{margin:.3rem 0 0}.service-grid{display:grid;gap:1px;grid-template-columns:repeat(3, 1fr);margin-top:3.2rem}.service-card{border:1px solid rgba(18,20,22,.14);min-height:20rem;padding:1.25rem;position:relative;transition:background 220ms ease,transform 220ms ease}.service-card:hover{background:#f6f6f3;transform:translateY(-0.35rem)}.service-card small{color:#a56d3f;display:block;font-family:"Oswald",Arial,sans-serif;margin-bottom:2.5rem}.service-features{list-style:disc;padding-left:1.15rem;margin-top:1.25rem;color:#626970;line-height:1.65}.service-features li+li{margin-top:.5rem}.service-features li::marker{color:#a56d3f}.gallery-layout{display:grid;gap:1.25rem;grid-template-columns:17rem minmax(0, 1fr);margin-top:3.2rem}.filter{border-top:1px solid rgba(18,20,22,.14)}.filter-button{background:rgba(0,0,0,0);border:0;border-bottom:1px solid rgba(18,20,22,.14);color:#121416;cursor:pointer;display:block;font-family:"Oswald",Arial,sans-serif;font-size:1rem;padding:1rem 0;text-align:left;text-transform:uppercase;width:100%}.filter-button.is-active{color:#a56d3f;padding-left:.75rem}.gallery{display:grid;gap:1rem;grid-template-columns:repeat(3, 1fr)}.gallery-item{aspect-ratio:.82;border:1px solid rgba(18,20,22,.14);cursor:pointer;overflow:hidden}.gallery-item:nth-child(2),.gallery-item:nth-child(5){aspect-ratio:1.15}.steps{counter-reset:step;display:grid;gap:1px;grid-template-columns:repeat(5, 1fr);margin-top:3.2rem}.step{border:1px solid rgba(18,20,22,.14);min-height:18rem;padding:1.2rem}.step::before{color:rgba(18,20,22,.28);content:"0" counter(step);counter-increment:step;display:block;font-family:"Oswald",Arial,sans-serif;font-size:3rem;line-height:1;margin-bottom:4rem}.atelier{display:grid;gap:clamp(2rem,5vw,5rem);grid-template-columns:minmax(18rem, 0.82fr) minmax(0, 1.18fr);margin-top:3.2rem}.atelier-image{aspect-ratio:.88;box-shadow:0 24px 70px rgba(18,20,22,.12);overflow:hidden}.timeline{border-left:1px solid rgba(18,20,22,.14)}.timeline-item{display:grid;gap:1rem;grid-template-columns:6.5rem 1fr;padding:0 0 2rem 1.25rem;position:relative}.timeline-item::before{background:#a56d3f;content:"";height:.65rem;left:-0.34rem;position:absolute;top:.3rem;width:.65rem}.tech-story{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5rem;margin-top:2rem}.tech-layout{display:grid;gap:1rem;grid-template-columns:minmax(0, 1.16fr) minmax(18rem, 0.84fr);margin-top:3.2rem}.tech-image{min-height:34rem;overflow:hidden;position:relative}.tech-caption{background:#fff;border:1px solid rgba(18,20,22,.14);bottom:1rem;left:1rem;max-width:27rem;padding:1.2rem;position:absolute}.tech-list{display:grid;gap:1rem}.tech-card{border:1px solid rgba(18,20,22,.14);display:grid;gap:1rem;grid-template-columns:3.5rem 1fr;min-height:8rem;padding:1rem}.tech-card b{color:#a56d3f;font-family:"Oswald",Arial,sans-serif;font-size:1.25rem;font-weight:500}.faq{border-top:1px solid rgba(18,20,22,.14);margin-top:3.2rem}.faq-item{border-bottom:1px solid rgba(18,20,22,.14)}.faq-question{align-items:center;background:rgba(0,0,0,0);border:0;color:#121416;cursor:pointer;display:flex;font-family:"Oswald",Arial,sans-serif;font-size:clamp(1.1rem,2vw,1.7rem);justify-content:space-between;padding:1.25rem 0;text-align:left;text-transform:uppercase;width:100%}.faq-answer{display:none;max-width:48rem;padding-bottom:1.35rem}.faq-item.is-open .faq-answer{display:block}.cta{border:1px solid rgba(18,20,22,.14);display:grid;gap:2rem;grid-template-columns:minmax(0, 1fr) minmax(18rem, 0.4fr);padding:clamp(1.4rem,4vw,3rem)}.content-page{border-top:1px solid rgba(18,20,22,.14)}.content-body{color:#626970;font-size:1.05rem;line-height:1.8;max-width:52rem}.content-body>*:first-child{margin-top:0}.content-body h1,.content-body h2,.content-body h3,.content-body h4,.content-body h5,.content-body h6{color:#121416;margin:2.4rem 0 1rem}.content-body h1{font-size:clamp(1.9rem,3.2vw,2.6rem)}.content-body h2{font-size:clamp(1.6rem,2.6vw,2.1rem)}.content-body h3{font-size:clamp(1.2rem,2vw,1.5rem)}.content-body p{margin:0 0 1.2rem}.content-body strong,.content-body b{color:#121416}.content-body a{border-bottom:1px solid #a56d3f;color:#a56d3f}.content-body a:hover{border-color:#121416;color:#121416}.content-body ul,.content-body ol{margin:0 0 1.4rem;padding-left:1.4rem}.content-body ul li,.content-body ol li{margin-bottom:.5rem}.content-body img{width:auto;max-width:100%;height:auto;margin:1.5rem 0}.content-body table{border-collapse:collapse;margin:1.5rem 0;width:100%}.content-body table th,.content-body table td{border:1px solid rgba(18,20,22,.14);padding:.75rem 1rem;text-align:left}.content-body table th{color:#121416;font-family:"Oswald",Arial,sans-serif;text-transform:uppercase}.content-body blockquote{border-left:2px solid #a56d3f;color:#121416;font-style:italic;margin:1.5rem 0;padding-left:1.2rem}.blog-article-header{max-width:52rem}.blog-article-title{font-size:clamp(2.2rem,4.5vw,4rem);line-height:1.12;text-transform:none;overflow-wrap:anywhere}.blog-cta-link{color:#a56d3f;text-decoration:underline;text-underline-offset:.2em}.page-hero{background:#fff;padding:clamp(3rem,7vw,6.5rem) 0 clamp(2.5rem,5vw,4rem)}.page-hero-grid{align-items:end;display:grid;gap:clamp(2rem,5vw,5rem);grid-template-columns:minmax(0, 1fr) minmax(20rem, 0.74fr)}.page-label{border-bottom:1px solid rgba(18,20,22,.14);color:#a56d3f;display:inline-block;font-size:.9rem;margin-bottom:1rem;padding-bottom:.45rem;text-transform:uppercase}.page-image{aspect-ratio:1.2;border:1px solid rgba(18,20,22,.14);overflow:hidden}.card-grid{display:grid;gap:1rem;grid-template-columns:repeat(3, 1fr)}.info-card{border:1px solid rgba(18,20,22,.14);padding:1.2rem}.info-card.is-tall{min-height:21rem}.masonry{columns:3 18rem;column-gap:1rem}.masonry-item{border:1px solid rgba(18,20,22,.14);break-inside:avoid;display:block;margin-bottom:1rem;overflow:hidden}.masonry-item figure{aspect-ratio:1}.masonry-item.is-wide figure{aspect-ratio:1.3}.masonry-item.is-vertical figure{aspect-ratio:.72}.masonry-caption{background:#fff;border-top:1px solid rgba(18,20,22,.14);padding:1rem}.case-layout{display:grid;gap:clamp(2rem,5vw,4rem);grid-template-columns:minmax(16rem, 0.34fr) minmax(0, 0.66fr)}.case-facts{border-top:1px solid rgba(18,20,22,.14);position:sticky;top:6rem}.case-fact{border-bottom:1px solid rgba(18,20,22,.14);padding:1rem 0}.case-photo{border:1px solid rgba(18,20,22,.14);margin-bottom:1rem;overflow:hidden}.case-photo.is-large{aspect-ratio:1.25}.case-photo.is-vertical{aspect-ratio:.78}.price-table th,.price-table td{border-color:rgba(18,20,22,.14)}.blog-grid{columns:3;column-gap:2rem;column-rule:1px solid rgba(18,20,22,.14)}.blog-card{border-top:2px solid #121416;color:#121416;display:inline-block;width:100%;break-inside:avoid;vertical-align:top;margin-bottom:2rem;padding-top:1rem;min-width:0;overflow:hidden}.blog-card figure{margin:0;overflow:hidden}.blog-card figure img{width:100%;height:auto}.blog-card a:focus-visible{outline:2px solid #a56d3f;outline-offset:-2px}.blog-card.is-featured figure{aspect-ratio:1.55}.blog-body{display:flex;flex:1;flex-direction:column;gap:1rem;padding:1rem 0 0}.blog-card-title{font-family:"Arsenal",Georgia,serif;font-size:1.9rem;font-weight:700;line-height:1.15;text-transform:none;overflow-wrap:anywhere}.blog-card-more{align-self:flex-start;margin-top:auto;color:#a56d3f;display:inline-flex;align-items:center;gap:.5rem;min-height:2.75rem;text-decoration:underline;text-underline-offset:.25em}.blog-card-image{display:block}.blog-card-title a:hover{color:#a56d3f}.blog-index-hero{padding-bottom:2.5rem}.blog-question{display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 0.55fr);gap:2rem;padding:clamp(1.25rem,3vw,2.5rem);border-top:3px double #121416;border-bottom:1px solid rgba(18,20,22,.14);background:#f6f6f3}.blog-question h2{font-family:"Arsenal",Georgia,serif;font-size:clamp(1.8rem,3vw,2.6rem);text-transform:none}.blog-question p{margin-top:1rem}.blog-question-contact{align-self:center;min-width:0}.blog-question-email{display:block;margin-top:1rem;color:#a56d3f;overflow-wrap:anywhere}.content-body .content-image-gallery,.content-body .blog-photo-gallery{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:flex-start;gap:.75rem;margin:1.5rem 0 2.5rem}.content-body .content-image-gallery a,.content-body .blog-photo-gallery a{display:inline-flex;align-items:center;justify-content:center;flex:0 1 auto;max-width:100%;border:0;cursor:zoom-in}.content-body .content-image-gallery a:focus-visible,.content-body .blog-photo-gallery a:focus-visible{outline:2px solid #a56d3f;outline-offset:3px}.content-body .content-image-gallery img,.content-body .blog-photo-gallery img{width:auto;height:180px;max-width:100%;max-height:180px;margin:0;object-fit:contain}.content-body .blog-image-credit{padding-top:1rem;border-top:1px solid rgba(18,20,22,.14)}.contact-layout{display:grid;gap:1.25rem;grid-template-columns:minmax(18rem, 0.72fr) minmax(0, 1.28fr)}.contact-panel,.form-panel{border:1px solid rgba(18,20,22,.14);padding:clamp(1.25rem,3vw,2rem)}.map-placeholder{align-items:center;background:#f6f6f3;border:1px solid rgba(18,20,22,.14);display:flex;min-height:20rem;padding:1.5rem}.content-body .services-content .services-applications{columns:2 15rem;column-gap:2rem}.content-body .services-content .services-applications li{break-inside:avoid}.content-body .services-content .services-stages,.content-body .services-content .services-examples{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:1rem;margin:2rem 0 3rem;padding:0;list-style:none}.content-body .services-content .services-stages>li,.content-body .services-content .services-examples>figure{min-width:0;margin:0;border:1px solid rgba(18,20,22,.14);background:#fff}.content-body .services-content .services-photo{display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;border:0;background:#f6f6f3;cursor:zoom-in}.content-body .services-content .services-photo img{width:auto;height:auto;max-width:100%;max-height:100%;margin:0;object-fit:contain}.content-body .services-content .services-photo:focus-visible{outline:3px solid #a56d3f;outline-offset:3px}.content-body .services-content .services-stage-caption{padding:1rem}.content-body .services-content .services-number{color:#a56d3f;font-family:"Oswald",Arial,sans-serif;font-size:.9rem}.content-body .services-content .services-stage-caption h3{margin:.3rem 0 .75rem}.content-body .services-content .services-stage-caption p{margin:0;font-size:.95rem}.content-body .services-content .services-examples figcaption{padding:.75rem 1rem;font-size:.95rem}.content-body .services-content .services-contact{display:grid;grid-template-columns:minmax(0, 12rem) minmax(0, 1fr);gap:2rem;align-items:center;padding-top:1.5rem;border-top:1px solid rgba(18,20,22,.14)}.content-body .services-content .services-contact img{margin:0}.content-body .services-content .services-contact h3{margin-top:0}.content-body .services-content .services-contact a{overflow-wrap:anywhere}@media(max-width: 720px){.content-body .services-content{padding-inline:1rem}.content-body .services-content .services-stages,.content-body .services-content .services-examples{grid-template-columns:1fr}.content-body .services-content .services-contact{grid-template-columns:1fr;gap:1rem}.content-body .services-content .services-contact>img{max-width:12rem}}.content-body .about-content .about-intro{display:grid;grid-template-columns:minmax(0, 0.8fr) minmax(0, 1.2fr);align-items:start;gap:2rem}.content-body .about-content .about-intro h2{margin-top:0}.content-body .about-content .about-portrait{margin:0;text-align:left}.content-body .about-content .about-portrait img{margin:0;height:auto;max-width:100%}.content-body .about-content .about-portrait figcaption{margin-top:.8rem;font-size:.95rem;line-height:1.6}.content-body .about-content .about-gallery{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:1rem;margin:2rem 0}.content-body .about-content .about-gallery figure{margin:0;min-width:0;border:1px solid rgba(18,20,22,.14)}.content-body .about-content .about-gallery figcaption{padding:.75rem;font-size:.9rem;line-height:1.5}.content-body .about-content .about-photo{display:flex;align-items:center;justify-content:center;aspect-ratio:1;border:0;background:#f6f6f3;cursor:zoom-in}.content-body .about-content .about-photo img{width:auto;height:auto;max-width:100%;max-height:100%;margin:0;object-fit:contain}.content-body .about-content .about-photo:focus-visible{outline:2px solid #a56d3f;outline-offset:2px}.content-body .about-content .about-actions .button{color:#121416;border:1px solid #121416;white-space:normal;height:auto}.content-body .about-content .about-actions .button:hover{color:#fff}.content-body .about-content .about-actions .button.is-inverted{color:#fff}.content-body .about-content .about-actions .button.is-inverted:hover{color:#121416}@media(max-width: 720px){.content-body .about-content .about-intro,.content-body .about-content .about-gallery{grid-template-columns:1fr}.content-body .about-content .about-portrait{max-width:20rem}}.footer{background:#121416;color:#fff;padding:2rem 0}.footer p,.footer a{color:hsla(0,0%,100%,.72)}.footer a:hover{color:#fff}.footer .brand-mark{border-color:hsla(0,0%,100%,.72)}.footer .brand-mark::before,.footer .brand-mark::after{background:hsla(0,0%,100%,.72)}.footer-nav{display:flex;flex-wrap:wrap;gap:.25rem 1.5rem}.footer-nav a{font-family:"Oswald",Arial,sans-serif;font-size:.88rem;text-transform:uppercase}.footer-bottom{border-top:1px solid hsla(0,0%,100%,.12);display:flex;font-size:.82rem;justify-content:space-between;margin-top:1.5rem;padding-top:1.25rem}.reveal{opacity:0;transform:translateY(1.6rem);transition:opacity 620ms ease,transform 620ms ease}.reveal.is-visible{opacity:1;transform:translateY(0)}.lightbox{align-items:center;background:rgba(18,20,22,.9);display:none;inset:0;justify-content:center;padding:1.5rem;position:fixed;z-index:100}.lightbox.is-active{display:flex}.lightbox figure{max-height:88vh;max-width:min(78rem,94vw);position:relative}.lightbox img{max-height:88vh;object-fit:contain}.lightbox button{background:#fff;border:0;cursor:pointer;font-family:"Oswald",Arial,sans-serif;padding:.7rem 1rem;position:absolute;right:1rem;text-transform:uppercase;top:1rem;z-index:2}@media(max-width: 1023px){.head,.hero-grid,.positioning,.atelier,.tech-layout,.tech-story,.blog-question,.cta,.page-hero-grid,.case-layout,.contact-layout{grid-template-columns:1fr}.projects,.service-grid,.steps,.card-grid{grid-template-columns:1fr 1fr}.blog-grid{columns:2}.gallery-layout{grid-template-columns:1fr}.case-facts{position:static}}@media(max-width: 720px){.section{padding:4rem 0}.hero-visual{grid-template-columns:1fr}.hero-side{grid-template-columns:1fr 1fr}.ribbon,.stats,.projects,.service-grid,.gallery,.steps,.card-grid{grid-template-columns:1fr}.blog-grid{columns:1}.project-card,.project-card:nth-child(2){margin-top:0;min-height:24rem}.timeline-item{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:.5rem}}.portfolio-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:1.5rem;margin-top:2rem}.portfolio-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid rgba(18,20,22,.14);background:#fff;color:#121416}.portfolio-card:hover,.portfolio-card:focus-visible{border-color:#a56d3f}.portfolio-card:focus-visible{outline:2px solid #a56d3f;outline-offset:4px}.portfolio-card-image{aspect-ratio:4/3;margin:0;overflow:hidden}.portfolio-card-image img{display:block;width:100%;height:100%;object-fit:cover}.portfolio-card-body{display:flex;flex:1;flex-direction:column;padding:1.25rem}.portfolio-card-body h3{margin:0 0 1rem;font-size:1.45rem;line-height:1.2}.portfolio-card-body p{margin:0 0 1.25rem}.portfolio-card-more{margin-top:auto;color:#a56d3f}.portfolio-card .tag,.portfolio-project-tags .tag{max-width:100%;height:auto;white-space:normal;overflow-wrap:anywhere}.portfolio-card .tag:empty,.portfolio-project-tags .tag:empty{display:none}.portfolio-gallery{columns:3;column-gap:1rem}.portfolio-gallery-item{display:inline-block;width:100%;margin:0 0 1rem;break-inside:avoid;vertical-align:top;border:1px solid rgba(18,20,22,.14)}.portfolio-gallery-item a{display:block;cursor:zoom-in}.portfolio-gallery-item a:focus-visible{outline:2px solid #a56d3f;outline-offset:3px}.portfolio-gallery-item img{display:block;width:100%;height:auto}.portfolio-gallery-item figcaption{padding:.75rem 1rem;font-size:.9rem;line-height:1.5}@media(max-width: 1023px){.portfolio-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}.portfolio-gallery{columns:2}}@media(max-width: 600px){.portfolio-grid{grid-template-columns:1fr}.portfolio-gallery{columns:1}}.portfolio-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}.portfolio-filters .filter-button{width:auto;padding:.65rem 1rem;border:1px solid rgba(18,20,22,.14)}.portfolio-filters .filter-button.is-active{padding-left:1rem;background:#121416;border-color:#121416;color:#fff}.portfolio-filters .filter-button:focus-visible,[data-portfolio-gallery] a:focus-visible{outline:2px solid #a56d3f;outline-offset:3px}.portfolio-preview{position:relative;display:block;margin:0}.portfolio-preview[hidden]{display:none}.portfolio-preview img{width:100%;height:100%;object-fit:cover}.portfolio-preview-title{position:absolute;bottom:0;left:0;right:0;padding:1.5rem .75rem .75rem;color:#fff;background:linear-gradient(transparent, rgba(0, 0, 0, 0.8));overflow-wrap:anywhere}
