.showcase-heading{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;margin:64px 0 32px;padding-top:36px;border-top:1px solid var(--line)}
.showcase-heading h3{font-size:clamp(26px,3vw,40px);line-height:1.16;font-weight:400;letter-spacing:-1.3px;margin:0}
.showcase-heading h3 span{color:var(--muted)}
.showcase-heading>p{font-size:14px;line-height:1.8;color:var(--muted);max-width:530px;margin:0}
.showcase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 36px;margin-bottom:64px}
.showcase-project{min-width:0;scroll-margin-top:28px}
.showcase-project:focus{outline:none}
.showcase-featured{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1fr;gap:36px;align-items:start;padding-bottom:36px;border-bottom:1px solid var(--line)}
.showcase-featured .project-meta{margin-top:0}
.showcase-visual{background:var(--surface);border:1px solid var(--line);aspect-ratio:1.55}
.showcase-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}
.showcase-visual .image-caption{background:var(--inset);color:var(--fg)}
:root[data-theme="light"] .showcase-visual .image-caption{color:var(--fg)}
.showcase-project .project-stack{font-size:11px;line-height:1.7;margin:16px 0 4px;color:var(--fg)}
.screenshot-actions{gap:24px;justify-content:flex-start;flex-wrap:wrap}
.screenshot-actions .project-link{margin-top:6px;font-size:12px;gap:16px;padding-top:8px}
.project-overview{border-top:1px solid var(--line);margin-top:20px}
.project-overview summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;min-height:48px;padding:12px 0;cursor:pointer;font-size:13px}
.project-overview summary::-webkit-details-marker{display:none}
.project-overview[open] .detail-plus{transform:rotate(45deg)}
.project-overview ul{padding-left:18px;margin:8px 0 18px;color:var(--muted);font-size:13px;line-height:1.8}
.project-overview li{padding-left:4px;margin-bottom:8px}
.project-overview .project-demo-status{font-size:12px;line-height:1.7;padding-left:14px;border-left:2px solid var(--accent);margin:0 0 16px}
.project-gallery{color:var(--fg);background:var(--bg);border:1px solid var(--line);padding:0;width:min(1200px,calc(100vw - 32px));max-width:none;max-height:calc(100svh - 32px)}
.project-gallery[open]{display:flex;flex-direction:column}
.project-gallery::backdrop{background:rgb(0 0 0/.82)}
.project-gallery .dialog-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px 24px;border-bottom:1px solid var(--line);flex-shrink:0}
.project-gallery h2{font-size:16px;letter-spacing:-.3px}
.project-gallery .dialog-bar button{min-width:70px;font-size:13px}
.project-gallery .dialog-image-region{overflow:auto;min-height:0;overscroll-behavior:contain}
.project-gallery .dialog-image-region img{width:auto;max-width:100%;height:auto;display:block;margin-inline:auto}
.project-gallery .dialog-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:8px 24px;border-top:1px solid var(--line);flex-shrink:0;color:var(--muted);font-size:11px}
.project-gallery .dialog-footer a{display:inline-flex;align-items:center;gap:12px;min-height:44px;color:var(--fg)}
.project-gallery :focus-visible{outline:2px solid var(--accent);outline-offset:-4px}
.screenshot-open{overflow:hidden}
@media(max-width:900px){.showcase-featured{grid-template-columns:1fr}.showcase-featured .project-meta{margin-top:0}.showcase-heading{gap:28px}}
@media(max-width:650px){.showcase-heading{grid-template-columns:1fr;gap:20px;margin-top:44px}.showcase-grid{grid-template-columns:1fr;gap:36px;margin-bottom:44px}.showcase-featured{gap:24px}.project-gallery .dialog-bar{padding:10px 12px;gap:12px}.project-gallery h2{font-size:14px}.project-gallery .dialog-footer{padding:8px 12px;flex-wrap:wrap;gap:0}.project-gallery .dialog-footer>span{width:100%;line-height:1.5}}

.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.project-grid>.project{min-width:0;scroll-margin-top:28px}
.lost-found-project:focus{outline:none}
.lost-found-visual{display:flex;flex-direction:column;justify-content:space-between;background:#e3ecdf;color:#1d3b30;padding:22px 24px;text-decoration:none}
.travel-wordmark{display:block;position:relative;font-family:Georgia,'Times New Roman',serif;font-size:clamp(32px,3.5vw,52px);font-weight:400;line-height:.89;letter-spacing:-2px}
.travel-wordmark i{font-weight:400;font-size:.8em}
.travel-mark{position:absolute;right:0;top:0;font-family:Arial,sans-serif;font-size:48px;font-weight:300;letter-spacing:0}
.travel-mark svg{display:block;width:40px;height:40px}
.travel-domain{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;letter-spacing:0;margin-top:20px}
.travel-domain svg{width:14px;height:14px}
.lost-found-visual:hover .travel-domain,.lost-found-visual:focus-visible .travel-domain{text-decoration:underline;text-underline-offset:4px}
@media(max-width:1000px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}.travel-wordmark{font-size:clamp(42px,6vw,64px)}}
@media(max-width:650px){.project-grid{grid-template-columns:1fr;gap:36px}.travel-wordmark{font-size:clamp(40px,12vw,72px)}}
