body {
  margin: 0;
  padding: 0;
  text-align: justify;
}

main {
  width: 1000px;
  font-size: 16px;
  margin: 10px auto;
  font-family: Helvetica, Arial, sans-serif;
  padding-top: 68px;
}

/*-----------------------------------------------------------------*/
/* Header --------------------------------------------------------*/
/*-----------------------------------------------------------------*/

.header #name {
  font-size: 23px;
}
.subpage {
  background: transparent;
  font-size: 20px;
  text-align: left;
  border: none;
  color: #6d6d6d;
}
.nav {
  display: flex;
  gap: 40px;
  align-items: center;
}

.nav .subpage {
  cursor: pointer;
  transition: transform 0.2s;
}

.nav .subpage:hover {
  transform: translateY(3px);
}
.header {
  background: #ffffffb9;    /* #f4ede8 */
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: fixed;
  top: 0;
  width: 1000px;
  z-index: 1000;
}

.header.hidden {
  transform: translateY(-120%);
}

/* Only animate header when the `.animate` class is present (added after load) */
.header.animate,
.header.animate.hidden {
  transition: transform 1s ease-in-out;
}

/*-----------------------------------------------------------------*/
/* Content --------------------------------------------------------*/
/*-----------------------------------------------------------------*/

.main-image {
  height: 600px;
  background: url('Spiral Dwelling.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 0px;
}
.title {
  color:black;
  font-size: 40px;
  font-weight: bold;
  margin-bottom: 10px;
}
.intro {
  margin: 30px 0;
  margin-bottom: 60px;
  color: #6d6d6d;
}
.text {
  color: #575757;
  line-height: 1.55;
  margin-bottom: 100px;
}
.section-title {
  font-size: 25px;
  font-weight: bold;
  margin: 90px 0 20px 0;
  color: black;
}
.robotic {
  height: 1000px;
  background: url('Spiral Dwelling3.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
}

.robotic {
  position: relative; /* containing block for absolutely positioned text */
}

.robotic .text {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 350px; /* fixed width as requested */
  box-sizing: border-box;
  background: rgba(255,255,255,0.0); /* transparent by default; change if you want a backdrop */
}
.tonglau {
  margin-top: 50px;
  clear: both;
  height: 1000px;
  background: url('Spiral Dwelling4.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
}
.stacking {
  margin-top: 50px;
  clear: both;
  height: 300px;
  background: url('Spiral Dwelling5.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
}
.comparison {
  margin-top: 50px;
  clear: both;
  height: 700px;
  background: url('Spiral Dwelling2.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
}
.generative {
  margin-top: 50px;
  clear: both;
  height: 800px;
  background: url('Spiral Dwelling6.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
}
.pinwheel {
  margin-top: 50px;
  clear: both;
  height: 1100px;
  background: url('Spiral Dwelling7.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
}
.cluster {
  margin-top: 50px;
  clear: both;
  height: 1100px;
  background: url('Spiral Dwelling8.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
}
.circulation {
  margin-top: 50px;
  clear: both;
  height: 750px;
  background: url('Spiral Dwelling9.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
  position: relative;
}
.circulation .text {
  line-height: 1.4;
  height: 160px;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 450px; 
  box-sizing: border-box;
}
.site {
  display: flex;
  gap: 30px;
  align-items: flex-start;
  flex-wrap: nowrap;
}
.siteplan {
  margin-top: 50px;
  clear: both;
  height: 900px;
  background: url('Spiral Dwelling10.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
}
.site .text {
  margin-top: 50px;
  box-sizing: border-box;
  padding: 16px;
  flex: 1 1 0;
  min-width: 300px;
}
.siteplan {
  flex: 0 0 600px;
}
.section {
  margin-top: 50px;
  clear: both;
  height: 900px;
  background: url('Spiral Dwelling11.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
  position: relative;
}
























#egress {
  width: 300px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 16px;
  box-sizing: border-box;
}

.egressimage {
  flex: 1 1 0;
  min-width: 300px;
  height: 100%; 
  background: url('Cruciform2.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
}

.isoperi {
  margin-top: 50px;
  clear: both;
  height: 1000px;
  background: url('Cruciform3.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
}

.plan {
  margin-top: 50px;
  clear: both;
  height: 1000px;
  background: url('Cruciform5.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
}
.view {
  margin-top: 50px;
  clear: both;
  height: 1000px;
  background: url('Cruciform6.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
  position: relative;
}

.view #view {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 600px;
  box-sizing: border-box;
  padding: 16px;
}
.res-type {
  margin-top: 50px;
  clear: both;
  height: 1000px;
  background: url('Cruciform7.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
}
.matrix {
  margin-top: 50px;
  clear: both;
  height: 1000px;
  background: url('Cruciform8.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
}
.model {
  margin-top: 50px;
  clear: both;
  height: 1000px;
  background: url('Cruciform9.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
}
.structure {
  margin-top: 50px;
  clear: both;
  height: 1000px;
  background: url('Cruciform10.jpg') no-repeat center center;
  background-size: contain;
  background-position: center;
  margin-bottom: 20px;
}
.footer {
  font-size: 15px;
  line-height: 1.5;
  height: 200px;
  margin: 100px 0 0 0;
}