
hr{border:0;border-top:1px solid #eee;margin:24px 0}
.nav{margin-bottom:12px}
.nav a{margin-right:16px;text-decoration:none}
pre{white-space:pre-wrap;word-wrap:break-word}
img{max-width:100%;height:auto;display:block}
.center{display:block;margin:12px auto}
.title-line{margin-top:8px;margin-bottom:0}
.small{color:#666;font-size:14px}


/* --- Typography --- */
body{
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
  line-height: 1.45;
  color: #111;
  background: #fff;
  margin: 0; /* important: removes default browser margin that causes “jumping” */	
}

html, body{
  height: 100%;
}

.page{
  min-height: 100vh;
  display: grid;
  grid-template-rows: 1fr auto; /* main grows, footer stays at bottom */
}



a{
  color: inherit;
  text-decoration: underline;   /* underline like on the original */
}
a.preview-link{
  text-decoration: none;   /* remove underline */
  font-style: italic;      /* make italic */
  color: #777;             /* grey (tweak to taste) */
}

a.preview-link:hover{
  color: #555;             /* optional: slightly darker on hover */
}


/* --- Layout --- */
.container{
  max-width: 820px;
  margin: 0 auto;
  margin-left: clamp(24px, 27vw, 550px); /* min, fluid, max */
  padding: 0 24px;
  padding-top: 150px;
}

.home h1{
  margin-top: 16px;   /* tweak 10–20px */
}

h1{
  font-size: 16px;
  font-weight: 200;
  margin: 0 0 12px 0;
}

/* tighter paragraph rhythm like the original */
#bio p{ margin: 0 0 10px 0; }

/* make the second paragraph (with the quote) italic */
#bio p:nth-of-type(2){ font-style: italic; }

.work-caption {
  text-align: center;       /* center like the original */
  font-size: 14px;          /* smaller */
  color: #555;              /* lighter grey */
  margin-top: 12px;         /* spacing below the image */
  margin-bottom: 40px;      /* spacing before footer */
  font-weight: normal;      /* not bold */
}


/* --- Footer: centered, small, grey --- */
/* Footer styling (use your existing look) */
.site-footer{
  text-align: center;
  color: #9a9a9a;
  font-size: 12px;
  padding: 16px 0; /* gives it some breathing room at the bottom */
}

/* --- Responsive tweak so phones look normal --- */
@media (max-width: 900px){
  .container{
    margin-left: auto;    /* stop pushing on small screens */
    padding: 16px;
    padding-top: 60px;
  }
}

.img-preview-tooltip{
  position: fixed;
  width: 140px;
  height: 220px;
  border-radius: 8px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.25);
  background-size: cover;
  background-position: center;
  pointer-events: none;
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 160ms ease, transform 160ms ease;
  z-index: 99999;
}

.img-preview-tooltip.is-visible{
  opacity:0.55;
  transform: translateY(0);
}

.media-block{
  display: flex;
  gap: 24px;
  align-items: flex-start;
  flex-wrap: nowrap;              /* prevents “dropping under” */
}

/* left column (images) */
.media-images{
  flex: 0 0 500px;                /* set the column width */
  display: flex;
  flex-direction: column;
  gap: 24px;                      /* space between the 2 images ALWAYS */
}

.media-images img,
.media-images video{
  width: 100%;
  height: auto;
  display: block;
}

.work-video{
  aspect-ratio: 16 / 9;
  object-fit: contain;
}


/* right column (text) */
.media-text{
  flex: 1 1 auto;
  min-width: 220px;               /* keeps it from collapsing too much */
}

/* only stack on truly small screens */
@media (max-width: 700px){
  .media-block{ flex-direction: column; }
  .media-images{ flex: 0 0 auto; width: 100%; }
  .media-text{ min-width: 0; }
}

.work-extra-text{
  font-size: 10px;   /* adjust */
  margin: 0;         /* no gap */
  line-height: 1.1;
  margin-top: 40px;
}

.work-title{
  font-size: 24px;   /* adjust */
  font-weight: 700;
  margin: 0;         /* no gap */
  line-height: 1.1;
}

.work-title_no_subtitle{
  font-size: 24px;   /* adjust */
  font-weight: 700;
  margin: 0;         /* no gap */
  line-height: 1.1;
  margin-bottom: 40px;
}

.work-subtitle{
  margin: 0;         /* no gap */
  margin-bottom: 40px;         /* no gap */
  font-size: 16px;   /* normal text size */
  line-height: 1.2;
}

.protected{
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.protected img{
  -webkit-user-drag: none;
  user-drag: none;
  -webkit-touch-callout: none;
}

