*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#f5f3ee;color:#111;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:12px;letter-spacing:.035em}
a{color:inherit;text-decoration:none}
header{position:fixed;left:0;right:0;top:0;z-index:10;display:flex;justify-content:space-between;padding:22px 30px;mix-blend-mode:multiply}
.brand{font-size:15px;font-weight:500;letter-spacing:.09em}
nav{display:flex;gap:28px;font-size:10px;letter-spacing:.09em}
main{padding:0 30px}
.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:7vh 0 4vh}
.hero img{width:min(92vw,1600px);max-height:88vh;object-fit:contain;display:block}
.work{padding-top:8vh}
.project{margin:17vh 0}
.project img{display:block;width:100%;object-fit:contain}
.project-wide{width:100%}
.project-wide img{max-height:82vh}
.project-tower{width:min(67vw,1050px);margin-left:auto;margin-right:5vw}
.project-paris{width:min(58vw,900px);margin-left:4vw}
.project-art{width:min(48vw,720px);margin-left:auto;margin-right:10vw}
.caption{display:flex;justify-content:space-between;gap:22px;padding-top:11px;font-size:10px;line-height:1.3;letter-spacing:.075em}
.caption .title{font-weight:500}
.about{margin:27vh 0 18vh;max-width:790px}
.eyebrow,.qualification{font-size:10px;letter-spacing:.09em}
.about h1{font-size:34px;font-weight:400;letter-spacing:-.025em;margin:24px 0 28px}
.about>p:not(.qualification){font-size:19px;line-height:1.42;letter-spacing:-.012em}
.qualification{margin-top:38px}
footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(0,0,0,.25);padding:18px 30px 28px;font-size:9px;letter-spacing:.08em}
@media(max-width:760px){
 header{padding:17px 16px}.brand{font-size:13px}nav{gap:14px;font-size:8px}
 main{padding:0 16px}.hero{min-height:90vh}.hero img{width:100%}
 .project{margin:13vh 0}.project-tower{width:88%;margin-right:0}.project-paris{width:90%;margin-left:0}.project-art{width:74%;margin-right:0}
 .caption{font-size:8px;gap:10px}
 .about{margin:20vh 0 14vh}.about h1{font-size:28px}.about>p:not(.qualification){font-size:17px}
 footer{padding:16px;flex-wrap:wrap}
}
.project-link{display:block}
.project-page{padding-top:115px}
.project-intro{display:grid;grid-template-columns:1.4fr .6fr;gap:10vw;align-items:end;margin:5vh 0 10vh}
.project-number,.project-tags{font-size:10px;line-height:1.55;letter-spacing:.08em}
.project-intro h1{font-size:52px;font-weight:400;letter-spacing:-.035em;margin:20px 0 8px}
.project-subtitle{font-size:17px;margin:0;letter-spacing:-.01em}
.project-hero{margin:0 0 12vh}
.project-hero img{width:100%;max-height:82vh;object-fit:contain}
.project-copy{width:min(720px,72vw);margin:0 0 18vh auto;font-size:19px;line-height:1.45;letter-spacing:-.012em}
.page-sequence{display:flex;flex-direction:column;gap:12vh}
.page-sequence figure{margin:0}
.page-sequence img{width:100%;display:block;box-shadow:0 1px 8px rgba(0,0,0,.05)}
.next-project{margin:20vh 0 8vh;padding-top:18px;border-top:1px solid rgba(0,0,0,.25);display:flex;justify-content:space-between;font-size:10px;letter-spacing:.08em}
@media(max-width:760px){
 .project-page{padding-top:90px}.project-intro{grid-template-columns:1fr;gap:5vh;margin-bottom:8vh}
 .project-intro h1{font-size:38px}.project-copy{width:100%;font-size:17px;margin-bottom:12vh}
 .page-sequence{gap:8vh}
}

/* Living Ruins — web edit */
.lr-page{padding:135px 30px 0}
.lr-page figure{margin:0}
.lr-page img{display:block;width:100%;height:auto}
.lr-title{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.62fr);gap:10vw;align-items:end;margin:4vh 0 9vh}
.lr-title h1{font-size:clamp(48px,6vw,92px);font-weight:400;line-height:.9;letter-spacing:-.055em;margin:22px 0 15px}
.lr-title .project-subtitle{font-size:clamp(16px,1.5vw,22px)}
.lr-lede{font-size:clamp(16px,1.45vw,21px);line-height:1.5;letter-spacing:-.015em;margin:0;max-width:620px}
.lr-hero{width:100%;margin-bottom:20vh!important}
.lr-hero img{max-height:88vh;object-fit:cover}
.lr-chapter{position:relative;margin:0 0 24vh}
.lr-kicker{font-size:9px;letter-spacing:.11em;margin-bottom:24px;border-top:1px solid rgba(0,0,0,.28);padding-top:12px}
.lr-copy{width:min(590px,44vw);margin:0 0 10vh auto}
.lr-copy p{font-size:17px;line-height:1.52;letter-spacing:-.012em;margin:0}
.lr-map{width:94%;margin:0 auto!important}
.lr-axo-main{width:72%;margin-left:auto!important}
.lr-axo-small{width:34%;margin:9vh 0 0 5vw!important}
.lr-render-full{width:100%;margin-bottom:11vh!important}
.lr-render-pair{display:grid;grid-template-columns:1.15fr .85fr;gap:7vw;align-items:start}
.lr-render-pair figure:last-child{margin-top:15vh}
.lr-long-section{width:100%;overflow-x:auto;padding:3vh 0 5vh}
.lr-long-section img{min-width:1180px}
.lr-short-section{width:76%;margin:12vh 0 0 auto!important}
.lr-detail-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:8vw;align-items:center;width:92%;margin:0 auto}
.lr-detail-axo{padding:4vw}
.lr-junction img{max-height:92vh;object-fit:contain}
.lr-back{margin:23vh 0 8vh;padding-top:18px;border-top:1px solid rgba(0,0,0,.25);display:flex;justify-content:space-between;font-size:10px;letter-spacing:.08em}
@media(max-width:760px){
 .lr-page{padding:95px 16px 0}.lr-title{grid-template-columns:1fr;gap:5vh;margin-bottom:7vh}.lr-title h1{font-size:47px}
 .lr-lede{font-size:16px}.lr-hero{margin-bottom:14vh!important}.lr-chapter{margin-bottom:16vh}
 .lr-copy{width:100%;margin:0 0 7vh}.lr-copy p{font-size:15px}.lr-map{width:100%}
 .lr-axo-main{width:100%}.lr-axo-small{width:65%;margin:7vh 0 0!important}
 .lr-render-full{margin-bottom:7vh!important}.lr-render-pair{grid-template-columns:1fr;gap:7vh}.lr-render-pair figure:last-child{margin-top:0;margin-left:14%}
 .lr-long-section{margin-left:-16px!important;margin-right:-16px!important;width:calc(100% + 32px)}.lr-long-section img{min-width:950px}
 .lr-short-section{width:100%;margin-top:8vh!important}.lr-detail-grid{grid-template-columns:1fr;width:100%;gap:7vh}.lr-detail-axo{width:70%;padding:0}.lr-junction img{max-height:none}
 .lr-back{margin-top:16vh}
}

