/* Hallmark · shape: project directory · genre: editorial · theme: existing brand · redesign: restyle · copy: verbatim · hero: kept · nav: kept · footer: kept · v2.0.0 */
/* Hallmark · pre-emit critique: P4 H4 E4 S5 R4 V4 · weakest: H, separate home discovery from project detail */
.project-switch{display:flex;flex-wrap:wrap;gap:var(--space-xs);padding:0;margin:0 0 var(--space-lg)}
.project-switch a{display:inline-flex;align-items:center;min-height:40px;padding:var(--space-xs) var(--space-sm);font-size:13px;border-bottom:2px solid var(--color-rule);color:var(--color-ink);white-space:nowrap}
.project-switch a:hover,.project-switch a[aria-current=page]{border-bottom-color:var(--color-accent);color:var(--color-accent);text-decoration:none}
.portfolio-hero{background:var(--color-paper-2);padding-block:var(--space-2xl)}
.portfolio-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:var(--space-xl);align-items:center}
.portfolio-grid h1{font-size:clamp(36px,4vw,52px);max-width:14ch;margin-bottom:var(--space-lg)}
.portfolio-grid>div>p{max-width:52ch;margin-bottom:var(--space-lg)}
.portfolio-grid figure{margin:0;min-width:0}
.portfolio-grid img{width:100%;height:390px;object-fit:cover;border-radius:14px}
.hero-project-links{margin-top:var(--space-lg)}
.project-directory{margin-top:var(--space-xl)}
.project-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:var(--space-xl);align-items:center;padding-block:var(--space-xl);border-top:1px solid var(--color-rule)}
.project-row:last-child{padding-bottom:0}
.project-photo{display:block;border-radius:12px;overflow:clip}
.project-photo img{width:100%;height:310px;object-fit:cover}
.project-row-content h3{font-family:var(--font-display);font-size:28px;line-height:1.3;font-weight:700;margin-bottom:var(--space-md);overflow-wrap:break-word;min-width:0;text-wrap:balance}
.project-row-content h3 a{color:var(--color-ink)}
.project-region{font-size:13px;color:var(--color-muted);margin-bottom:var(--space-xs)}
.project-row-content>p:not(.project-region){font-size:15px}
.row-facts{margin:var(--space-md) 0 var(--space-lg)}
.row-facts>div{display:flex;gap:var(--space-md);padding-block:var(--space-2xs);font-size:14px}
.row-facts dt{color:var(--color-muted);flex:0 0 80px}
.row-facts dd{margin:0}
.comparison-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-lg);margin-top:var(--space-xl)}
.comparison-grid article{border-top:2px solid var(--color-accent);padding-top:var(--space-lg)}
.comparison-grid h3{font-size:20px}
.comparison-grid dl{margin:var(--space-md) 0}
.comparison-grid dl>div{margin-bottom:var(--space-md)}
.comparison-grid dt{font-size:13px;color:var(--color-muted)}
.comparison-grid dd{margin:0;font-size:15px}
.comparison-grid article>a{font-size:14px;text-decoration:underline}
.comparison-note{margin-top:var(--space-xl)}
.reference-list{margin-top:var(--space-lg)}
.reference-list>a{display:block;padding:var(--space-lg) 0;border-top:1px solid var(--color-rule)}
.reference-list strong{display:block;font-weight:500}
.reference-list span{display:block;font-size:13px;color:var(--color-muted);margin-top:var(--space-2xs)}
.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg);margin-top:var(--space-lg)}
.project-gallery figure{margin:0}
.project-gallery img{display:block;width:100%;height:300px;object-fit:cover}
.detail-location{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:var(--space-xl);align-items:start}
.detail-location h3{font-family:var(--font-body);font-weight:500;font-size:19px}
.detail-location ul{padding-left:var(--space-lg);margin:0}
.detail-location li{margin-bottom:var(--space-md);font-size:15px}
.document-links{display:flex;flex-wrap:wrap;gap:var(--space-lg);margin-block:var(--space-lg)}
.document-links a{font-size:14px;text-decoration:underline}
.related-links{display:flex;flex-wrap:wrap;gap:var(--space-lg)}
.related-links a{padding-block:var(--space-sm);border-bottom:1px solid var(--color-rule);font-size:15px}
@media(max-width:820px){.portfolio-grid{grid-template-columns:minmax(0,1fr)}.portfolio-grid h1{max-width:18ch}.portfolio-grid img{height:280px}.portfolio-hero{padding-block:var(--space-xl)}.project-row{grid-template-columns:minmax(0,1fr);gap:var(--space-lg)}.project-photo img{height:auto;max-height:340px;aspect-ratio:16/10}.comparison-grid{grid-template-columns:minmax(0,1fr)}.comparison-grid dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-sm)}.project-gallery{grid-template-columns:minmax(0,1fr)}.project-gallery img{height:auto;max-height:340px}.detail-location{grid-template-columns:minmax(0,1fr);gap:var(--space-lg)}.project-summary h1{font-size:30px}.project-switch{gap:var(--space-2xs)}}
@media(max-width:420px){.portfolio-grid h1{font-size:36px}.portfolio-grid img{height:240px}.project-switch a{font-size:12px;padding-inline:var(--space-xs)}.project-row-content h3{font-size:26px}.comparison-grid dl{grid-template-columns:minmax(0,1fr)}.comparison-grid dl>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:var(--space-sm)}}

html,body{overflow-x:clip}
:is(a,button,input,select,summary):focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}
:is(a,button):active{opacity:.78}
.portfolio-grid h1,.project-row-content h3{min-width:0;overflow-wrap:break-word;text-wrap:balance}
