/* Vector arrows use strokes rather than font glyphs, including on iOS. */
.icon-arrow{display:inline-block;width:1.15em;height:1.15em;vertical-align:-.15em;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.button .icon-arrow{width:18px;height:18px}.button span .icon-arrow{width:16px;height:16px}.nav-cta .icon-arrow{width:18px;height:18px}.project-arrow .icon-arrow{width:21px;height:21px}.service b .icon-arrow{width:22px;height:22px}.photo-caption .icon-arrow{width:24px;height:24px}.explore .icon-arrow{width:16px;height:16px}.text-link .icon-arrow{width:16px;height:16px}.phone .icon-arrow{width:21px;height:21px}.instagram .icon-arrow,footer .icon-arrow{width:12px;height:12px;margin-left:5px}
.projects,.projects.is-filtered{position:relative;display:flex;align-items:flex-start;gap:28px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:0;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#99a184 #d7dcce;padding:8px 0 24px;margin:0;width:100%;max-width:none;cursor:grab}
.projects::-webkit-scrollbar{height:3px}.projects::-webkit-scrollbar-track{background:#d7dcce}.projects::-webkit-scrollbar-thumb{background:#99a184;border-radius:3px}
.projects .project,.projects.is-filtered .project{flex:0 0 46%;min-width:0;width:auto;scroll-snap-align:start;scroll-snap-stop:normal;grid-row:auto;user-select:none;-webkit-user-select:none;cursor:pointer}
.projects .project-image,.projects .project.featured .project-image,.projects.is-filtered .project-image{border-radius:8px}
.projects .project img,.projects .project.featured img,.projects .project:not(.featured) img,.projects.is-filtered .project img{height:440px;width:100%;object-fit:cover;-webkit-user-drag:none;pointer-events:none}
.projects .project.featured img{object-position:50% 50%}.projects .project.featured .project-arrow{top:20px;bottom:auto}.projects .project.featured .tag{bottom:22px;left:22px;max-width:75%}.projects .project-info{display:block;min-height:48px}.projects .project-info>span{display:block;margin-top:8px;text-align:left;max-width:none;font-size:10px}.projects .project h3{font-size:19px}
.projects.is-dragging{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto}.projects.is-dragging .project{cursor:grabbing}.projects.is-dragging .project img{transform:none}
.gallery-nav{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:24px}.gallery-hint{display:flex;align-items:center;gap:12px;font-size:10px;color:#737e67;letter-spacing:.2px}.gallery-hint .icon-arrow{width:30px;height:16px;stroke-width:1.25}.gallery-buttons{display:flex;gap:10px}.gallery-buttons button{border:1px solid #bfc7b1;background:transparent;color:var(--ink);border-radius:7px;width:46px;height:44px;display:grid;place-items:center;transition:background .25s,opacity .25s}.gallery-buttons button:hover:enabled{background:#dbe0ce}.gallery-buttons button:disabled{opacity:.3;cursor:default}.gallery-buttons .icon-arrow{width:21px;height:21px}.portfolio-footer{margin-top:30px}
@media(max-width:1100px){.projects .project,.projects.is-filtered .project{flex-basis:62%}.projects .project img,.projects .project.featured img,.projects .project:not(.featured) img,.projects.is-filtered .project img{height:420px}}
@media(max-width:700px){.projects,.projects.is-filtered{gap:16px;padding:4px 0 20px}.projects .project,.projects.is-filtered .project{flex-basis:86%}.projects .project img,.projects .project.featured img,.projects .project:not(.featured) img,.projects.is-filtered .project img{height:350px}.projects .project h3{font-size:16px;line-height:1.5}.projects .project-info>span{font-size:9px;margin-top:5px}.projects .project-info{margin-top:16px;min-height:55px}.projects .project.featured .project-arrow{top:16px;bottom:auto}.projects .project.featured .tag{left:13px;bottom:17px;padding:9px 10px;font-size:6px;max-width:75%}.projects .tag{left:13px;bottom:17px;padding:9px 10px;font-size:6px}.project-arrow .icon-arrow{width:19px;height:19px}.gallery-nav{margin-top:18px;gap:10px}.gallery-hint{font-size:9px;gap:8px;max-width:190px;line-height:1.6}.gallery-hint .icon-arrow{width:23px}.gallery-buttons button{width:40px;height:40px}.gallery-buttons{gap:8px}.portfolio-footer{margin-top:25px}}
