/* A restrained architectural catalogue; no runtime font or network dependency. */
:root{--paper:#f7f8f8;--ink:#242729;--muted:#6d7377;--line:#ccd0d2;--image:#e8ece8;--sans:'Helvetica Neue',Helvetica,Arial,sans-serif;--mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid #304e68;outline-offset:5px}[hidden]{display:none!important}::selection{background:#ccd7df}.page-width{width:calc(100% - 192px);max-width:1200px;margin-inline:auto}.skip-link{position:fixed;top:-80px;left:16px;z-index:100;background:var(--ink);color:#fff;padding:12px 20px}.skip-link:focus{top:10px}.site-header{height:108px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:19px;font-weight:500;line-height:1.1;white-space:nowrap}.brand img{width:29px;height:29px}nav{display:flex;align-items:center;gap:40px;font-size:12px}nav>a{padding-block:12px}nav>a:hover{text-decoration:underline;text-underline-offset:5px}#language{border:0;border-left:1px solid var(--line);background:none;padding:10px 0 10px 24px;min-height:44px;min-width:60px;font-size:11px}
.introduction{display:grid;grid-template-columns:minmax(0,2.6fr) minmax(220px,1fr);column-gap:64px;align-items:end;padding-block:60px 58px}.eyebrow{text-transform:uppercase;font-size:9px;line-height:1.4;letter-spacing:1.1px;font-weight:500;margin:0 0 22px}h1{font-size:clamp(43px,4.25vw,62px);font-weight:400;line-height:1.12;letter-spacing:0;margin:0}h1>span{display:block}.intro-copy{max-width:280px;padding-bottom:3px}.intro-copy>p{font-size:12px;line-height:1.85;margin:0 0 24px;color:var(--muted)}.text-link{display:flex;align-items:center;gap:5px;font-size:11px}.text-link>span:last-child{margin-left:auto;font-size:18px;line-height:1}.text-link:hover{text-decoration:underline;text-underline-offset:4px}.big-number{font-variant-numeric:tabular-nums}
.collection{padding-top:14px;padding-bottom:86px}.section-heading{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--line);padding-bottom:19px;margin-bottom:30px}.section-heading h2{font-size:23px;line-height:1.2;font-weight:400;margin:0;letter-spacing:0}.section-heading>span{font-size:9px;color:var(--muted);font-family:var(--mono);letter-spacing:.3px}.campus-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:54px;row-gap:64px;align-items:start}.project-line{display:flex;align-items:center;gap:18px;font-size:10px;margin-bottom:12px;color:var(--muted)}.project-number{font-family:var(--mono);font-size:9px}.project-mark{margin-left:auto;width:14px;height:14px;color:var(--ink)}.project-mark svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:square}.card-image{overflow:hidden;aspect-ratio:1.4;background:var(--image)}.card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:opacity .18s}.campus-card:hover .card-image img{opacity:.88}.project-caption{display:flex;align-items:baseline;justify-content:space-between;column-gap:18px;row-gap:7px;flex-wrap:wrap;margin-top:17px}h3{font-size:21px;line-height:1.3;font-weight:400;letter-spacing:0;margin:0}.project-caption>span{font-size:10px;color:var(--muted)}.project-features{font-size:10px;line-height:1.85;color:var(--muted);margin:10px 0 12px}.project-link{display:inline-flex;gap:25px;align-items:center;font-size:10px;min-height:28px}.campus-card[data-campus="uchi"]{--campus-color:#800000}.campus-card[data-campus="umich"]{--campus-color:#00274c}.campus-card[data-campus="uw"]{--campus-color:#4b2e83}.campus-card[data-campus="ucsb"]{--campus-color:#005c84}.campus-card:is(:hover,:focus-visible) .project-caption h3,.campus-card:is(:hover,:focus-visible) .project-link,.campus-card:is(:hover,:focus-visible) .project-mark{color:var(--campus-color)}.campus-card:is(:hover,:focus-visible) .project-link>span:first-child{text-decoration:underline;text-decoration-color:currentColor;text-underline-offset:4px}.project-link>span:last-child{font-size:16px}
.site-footer{border-top:1px solid var(--line);padding-top:30px;padding-bottom:34px}.footer-title{display:flex;align-items:baseline;justify-content:space-between;gap:30px}.footer-title>a:first-child{font-size:30px;line-height:1.2;letter-spacing:0;font-weight:400}.back-top{font-size:10px;white-space:nowrap;display:flex;gap:22px}.back-top:hover{text-decoration:underline;text-underline-offset:4px}.footer-bottom{margin-top:29px;display:grid;grid-template-columns:1fr 2fr 1fr;gap:35px;color:var(--muted);font-size:9px;line-height:1.9}.footer-bottom p{margin:0;max-width:500px}.footer-bottom>a{text-align:right;color:var(--ink)}
html:lang(zh) body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Microsoft YaHei',sans-serif}html:lang(zh) h1{font-size:clamp(38px,4.1vw,56px);line-height:1.35;font-weight:400}html:lang(zh) .eyebrow{letter-spacing:1px}html:lang(zh) .intro-copy>p{font-size:13px;line-height:1.95}html:lang(zh) .project-caption h3{font-size:20px}html:lang(zh) .project-features{font-size:11px}html:lang(zh) .footer-bottom{font-size:10px}
@media(max-width:1100px){.page-width{width:calc(100% - 128px)}.introduction{grid-template-columns:minmax(0,2.3fr) minmax(190px,1fr);gap:40px;padding-top:48px;padding-bottom:48px}h1{font-size:clamp(39px,4.4vw,48px)}.campus-grid{gap:58px 38px}.project-caption{display:block}.project-caption>span{display:block;margin-top:7px}.footer-bottom{grid-template-columns:1fr 2fr;gap:20px 35px}.footer-bottom>a{grid-column:1/-1;text-align:left}}
@media(max-width:800px){.page-width{width:calc(100% - 80px)}.site-header{height:88px}.brand{font-size:17px;gap:10px}.brand img{width:26px;height:26px}nav{gap:22px}#language{padding-left:19px}.introduction{grid-template-columns:minmax(0,1.8fr) minmax(170px,1fr);gap:35px}h1{font-size:39px}.eyebrow{font-size:8px}.intro-copy>p{font-size:11px}.text-link{font-size:10px}.campus-grid{gap:48px 30px}.project-line{font-size:9px;gap:11px}.project-caption h3{font-size:20px}.collection{padding-bottom:67px}.footer-title>a:first-child{font-size:28px}html:lang(zh) h1{font-size:36px}html:lang(zh) .intro-copy>p{font-size:12px}html:lang(zh) .project-caption h3{font-size:19px}}
@media(max-width:600px){.page-width{width:calc(100% - 48px)}.site-header{height:78px}.brand{font-size:16px;gap:9px}.brand img{width:24px;height:24px}nav>a{display:none}#language{border:0;padding:10px 0;min-width:44px;font-size:11px}.introduction{grid-template-columns:1fr;gap:26px;padding-top:38px;padding-bottom:38px}.eyebrow{margin-bottom:19px;font-size:8px}h1{font-size:clamp(37px,7.9vw,45px);max-width:470px;line-height:1.12}.intro-copy{max-width:100%;padding:0}.intro-copy>p{font-size:12px;line-height:1.85;max-width:340px;margin-bottom:22px}.text-link{font-size:10px;max-width:100%}.collection{padding-top:10px;padding-bottom:55px}.section-heading{margin-bottom:27px;padding-bottom:18px}.section-heading h2{font-size:22px}.section-heading>span{font-size:8px;letter-spacing:0}.campus-grid{grid-template-columns:1fr;gap:43px}.project-line{font-size:10px;margin-bottom:10px}.project-caption{margin-top:16px;display:flex}.project-caption h3{font-size:20px}.project-caption>span{font-size:10px;margin-top:0}.project-features{font-size:10px;margin:9px 0 8px}.project-link{font-size:10px}.site-footer{padding-top:24px;padding-bottom:28px}.footer-title{display:block}.footer-title>a:first-child{font-size:27px}.back-top{margin-top:20px;display:inline-flex;gap:18px}.footer-bottom{grid-template-columns:1fr;gap:15px;margin-top:25px;font-size:9px}.footer-bottom p{max-width:100%}.footer-bottom>a{grid-column:auto}html:lang(zh) h1{font-size:clamp(32px,7vw,39px);line-height:1.4}html:lang(zh) .intro-copy>p{font-size:12px}html:lang(zh) .project-caption h3{font-size:19px}html:lang(zh) .footer-bottom{font-size:10px}}
@media(max-width:360px){.page-width{width:calc(100% - 40px)}.brand{font-size:15px;gap:8px}.brand img{width:22px;height:22px}h1{font-size:36px}.section-heading>span{font-size:7px}.project-caption{display:block}.project-caption>span{margin-top:7px}.footer-title>a:first-child{font-size:25px}html:lang(zh) h1{font-size:31px}html:lang(zh) .project-caption h3{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

/* Match the original desktop arrow box without depending on a system font. */
.project-link>.model-arrow{display:block;flex:0 0 16px;width:16px;height:24px;line-height:0}.model-arrow svg{display:block;width:16px;height:24px;fill:none;stroke:currentColor;stroke-width:.8;stroke-linecap:square;stroke-linejoin:miter}