/* Tower as School — rebuilt from the later Tower image set */
.tower-page{padding:135px 30px 0}.tower-page figure{margin:0}.tower-page img{display:block;width:100%;height:auto}
.tower-title{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.62fr);gap:10vw;align-items:end;margin:4vh 0 10vh}
.tower-title h1{font-size:clamp(48px,6vw,92px);font-weight:400;line-height:.9;letter-spacing:-.055em;margin:22px 0 15px}.tower-title .project-subtitle{font-size:clamp(16px,1.5vw,22px)}
.tower-lede{font-size:clamp(16px,1.45vw,21px);line-height:1.5;letter-spacing:-.015em;margin:0;max-width:620px}
.tower-hero{width:94%;margin:0 auto 21vh!important}.tower-hero img{max-height:88vh;object-fit:contain}
.tower-chapter{margin:0 0 24vh}.tower-kicker{font-size:9px;letter-spacing:.11em;margin-bottom:24px;border-top:1px solid rgba(0,0,0,.28);padding-top:12px}
.tower-copy{width:min(590px,44vw);margin:0 0 10vh auto}.tower-copy p{font-size:17px;line-height:1.52;letter-spacing:-.012em;margin:0}
.tower-existing-grid{display:grid;grid-template-columns:1.1fr .9fr 1fr;gap:5vw 3vw;align-items:end;width:90%;margin:0 auto}.tower-existing-grid figure:nth-child(2){transform:translateY(7vh)}.tower-existing-grid figure:nth-child(5){transform:translateY(5vh)}
.tower-existing-grid img{max-height:55vh;object-fit:contain}
.tower-diagram-row{display:grid;grid-template-columns:1fr 1fr;gap:8vw;width:88%;margin:0 auto 14vh}.tower-diagram-row img{max-height:62vh;object-fit:contain}
.tower-ground{width:82%;margin:0 0 14vh auto!important}.tower-ground img{max-height:78vh;object-fit:contain}
.tower-small-diagrams{display:grid;grid-template-columns:1fr .75fr;gap:10vw;align-items:center;width:78%;margin:0 auto}.tower-small-diagrams img{max-height:55vh;object-fit:contain}
.tower-render-large{width:100%;margin-bottom:10vh!important}.tower-render-large img{max-height:88vh;object-fit:cover}
.tower-render-pair{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:start}.tower-render-pair figure:last-child{margin-top:12vh}.tower-render-pair img{max-height:78vh;object-fit:cover}
.tower-model-pair{display:grid;grid-template-columns:1fr 1fr;gap:6vw;width:90%;margin:0 auto;align-items:center}.tower-model-pair img{max-height:76vh;object-fit:contain}
.tower-back{margin:23vh 0 8vh;padding-top:18px;border-top:1px solid rgba(0,0,0,.25);display:flex;justify-content:space-between;font-size:10px;letter-spacing:.08em}
@media(max-width:760px){.tower-page{padding:95px 16px 0}.tower-title{grid-template-columns:1fr;gap:5vh;margin-bottom:8vh}.tower-title h1{font-size:47px}.tower-lede{font-size:16px}.tower-hero{width:100%;margin-bottom:14vh!important}.tower-chapter{margin-bottom:16vh}.tower-copy{width:100%;margin:0 0 7vh}.tower-copy p{font-size:15px}.tower-existing-grid{grid-template-columns:1fr 1fr;width:100%;gap:7vh 4vw}.tower-existing-grid figure:nth-child(2),.tower-existing-grid figure:nth-child(5){transform:none}.tower-diagram-row{grid-template-columns:1fr;width:100%;gap:7vh;margin-bottom:9vh}.tower-ground{width:100%;margin-bottom:9vh!important}.tower-small-diagrams{grid-template-columns:1fr;width:100%;gap:7vh}.tower-render-pair{grid-template-columns:1fr;gap:7vh}.tower-render-pair figure:last-child{margin-top:0}.tower-model-pair{grid-template-columns:1fr;width:100%;gap:7vh}.tower-back{margin-top:16vh}}
