/* The showcase uses the shared AUREFACT typography, palette and page shell. */
.project-showcase{padding-top:57px;padding-bottom:88px}.projects-intro{display:flex;align-items:start;justify-content:space-between;gap:40px;padding-bottom:33px;border-bottom:1px solid var(--line);margin-bottom:39px}.projects-intro>.kicker{margin:0}.projects-intro>p:last-child{font-size:16px;color:var(--muted);line-height:1.75;max-width:410px}.projects-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}.project-card{min-width:0}.project-card-offset{margin-top:88px}.project-caption{margin-bottom:23px}.project-category{font-size:10px;line-height:1.5;letter-spacing:.12em;text-transform:uppercase;color:var(--brass);margin-bottom:10px}.project-caption h2{font-size:28px;line-height:1.3;letter-spacing:-.035em}.project-caption>p:last-child{font-size:14px;line-height:1.7;color:var(--muted);margin-top:11px}.project-open{display:block;width:100%;text-align:left;cursor:zoom-in;color:var(--ink)}.project-browser{display:block;border:1px solid #c2c5c2;border-radius:7px;overflow:hidden;background:#fff;box-shadow:0 12px 35px #1019210b;transition:box-shadow .25s,border-color .25s,transform .25s}.project-browser-bar{display:flex;align-items:center;justify-content:space-between;gap:13px;padding:12px 15px;border-bottom:1px solid #d9dcd8;background:#eeeee8;color:#5d696e;font-size:10px;line-height:1.4;letter-spacing:.03em}.project-browser-dots{display:flex;gap:5px;align-items:center;width:34px}.project-browser-dots>i{display:block;width:6px;height:6px;border-radius:50%;background:#a9a698}.project-browser-dots>i:nth-child(2){background:#beb496}.project-browser-dots>i:nth-child(3){background:#cbb37a}.project-browser-bar>.icon{width:13px;height:13px;flex-shrink:0}.project-browser img{display:block;width:100%;height:auto;aspect-ratio:1200/750;object-fit:contain;object-position:top}.project-view-label{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:16px;font-size:13px;font-weight:500}.project-view-label>.icon{width:17px;height:17px;color:var(--brass)}.project-open:hover .project-browser{border-color:#ac8b52;box-shadow:0 17px 40px #10192118;transform:translateY(-3px)}.project-open:hover .project-view-label{color:var(--brass)}.project-open:focus-visible{outline-offset:8px}.project-no-script{font-size:13px;margin-top:28px;color:var(--muted)}.project-no-script a{text-decoration:underline;text-underline-offset:3px}
.project-dialog{width:min(1280px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 48px);margin:auto;padding:0;border:1px solid #78828a;border-radius:8px;background:var(--cream);box-shadow:0 30px 110px #0006;overflow:hidden}.project-dialog::backdrop{background:#07111be0;backdrop-filter:blur(6px)}.project-viewer-header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:19px 23px;background:var(--navy);color:var(--cream);border-bottom:1px solid #37444e}.project-viewer-header h2{font-size:21px;letter-spacing:-.025em;line-height:1.35}.project-viewer-header p{font-size:11px;color:#bac4cb;line-height:1.6;margin-top:4px}.project-dialog .dialog-close{position:static;flex-shrink:0;width:37px;height:37px;border-color:#727e87;color:var(--cream);background:transparent}.project-dialog .dialog-close:hover{background:var(--gold);border-color:var(--gold);color:var(--navy)}.project-viewer-scroll{overflow:auto;max-height:calc(100dvh - 149px);padding:22px;background:#e5e5df;overscroll-behavior:contain}.project-viewer-scroll img{display:block;width:100%;height:auto;max-width:1200px;margin:0 auto;border:1px solid #c7cdca;background:#fff}
@media(max-width:1200px){.projects-grid{gap:34px}.project-caption h2{font-size:25px}.project-card-offset{margin-top:72px}.projects-intro>p:last-child{font-size:15px}}
@media(max-width:900px){.project-showcase{padding-top:44px;padding-bottom:66px}.projects-grid{gap:26px}.project-caption h2{font-size:23px}.project-caption>p:last-child{font-size:13px}.project-card-offset{margin-top:65px}.project-browser-bar{padding:10px 12px}.project-browser-bar>.icon{width:12px;height:12px}.project-view-label{font-size:12px}.project-category{font-size:9px}.projects-intro{gap:30px;margin-bottom:33px}.projects-intro>p:last-child{max-width:320px;font-size:14px}}
@media(max-width:700px){.project-showcase{padding-top:35px;padding-bottom:50px}.projects-intro{display:block;padding-bottom:24px;margin-bottom:29px}.projects-intro>.kicker{margin-bottom:13px}.projects-intro>p:last-child{font-size:14px;max-width:420px}.projects-grid{grid-template-columns:minmax(0,1fr);gap:39px}.project-card-offset{margin-top:0}.project-caption{margin-bottom:19px}.project-category{font-size:10px;margin-bottom:9px}.project-caption h2{font-size:26px}.project-caption>p:last-child{font-size:14px;margin-top:9px}.project-browser-bar{font-size:9px;padding:10px 12px}.project-view-label{padding-top:13px;font-size:12px}.project-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 24px);border-radius:6px}.project-viewer-header{padding:15px 16px;gap:15px}.project-viewer-header h2{font-size:17px;line-height:1.4}.project-viewer-header p{font-size:10px}.project-dialog .dialog-close{width:34px;height:34px}.project-viewer-scroll{max-height:calc(100dvh - 124px);padding:10px}.page-projects .contact-actions{align-items:flex-start}.page-projects .contact-actions .button{white-space:normal}}
@media(max-width:380px){.project-caption h2{font-size:24px}.project-viewer-header h2{font-size:16px}.project-viewer-header p{max-width:200px}}
@media(prefers-reduced-motion:reduce){.project-browser{transition:none}.project-open:hover .project-browser{transform:none}}

.project-viewer-controls{display:flex;align-items:center;gap:18px;flex-shrink:0}.project-viewer-controls .project-zoom{border-bottom:1px solid #d9b877!important;color:var(--gold);font-size:12px;padding:6px 0!important}.project-viewer-controls .project-zoom:hover{color:var(--cream)}.project-viewer-scroll.is-zoomed img{width:1200px;max-width:none;margin:0}.project-viewer-controls .project-zoom:focus-visible{outline-color:var(--gold)}
@media(max-width:700px){.project-viewer-controls{gap:12px}.project-viewer-controls .project-zoom{font-size:10px;max-width:75px;line-height:1.5;text-align:center}.project-viewer-header h2{font-size:15px}.project-viewer-header p{max-width:180px}}
